From ddb1c99bf4788c5f93ecbf6ccc47b54543abbd9a Mon Sep 17 00:00:00 2001 From: mzxrules Date: Wed, 1 Apr 2020 23:58:19 -0400 Subject: [PATCH] func_8005E9C0 and dependencies OK --- .../code/z_collision_check/func_8005DF2C.s | 13 - .../code/z_collision_check/func_8005DF50.s | 13 - .../code/z_collision_check/func_8005DF74.s | 19 - .../code/z_collision_check/func_8005E81C.s | 2716 ----------------- .../code/z_collision_check/func_8005EC6C.s | 2494 +++++++++++++++ .../code/z_collision_check/func_8006110C.s | 41 + include/functions.h | 2 +- include/z64actor.h | 10 +- src/code/z_collision_check.c | 88 +- 9 files changed, 2628 insertions(+), 2768 deletions(-) delete mode 100644 asm/non_matchings/code/z_collision_check/func_8005DF2C.s delete mode 100644 asm/non_matchings/code/z_collision_check/func_8005DF50.s delete mode 100644 asm/non_matchings/code/z_collision_check/func_8005DF74.s create mode 100644 asm/non_matchings/code/z_collision_check/func_8005EC6C.s create mode 100644 asm/non_matchings/code/z_collision_check/func_8006110C.s diff --git a/asm/non_matchings/code/z_collision_check/func_8005DF2C.s b/asm/non_matchings/code/z_collision_check/func_8005DF2C.s deleted file mode 100644 index e65e2978b0..0000000000 --- a/asm/non_matchings/code/z_collision_check/func_8005DF2C.s +++ /dev/null @@ -1,13 +0,0 @@ -glabel func_8005DF2C -/* AD50CC 8005DF2C 908E0015 */ lbu $t6, 0x15($a0) -/* AD50D0 8005DF30 00001025 */ move $v0, $zero -/* AD50D4 8005DF34 31CF0001 */ andi $t7, $t6, 1 -/* AD50D8 8005DF38 15E00003 */ bnez $t7, .L8005DF48 -/* AD50DC 8005DF3C 00000000 */ nop -/* AD50E0 8005DF40 03E00008 */ jr $ra -/* AD50E4 8005DF44 24020001 */ li $v0, 1 - -.L8005DF48: -/* AD50E8 8005DF48 03E00008 */ jr $ra -/* AD50EC 8005DF4C 00000000 */ nop - diff --git a/asm/non_matchings/code/z_collision_check/func_8005DF50.s b/asm/non_matchings/code/z_collision_check/func_8005DF50.s deleted file mode 100644 index 607fca01f3..0000000000 --- a/asm/non_matchings/code/z_collision_check/func_8005DF50.s +++ /dev/null @@ -1,13 +0,0 @@ -glabel func_8005DF50 -/* AD50F0 8005DF50 908E0016 */ lbu $t6, 0x16($a0) -/* AD50F4 8005DF54 00001025 */ move $v0, $zero -/* AD50F8 8005DF58 31CF0001 */ andi $t7, $t6, 1 -/* AD50FC 8005DF5C 15E00003 */ bnez $t7, .L8005DF6C -/* AD5100 8005DF60 00000000 */ nop -/* AD5104 8005DF64 03E00008 */ jr $ra -/* AD5108 8005DF68 24020001 */ li $v0, 1 - -.L8005DF6C: -/* AD510C 8005DF6C 03E00008 */ jr $ra -/* AD5110 8005DF70 00000000 */ nop - diff --git a/asm/non_matchings/code/z_collision_check/func_8005DF74.s b/asm/non_matchings/code/z_collision_check/func_8005DF74.s deleted file mode 100644 index 1babbe25f9..0000000000 --- a/asm/non_matchings/code/z_collision_check/func_8005DF74.s +++ /dev/null @@ -1,19 +0,0 @@ -glabel func_8005DF74 -/* AD5114 8005DF74 8C8E0000 */ lw $t6, ($a0) -/* AD5118 8005DF78 8CAF0008 */ lw $t7, 8($a1) -/* AD511C 8005DF7C 00001025 */ move $v0, $zero -/* AD5120 8005DF80 01CFC024 */ and $t8, $t6, $t7 -/* AD5124 8005DF84 17000003 */ bnez $t8, .L8005DF94 -/* AD5128 8005DF88 00000000 */ nop -/* AD512C 8005DF8C 03E00008 */ jr $ra -/* AD5130 8005DF90 24020001 */ li $v0, 1 - -.L8005DF94: -/* AD5134 8005DF94 03E00008 */ jr $ra -/* AD5138 8005DF98 00000000 */ nop - -/* AD513C 8005DF9C AFA40000 */ sw $a0, ($sp) -/* AD5140 8005DFA0 AFA50004 */ sw $a1, 4($sp) -/* AD5144 8005DFA4 03E00008 */ jr $ra -/* AD5148 8005DFA8 AFA60008 */ sw $a2, 8($sp) - diff --git a/asm/non_matchings/code/z_collision_check/func_8005E81C.s b/asm/non_matchings/code/z_collision_check/func_8005E81C.s index 0483fea31f..ef7ebe455f 100644 --- a/asm/non_matchings/code/z_collision_check/func_8005E81C.s +++ b/asm/non_matchings/code/z_collision_check/func_8005E81C.s @@ -1,37 +1,3 @@ -.late_rodata -glabel D_8013ACF8 - .float 0.008 - -glabel D_8013ACFC - .float 0.008 - -glabel D_8013AD00 - .float 0.008 - -glabel D_8013AD04 - .float 0.33333334 - -glabel D_8013AD08 - .float 0.33333334 - -glabel D_8013AD0C - .float 0.008 - -glabel D_8013AD10 - .float 0.33333334 - -glabel D_8013AD14 - .float 0.33333334 - -glabel D_8013AD18 - .float 0.33333334 - -glabel D_8013AD1C - .float 0.33333334 - -glabel D_8013AD20 - .float 0.33333334 - .text glabel func_8005E81C /* AD59BC 8005E81C 27BDFFD8 */ addiu $sp, $sp, -0x28 @@ -145,2685 +111,3 @@ glabel func_8005E81C /* AD5B54 8005E9B4 27BD0028 */ addiu $sp, $sp, 0x28 /* AD5B58 8005E9B8 03E00008 */ jr $ra /* AD5B5C 8005E9BC 24020001 */ li $v0, 1 - -/* AD5B60 8005E9C0 27BDFF60 */ addiu $sp, $sp, -0xa0 -/* AD5B64 8005E9C4 AFBF0054 */ sw $ra, 0x54($sp) -/* AD5B68 8005E9C8 AFBE0050 */ sw $fp, 0x50($sp) -/* AD5B6C 8005E9CC AFB7004C */ sw $s7, 0x4c($sp) -/* AD5B70 8005E9D0 AFB60048 */ sw $s6, 0x48($sp) -/* AD5B74 8005E9D4 AFB50044 */ sw $s5, 0x44($sp) -/* AD5B78 8005E9D8 AFB40040 */ sw $s4, 0x40($sp) -/* AD5B7C 8005E9DC AFB3003C */ sw $s3, 0x3c($sp) -/* AD5B80 8005E9E0 AFB20038 */ sw $s2, 0x38($sp) -/* AD5B84 8005E9E4 AFB10034 */ sw $s1, 0x34($sp) -/* AD5B88 8005E9E8 AFB00030 */ sw $s0, 0x30($sp) -/* AD5B8C 8005E9EC F7B40028 */ sdc1 $f20, 0x28($sp) -/* AD5B90 8005E9F0 AFA400A0 */ sw $a0, 0xa0($sp) -/* AD5B94 8005E9F4 AFA500A4 */ sw $a1, 0xa4($sp) -/* AD5B98 8005E9F8 AFA6009C */ sw $a2, 0x9c($sp) -/* AD5B9C 8005E9FC 8CC30018 */ lw $v1, 0x18($a2) -/* AD5BA0 8005EA00 00E0A825 */ move $s5, $a3 -/* AD5BA4 8005EA04 00E0B025 */ move $s6, $a3 -/* AD5BA8 8005EA08 5860008C */ blezl $v1, .L8005EC3C -/* AD5BAC 8005EA0C 8FBF0054 */ lw $ra, 0x54($sp) -/* AD5BB0 8005EA10 8CC2001C */ lw $v0, 0x1c($a2) -/* AD5BB4 8005EA14 50400089 */ beql $v0, $zero, .L8005EC3C -/* AD5BB8 8005EA18 8FBF0054 */ lw $ra, 0x54($sp) -/* AD5BBC 8005EA1C 8CEE0018 */ lw $t6, 0x18($a3) -/* AD5BC0 8005EA20 59C00086 */ blezl $t6, .L8005EC3C -/* AD5BC4 8005EA24 8FBF0054 */ lw $ra, 0x54($sp) -/* AD5BC8 8005EA28 8CEF001C */ lw $t7, 0x1c($a3) -/* AD5BCC 8005EA2C 0003C180 */ sll $t8, $v1, 6 -/* AD5BD0 8005EA30 0058C821 */ addu $t9, $v0, $t8 -/* AD5BD4 8005EA34 11E00080 */ beqz $t7, .L8005EC38 -/* AD5BD8 8005EA38 0059082B */ sltu $at, $v0, $t9 -/* AD5BDC 8005EA3C 1020007E */ beqz $at, .L8005EC38 -/* AD5BE0 8005EA40 00408825 */ move $s1, $v0 -/* AD5BE4 8005EA44 3C018014 */ lui $at, %hi(D_8013ACF8) -/* AD5BE8 8005EA48 C434ACF8 */ lwc1 $f20, %lo(D_8013ACF8)($at) -/* AD5BEC 8005EA4C AFA600A8 */ sw $a2, 0xa8($sp) -/* AD5BF0 8005EA50 27BE0088 */ addiu $fp, $sp, 0x88 -/* AD5BF4 8005EA54 27B7008C */ addiu $s7, $sp, 0x8c -/* AD5BF8 8005EA58 27B40078 */ addiu $s4, $sp, 0x78 -/* AD5BFC 8005EA5C 27B3006C */ addiu $s3, $sp, 0x6c -/* AD5C00 8005EA60 24120001 */ li $s2, 1 -.L8005EA64: -/* AD5C04 8005EA64 0C0177CB */ jal func_8005DF2C -/* AD5C08 8005EA68 02202025 */ move $a0, $s1 -/* AD5C0C 8005EA6C 5052006A */ beql $v0, $s2, .L8005EC18 -/* AD5C10 8005EA70 8FA2009C */ lw $v0, 0x9c($sp) -/* AD5C14 8005EA74 8EA80018 */ lw $t0, 0x18($s5) -/* AD5C18 8005EA78 8EB0001C */ lw $s0, 0x1c($s5) -/* AD5C1C 8005EA7C 00084980 */ sll $t1, $t0, 6 -/* AD5C20 8005EA80 02095021 */ addu $t2, $s0, $t1 -/* AD5C24 8005EA84 020A082B */ sltu $at, $s0, $t2 -/* AD5C28 8005EA88 50200063 */ beql $at, $zero, .L8005EC18 -/* AD5C2C 8005EA8C 8FA2009C */ lw $v0, 0x9c($sp) -.L8005EA90: -/* AD5C30 8005EA90 0C0177D4 */ jal func_8005DF50 -/* AD5C34 8005EA94 02002025 */ move $a0, $s0 -/* AD5C38 8005EA98 10520056 */ beq $v0, $s2, .L8005EBF4 -/* AD5C3C 8005EA9C 02202025 */ move $a0, $s1 -/* AD5C40 8005EAA0 0C0177DD */ jal func_8005DF74 -/* AD5C44 8005EAA4 02002825 */ move $a1, $s0 -/* AD5C48 8005EAA8 10520052 */ beq $v0, $s2, .L8005EBF4 -/* AD5C4C 8005EAAC 26240030 */ addiu $a0, $s1, 0x30 -/* AD5C50 8005EAB0 26050030 */ addiu $a1, $s0, 0x30 -/* AD5C54 8005EAB4 02E03025 */ move $a2, $s7 -/* AD5C58 8005EAB8 0C033F2B */ jal func_800CFCAC -/* AD5C5C 8005EABC 03C03825 */ move $a3, $fp -/* AD5C60 8005EAC0 5452004D */ bnel $v0, $s2, .L8005EBF8 -/* AD5C64 8005EAC4 8ECC0018 */ lw $t4, 0x18($s6) -/* AD5C68 8005EAC8 862B0030 */ lh $t3, 0x30($s1) -/* AD5C6C 8005EACC 02802025 */ move $a0, $s4 -/* AD5C70 8005EAD0 448B2000 */ mtc1 $t3, $f4 -/* AD5C74 8005EAD4 00000000 */ nop -/* AD5C78 8005EAD8 468021A0 */ cvt.s.w $f6, $f4 -/* AD5C7C 8005EADC E7A6006C */ swc1 $f6, 0x6c($sp) -/* AD5C80 8005EAE0 862C0032 */ lh $t4, 0x32($s1) -/* AD5C84 8005EAE4 448C4000 */ mtc1 $t4, $f8 -/* AD5C88 8005EAE8 00000000 */ nop -/* AD5C8C 8005EAEC 468042A0 */ cvt.s.w $f10, $f8 -/* AD5C90 8005EAF0 E7AA0070 */ swc1 $f10, 0x70($sp) -/* AD5C94 8005EAF4 862D0034 */ lh $t5, 0x34($s1) -/* AD5C98 8005EAF8 448D8000 */ mtc1 $t5, $f16 -/* AD5C9C 8005EAFC 00000000 */ nop -/* AD5CA0 8005EB00 468084A0 */ cvt.s.w $f18, $f16 -/* AD5CA4 8005EB04 E7B20074 */ swc1 $f18, 0x74($sp) -/* AD5CA8 8005EB08 860E0030 */ lh $t6, 0x30($s0) -/* AD5CAC 8005EB0C 448E2000 */ mtc1 $t6, $f4 -/* AD5CB0 8005EB10 00000000 */ nop -/* AD5CB4 8005EB14 468021A0 */ cvt.s.w $f6, $f4 -/* AD5CB8 8005EB18 C7A40088 */ lwc1 $f4, 0x88($sp) -/* AD5CBC 8005EB1C 46002005 */ abs.s $f0, $f4 -/* AD5CC0 8005EB20 E7A60060 */ swc1 $f6, 0x60($sp) -/* AD5CC4 8005EB24 860F0032 */ lh $t7, 0x32($s0) -/* AD5CC8 8005EB28 4614003C */ c.lt.s $f0, $f20 -/* AD5CCC 8005EB2C 448F4000 */ mtc1 $t7, $f8 -/* AD5CD0 8005EB30 00000000 */ nop -/* AD5CD4 8005EB34 468042A0 */ cvt.s.w $f10, $f8 -/* AD5CD8 8005EB38 E7AA0064 */ swc1 $f10, 0x64($sp) -/* AD5CDC 8005EB3C 86180034 */ lh $t8, 0x34($s0) -/* AD5CE0 8005EB40 C7AA006C */ lwc1 $f10, 0x6c($sp) -/* AD5CE4 8005EB44 44988000 */ mtc1 $t8, $f16 -/* AD5CE8 8005EB48 00000000 */ nop -/* AD5CEC 8005EB4C 468084A0 */ cvt.s.w $f18, $f16 -/* AD5CF0 8005EB50 C7B00060 */ lwc1 $f16, 0x60($sp) -/* AD5CF4 8005EB54 45010017 */ bc1t .L8005EBB4 -/* AD5CF8 8005EB58 E7B20068 */ swc1 $f18, 0x68($sp) -/* AD5CFC 8005EB5C 86190036 */ lh $t9, 0x36($s0) -/* AD5D00 8005EB60 46105481 */ sub.s $f18, $f10, $f16 -/* AD5D04 8005EB64 C7AA0064 */ lwc1 $f10, 0x64($sp) -/* AD5D08 8005EB68 44993000 */ mtc1 $t9, $f6 -/* AD5D0C 8005EB6C 00000000 */ nop -/* AD5D10 8005EB70 46803220 */ cvt.s.w $f8, $f6 -/* AD5D14 8005EB74 46044003 */ div.s $f0, $f8, $f4 -/* AD5D18 8005EB78 C7A40070 */ lwc1 $f4, 0x70($sp) -/* AD5D1C 8005EB7C 46009182 */ mul.s $f6, $f18, $f0 -/* AD5D20 8005EB80 460A2481 */ sub.s $f18, $f4, $f10 -/* AD5D24 8005EB84 C7A40068 */ lwc1 $f4, 0x68($sp) -/* AD5D28 8005EB88 46103200 */ add.s $f8, $f6, $f16 -/* AD5D2C 8005EB8C 46009182 */ mul.s $f6, $f18, $f0 -/* AD5D30 8005EB90 E7A80078 */ swc1 $f8, 0x78($sp) -/* AD5D34 8005EB94 C7A80074 */ lwc1 $f8, 0x74($sp) -/* AD5D38 8005EB98 46044481 */ sub.s $f18, $f8, $f4 -/* AD5D3C 8005EB9C 460A3400 */ add.s $f16, $f6, $f10 -/* AD5D40 8005EBA0 46009182 */ mul.s $f6, $f18, $f0 -/* AD5D44 8005EBA4 E7B0007C */ swc1 $f16, 0x7c($sp) -/* AD5D48 8005EBA8 46043280 */ add.s $f10, $f6, $f4 -/* AD5D4C 8005EBAC 10000003 */ b .L8005EBBC -/* AD5D50 8005EBB0 E7AA0080 */ swc1 $f10, 0x80($sp) -.L8005EBB4: -/* AD5D54 8005EBB4 0C01DF90 */ jal Math_Vec3f_Copy -/* AD5D58 8005EBB8 02602825 */ move $a1, $s3 -.L8005EBBC: -/* AD5D5C 8005EBBC 27A80060 */ addiu $t0, $sp, 0x60 -/* AD5D60 8005EBC0 AFA80018 */ sw $t0, 0x18($sp) -/* AD5D64 8005EBC4 8FA400A0 */ lw $a0, 0xa0($sp) -/* AD5D68 8005EBC8 8FA500A8 */ lw $a1, 0xa8($sp) -/* AD5D6C 8005EBCC 02203025 */ move $a2, $s1 -/* AD5D70 8005EBD0 02603825 */ move $a3, $s3 -/* AD5D74 8005EBD4 AFB50010 */ sw $s5, 0x10($sp) -/* AD5D78 8005EBD8 AFB00014 */ sw $s0, 0x14($sp) -/* AD5D7C 8005EBDC 0C017A07 */ jal func_8005E81C -/* AD5D80 8005EBE0 AFB4001C */ sw $s4, 0x1c($sp) -/* AD5D84 8005EBE4 92A90013 */ lbu $t1, 0x13($s5) -/* AD5D88 8005EBE8 312A0040 */ andi $t2, $t1, 0x40 -/* AD5D8C 8005EBEC 51400013 */ beql $t2, $zero, .L8005EC3C -/* AD5D90 8005EBF0 8FBF0054 */ lw $ra, 0x54($sp) -.L8005EBF4: -/* AD5D94 8005EBF4 8ECC0018 */ lw $t4, 0x18($s6) -.L8005EBF8: -/* AD5D98 8005EBF8 8ECB001C */ lw $t3, 0x1c($s6) -/* AD5D9C 8005EBFC 26100040 */ addiu $s0, $s0, 0x40 -/* AD5DA0 8005EC00 000C6980 */ sll $t5, $t4, 6 -/* AD5DA4 8005EC04 016D7021 */ addu $t6, $t3, $t5 -/* AD5DA8 8005EC08 020E082B */ sltu $at, $s0, $t6 -/* AD5DAC 8005EC0C 1420FFA0 */ bnez $at, .L8005EA90 -/* AD5DB0 8005EC10 00000000 */ nop -/* AD5DB4 8005EC14 8FA2009C */ lw $v0, 0x9c($sp) -.L8005EC18: -/* AD5DB8 8005EC18 26310040 */ addiu $s1, $s1, 0x40 -/* AD5DBC 8005EC1C 8C580018 */ lw $t8, 0x18($v0) -/* AD5DC0 8005EC20 8C4F001C */ lw $t7, 0x1c($v0) -/* AD5DC4 8005EC24 0018C980 */ sll $t9, $t8, 6 -/* AD5DC8 8005EC28 01F94021 */ addu $t0, $t7, $t9 -/* AD5DCC 8005EC2C 0228082B */ sltu $at, $s1, $t0 -/* AD5DD0 8005EC30 1420FF8C */ bnez $at, .L8005EA64 -/* AD5DD4 8005EC34 00000000 */ nop -.L8005EC38: -/* AD5DD8 8005EC38 8FBF0054 */ lw $ra, 0x54($sp) -.L8005EC3C: -/* AD5DDC 8005EC3C D7B40028 */ ldc1 $f20, 0x28($sp) -/* AD5DE0 8005EC40 8FB00030 */ lw $s0, 0x30($sp) -/* AD5DE4 8005EC44 8FB10034 */ lw $s1, 0x34($sp) -/* AD5DE8 8005EC48 8FB20038 */ lw $s2, 0x38($sp) -/* AD5DEC 8005EC4C 8FB3003C */ lw $s3, 0x3c($sp) -/* AD5DF0 8005EC50 8FB40040 */ lw $s4, 0x40($sp) -/* AD5DF4 8005EC54 8FB50044 */ lw $s5, 0x44($sp) -/* AD5DF8 8005EC58 8FB60048 */ lw $s6, 0x48($sp) -/* AD5DFC 8005EC5C 8FB7004C */ lw $s7, 0x4c($sp) -/* AD5E00 8005EC60 8FBE0050 */ lw $fp, 0x50($sp) -/* AD5E04 8005EC64 03E00008 */ jr $ra -/* AD5E08 8005EC68 27BD00A0 */ addiu $sp, $sp, 0xa0 - -/* AD5E0C 8005EC6C 27BDFF70 */ addiu $sp, $sp, -0x90 -/* AD5E10 8005EC70 AFBF0044 */ sw $ra, 0x44($sp) -/* AD5E14 8005EC74 AFB60040 */ sw $s6, 0x40($sp) -/* AD5E18 8005EC78 AFB5003C */ sw $s5, 0x3c($sp) -/* AD5E1C 8005EC7C AFB40038 */ sw $s4, 0x38($sp) -/* AD5E20 8005EC80 AFB30034 */ sw $s3, 0x34($sp) -/* AD5E24 8005EC84 AFB20030 */ sw $s2, 0x30($sp) -/* AD5E28 8005EC88 AFB1002C */ sw $s1, 0x2c($sp) -/* AD5E2C 8005EC8C AFB00028 */ sw $s0, 0x28($sp) -/* AD5E30 8005EC90 AFA40090 */ sw $a0, 0x90($sp) -/* AD5E34 8005EC94 AFA50094 */ sw $a1, 0x94($sp) -/* AD5E38 8005EC98 8CCE0018 */ lw $t6, 0x18($a2) -/* AD5E3C 8005EC9C 00E09025 */ move $s2, $a3 -/* AD5E40 8005ECA0 00C09825 */ move $s3, $a2 -/* AD5E44 8005ECA4 59C00085 */ blezl $t6, .L8005EEBC -/* AD5E48 8005ECA8 8FBF0044 */ lw $ra, 0x44($sp) -/* AD5E4C 8005ECAC 8CCF001C */ lw $t7, 0x1c($a2) -/* AD5E50 8005ECB0 51E00082 */ beql $t7, $zero, .L8005EEBC -/* AD5E54 8005ECB4 8FBF0044 */ lw $ra, 0x44($sp) -/* AD5E58 8005ECB8 84F80040 */ lh $t8, 0x40($a3) -/* AD5E5C 8005ECBC 5B00007F */ blezl $t8, .L8005EEBC -/* AD5E60 8005ECC0 8FBF0044 */ lw $ra, 0x44($sp) -/* AD5E64 8005ECC4 84F90042 */ lh $t9, 0x42($a3) -/* AD5E68 8005ECC8 24F60018 */ addiu $s6, $a3, 0x18 -/* AD5E6C 8005ECCC 02C02025 */ move $a0, $s6 -/* AD5E70 8005ECD0 5B20007A */ blezl $t9, .L8005EEBC -/* AD5E74 8005ECD4 8FBF0044 */ lw $ra, 0x44($sp) -/* AD5E78 8005ECD8 0C0177D4 */ jal func_8005DF50 -/* AD5E7C 8005ECDC AFA60098 */ sw $a2, 0x98($sp) -/* AD5E80 8005ECE0 24110001 */ li $s1, 1 -/* AD5E84 8005ECE4 10510074 */ beq $v0, $s1, .L8005EEB8 -/* AD5E88 8005ECE8 8FA30098 */ lw $v1, 0x98($sp) -/* AD5E8C 8005ECEC 8C680018 */ lw $t0, 0x18($v1) -/* AD5E90 8005ECF0 8C70001C */ lw $s0, 0x1c($v1) -/* AD5E94 8005ECF4 27B5007C */ addiu $s5, $sp, 0x7c -/* AD5E98 8005ECF8 00084980 */ sll $t1, $t0, 6 -/* AD5E9C 8005ECFC 02095021 */ addu $t2, $s0, $t1 -/* AD5EA0 8005ED00 020A082B */ sltu $at, $s0, $t2 -/* AD5EA4 8005ED04 1020006C */ beqz $at, .L8005EEB8 -/* AD5EA8 8005ED08 27B40080 */ addiu $s4, $sp, 0x80 -.L8005ED0C: -/* AD5EAC 8005ED0C 0C0177CB */ jal func_8005DF2C -/* AD5EB0 8005ED10 02002025 */ move $a0, $s0 -/* AD5EB4 8005ED14 10510060 */ beq $v0, $s1, .L8005EE98 -/* AD5EB8 8005ED18 02002025 */ move $a0, $s0 -/* AD5EBC 8005ED1C 0C0177DD */ jal func_8005DF74 -/* AD5EC0 8005ED20 02C02825 */ move $a1, $s6 -/* AD5EC4 8005ED24 1051005C */ beq $v0, $s1, .L8005EE98 -/* AD5EC8 8005ED28 26040030 */ addiu $a0, $s0, 0x30 -/* AD5ECC 8005ED2C 26450040 */ addiu $a1, $s2, 0x40 -/* AD5ED0 8005ED30 02803025 */ move $a2, $s4 -/* AD5ED4 8005ED34 0C033F69 */ jal func_800CFDA4 -/* AD5ED8 8005ED38 02A03825 */ move $a3, $s5 -/* AD5EDC 8005ED3C 50400057 */ beql $v0, $zero, .L8005EE9C -/* AD5EE0 8005ED40 8E6B0018 */ lw $t3, 0x18($s3) -/* AD5EE4 8005ED44 860B0030 */ lh $t3, 0x30($s0) -/* AD5EE8 8005ED48 3C018014 */ lui $at, %hi(D_8013ACFC) -/* AD5EEC 8005ED4C 27A40070 */ addiu $a0, $sp, 0x70 -/* AD5EF0 8005ED50 448B2000 */ mtc1 $t3, $f4 -/* AD5EF4 8005ED54 00000000 */ nop -/* AD5EF8 8005ED58 468021A0 */ cvt.s.w $f6, $f4 -/* AD5EFC 8005ED5C E7A60064 */ swc1 $f6, 0x64($sp) -/* AD5F00 8005ED60 860C0032 */ lh $t4, 0x32($s0) -/* AD5F04 8005ED64 448C4000 */ mtc1 $t4, $f8 -/* AD5F08 8005ED68 00000000 */ nop -/* AD5F0C 8005ED6C 468042A0 */ cvt.s.w $f10, $f8 -/* AD5F10 8005ED70 E7AA0068 */ swc1 $f10, 0x68($sp) -/* AD5F14 8005ED74 860D0034 */ lh $t5, 0x34($s0) -/* AD5F18 8005ED78 448D8000 */ mtc1 $t5, $f16 -/* AD5F1C 8005ED7C 00000000 */ nop -/* AD5F20 8005ED80 468084A0 */ cvt.s.w $f18, $f16 -/* AD5F24 8005ED84 E7B2006C */ swc1 $f18, 0x6c($sp) -/* AD5F28 8005ED88 864E0046 */ lh $t6, 0x46($s2) -/* AD5F2C 8005ED8C 448E2000 */ mtc1 $t6, $f4 -/* AD5F30 8005ED90 00000000 */ nop -/* AD5F34 8005ED94 468021A0 */ cvt.s.w $f6, $f4 -/* AD5F38 8005ED98 C7A4007C */ lwc1 $f4, 0x7c($sp) -/* AD5F3C 8005ED9C 46002005 */ abs.s $f0, $f4 -/* AD5F40 8005EDA0 E7A60058 */ swc1 $f6, 0x58($sp) -/* AD5F44 8005EDA4 864F0048 */ lh $t7, 0x48($s2) -/* AD5F48 8005EDA8 C426ACFC */ lwc1 $f6, %lo(D_8013ACFC)($at) -/* AD5F4C 8005EDAC 448F4000 */ mtc1 $t7, $f8 -/* AD5F50 8005EDB0 4606003C */ c.lt.s $f0, $f6 -/* AD5F54 8005EDB4 468042A0 */ cvt.s.w $f10, $f8 -/* AD5F58 8005EDB8 E7AA005C */ swc1 $f10, 0x5c($sp) -/* AD5F5C 8005EDBC 8658004A */ lh $t8, 0x4a($s2) -/* AD5F60 8005EDC0 44988000 */ mtc1 $t8, $f16 -/* AD5F64 8005EDC4 00000000 */ nop -/* AD5F68 8005EDC8 468084A0 */ cvt.s.w $f18, $f16 -/* AD5F6C 8005EDCC 45010023 */ bc1t .L8005EE5C -/* AD5F70 8005EDD0 E7B20060 */ swc1 $f18, 0x60($sp) -/* AD5F74 8005EDD4 86590040 */ lh $t9, 0x40($s2) -/* AD5F78 8005EDD8 3C013F80 */ li $at, 0x3F800000 # 0.000000 -/* AD5F7C 8005EDDC 44818000 */ mtc1 $at, $f16 -/* AD5F80 8005EDE0 44994000 */ mtc1 $t9, $f8 -/* AD5F84 8005EDE4 C7A20058 */ lwc1 $f2, 0x58($sp) -/* AD5F88 8005EDE8 C7B20064 */ lwc1 $f18, 0x64($sp) -/* AD5F8C 8005EDEC 468042A0 */ cvt.s.w $f10, $f8 -/* AD5F90 8005EDF0 27A40070 */ addiu $a0, $sp, 0x70 -/* AD5F94 8005EDF4 46045003 */ div.s $f0, $f10, $f4 -/* AD5F98 8005EDF8 4610003E */ c.le.s $f0, $f16 -/* AD5F9C 8005EDFC 00000000 */ nop -/* AD5FA0 8005EE00 45000012 */ bc1f .L8005EE4C -/* AD5FA4 8005EE04 00000000 */ nop -/* AD5FA8 8005EE08 46029181 */ sub.s $f6, $f18, $f2 -/* AD5FAC 8005EE0C C7AC005C */ lwc1 $f12, 0x5c($sp) -/* AD5FB0 8005EE10 C7A40068 */ lwc1 $f4, 0x68($sp) -/* AD5FB4 8005EE14 C7AE0060 */ lwc1 $f14, 0x60($sp) -/* AD5FB8 8005EE18 46003202 */ mul.s $f8, $f6, $f0 -/* AD5FBC 8005EE1C 460C2401 */ sub.s $f16, $f4, $f12 -/* AD5FC0 8005EE20 46008482 */ mul.s $f18, $f16, $f0 -/* AD5FC4 8005EE24 46024280 */ add.s $f10, $f8, $f2 -/* AD5FC8 8005EE28 C7A8006C */ lwc1 $f8, 0x6c($sp) -/* AD5FCC 8005EE2C E7AA0070 */ swc1 $f10, 0x70($sp) -/* AD5FD0 8005EE30 460E4281 */ sub.s $f10, $f8, $f14 -/* AD5FD4 8005EE34 460C9180 */ add.s $f6, $f18, $f12 -/* AD5FD8 8005EE38 46005102 */ mul.s $f4, $f10, $f0 -/* AD5FDC 8005EE3C E7A60074 */ swc1 $f6, 0x74($sp) -/* AD5FE0 8005EE40 460E2400 */ add.s $f16, $f4, $f14 -/* AD5FE4 8005EE44 10000007 */ b .L8005EE64 -/* AD5FE8 8005EE48 E7B00078 */ swc1 $f16, 0x78($sp) -.L8005EE4C: -/* AD5FEC 8005EE4C 0C01DF90 */ jal Math_Vec3f_Copy -/* AD5FF0 8005EE50 27A50064 */ addiu $a1, $sp, 0x64 -/* AD5FF4 8005EE54 10000004 */ b .L8005EE68 -/* AD5FF8 8005EE58 27A80058 */ addiu $t0, $sp, 0x58 -.L8005EE5C: -/* AD5FFC 8005EE5C 0C01DF90 */ jal Math_Vec3f_Copy -/* AD6000 8005EE60 27A50064 */ addiu $a1, $sp, 0x64 -.L8005EE64: -/* AD6004 8005EE64 27A80058 */ addiu $t0, $sp, 0x58 -.L8005EE68: -/* AD6008 8005EE68 27A90070 */ addiu $t1, $sp, 0x70 -/* AD600C 8005EE6C AFA9001C */ sw $t1, 0x1c($sp) -/* AD6010 8005EE70 AFA80018 */ sw $t0, 0x18($sp) -/* AD6014 8005EE74 8FA40090 */ lw $a0, 0x90($sp) -/* AD6018 8005EE78 8FA50098 */ lw $a1, 0x98($sp) -/* AD601C 8005EE7C 02003025 */ move $a2, $s0 -/* AD6020 8005EE80 27A70064 */ addiu $a3, $sp, 0x64 -/* AD6024 8005EE84 AFB20010 */ sw $s2, 0x10($sp) -/* AD6028 8005EE88 0C017A07 */ jal func_8005E81C -/* AD602C 8005EE8C AFB60014 */ sw $s6, 0x14($sp) -/* AD6030 8005EE90 1000000A */ b .L8005EEBC -/* AD6034 8005EE94 8FBF0044 */ lw $ra, 0x44($sp) -.L8005EE98: -/* AD6038 8005EE98 8E6B0018 */ lw $t3, 0x18($s3) -.L8005EE9C: -/* AD603C 8005EE9C 8E6A001C */ lw $t2, 0x1c($s3) -/* AD6040 8005EEA0 26100040 */ addiu $s0, $s0, 0x40 -/* AD6044 8005EEA4 000B6180 */ sll $t4, $t3, 6 -/* AD6048 8005EEA8 014C6821 */ addu $t5, $t2, $t4 -/* AD604C 8005EEAC 020D082B */ sltu $at, $s0, $t5 -/* AD6050 8005EEB0 1420FF96 */ bnez $at, .L8005ED0C -/* AD6054 8005EEB4 00000000 */ nop -.L8005EEB8: -/* AD6058 8005EEB8 8FBF0044 */ lw $ra, 0x44($sp) -.L8005EEBC: -/* AD605C 8005EEBC 8FB00028 */ lw $s0, 0x28($sp) -/* AD6060 8005EEC0 8FB1002C */ lw $s1, 0x2c($sp) -/* AD6064 8005EEC4 8FB20030 */ lw $s2, 0x30($sp) -/* AD6068 8005EEC8 8FB30034 */ lw $s3, 0x34($sp) -/* AD606C 8005EECC 8FB40038 */ lw $s4, 0x38($sp) -/* AD6070 8005EED0 8FB5003C */ lw $s5, 0x3c($sp) -/* AD6074 8005EED4 8FB60040 */ lw $s6, 0x40($sp) -/* AD6078 8005EED8 03E00008 */ jr $ra -/* AD607C 8005EEDC 27BD0090 */ addiu $sp, $sp, 0x90 - -/* AD6080 8005EEE0 27BDFF58 */ addiu $sp, $sp, -0xa8 -/* AD6084 8005EEE4 AFBF005C */ sw $ra, 0x5c($sp) -/* AD6088 8005EEE8 AFBE0058 */ sw $fp, 0x58($sp) -/* AD608C 8005EEEC AFB70054 */ sw $s7, 0x54($sp) -/* AD6090 8005EEF0 AFB60050 */ sw $s6, 0x50($sp) -/* AD6094 8005EEF4 AFB5004C */ sw $s5, 0x4c($sp) -/* AD6098 8005EEF8 AFB40048 */ sw $s4, 0x48($sp) -/* AD609C 8005EEFC AFB30044 */ sw $s3, 0x44($sp) -/* AD60A0 8005EF00 AFB20040 */ sw $s2, 0x40($sp) -/* AD60A4 8005EF04 AFB1003C */ sw $s1, 0x3c($sp) -/* AD60A8 8005EF08 AFB00038 */ sw $s0, 0x38($sp) -/* AD60AC 8005EF0C F7B60030 */ sdc1 $f22, 0x30($sp) -/* AD60B0 8005EF10 F7B40028 */ sdc1 $f20, 0x28($sp) -/* AD60B4 8005EF14 AFA400A8 */ sw $a0, 0xa8($sp) -/* AD60B8 8005EF18 AFA500AC */ sw $a1, 0xac($sp) -/* AD60BC 8005EF1C 8CEE0018 */ lw $t6, 0x18($a3) -/* AD60C0 8005EF20 00C08825 */ move $s1, $a2 -/* AD60C4 8005EF24 00E0A825 */ move $s5, $a3 -/* AD60C8 8005EF28 19C00086 */ blez $t6, .L8005F144 -/* AD60CC 8005EF2C 00E0B825 */ move $s7, $a3 -/* AD60D0 8005EF30 8CEF001C */ lw $t7, 0x1c($a3) -/* AD60D4 8005EF34 51E00084 */ beql $t7, $zero, .L8005F148 -/* AD60D8 8005EF38 8FBF005C */ lw $ra, 0x5c($sp) -/* AD60DC 8005EF3C 84D80040 */ lh $t8, 0x40($a2) -/* AD60E0 8005EF40 5B000081 */ blezl $t8, .L8005F148 -/* AD60E4 8005EF44 8FBF005C */ lw $ra, 0x5c($sp) -/* AD60E8 8005EF48 84D90042 */ lh $t9, 0x42($a2) -/* AD60EC 8005EF4C 24D40018 */ addiu $s4, $a2, 0x18 -/* AD60F0 8005EF50 5B20007D */ blezl $t9, .L8005F148 -/* AD60F4 8005EF54 8FBF005C */ lw $ra, 0x5c($sp) -/* AD60F8 8005EF58 0C0177CB */ jal func_8005DF2C -/* AD60FC 8005EF5C 02802025 */ move $a0, $s4 -/* AD6100 8005EF60 24160001 */ li $s6, 1 -/* AD6104 8005EF64 50560078 */ beql $v0, $s6, .L8005F148 -/* AD6108 8005EF68 8FBF005C */ lw $ra, 0x5c($sp) -/* AD610C 8005EF6C 8EA80018 */ lw $t0, 0x18($s5) -/* AD6110 8005EF70 8EB0001C */ lw $s0, 0x1c($s5) -/* AD6114 8005EF74 27BE009C */ addiu $fp, $sp, 0x9c -/* AD6118 8005EF78 00084980 */ sll $t1, $t0, 6 -/* AD611C 8005EF7C 02095021 */ addu $t2, $s0, $t1 -/* AD6120 8005EF80 020A082B */ sltu $at, $s0, $t2 -/* AD6124 8005EF84 1020006F */ beqz $at, .L8005F144 -/* AD6128 8005EF88 27B30088 */ addiu $s3, $sp, 0x88 -/* AD612C 8005EF8C 3C013F80 */ li $at, 0x3F800000 # 0.000000 -/* AD6130 8005EF90 4481B000 */ mtc1 $at, $f22 -/* AD6134 8005EF94 3C018014 */ lui $at, %hi(D_8013AD00) -/* AD6138 8005EF98 C434AD00 */ lwc1 $f20, %lo(D_8013AD00)($at) -/* AD613C 8005EF9C 27B2007C */ addiu $s2, $sp, 0x7c -.L8005EFA0: -/* AD6140 8005EFA0 0C0177D4 */ jal func_8005DF50 -/* AD6144 8005EFA4 02002025 */ move $a0, $s0 -/* AD6148 8005EFA8 1056005E */ beq $v0, $s6, .L8005F124 -/* AD614C 8005EFAC 02802025 */ move $a0, $s4 -/* AD6150 8005EFB0 0C0177DD */ jal func_8005DF74 -/* AD6154 8005EFB4 02002825 */ move $a1, $s0 -/* AD6158 8005EFB8 1056005A */ beq $v0, $s6, .L8005F124 -/* AD615C 8005EFBC 26040030 */ addiu $a0, $s0, 0x30 -/* AD6160 8005EFC0 26250040 */ addiu $a1, $s1, 0x40 -/* AD6164 8005EFC4 03C03025 */ move $a2, $fp -/* AD6168 8005EFC8 0C033F69 */ jal func_800CFDA4 -/* AD616C 8005EFCC 27A70098 */ addiu $a3, $sp, 0x98 -/* AD6170 8005EFD0 50400055 */ beql $v0, $zero, .L8005F128 -/* AD6174 8005EFD4 8EEC0018 */ lw $t4, 0x18($s7) -/* AD6178 8005EFD8 862B0046 */ lh $t3, 0x46($s1) -/* AD617C 8005EFDC 02602025 */ move $a0, $s3 -/* AD6180 8005EFE0 448B2000 */ mtc1 $t3, $f4 -/* AD6184 8005EFE4 00000000 */ nop -/* AD6188 8005EFE8 468021A0 */ cvt.s.w $f6, $f4 -/* AD618C 8005EFEC E7A6007C */ swc1 $f6, 0x7c($sp) -/* AD6190 8005EFF0 862C0048 */ lh $t4, 0x48($s1) -/* AD6194 8005EFF4 448C4000 */ mtc1 $t4, $f8 -/* AD6198 8005EFF8 00000000 */ nop -/* AD619C 8005EFFC 468042A0 */ cvt.s.w $f10, $f8 -/* AD61A0 8005F000 E7AA0080 */ swc1 $f10, 0x80($sp) -/* AD61A4 8005F004 862D004A */ lh $t5, 0x4a($s1) -/* AD61A8 8005F008 448D8000 */ mtc1 $t5, $f16 -/* AD61AC 8005F00C 00000000 */ nop -/* AD61B0 8005F010 468084A0 */ cvt.s.w $f18, $f16 -/* AD61B4 8005F014 E7B20084 */ swc1 $f18, 0x84($sp) -/* AD61B8 8005F018 860E0030 */ lh $t6, 0x30($s0) -/* AD61BC 8005F01C 448E2000 */ mtc1 $t6, $f4 -/* AD61C0 8005F020 00000000 */ nop -/* AD61C4 8005F024 468021A0 */ cvt.s.w $f6, $f4 -/* AD61C8 8005F028 C7A40098 */ lwc1 $f4, 0x98($sp) -/* AD61CC 8005F02C 46002005 */ abs.s $f0, $f4 -/* AD61D0 8005F030 E7A60070 */ swc1 $f6, 0x70($sp) -/* AD61D4 8005F034 860F0032 */ lh $t7, 0x32($s0) -/* AD61D8 8005F038 4614003C */ c.lt.s $f0, $f20 -/* AD61DC 8005F03C 448F4000 */ mtc1 $t7, $f8 -/* AD61E0 8005F040 00000000 */ nop -/* AD61E4 8005F044 468042A0 */ cvt.s.w $f10, $f8 -/* AD61E8 8005F048 E7AA0074 */ swc1 $f10, 0x74($sp) -/* AD61EC 8005F04C 86180034 */ lh $t8, 0x34($s0) -/* AD61F0 8005F050 44988000 */ mtc1 $t8, $f16 -/* AD61F4 8005F054 00000000 */ nop -/* AD61F8 8005F058 468084A0 */ cvt.s.w $f18, $f16 -/* AD61FC 8005F05C 45010021 */ bc1t .L8005F0E4 -/* AD6200 8005F060 E7B20078 */ swc1 $f18, 0x78($sp) -/* AD6204 8005F064 86190036 */ lh $t9, 0x36($s0) -/* AD6208 8005F068 C7A20070 */ lwc1 $f2, 0x70($sp) -/* AD620C 8005F06C C7AA007C */ lwc1 $f10, 0x7c($sp) -/* AD6210 8005F070 44993000 */ mtc1 $t9, $f6 -/* AD6214 8005F074 02602025 */ move $a0, $s3 -/* AD6218 8005F078 46803220 */ cvt.s.w $f8, $f6 -/* AD621C 8005F07C 46044003 */ div.s $f0, $f8, $f4 -/* AD6220 8005F080 4616003E */ c.le.s $f0, $f22 -/* AD6224 8005F084 00000000 */ nop -/* AD6228 8005F088 45000012 */ bc1f .L8005F0D4 -/* AD622C 8005F08C 00000000 */ nop -/* AD6230 8005F090 46025401 */ sub.s $f16, $f10, $f2 -/* AD6234 8005F094 C7AC0074 */ lwc1 $f12, 0x74($sp) -/* AD6238 8005F098 C7A80080 */ lwc1 $f8, 0x80($sp) -/* AD623C 8005F09C C7AE0078 */ lwc1 $f14, 0x78($sp) -/* AD6240 8005F0A0 46008482 */ mul.s $f18, $f16, $f0 -/* AD6244 8005F0A4 460C4101 */ sub.s $f4, $f8, $f12 -/* AD6248 8005F0A8 46002282 */ mul.s $f10, $f4, $f0 -/* AD624C 8005F0AC 46029180 */ add.s $f6, $f18, $f2 -/* AD6250 8005F0B0 C7B20084 */ lwc1 $f18, 0x84($sp) -/* AD6254 8005F0B4 E7A60088 */ swc1 $f6, 0x88($sp) -/* AD6258 8005F0B8 460E9181 */ sub.s $f6, $f18, $f14 -/* AD625C 8005F0BC 460C5400 */ add.s $f16, $f10, $f12 -/* AD6260 8005F0C0 46003202 */ mul.s $f8, $f6, $f0 -/* AD6264 8005F0C4 E7B0008C */ swc1 $f16, 0x8c($sp) -/* AD6268 8005F0C8 460E4100 */ add.s $f4, $f8, $f14 -/* AD626C 8005F0CC 10000007 */ b .L8005F0EC -/* AD6270 8005F0D0 E7A40090 */ swc1 $f4, 0x90($sp) -.L8005F0D4: -/* AD6274 8005F0D4 0C01DF90 */ jal Math_Vec3f_Copy -/* AD6278 8005F0D8 02402825 */ move $a1, $s2 -/* AD627C 8005F0DC 10000004 */ b .L8005F0F0 -/* AD6280 8005F0E0 27A80070 */ addiu $t0, $sp, 0x70 -.L8005F0E4: -/* AD6284 8005F0E4 0C01DF90 */ jal Math_Vec3f_Copy -/* AD6288 8005F0E8 02402825 */ move $a1, $s2 -.L8005F0EC: -/* AD628C 8005F0EC 27A80070 */ addiu $t0, $sp, 0x70 -.L8005F0F0: -/* AD6290 8005F0F0 AFA80018 */ sw $t0, 0x18($sp) -/* AD6294 8005F0F4 8FA400A8 */ lw $a0, 0xa8($sp) -/* AD6298 8005F0F8 02202825 */ move $a1, $s1 -/* AD629C 8005F0FC 02803025 */ move $a2, $s4 -/* AD62A0 8005F100 02403825 */ move $a3, $s2 -/* AD62A4 8005F104 AFB50010 */ sw $s5, 0x10($sp) -/* AD62A8 8005F108 AFB00014 */ sw $s0, 0x14($sp) -/* AD62AC 8005F10C 0C017A07 */ jal func_8005E81C -/* AD62B0 8005F110 AFB3001C */ sw $s3, 0x1c($sp) -/* AD62B4 8005F114 92A90013 */ lbu $t1, 0x13($s5) -/* AD62B8 8005F118 312A0040 */ andi $t2, $t1, 0x40 -/* AD62BC 8005F11C 5140000A */ beql $t2, $zero, .L8005F148 -/* AD62C0 8005F120 8FBF005C */ lw $ra, 0x5c($sp) -.L8005F124: -/* AD62C4 8005F124 8EEC0018 */ lw $t4, 0x18($s7) -.L8005F128: -/* AD62C8 8005F128 8EEB001C */ lw $t3, 0x1c($s7) -/* AD62CC 8005F12C 26100040 */ addiu $s0, $s0, 0x40 -/* AD62D0 8005F130 000C6980 */ sll $t5, $t4, 6 -/* AD62D4 8005F134 016D7021 */ addu $t6, $t3, $t5 -/* AD62D8 8005F138 020E082B */ sltu $at, $s0, $t6 -/* AD62DC 8005F13C 1420FF98 */ bnez $at, .L8005EFA0 -/* AD62E0 8005F140 00000000 */ nop -.L8005F144: -/* AD62E4 8005F144 8FBF005C */ lw $ra, 0x5c($sp) -.L8005F148: -/* AD62E8 8005F148 D7B40028 */ ldc1 $f20, 0x28($sp) -/* AD62EC 8005F14C D7B60030 */ ldc1 $f22, 0x30($sp) -/* AD62F0 8005F150 8FB00038 */ lw $s0, 0x38($sp) -/* AD62F4 8005F154 8FB1003C */ lw $s1, 0x3c($sp) -/* AD62F8 8005F158 8FB20040 */ lw $s2, 0x40($sp) -/* AD62FC 8005F15C 8FB30044 */ lw $s3, 0x44($sp) -/* AD6300 8005F160 8FB40048 */ lw $s4, 0x48($sp) -/* AD6304 8005F164 8FB5004C */ lw $s5, 0x4c($sp) -/* AD6308 8005F168 8FB60050 */ lw $s6, 0x50($sp) -/* AD630C 8005F16C 8FB70054 */ lw $s7, 0x54($sp) -/* AD6310 8005F170 8FBE0058 */ lw $fp, 0x58($sp) -/* AD6314 8005F174 03E00008 */ jr $ra -/* AD6318 8005F178 27BD00A8 */ addiu $sp, $sp, 0xa8 - -/* AD631C 8005F17C 27BDFF78 */ addiu $sp, $sp, -0x88 -/* AD6320 8005F180 AFBF0044 */ sw $ra, 0x44($sp) -/* AD6324 8005F184 AFB70040 */ sw $s7, 0x40($sp) -/* AD6328 8005F188 AFB6003C */ sw $s6, 0x3c($sp) -/* AD632C 8005F18C AFB50038 */ sw $s5, 0x38($sp) -/* AD6330 8005F190 AFB40034 */ sw $s4, 0x34($sp) -/* AD6334 8005F194 AFB30030 */ sw $s3, 0x30($sp) -/* AD6338 8005F198 AFB2002C */ sw $s2, 0x2c($sp) -/* AD633C 8005F19C AFB10028 */ sw $s1, 0x28($sp) -/* AD6340 8005F1A0 AFB00024 */ sw $s0, 0x24($sp) -/* AD6344 8005F1A4 AFA40088 */ sw $a0, 0x88($sp) -/* AD6348 8005F1A8 AFA5008C */ sw $a1, 0x8c($sp) -/* AD634C 8005F1AC 8CC30018 */ lw $v1, 0x18($a2) -/* AD6350 8005F1B0 00E0B025 */ move $s6, $a3 -/* AD6354 8005F1B4 00C0B825 */ move $s7, $a2 -/* AD6358 8005F1B8 1860006D */ blez $v1, .L8005F370 -/* AD635C 8005F1BC 00E09825 */ move $s3, $a3 -/* AD6360 8005F1C0 8CC2001C */ lw $v0, 0x1c($a2) -/* AD6364 8005F1C4 5040006B */ beql $v0, $zero, .L8005F374 -/* AD6368 8005F1C8 8FBF0044 */ lw $ra, 0x44($sp) -/* AD636C 8005F1CC 8CEE0018 */ lw $t6, 0x18($a3) -/* AD6370 8005F1D0 59C00068 */ blezl $t6, .L8005F374 -/* AD6374 8005F1D4 8FBF0044 */ lw $ra, 0x44($sp) -/* AD6378 8005F1D8 8CEF001C */ lw $t7, 0x1c($a3) -/* AD637C 8005F1DC 0003C180 */ sll $t8, $v1, 6 -/* AD6380 8005F1E0 0058C821 */ addu $t9, $v0, $t8 -/* AD6384 8005F1E4 11E00062 */ beqz $t7, .L8005F370 -/* AD6388 8005F1E8 0059082B */ sltu $at, $v0, $t9 -/* AD638C 8005F1EC 10200060 */ beqz $at, .L8005F370 -/* AD6390 8005F1F0 00409025 */ move $s2, $v0 -/* AD6394 8005F1F4 AFA60090 */ sw $a2, 0x90($sp) -/* AD6398 8005F1F8 27B5006C */ addiu $s5, $sp, 0x6c -/* AD639C 8005F1FC 2414005C */ li $s4, 92 -/* AD63A0 8005F200 24110001 */ li $s1, 1 -.L8005F204: -/* AD63A4 8005F204 0C0177CB */ jal func_8005DF2C -/* AD63A8 8005F208 02402025 */ move $a0, $s2 -/* AD63AC 8005F20C 50510051 */ beql $v0, $s1, .L8005F354 -/* AD63B0 8005F210 8EEA0018 */ lw $t2, 0x18($s7) -/* AD63B4 8005F214 8EC80018 */ lw $t0, 0x18($s6) -/* AD63B8 8005F218 8ED0001C */ lw $s0, 0x1c($s6) -/* AD63BC 8005F21C 01140019 */ multu $t0, $s4 -/* AD63C0 8005F220 00004812 */ mflo $t1 -/* AD63C4 8005F224 02095021 */ addu $t2, $s0, $t1 -/* AD63C8 8005F228 020A082B */ sltu $at, $s0, $t2 -/* AD63CC 8005F22C 50200049 */ beql $at, $zero, .L8005F354 -/* AD63D0 8005F230 8EEA0018 */ lw $t2, 0x18($s7) -.L8005F234: -/* AD63D4 8005F234 0C0177D4 */ jal func_8005DF50 -/* AD63D8 8005F238 02002025 */ move $a0, $s0 -/* AD63DC 8005F23C 1051003B */ beq $v0, $s1, .L8005F32C -/* AD63E0 8005F240 02402025 */ move $a0, $s2 -/* AD63E4 8005F244 0C0177DD */ jal func_8005DF74 -/* AD63E8 8005F248 02002825 */ move $a1, $s0 -/* AD63EC 8005F24C 10510037 */ beq $v0, $s1, .L8005F32C -/* AD63F0 8005F250 26440030 */ addiu $a0, $s2, 0x30 -/* AD63F4 8005F254 26050028 */ addiu $a1, $s0, 0x28 -/* AD63F8 8005F258 0C033A4D */ jal func_800CE934 -/* AD63FC 8005F25C 02A03025 */ move $a2, $s5 -/* AD6400 8005F260 54510033 */ bnel $v0, $s1, .L8005F330 -/* AD6404 8005F264 8E780018 */ lw $t8, 0x18($s3) -/* AD6408 8005F268 864B0030 */ lh $t3, 0x30($s2) -/* AD640C 8005F26C 3C018014 */ lui $at, %hi(D_8013AD04) -/* AD6410 8005F270 C420AD04 */ lwc1 $f0, %lo(D_8013AD04)($at) -/* AD6414 8005F274 448B2000 */ mtc1 $t3, $f4 -/* AD6418 8005F278 27AE0054 */ addiu $t6, $sp, 0x54 -/* AD641C 8005F27C 8FA40088 */ lw $a0, 0x88($sp) -/* AD6420 8005F280 468021A0 */ cvt.s.w $f6, $f4 -/* AD6424 8005F284 8FA50090 */ lw $a1, 0x90($sp) -/* AD6428 8005F288 02403025 */ move $a2, $s2 -/* AD642C 8005F28C 27A70060 */ addiu $a3, $sp, 0x60 -/* AD6430 8005F290 E7A60060 */ swc1 $f6, 0x60($sp) -/* AD6434 8005F294 864C0032 */ lh $t4, 0x32($s2) -/* AD6438 8005F298 448C4000 */ mtc1 $t4, $f8 -/* AD643C 8005F29C 00000000 */ nop -/* AD6440 8005F2A0 468042A0 */ cvt.s.w $f10, $f8 -/* AD6444 8005F2A4 E7AA0064 */ swc1 $f10, 0x64($sp) -/* AD6448 8005F2A8 864D0034 */ lh $t5, 0x34($s2) -/* AD644C 8005F2AC 448D8000 */ mtc1 $t5, $f16 -/* AD6450 8005F2B0 00000000 */ nop -/* AD6454 8005F2B4 468084A0 */ cvt.s.w $f18, $f16 -/* AD6458 8005F2B8 E7B20068 */ swc1 $f18, 0x68($sp) -/* AD645C 8005F2BC C6060034 */ lwc1 $f6, 0x34($s0) -/* AD6460 8005F2C0 C6040028 */ lwc1 $f4, 0x28($s0) -/* AD6464 8005F2C4 C60A0040 */ lwc1 $f10, 0x40($s0) -/* AD6468 8005F2C8 46062200 */ add.s $f8, $f4, $f6 -/* AD646C 8005F2CC 46085400 */ add.s $f16, $f10, $f8 -/* AD6470 8005F2D0 46008482 */ mul.s $f18, $f16, $f0 -/* AD6474 8005F2D4 E7B20054 */ swc1 $f18, 0x54($sp) -/* AD6478 8005F2D8 C6060038 */ lwc1 $f6, 0x38($s0) -/* AD647C 8005F2DC C604002C */ lwc1 $f4, 0x2c($s0) -/* AD6480 8005F2E0 C6080044 */ lwc1 $f8, 0x44($s0) -/* AD6484 8005F2E4 46062280 */ add.s $f10, $f4, $f6 -/* AD6488 8005F2E8 460A4400 */ add.s $f16, $f8, $f10 -/* AD648C 8005F2EC 46008482 */ mul.s $f18, $f16, $f0 -/* AD6490 8005F2F0 E7B20058 */ swc1 $f18, 0x58($sp) -/* AD6494 8005F2F4 C606003C */ lwc1 $f6, 0x3c($s0) -/* AD6498 8005F2F8 C6040030 */ lwc1 $f4, 0x30($s0) -/* AD649C 8005F2FC C60A0048 */ lwc1 $f10, 0x48($s0) -/* AD64A0 8005F300 AFB5001C */ sw $s5, 0x1c($sp) -/* AD64A4 8005F304 46062200 */ add.s $f8, $f4, $f6 -/* AD64A8 8005F308 AFAE0018 */ sw $t6, 0x18($sp) -/* AD64AC 8005F30C AFB00014 */ sw $s0, 0x14($sp) -/* AD64B0 8005F310 AFB60010 */ sw $s6, 0x10($sp) -/* AD64B4 8005F314 46085400 */ add.s $f16, $f10, $f8 -/* AD64B8 8005F318 46008482 */ mul.s $f18, $f16, $f0 -/* AD64BC 8005F31C 0C017A07 */ jal func_8005E81C -/* AD64C0 8005F320 E7B2005C */ swc1 $f18, 0x5c($sp) -/* AD64C4 8005F324 10000013 */ b .L8005F374 -/* AD64C8 8005F328 8FBF0044 */ lw $ra, 0x44($sp) -.L8005F32C: -/* AD64CC 8005F32C 8E780018 */ lw $t8, 0x18($s3) -.L8005F330: -/* AD64D0 8005F330 8E6F001C */ lw $t7, 0x1c($s3) -/* AD64D4 8005F334 2610005C */ addiu $s0, $s0, 0x5c -/* AD64D8 8005F338 03140019 */ multu $t8, $s4 -/* AD64DC 8005F33C 0000C812 */ mflo $t9 -/* AD64E0 8005F340 01F94021 */ addu $t0, $t7, $t9 -/* AD64E4 8005F344 0208082B */ sltu $at, $s0, $t0 -/* AD64E8 8005F348 1420FFBA */ bnez $at, .L8005F234 -/* AD64EC 8005F34C 00000000 */ nop -/* AD64F0 8005F350 8EEA0018 */ lw $t2, 0x18($s7) -.L8005F354: -/* AD64F4 8005F354 8EE9001C */ lw $t1, 0x1c($s7) -/* AD64F8 8005F358 26520040 */ addiu $s2, $s2, 0x40 -/* AD64FC 8005F35C 000A5980 */ sll $t3, $t2, 6 -/* AD6500 8005F360 012B6021 */ addu $t4, $t1, $t3 -/* AD6504 8005F364 024C082B */ sltu $at, $s2, $t4 -/* AD6508 8005F368 1420FFA6 */ bnez $at, .L8005F204 -/* AD650C 8005F36C 00000000 */ nop -.L8005F370: -/* AD6510 8005F370 8FBF0044 */ lw $ra, 0x44($sp) -.L8005F374: -/* AD6514 8005F374 8FB00024 */ lw $s0, 0x24($sp) -/* AD6518 8005F378 8FB10028 */ lw $s1, 0x28($sp) -/* AD651C 8005F37C 8FB2002C */ lw $s2, 0x2c($sp) -/* AD6520 8005F380 8FB30030 */ lw $s3, 0x30($sp) -/* AD6524 8005F384 8FB40034 */ lw $s4, 0x34($sp) -/* AD6528 8005F388 8FB50038 */ lw $s5, 0x38($sp) -/* AD652C 8005F38C 8FB6003C */ lw $s6, 0x3c($sp) -/* AD6530 8005F390 8FB70040 */ lw $s7, 0x40($sp) -/* AD6534 8005F394 03E00008 */ jr $ra -/* AD6538 8005F398 27BD0088 */ addiu $sp, $sp, 0x88 - -/* AD653C 8005F39C 27BDFF68 */ addiu $sp, $sp, -0x98 -/* AD6540 8005F3A0 AFBF0054 */ sw $ra, 0x54($sp) -/* AD6544 8005F3A4 AFBE0050 */ sw $fp, 0x50($sp) -/* AD6548 8005F3A8 AFB7004C */ sw $s7, 0x4c($sp) -/* AD654C 8005F3AC AFB60048 */ sw $s6, 0x48($sp) -/* AD6550 8005F3B0 AFB50044 */ sw $s5, 0x44($sp) -/* AD6554 8005F3B4 AFB40040 */ sw $s4, 0x40($sp) -/* AD6558 8005F3B8 AFB3003C */ sw $s3, 0x3c($sp) -/* AD655C 8005F3BC AFB20038 */ sw $s2, 0x38($sp) -/* AD6560 8005F3C0 AFB10034 */ sw $s1, 0x34($sp) -/* AD6564 8005F3C4 AFB00030 */ sw $s0, 0x30($sp) -/* AD6568 8005F3C8 F7B40028 */ sdc1 $f20, 0x28($sp) -/* AD656C 8005F3CC AFA40098 */ sw $a0, 0x98($sp) -/* AD6570 8005F3D0 AFA5009C */ sw $a1, 0x9c($sp) -/* AD6574 8005F3D4 AFA7008C */ sw $a3, 0x8c($sp) -/* AD6578 8005F3D8 8CE30018 */ lw $v1, 0x18($a3) -/* AD657C 8005F3DC 00E0B025 */ move $s6, $a3 -/* AD6580 8005F3E0 00C0B825 */ move $s7, $a2 -/* AD6584 8005F3E4 58600066 */ blezl $v1, .L8005F580 -/* AD6588 8005F3E8 8FBF0054 */ lw $ra, 0x54($sp) -/* AD658C 8005F3EC 8CE2001C */ lw $v0, 0x1c($a3) -/* AD6590 8005F3F0 50400063 */ beql $v0, $zero, .L8005F580 -/* AD6594 8005F3F4 8FBF0054 */ lw $ra, 0x54($sp) -/* AD6598 8005F3F8 8CCE0018 */ lw $t6, 0x18($a2) -/* AD659C 8005F3FC 59C00060 */ blezl $t6, .L8005F580 -/* AD65A0 8005F400 8FBF0054 */ lw $ra, 0x54($sp) -/* AD65A4 8005F404 8CCF001C */ lw $t7, 0x1c($a2) -/* AD65A8 8005F408 0003C180 */ sll $t8, $v1, 6 -/* AD65AC 8005F40C 0058C821 */ addu $t9, $v0, $t8 -/* AD65B0 8005F410 11E0005A */ beqz $t7, .L8005F57C -/* AD65B4 8005F414 0059082B */ sltu $at, $v0, $t9 -/* AD65B8 8005F418 10200058 */ beqz $at, .L8005F57C -/* AD65BC 8005F41C 00409825 */ move $s3, $v0 -/* AD65C0 8005F420 3C018014 */ lui $at, %hi(D_8013AD08) -/* AD65C4 8005F424 C434AD08 */ lwc1 $f20, %lo(D_8013AD08)($at) -/* AD65C8 8005F428 AFA600A0 */ sw $a2, 0xa0($sp) -/* AD65CC 8005F42C 241E005C */ li $fp, 92 -/* AD65D0 8005F430 27B50064 */ addiu $s5, $sp, 0x64 -/* AD65D4 8005F434 27B4007C */ addiu $s4, $sp, 0x7c -/* AD65D8 8005F438 24120001 */ li $s2, 1 -.L8005F43C: -/* AD65DC 8005F43C 0C0177D4 */ jal func_8005DF50 -/* AD65E0 8005F440 02602025 */ move $a0, $s3 -/* AD65E4 8005F444 10520044 */ beq $v0, $s2, .L8005F558 -/* AD65E8 8005F448 8FA800A0 */ lw $t0, 0xa0($sp) -/* AD65EC 8005F44C 8D090018 */ lw $t1, 0x18($t0) -/* AD65F0 8005F450 8D10001C */ lw $s0, 0x1c($t0) -/* AD65F4 8005F454 013E0019 */ multu $t1, $fp -/* AD65F8 8005F458 00005012 */ mflo $t2 -/* AD65FC 8005F45C 020A5821 */ addu $t3, $s0, $t2 -/* AD6600 8005F460 020B082B */ sltu $at, $s0, $t3 -/* AD6604 8005F464 5020003D */ beql $at, $zero, .L8005F55C -/* AD6608 8005F468 8FA2008C */ lw $v0, 0x8c($sp) -.L8005F46C: -/* AD660C 8005F46C 0C0177CB */ jal func_8005DF2C -/* AD6610 8005F470 02002025 */ move $a0, $s0 -/* AD6614 8005F474 1052002F */ beq $v0, $s2, .L8005F534 -/* AD6618 8005F478 02002025 */ move $a0, $s0 -/* AD661C 8005F47C 0C0177DD */ jal func_8005DF74 -/* AD6620 8005F480 02602825 */ move $a1, $s3 -/* AD6624 8005F484 1052002B */ beq $v0, $s2, .L8005F534 -/* AD6628 8005F488 26710030 */ addiu $s1, $s3, 0x30 -/* AD662C 8005F48C 02202025 */ move $a0, $s1 -/* AD6630 8005F490 26050028 */ addiu $a1, $s0, 0x28 -/* AD6634 8005F494 0C033A4D */ jal func_800CE934 -/* AD6638 8005F498 02803025 */ move $a2, $s4 -/* AD663C 8005F49C 14520025 */ bne $v0, $s2, .L8005F534 -/* AD6640 8005F4A0 02A02025 */ move $a0, $s5 -/* AD6644 8005F4A4 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD6648 8005F4A8 02202825 */ move $a1, $s1 -/* AD664C 8005F4AC C6040028 */ lwc1 $f4, 0x28($s0) -/* AD6650 8005F4B0 C6060034 */ lwc1 $f6, 0x34($s0) -/* AD6654 8005F4B4 C60A0040 */ lwc1 $f10, 0x40($s0) -/* AD6658 8005F4B8 8FA40098 */ lw $a0, 0x98($sp) -/* AD665C 8005F4BC 46062200 */ add.s $f8, $f4, $f6 -/* AD6660 8005F4C0 8FA500A0 */ lw $a1, 0xa0($sp) -/* AD6664 8005F4C4 02003025 */ move $a2, $s0 -/* AD6668 8005F4C8 27A70070 */ addiu $a3, $sp, 0x70 -/* AD666C 8005F4CC 46085400 */ add.s $f16, $f10, $f8 -/* AD6670 8005F4D0 46148482 */ mul.s $f18, $f16, $f20 -/* AD6674 8005F4D4 E7B20070 */ swc1 $f18, 0x70($sp) -/* AD6678 8005F4D8 C6060038 */ lwc1 $f6, 0x38($s0) -/* AD667C 8005F4DC C604002C */ lwc1 $f4, 0x2c($s0) -/* AD6680 8005F4E0 C6080044 */ lwc1 $f8, 0x44($s0) -/* AD6684 8005F4E4 46062280 */ add.s $f10, $f4, $f6 -/* AD6688 8005F4E8 460A4400 */ add.s $f16, $f8, $f10 -/* AD668C 8005F4EC 46148482 */ mul.s $f18, $f16, $f20 -/* AD6690 8005F4F0 E7B20074 */ swc1 $f18, 0x74($sp) -/* AD6694 8005F4F4 C606003C */ lwc1 $f6, 0x3c($s0) -/* AD6698 8005F4F8 C6040030 */ lwc1 $f4, 0x30($s0) -/* AD669C 8005F4FC C60A0048 */ lwc1 $f10, 0x48($s0) -/* AD66A0 8005F500 AFB4001C */ sw $s4, 0x1c($sp) -/* AD66A4 8005F504 46062200 */ add.s $f8, $f4, $f6 -/* AD66A8 8005F508 AFB50018 */ sw $s5, 0x18($sp) -/* AD66AC 8005F50C AFB30014 */ sw $s3, 0x14($sp) -/* AD66B0 8005F510 AFB60010 */ sw $s6, 0x10($sp) -/* AD66B4 8005F514 46085400 */ add.s $f16, $f10, $f8 -/* AD66B8 8005F518 46148482 */ mul.s $f18, $f16, $f20 -/* AD66BC 8005F51C 0C017A07 */ jal func_8005E81C -/* AD66C0 8005F520 E7B20078 */ swc1 $f18, 0x78($sp) -/* AD66C4 8005F524 92CC0013 */ lbu $t4, 0x13($s6) -/* AD66C8 8005F528 318D0040 */ andi $t5, $t4, 0x40 -/* AD66CC 8005F52C 51A00014 */ beql $t5, $zero, .L8005F580 -/* AD66D0 8005F530 8FBF0054 */ lw $ra, 0x54($sp) -.L8005F534: -/* AD66D4 8005F534 8EEF0018 */ lw $t7, 0x18($s7) -/* AD66D8 8005F538 8EEE001C */ lw $t6, 0x1c($s7) -/* AD66DC 8005F53C 2610005C */ addiu $s0, $s0, 0x5c -/* AD66E0 8005F540 01FE0019 */ multu $t7, $fp -/* AD66E4 8005F544 0000C012 */ mflo $t8 -/* AD66E8 8005F548 01D8C821 */ addu $t9, $t6, $t8 -/* AD66EC 8005F54C 0219082B */ sltu $at, $s0, $t9 -/* AD66F0 8005F550 1420FFC6 */ bnez $at, .L8005F46C -/* AD66F4 8005F554 00000000 */ nop -.L8005F558: -/* AD66F8 8005F558 8FA2008C */ lw $v0, 0x8c($sp) -.L8005F55C: -/* AD66FC 8005F55C 26730040 */ addiu $s3, $s3, 0x40 -/* AD6700 8005F560 8C490018 */ lw $t1, 0x18($v0) -/* AD6704 8005F564 8C48001C */ lw $t0, 0x1c($v0) -/* AD6708 8005F568 00095180 */ sll $t2, $t1, 6 -/* AD670C 8005F56C 010A5821 */ addu $t3, $t0, $t2 -/* AD6710 8005F570 026B082B */ sltu $at, $s3, $t3 -/* AD6714 8005F574 1420FFB1 */ bnez $at, .L8005F43C -/* AD6718 8005F578 00000000 */ nop -.L8005F57C: -/* AD671C 8005F57C 8FBF0054 */ lw $ra, 0x54($sp) -.L8005F580: -/* AD6720 8005F580 D7B40028 */ ldc1 $f20, 0x28($sp) -/* AD6724 8005F584 8FB00030 */ lw $s0, 0x30($sp) -/* AD6728 8005F588 8FB10034 */ lw $s1, 0x34($sp) -/* AD672C 8005F58C 8FB20038 */ lw $s2, 0x38($sp) -/* AD6730 8005F590 8FB3003C */ lw $s3, 0x3c($sp) -/* AD6734 8005F594 8FB40040 */ lw $s4, 0x40($sp) -/* AD6738 8005F598 8FB50044 */ lw $s5, 0x44($sp) -/* AD673C 8005F59C 8FB60048 */ lw $s6, 0x48($sp) -/* AD6740 8005F5A0 8FB7004C */ lw $s7, 0x4c($sp) -/* AD6744 8005F5A4 8FBE0050 */ lw $fp, 0x50($sp) -/* AD6748 8005F5A8 03E00008 */ jr $ra -/* AD674C 8005F5AC 27BD0098 */ addiu $sp, $sp, 0x98 - -/* AD6750 8005F5B0 27BDFF70 */ addiu $sp, $sp, -0x90 -/* AD6754 8005F5B4 AFBF004C */ sw $ra, 0x4c($sp) -/* AD6758 8005F5B8 AFBE0048 */ sw $fp, 0x48($sp) -/* AD675C 8005F5BC AFB70044 */ sw $s7, 0x44($sp) -/* AD6760 8005F5C0 AFB60040 */ sw $s6, 0x40($sp) -/* AD6764 8005F5C4 AFB5003C */ sw $s5, 0x3c($sp) -/* AD6768 8005F5C8 AFB40038 */ sw $s4, 0x38($sp) -/* AD676C 8005F5CC AFB30034 */ sw $s3, 0x34($sp) -/* AD6770 8005F5D0 AFB20030 */ sw $s2, 0x30($sp) -/* AD6774 8005F5D4 AFB1002C */ sw $s1, 0x2c($sp) -/* AD6778 8005F5D8 AFB00028 */ sw $s0, 0x28($sp) -/* AD677C 8005F5DC AFA40090 */ sw $a0, 0x90($sp) -/* AD6780 8005F5E0 AFA50094 */ sw $a1, 0x94($sp) -/* AD6784 8005F5E4 8CCE0018 */ lw $t6, 0x18($a2) -/* AD6788 8005F5E8 00E09825 */ move $s3, $a3 -/* AD678C 8005F5EC 00C0A825 */ move $s5, $a2 -/* AD6790 8005F5F0 59C0006C */ blezl $t6, .L8005F7A4 -/* AD6794 8005F5F4 8FBF004C */ lw $ra, 0x4c($sp) -/* AD6798 8005F5F8 8CCF001C */ lw $t7, 0x1c($a2) -/* AD679C 8005F5FC 24F60018 */ addiu $s6, $a3, 0x18 -/* AD67A0 8005F600 02C02025 */ move $a0, $s6 -/* AD67A4 8005F604 51E00067 */ beql $t7, $zero, .L8005F7A4 -/* AD67A8 8005F608 8FBF004C */ lw $ra, 0x4c($sp) -/* AD67AC 8005F60C 0C0177D4 */ jal func_8005DF50 -/* AD67B0 8005F610 AFA60098 */ sw $a2, 0x98($sp) -/* AD67B4 8005F614 24120001 */ li $s2, 1 -/* AD67B8 8005F618 10520061 */ beq $v0, $s2, .L8005F7A0 -/* AD67BC 8005F61C 3C178016 */ lui $s7, %hi(D_8015E230) # $s7, 0x8016 -/* AD67C0 8005F620 26F7E230 */ addiu $s7, %lo(D_8015E230) # addiu $s7, $s7, -0x1dd0 -/* AD67C4 8005F624 26710058 */ addiu $s1, $s3, 0x58 -/* AD67C8 8005F628 2670004C */ addiu $s0, $s3, 0x4c -/* AD67CC 8005F62C 02003825 */ move $a3, $s0 -/* AD67D0 8005F630 02202825 */ move $a1, $s1 -/* AD67D4 8005F634 02E02025 */ move $a0, $s7 -/* AD67D8 8005F638 0C0338F0 */ jal func_800CE3C0 -/* AD67DC 8005F63C 26660064 */ addiu $a2, $s3, 0x64 -/* AD67E0 8005F640 3C1E8016 */ lui $fp, %hi(D_8015E268) # $fp, 0x8016 -/* AD67E4 8005F644 27DEE268 */ addiu $fp, %lo(D_8015E268) # addiu $fp, $fp, -0x1d98 -/* AD67E8 8005F648 03C02025 */ move $a0, $fp -/* AD67EC 8005F64C 02002825 */ move $a1, $s0 -/* AD67F0 8005F650 26660040 */ addiu $a2, $s3, 0x40 -/* AD67F4 8005F654 0C0338F0 */ jal func_800CE3C0 -/* AD67F8 8005F658 02203825 */ move $a3, $s1 -/* AD67FC 8005F65C 8FA30098 */ lw $v1, 0x98($sp) -/* AD6800 8005F660 27B4007C */ addiu $s4, $sp, 0x7c -/* AD6804 8005F664 8C780018 */ lw $t8, 0x18($v1) -/* AD6808 8005F668 8C70001C */ lw $s0, 0x1c($v1) -/* AD680C 8005F66C 0018C980 */ sll $t9, $t8, 6 -/* AD6810 8005F670 02194021 */ addu $t0, $s0, $t9 -/* AD6814 8005F674 0208082B */ sltu $at, $s0, $t0 -/* AD6818 8005F678 5020004A */ beql $at, $zero, .L8005F7A4 -/* AD681C 8005F67C 8FBF004C */ lw $ra, 0x4c($sp) -.L8005F680: -/* AD6820 8005F680 0C0177CB */ jal func_8005DF2C -/* AD6824 8005F684 02002025 */ move $a0, $s0 -/* AD6828 8005F688 1052003D */ beq $v0, $s2, .L8005F780 -/* AD682C 8005F68C 02002025 */ move $a0, $s0 -/* AD6830 8005F690 0C0177DD */ jal func_8005DF74 -/* AD6834 8005F694 02C02825 */ move $a1, $s6 -/* AD6838 8005F698 10520039 */ beq $v0, $s2, .L8005F780 -/* AD683C 8005F69C 26110030 */ addiu $s1, $s0, 0x30 -/* AD6840 8005F6A0 02202025 */ move $a0, $s1 -/* AD6844 8005F6A4 02E02825 */ move $a1, $s7 -/* AD6848 8005F6A8 0C033A4D */ jal func_800CE934 -/* AD684C 8005F6AC 02803025 */ move $a2, $s4 -/* AD6850 8005F6B0 10520006 */ beq $v0, $s2, .L8005F6CC -/* AD6854 8005F6B4 02202025 */ move $a0, $s1 -/* AD6858 8005F6B8 03C02825 */ move $a1, $fp -/* AD685C 8005F6BC 0C033A4D */ jal func_800CE934 -/* AD6860 8005F6C0 02803025 */ move $a2, $s4 -/* AD6864 8005F6C4 5452002F */ bnel $v0, $s2, .L8005F784 -/* AD6868 8005F6C8 8EAB0018 */ lw $t3, 0x18($s5) -.L8005F6CC: -/* AD686C 8005F6CC 27B2006C */ addiu $s2, $sp, 0x6c -/* AD6870 8005F6D0 02402025 */ move $a0, $s2 -/* AD6874 8005F6D4 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD6878 8005F6D8 02202825 */ move $a1, $s1 -/* AD687C 8005F6DC C6640058 */ lwc1 $f4, 0x58($s3) -/* AD6880 8005F6E0 C6660064 */ lwc1 $f6, 0x64($s3) -/* AD6884 8005F6E4 C66A004C */ lwc1 $f10, 0x4c($s3) -/* AD6888 8005F6E8 C6720040 */ lwc1 $f18, 0x40($s3) -/* AD688C 8005F6EC 46062200 */ add.s $f8, $f4, $f6 -/* AD6890 8005F6F0 3C013E80 */ li $at, 0x3E800000 # 0.000000 -/* AD6894 8005F6F4 44810000 */ mtc1 $at, $f0 -/* AD6898 8005F6F8 27A90060 */ addiu $t1, $sp, 0x60 -/* AD689C 8005F6FC 460A4400 */ add.s $f16, $f8, $f10 -/* AD68A0 8005F700 8FA40090 */ lw $a0, 0x90($sp) -/* AD68A4 8005F704 8FA50098 */ lw $a1, 0x98($sp) -/* AD68A8 8005F708 02003025 */ move $a2, $s0 -/* AD68AC 8005F70C 46128100 */ add.s $f4, $f16, $f18 -/* AD68B0 8005F710 02403825 */ move $a3, $s2 -/* AD68B4 8005F714 46002182 */ mul.s $f6, $f4, $f0 -/* AD68B8 8005F718 E7A60060 */ swc1 $f6, 0x60($sp) -/* AD68BC 8005F71C C66A0068 */ lwc1 $f10, 0x68($s3) -/* AD68C0 8005F720 C668005C */ lwc1 $f8, 0x5c($s3) -/* AD68C4 8005F724 C6720050 */ lwc1 $f18, 0x50($s3) -/* AD68C8 8005F728 C6660044 */ lwc1 $f6, 0x44($s3) -/* AD68CC 8005F72C 460A4400 */ add.s $f16, $f8, $f10 -/* AD68D0 8005F730 46128100 */ add.s $f4, $f16, $f18 -/* AD68D4 8005F734 46062200 */ add.s $f8, $f4, $f6 -/* AD68D8 8005F738 46004282 */ mul.s $f10, $f8, $f0 -/* AD68DC 8005F73C E7AA0064 */ swc1 $f10, 0x64($sp) -/* AD68E0 8005F740 C672006C */ lwc1 $f18, 0x6c($s3) -/* AD68E4 8005F744 C6700060 */ lwc1 $f16, 0x60($s3) -/* AD68E8 8005F748 C6660054 */ lwc1 $f6, 0x54($s3) -/* AD68EC 8005F74C C66A0048 */ lwc1 $f10, 0x48($s3) -/* AD68F0 8005F750 46128100 */ add.s $f4, $f16, $f18 -/* AD68F4 8005F754 AFB4001C */ sw $s4, 0x1c($sp) -/* AD68F8 8005F758 AFA90018 */ sw $t1, 0x18($sp) -/* AD68FC 8005F75C AFB60014 */ sw $s6, 0x14($sp) -/* AD6900 8005F760 46062200 */ add.s $f8, $f4, $f6 -/* AD6904 8005F764 AFB30010 */ sw $s3, 0x10($sp) -/* AD6908 8005F768 460A4400 */ add.s $f16, $f8, $f10 -/* AD690C 8005F76C 46008482 */ mul.s $f18, $f16, $f0 -/* AD6910 8005F770 0C017A07 */ jal func_8005E81C -/* AD6914 8005F774 E7B20068 */ swc1 $f18, 0x68($sp) -/* AD6918 8005F778 1000000A */ b .L8005F7A4 -/* AD691C 8005F77C 8FBF004C */ lw $ra, 0x4c($sp) -.L8005F780: -/* AD6920 8005F780 8EAB0018 */ lw $t3, 0x18($s5) -.L8005F784: -/* AD6924 8005F784 8EAA001C */ lw $t2, 0x1c($s5) -/* AD6928 8005F788 26100040 */ addiu $s0, $s0, 0x40 -/* AD692C 8005F78C 000B6180 */ sll $t4, $t3, 6 -/* AD6930 8005F790 014C6821 */ addu $t5, $t2, $t4 -/* AD6934 8005F794 020D082B */ sltu $at, $s0, $t5 -/* AD6938 8005F798 1420FFB9 */ bnez $at, .L8005F680 -/* AD693C 8005F79C 00000000 */ nop -.L8005F7A0: -/* AD6940 8005F7A0 8FBF004C */ lw $ra, 0x4c($sp) -.L8005F7A4: -/* AD6944 8005F7A4 8FB00028 */ lw $s0, 0x28($sp) -/* AD6948 8005F7A8 8FB1002C */ lw $s1, 0x2c($sp) -/* AD694C 8005F7AC 8FB20030 */ lw $s2, 0x30($sp) -/* AD6950 8005F7B0 8FB30034 */ lw $s3, 0x34($sp) -/* AD6954 8005F7B4 8FB40038 */ lw $s4, 0x38($sp) -/* AD6958 8005F7B8 8FB5003C */ lw $s5, 0x3c($sp) -/* AD695C 8005F7BC 8FB60040 */ lw $s6, 0x40($sp) -/* AD6960 8005F7C0 8FB70044 */ lw $s7, 0x44($sp) -/* AD6964 8005F7C4 8FBE0048 */ lw $fp, 0x48($sp) -/* AD6968 8005F7C8 03E00008 */ jr $ra -/* AD696C 8005F7CC 27BD0090 */ addiu $sp, $sp, 0x90 - -/* AD6970 8005F7D0 27BDFF68 */ addiu $sp, $sp, -0x98 -/* AD6974 8005F7D4 AFBF0054 */ sw $ra, 0x54($sp) -/* AD6978 8005F7D8 AFBE0050 */ sw $fp, 0x50($sp) -/* AD697C 8005F7DC AFB7004C */ sw $s7, 0x4c($sp) -/* AD6980 8005F7E0 AFB60048 */ sw $s6, 0x48($sp) -/* AD6984 8005F7E4 AFB50044 */ sw $s5, 0x44($sp) -/* AD6988 8005F7E8 AFB40040 */ sw $s4, 0x40($sp) -/* AD698C 8005F7EC AFB3003C */ sw $s3, 0x3c($sp) -/* AD6990 8005F7F0 AFB20038 */ sw $s2, 0x38($sp) -/* AD6994 8005F7F4 AFB10034 */ sw $s1, 0x34($sp) -/* AD6998 8005F7F8 AFB00030 */ sw $s0, 0x30($sp) -/* AD699C 8005F7FC F7B40028 */ sdc1 $f20, 0x28($sp) -/* AD69A0 8005F800 AFA5009C */ sw $a1, 0x9c($sp) -/* AD69A4 8005F804 8CEE0018 */ lw $t6, 0x18($a3) -/* AD69A8 8005F808 00C08025 */ move $s0, $a2 -/* AD69AC 8005F80C 00E0A825 */ move $s5, $a3 -/* AD69B0 8005F810 0080F025 */ move $fp, $a0 -/* AD69B4 8005F814 19C00079 */ blez $t6, .L8005F9FC -/* AD69B8 8005F818 00E0B825 */ move $s7, $a3 -/* AD69BC 8005F81C 8CEF001C */ lw $t7, 0x1c($a3) -/* AD69C0 8005F820 24D60018 */ addiu $s6, $a2, 0x18 -/* AD69C4 8005F824 51E00076 */ beql $t7, $zero, .L8005FA00 -/* AD69C8 8005F828 8FBF0054 */ lw $ra, 0x54($sp) -/* AD69CC 8005F82C 0C0177CB */ jal func_8005DF2C -/* AD69D0 8005F830 02C02025 */ move $a0, $s6 -/* AD69D4 8005F834 24140001 */ li $s4, 1 -/* AD69D8 8005F838 10540070 */ beq $v0, $s4, .L8005F9FC -/* AD69DC 8005F83C 3C048016 */ lui $a0, %hi(D_8015E2A0) # $a0, 0x8016 -/* AD69E0 8005F840 26110058 */ addiu $s1, $s0, 0x58 -/* AD69E4 8005F844 2612004C */ addiu $s2, $s0, 0x4c -/* AD69E8 8005F848 02403825 */ move $a3, $s2 -/* AD69EC 8005F84C 02202825 */ move $a1, $s1 -/* AD69F0 8005F850 2484E2A0 */ addiu $a0, %lo(D_8015E2A0) # addiu $a0, $a0, -0x1d60 -/* AD69F4 8005F854 0C0338F0 */ jal func_800CE3C0 -/* AD69F8 8005F858 26060064 */ addiu $a2, $s0, 0x64 -/* AD69FC 8005F85C 3C048016 */ lui $a0, %hi(D_8015E2D8) # $a0, 0x8016 -/* AD6A00 8005F860 2484E2D8 */ addiu $a0, %lo(D_8015E2D8) # addiu $a0, $a0, -0x1d28 -/* AD6A04 8005F864 02202825 */ move $a1, $s1 -/* AD6A08 8005F868 02403025 */ move $a2, $s2 -/* AD6A0C 8005F86C 0C0338F0 */ jal func_800CE3C0 -/* AD6A10 8005F870 26070040 */ addiu $a3, $s0, 0x40 -/* AD6A14 8005F874 8EB80018 */ lw $t8, 0x18($s5) -/* AD6A18 8005F878 8EB1001C */ lw $s1, 0x1c($s5) -/* AD6A1C 8005F87C 0018C980 */ sll $t9, $t8, 6 -/* AD6A20 8005F880 02394021 */ addu $t0, $s1, $t9 -/* AD6A24 8005F884 0228082B */ sltu $at, $s1, $t0 -/* AD6A28 8005F888 1020005C */ beqz $at, .L8005F9FC -/* AD6A2C 8005F88C 3C013E80 */ li $at, 0x3E800000 # 0.000000 -/* AD6A30 8005F890 4481A000 */ mtc1 $at, $f20 -/* AD6A34 8005F894 27B30088 */ addiu $s3, $sp, 0x88 -.L8005F898: -/* AD6A38 8005F898 0C0177D4 */ jal func_8005DF50 -/* AD6A3C 8005F89C 02202025 */ move $a0, $s1 -/* AD6A40 8005F8A0 1054004E */ beq $v0, $s4, .L8005F9DC -/* AD6A44 8005F8A4 02C02025 */ move $a0, $s6 -/* AD6A48 8005F8A8 0C0177DD */ jal func_8005DF74 -/* AD6A4C 8005F8AC 02202825 */ move $a1, $s1 -/* AD6A50 8005F8B0 1054004A */ beq $v0, $s4, .L8005F9DC -/* AD6A54 8005F8B4 26320030 */ addiu $s2, $s1, 0x30 -/* AD6A58 8005F8B8 3C058016 */ lui $a1, %hi(D_8015E2A0) # $a1, 0x8016 -/* AD6A5C 8005F8BC 24A5E2A0 */ addiu $a1, %lo(D_8015E2A0) # addiu $a1, $a1, -0x1d60 -/* AD6A60 8005F8C0 02402025 */ move $a0, $s2 -/* AD6A64 8005F8C4 0C033A4D */ jal func_800CE934 -/* AD6A68 8005F8C8 02603025 */ move $a2, $s3 -/* AD6A6C 8005F8CC 10540006 */ beq $v0, $s4, .L8005F8E8 -/* AD6A70 8005F8D0 02402025 */ move $a0, $s2 -/* AD6A74 8005F8D4 3C058016 */ lui $a1, %hi(D_8015E2D8) # $a1, 0x8016 -/* AD6A78 8005F8D8 24A5E2D8 */ addiu $a1, %lo(D_8015E2D8) # addiu $a1, $a1, -0x1d28 -/* AD6A7C 8005F8DC 0C033A4D */ jal func_800CE934 -/* AD6A80 8005F8E0 02603025 */ move $a2, $s3 -/* AD6A84 8005F8E4 1454003D */ bne $v0, $s4, .L8005F9DC -.L8005F8E8: -/* AD6A88 8005F8E8 03C02025 */ move $a0, $fp -/* AD6A8C 8005F8EC 02002825 */ move $a1, $s0 -/* AD6A90 8005F8F0 0C017486 */ jal func_8005D218 -/* AD6A94 8005F8F4 02603025 */ move $a2, $s3 -/* AD6A98 8005F8F8 50400039 */ beql $v0, $zero, .L8005F9E0 -/* AD6A9C 8005F8FC 8EF80018 */ lw $t8, 0x18($s7) -/* AD6AA0 8005F900 86290030 */ lh $t1, 0x30($s1) -/* AD6AA4 8005F904 27AC0068 */ addiu $t4, $sp, 0x68 -/* AD6AA8 8005F908 03C02025 */ move $a0, $fp -/* AD6AAC 8005F90C 44892000 */ mtc1 $t1, $f4 -/* AD6AB0 8005F910 02002825 */ move $a1, $s0 -/* AD6AB4 8005F914 02C03025 */ move $a2, $s6 -/* AD6AB8 8005F918 468021A0 */ cvt.s.w $f6, $f4 -/* AD6ABC 8005F91C 27A70074 */ addiu $a3, $sp, 0x74 -/* AD6AC0 8005F920 E7A60068 */ swc1 $f6, 0x68($sp) -/* AD6AC4 8005F924 862A0032 */ lh $t2, 0x32($s1) -/* AD6AC8 8005F928 448A4000 */ mtc1 $t2, $f8 -/* AD6ACC 8005F92C 00000000 */ nop -/* AD6AD0 8005F930 468042A0 */ cvt.s.w $f10, $f8 -/* AD6AD4 8005F934 E7AA006C */ swc1 $f10, 0x6c($sp) -/* AD6AD8 8005F938 862B0034 */ lh $t3, 0x34($s1) -/* AD6ADC 8005F93C 448B8000 */ mtc1 $t3, $f16 -/* AD6AE0 8005F940 00000000 */ nop -/* AD6AE4 8005F944 468084A0 */ cvt.s.w $f18, $f16 -/* AD6AE8 8005F948 E7B20070 */ swc1 $f18, 0x70($sp) -/* AD6AEC 8005F94C C6060064 */ lwc1 $f6, 0x64($s0) -/* AD6AF0 8005F950 C6040058 */ lwc1 $f4, 0x58($s0) -/* AD6AF4 8005F954 C60A004C */ lwc1 $f10, 0x4c($s0) -/* AD6AF8 8005F958 C6120040 */ lwc1 $f18, 0x40($s0) -/* AD6AFC 8005F95C 46062200 */ add.s $f8, $f4, $f6 -/* AD6B00 8005F960 460A4400 */ add.s $f16, $f8, $f10 -/* AD6B04 8005F964 46128100 */ add.s $f4, $f16, $f18 -/* AD6B08 8005F968 46142182 */ mul.s $f6, $f4, $f20 -/* AD6B0C 8005F96C E7A60074 */ swc1 $f6, 0x74($sp) -/* AD6B10 8005F970 C60A0068 */ lwc1 $f10, 0x68($s0) -/* AD6B14 8005F974 C608005C */ lwc1 $f8, 0x5c($s0) -/* AD6B18 8005F978 C6120050 */ lwc1 $f18, 0x50($s0) -/* AD6B1C 8005F97C C6060044 */ lwc1 $f6, 0x44($s0) -/* AD6B20 8005F980 460A4400 */ add.s $f16, $f8, $f10 -/* AD6B24 8005F984 46128100 */ add.s $f4, $f16, $f18 -/* AD6B28 8005F988 46062200 */ add.s $f8, $f4, $f6 -/* AD6B2C 8005F98C 46144282 */ mul.s $f10, $f8, $f20 -/* AD6B30 8005F990 E7AA0078 */ swc1 $f10, 0x78($sp) -/* AD6B34 8005F994 C612006C */ lwc1 $f18, 0x6c($s0) -/* AD6B38 8005F998 C6100060 */ lwc1 $f16, 0x60($s0) -/* AD6B3C 8005F99C C6060054 */ lwc1 $f6, 0x54($s0) -/* AD6B40 8005F9A0 C60A0048 */ lwc1 $f10, 0x48($s0) -/* AD6B44 8005F9A4 46128100 */ add.s $f4, $f16, $f18 -/* AD6B48 8005F9A8 AFB3001C */ sw $s3, 0x1c($sp) -/* AD6B4C 8005F9AC AFAC0018 */ sw $t4, 0x18($sp) -/* AD6B50 8005F9B0 AFB10014 */ sw $s1, 0x14($sp) -/* AD6B54 8005F9B4 46062200 */ add.s $f8, $f4, $f6 -/* AD6B58 8005F9B8 AFB50010 */ sw $s5, 0x10($sp) -/* AD6B5C 8005F9BC 460A4400 */ add.s $f16, $f8, $f10 -/* AD6B60 8005F9C0 46148482 */ mul.s $f18, $f16, $f20 -/* AD6B64 8005F9C4 0C017A07 */ jal func_8005E81C -/* AD6B68 8005F9C8 E7B2007C */ swc1 $f18, 0x7c($sp) -/* AD6B6C 8005F9CC 92AD0013 */ lbu $t5, 0x13($s5) -/* AD6B70 8005F9D0 31AE0040 */ andi $t6, $t5, 0x40 -/* AD6B74 8005F9D4 51C0000A */ beql $t6, $zero, .L8005FA00 -/* AD6B78 8005F9D8 8FBF0054 */ lw $ra, 0x54($sp) -.L8005F9DC: -/* AD6B7C 8005F9DC 8EF80018 */ lw $t8, 0x18($s7) -.L8005F9E0: -/* AD6B80 8005F9E0 8EEF001C */ lw $t7, 0x1c($s7) -/* AD6B84 8005F9E4 26310040 */ addiu $s1, $s1, 0x40 -/* AD6B88 8005F9E8 0018C980 */ sll $t9, $t8, 6 -/* AD6B8C 8005F9EC 01F94021 */ addu $t0, $t7, $t9 -/* AD6B90 8005F9F0 0228082B */ sltu $at, $s1, $t0 -/* AD6B94 8005F9F4 1420FFA8 */ bnez $at, .L8005F898 -/* AD6B98 8005F9F8 00000000 */ nop -.L8005F9FC: -/* AD6B9C 8005F9FC 8FBF0054 */ lw $ra, 0x54($sp) -.L8005FA00: -/* AD6BA0 8005FA00 D7B40028 */ ldc1 $f20, 0x28($sp) -/* AD6BA4 8005FA04 8FB00030 */ lw $s0, 0x30($sp) -/* AD6BA8 8005FA08 8FB10034 */ lw $s1, 0x34($sp) -/* AD6BAC 8005FA0C 8FB20038 */ lw $s2, 0x38($sp) -/* AD6BB0 8005FA10 8FB3003C */ lw $s3, 0x3c($sp) -/* AD6BB4 8005FA14 8FB40040 */ lw $s4, 0x40($sp) -/* AD6BB8 8005FA18 8FB50044 */ lw $s5, 0x44($sp) -/* AD6BBC 8005FA1C 8FB60048 */ lw $s6, 0x48($sp) -/* AD6BC0 8005FA20 8FB7004C */ lw $s7, 0x4c($sp) -/* AD6BC4 8005FA24 8FBE0050 */ lw $fp, 0x50($sp) -/* AD6BC8 8005FA28 03E00008 */ jr $ra -/* AD6BCC 8005FA2C 27BD0098 */ addiu $sp, $sp, 0x98 - -/* AD6BD0 8005FA30 27BDFF88 */ addiu $sp, $sp, -0x78 -/* AD6BD4 8005FA34 AFBF002C */ sw $ra, 0x2c($sp) -/* AD6BD8 8005FA38 AFB10028 */ sw $s1, 0x28($sp) -/* AD6BDC 8005FA3C AFB00024 */ sw $s0, 0x24($sp) -/* AD6BE0 8005FA40 AFA40078 */ sw $a0, 0x78($sp) -/* AD6BE4 8005FA44 AFA5007C */ sw $a1, 0x7c($sp) -/* AD6BE8 8005FA48 84CE0040 */ lh $t6, 0x40($a2) -/* AD6BEC 8005FA4C 00E08025 */ move $s0, $a3 -/* AD6BF0 8005FA50 00C08825 */ move $s1, $a2 -/* AD6BF4 8005FA54 59C00067 */ blezl $t6, .L8005FBF4 -/* AD6BF8 8005FA58 8FBF002C */ lw $ra, 0x2c($sp) -/* AD6BFC 8005FA5C 84CF0042 */ lh $t7, 0x42($a2) -/* AD6C00 8005FA60 59E00064 */ blezl $t7, .L8005FBF4 -/* AD6C04 8005FA64 8FBF002C */ lw $ra, 0x2c($sp) -/* AD6C08 8005FA68 84F80040 */ lh $t8, 0x40($a3) -/* AD6C0C 8005FA6C 5B000061 */ blezl $t8, .L8005FBF4 -/* AD6C10 8005FA70 8FBF002C */ lw $ra, 0x2c($sp) -/* AD6C14 8005FA74 84F90042 */ lh $t9, 0x42($a3) -/* AD6C18 8005FA78 24E40018 */ addiu $a0, $a3, 0x18 -/* AD6C1C 8005FA7C 5B20005D */ blezl $t9, .L8005FBF4 -/* AD6C20 8005FA80 8FBF002C */ lw $ra, 0x2c($sp) -/* AD6C24 8005FA84 0C0177D4 */ jal func_8005DF50 -/* AD6C28 8005FA88 AFA40034 */ sw $a0, 0x34($sp) -/* AD6C2C 8005FA8C 24010001 */ li $at, 1 -/* AD6C30 8005FA90 10410057 */ beq $v0, $at, .L8005FBF0 -/* AD6C34 8005FA94 26240018 */ addiu $a0, $s1, 0x18 -/* AD6C38 8005FA98 0C0177CB */ jal func_8005DF2C -/* AD6C3C 8005FA9C AFA40038 */ sw $a0, 0x38($sp) -/* AD6C40 8005FAA0 24010001 */ li $at, 1 -/* AD6C44 8005FAA4 10410052 */ beq $v0, $at, .L8005FBF0 -/* AD6C48 8005FAA8 8FA40038 */ lw $a0, 0x38($sp) -/* AD6C4C 8005FAAC 0C0177DD */ jal func_8005DF74 -/* AD6C50 8005FAB0 8FA50034 */ lw $a1, 0x34($sp) -/* AD6C54 8005FAB4 24010001 */ li $at, 1 -/* AD6C58 8005FAB8 1041004D */ beq $v0, $at, .L8005FBF0 -/* AD6C5C 8005FABC 26240040 */ addiu $a0, $s1, 0x40 -/* AD6C60 8005FAC0 26050040 */ addiu $a1, $s0, 0x40 -/* AD6C64 8005FAC4 27A6006C */ addiu $a2, $sp, 0x6c -/* AD6C68 8005FAC8 0C033FCD */ jal func_800CFF34 -/* AD6C6C 8005FACC 27A70068 */ addiu $a3, $sp, 0x68 -/* AD6C70 8005FAD0 24010001 */ li $at, 1 -/* AD6C74 8005FAD4 14410046 */ bne $v0, $at, .L8005FBF0 -/* AD6C78 8005FAD8 27A40050 */ addiu $a0, $sp, 0x50 -/* AD6C7C 8005FADC 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD6C80 8005FAE0 26250046 */ addiu $a1, $s1, 0x46 -/* AD6C84 8005FAE4 26050046 */ addiu $a1, $s0, 0x46 -/* AD6C88 8005FAE8 AFA5003C */ sw $a1, 0x3c($sp) -/* AD6C8C 8005FAEC 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD6C90 8005FAF0 27A40044 */ addiu $a0, $sp, 0x44 -/* AD6C94 8005FAF4 C7A40068 */ lwc1 $f4, 0x68($sp) -/* AD6C98 8005FAF8 3C018014 */ lui $at, %hi(D_8013AD0C) -/* AD6C9C 8005FAFC C426AD0C */ lwc1 $f6, %lo(D_8013AD0C)($at) -/* AD6CA0 8005FB00 46002005 */ abs.s $f0, $f4 -/* AD6CA4 8005FB04 8FA5003C */ lw $a1, 0x3c($sp) -/* AD6CA8 8005FB08 4606003C */ c.lt.s $f0, $f6 -/* AD6CAC 8005FB0C 00000000 */ nop -/* AD6CB0 8005FB10 45010029 */ bc1t .L8005FBB8 -/* AD6CB4 8005FB14 00000000 */ nop -/* AD6CB8 8005FB18 86080040 */ lh $t0, 0x40($s0) -/* AD6CBC 8005FB1C 86090048 */ lh $t1, 0x48($s0) -/* AD6CC0 8005FB20 860A0044 */ lh $t2, 0x44($s0) -/* AD6CC4 8005FB24 44884000 */ mtc1 $t0, $f8 -/* AD6CC8 8005FB28 860B0042 */ lh $t3, 0x42($s0) -/* AD6CCC 8005FB2C 44898000 */ mtc1 $t1, $f16 -/* AD6CD0 8005FB30 468042A0 */ cvt.s.w $f10, $f8 -/* AD6CD4 8005FB34 448A3000 */ mtc1 $t2, $f6 -/* AD6CD8 8005FB38 3C013F00 */ li $at, 0x3F000000 # 0.000000 -/* AD6CDC 8005FB3C 468084A0 */ cvt.s.w $f18, $f16 -/* AD6CE0 8005FB40 46045003 */ div.s $f0, $f10, $f4 -/* AD6CE4 8005FB44 448B2000 */ mtc1 $t3, $f4 -/* AD6CE8 8005FB48 46803220 */ cvt.s.w $f8, $f6 -/* AD6CEC 8005FB4C 44813000 */ mtc1 $at, $f6 -/* AD6CF0 8005FB50 46802420 */ cvt.s.w $f16, $f4 -/* AD6CF4 8005FB54 46089280 */ add.s $f10, $f18, $f8 -/* AD6CF8 8005FB58 46068482 */ mul.s $f18, $f16, $f6 -/* AD6CFC 8005FB5C 46125200 */ add.s $f8, $f10, $f18 -/* AD6D00 8005FB60 E7A80060 */ swc1 $f8, 0x60($sp) -/* AD6D04 8005FB64 862D0046 */ lh $t5, 0x46($s1) -/* AD6D08 8005FB68 860C0046 */ lh $t4, 0x46($s0) -/* AD6D0C 8005FB6C 448D8000 */ mtc1 $t5, $f16 -/* AD6D10 8005FB70 448C2000 */ mtc1 $t4, $f4 -/* AD6D14 8005FB74 468081A0 */ cvt.s.w $f6, $f16 -/* AD6D18 8005FB78 468020A0 */ cvt.s.w $f2, $f4 -/* AD6D1C 8005FB7C 46023281 */ sub.s $f10, $f6, $f2 -/* AD6D20 8005FB80 46005482 */ mul.s $f18, $f10, $f0 -/* AD6D24 8005FB84 46029200 */ add.s $f8, $f18, $f2 -/* AD6D28 8005FB88 E7A8005C */ swc1 $f8, 0x5c($sp) -/* AD6D2C 8005FB8C 862F004A */ lh $t7, 0x4a($s1) -/* AD6D30 8005FB90 860E004A */ lh $t6, 0x4a($s0) -/* AD6D34 8005FB94 448F8000 */ mtc1 $t7, $f16 -/* AD6D38 8005FB98 448E2000 */ mtc1 $t6, $f4 -/* AD6D3C 8005FB9C 468081A0 */ cvt.s.w $f6, $f16 -/* AD6D40 8005FBA0 46802320 */ cvt.s.w $f12, $f4 -/* AD6D44 8005FBA4 460C3281 */ sub.s $f10, $f6, $f12 -/* AD6D48 8005FBA8 46005482 */ mul.s $f18, $f10, $f0 -/* AD6D4C 8005FBAC 460C9200 */ add.s $f8, $f18, $f12 -/* AD6D50 8005FBB0 10000003 */ b .L8005FBC0 -/* AD6D54 8005FBB4 E7A80064 */ swc1 $f8, 0x64($sp) -.L8005FBB8: -/* AD6D58 8005FBB8 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD6D5C 8005FBBC 27A4005C */ addiu $a0, $sp, 0x5c -.L8005FBC0: -/* AD6D60 8005FBC0 8FB80034 */ lw $t8, 0x34($sp) -/* AD6D64 8005FBC4 27B90044 */ addiu $t9, $sp, 0x44 -/* AD6D68 8005FBC8 27A8005C */ addiu $t0, $sp, 0x5c -/* AD6D6C 8005FBCC AFA8001C */ sw $t0, 0x1c($sp) -/* AD6D70 8005FBD0 AFB90018 */ sw $t9, 0x18($sp) -/* AD6D74 8005FBD4 8FA40078 */ lw $a0, 0x78($sp) -/* AD6D78 8005FBD8 02202825 */ move $a1, $s1 -/* AD6D7C 8005FBDC 8FA60038 */ lw $a2, 0x38($sp) -/* AD6D80 8005FBE0 27A70050 */ addiu $a3, $sp, 0x50 -/* AD6D84 8005FBE4 AFB00010 */ sw $s0, 0x10($sp) -/* AD6D88 8005FBE8 0C017A07 */ jal func_8005E81C -/* AD6D8C 8005FBEC AFB80014 */ sw $t8, 0x14($sp) -.L8005FBF0: -/* AD6D90 8005FBF0 8FBF002C */ lw $ra, 0x2c($sp) -.L8005FBF4: -/* AD6D94 8005FBF4 8FB00024 */ lw $s0, 0x24($sp) -/* AD6D98 8005FBF8 8FB10028 */ lw $s1, 0x28($sp) -/* AD6D9C 8005FBFC 03E00008 */ jr $ra -/* AD6DA0 8005FC00 27BD0078 */ addiu $sp, $sp, 0x78 - -/* AD6DA4 8005FC04 27BDFF80 */ addiu $sp, $sp, -0x80 -/* AD6DA8 8005FC08 AFBF0044 */ sw $ra, 0x44($sp) -/* AD6DAC 8005FC0C AFB60040 */ sw $s6, 0x40($sp) -/* AD6DB0 8005FC10 AFB5003C */ sw $s5, 0x3c($sp) -/* AD6DB4 8005FC14 AFB40038 */ sw $s4, 0x38($sp) -/* AD6DB8 8005FC18 AFB30034 */ sw $s3, 0x34($sp) -/* AD6DBC 8005FC1C AFB20030 */ sw $s2, 0x30($sp) -/* AD6DC0 8005FC20 AFB1002C */ sw $s1, 0x2c($sp) -/* AD6DC4 8005FC24 AFB00028 */ sw $s0, 0x28($sp) -/* AD6DC8 8005FC28 AFA40080 */ sw $a0, 0x80($sp) -/* AD6DCC 8005FC2C AFA50084 */ sw $a1, 0x84($sp) -/* AD6DD0 8005FC30 84CE0040 */ lh $t6, 0x40($a2) -/* AD6DD4 8005FC34 00C09025 */ move $s2, $a2 -/* AD6DD8 8005FC38 00E09825 */ move $s3, $a3 -/* AD6DDC 8005FC3C 59C0005A */ blezl $t6, .L8005FDA8 -/* AD6DE0 8005FC40 8FBF0044 */ lw $ra, 0x44($sp) -/* AD6DE4 8005FC44 84CF0042 */ lh $t7, 0x42($a2) -/* AD6DE8 8005FC48 59E00057 */ blezl $t7, .L8005FDA8 -/* AD6DEC 8005FC4C 8FBF0044 */ lw $ra, 0x44($sp) -/* AD6DF0 8005FC50 8CF80018 */ lw $t8, 0x18($a3) -/* AD6DF4 8005FC54 5B000054 */ blezl $t8, .L8005FDA8 -/* AD6DF8 8005FC58 8FBF0044 */ lw $ra, 0x44($sp) -/* AD6DFC 8005FC5C 8CF9001C */ lw $t9, 0x1c($a3) -/* AD6E00 8005FC60 24D50018 */ addiu $s5, $a2, 0x18 -/* AD6E04 8005FC64 02A02025 */ move $a0, $s5 -/* AD6E08 8005FC68 5320004F */ beql $t9, $zero, .L8005FDA8 -/* AD6E0C 8005FC6C 8FBF0044 */ lw $ra, 0x44($sp) -/* AD6E10 8005FC70 0C0177CB */ jal func_8005DF2C -/* AD6E14 8005FC74 AFA7008C */ sw $a3, 0x8c($sp) -/* AD6E18 8005FC78 24110001 */ li $s1, 1 -/* AD6E1C 8005FC7C 10510049 */ beq $v0, $s1, .L8005FDA4 -/* AD6E20 8005FC80 8FA3008C */ lw $v1, 0x8c($sp) -/* AD6E24 8005FC84 8C680018 */ lw $t0, 0x18($v1) -/* AD6E28 8005FC88 2416005C */ li $s6, 92 -/* AD6E2C 8005FC8C 8C70001C */ lw $s0, 0x1c($v1) -/* AD6E30 8005FC90 01160019 */ multu $t0, $s6 -/* AD6E34 8005FC94 27B40068 */ addiu $s4, $sp, 0x68 -/* AD6E38 8005FC98 00004812 */ mflo $t1 -/* AD6E3C 8005FC9C 02095021 */ addu $t2, $s0, $t1 -/* AD6E40 8005FCA0 020A082B */ sltu $at, $s0, $t2 -/* AD6E44 8005FCA4 50200040 */ beql $at, $zero, .L8005FDA8 -/* AD6E48 8005FCA8 8FBF0044 */ lw $ra, 0x44($sp) -.L8005FCAC: -/* AD6E4C 8005FCAC 0C0177D4 */ jal func_8005DF50 -/* AD6E50 8005FCB0 02002025 */ move $a0, $s0 -/* AD6E54 8005FCB4 10510032 */ beq $v0, $s1, .L8005FD80 -/* AD6E58 8005FCB8 02A02025 */ move $a0, $s5 -/* AD6E5C 8005FCBC 0C0177DD */ jal func_8005DF74 -/* AD6E60 8005FCC0 02002825 */ move $a1, $s0 -/* AD6E64 8005FCC4 1051002E */ beq $v0, $s1, .L8005FD80 -/* AD6E68 8005FCC8 26440040 */ addiu $a0, $s2, 0x40 -/* AD6E6C 8005FCCC 26050028 */ addiu $a1, $s0, 0x28 -/* AD6E70 8005FCD0 0C033DF4 */ jal func_800CF7D0 -/* AD6E74 8005FCD4 02803025 */ move $a2, $s4 -/* AD6E78 8005FCD8 5451002A */ bnel $v0, $s1, .L8005FD84 -/* AD6E7C 8005FCDC 8E6E0018 */ lw $t6, 0x18($s3) -/* AD6E80 8005FCE0 27B1005C */ addiu $s1, $sp, 0x5c -/* AD6E84 8005FCE4 02202025 */ move $a0, $s1 -/* AD6E88 8005FCE8 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD6E8C 8005FCEC 26450046 */ addiu $a1, $s2, 0x46 -/* AD6E90 8005FCF0 C6040028 */ lwc1 $f4, 0x28($s0) -/* AD6E94 8005FCF4 C6060034 */ lwc1 $f6, 0x34($s0) -/* AD6E98 8005FCF8 C60A0040 */ lwc1 $f10, 0x40($s0) -/* AD6E9C 8005FCFC 3C018014 */ lui $at, %hi(D_8013AD10) -/* AD6EA0 8005FD00 46062200 */ add.s $f8, $f4, $f6 -/* AD6EA4 8005FD04 C420AD10 */ lwc1 $f0, %lo(D_8013AD10)($at) -/* AD6EA8 8005FD08 8FAB008C */ lw $t3, 0x8c($sp) -/* AD6EAC 8005FD0C 27AC0050 */ addiu $t4, $sp, 0x50 -/* AD6EB0 8005FD10 46085400 */ add.s $f16, $f10, $f8 -/* AD6EB4 8005FD14 8FA40080 */ lw $a0, 0x80($sp) -/* AD6EB8 8005FD18 02402825 */ move $a1, $s2 -/* AD6EBC 8005FD1C 02A03025 */ move $a2, $s5 -/* AD6EC0 8005FD20 46008482 */ mul.s $f18, $f16, $f0 -/* AD6EC4 8005FD24 02203825 */ move $a3, $s1 -/* AD6EC8 8005FD28 E7B20050 */ swc1 $f18, 0x50($sp) -/* AD6ECC 8005FD2C C6060038 */ lwc1 $f6, 0x38($s0) -/* AD6ED0 8005FD30 C604002C */ lwc1 $f4, 0x2c($s0) -/* AD6ED4 8005FD34 C6080044 */ lwc1 $f8, 0x44($s0) -/* AD6ED8 8005FD38 46062280 */ add.s $f10, $f4, $f6 -/* AD6EDC 8005FD3C 460A4400 */ add.s $f16, $f8, $f10 -/* AD6EE0 8005FD40 46008482 */ mul.s $f18, $f16, $f0 -/* AD6EE4 8005FD44 E7B20054 */ swc1 $f18, 0x54($sp) -/* AD6EE8 8005FD48 C606003C */ lwc1 $f6, 0x3c($s0) -/* AD6EEC 8005FD4C C6040030 */ lwc1 $f4, 0x30($s0) -/* AD6EF0 8005FD50 C60A0048 */ lwc1 $f10, 0x48($s0) -/* AD6EF4 8005FD54 AFB4001C */ sw $s4, 0x1c($sp) -/* AD6EF8 8005FD58 46062200 */ add.s $f8, $f4, $f6 -/* AD6EFC 8005FD5C AFAC0018 */ sw $t4, 0x18($sp) -/* AD6F00 8005FD60 AFB00014 */ sw $s0, 0x14($sp) -/* AD6F04 8005FD64 AFAB0010 */ sw $t3, 0x10($sp) -/* AD6F08 8005FD68 46085400 */ add.s $f16, $f10, $f8 -/* AD6F0C 8005FD6C 46008482 */ mul.s $f18, $f16, $f0 -/* AD6F10 8005FD70 0C017A07 */ jal func_8005E81C -/* AD6F14 8005FD74 E7B20058 */ swc1 $f18, 0x58($sp) -/* AD6F18 8005FD78 1000000B */ b .L8005FDA8 -/* AD6F1C 8005FD7C 8FBF0044 */ lw $ra, 0x44($sp) -.L8005FD80: -/* AD6F20 8005FD80 8E6E0018 */ lw $t6, 0x18($s3) -.L8005FD84: -/* AD6F24 8005FD84 8E6D001C */ lw $t5, 0x1c($s3) -/* AD6F28 8005FD88 2610005C */ addiu $s0, $s0, 0x5c -/* AD6F2C 8005FD8C 01D60019 */ multu $t6, $s6 -/* AD6F30 8005FD90 00007812 */ mflo $t7 -/* AD6F34 8005FD94 01AFC021 */ addu $t8, $t5, $t7 -/* AD6F38 8005FD98 0218082B */ sltu $at, $s0, $t8 -/* AD6F3C 8005FD9C 1420FFC3 */ bnez $at, .L8005FCAC -/* AD6F40 8005FDA0 00000000 */ nop -.L8005FDA4: -/* AD6F44 8005FDA4 8FBF0044 */ lw $ra, 0x44($sp) -.L8005FDA8: -/* AD6F48 8005FDA8 8FB00028 */ lw $s0, 0x28($sp) -/* AD6F4C 8005FDAC 8FB1002C */ lw $s1, 0x2c($sp) -/* AD6F50 8005FDB0 8FB20030 */ lw $s2, 0x30($sp) -/* AD6F54 8005FDB4 8FB30034 */ lw $s3, 0x34($sp) -/* AD6F58 8005FDB8 8FB40038 */ lw $s4, 0x38($sp) -/* AD6F5C 8005FDBC 8FB5003C */ lw $s5, 0x3c($sp) -/* AD6F60 8005FDC0 8FB60040 */ lw $s6, 0x40($sp) -/* AD6F64 8005FDC4 03E00008 */ jr $ra -/* AD6F68 8005FDC8 27BD0080 */ addiu $sp, $sp, 0x80 - -/* AD6F6C 8005FDCC 27BDFF88 */ addiu $sp, $sp, -0x78 -/* AD6F70 8005FDD0 AFBF0044 */ sw $ra, 0x44($sp) -/* AD6F74 8005FDD4 AFB60040 */ sw $s6, 0x40($sp) -/* AD6F78 8005FDD8 AFB5003C */ sw $s5, 0x3c($sp) -/* AD6F7C 8005FDDC AFB40038 */ sw $s4, 0x38($sp) -/* AD6F80 8005FDE0 AFB30034 */ sw $s3, 0x34($sp) -/* AD6F84 8005FDE4 AFB20030 */ sw $s2, 0x30($sp) -/* AD6F88 8005FDE8 AFB1002C */ sw $s1, 0x2c($sp) -/* AD6F8C 8005FDEC AFB00028 */ sw $s0, 0x28($sp) -/* AD6F90 8005FDF0 AFA40078 */ sw $a0, 0x78($sp) -/* AD6F94 8005FDF4 AFA5007C */ sw $a1, 0x7c($sp) -/* AD6F98 8005FDF8 84EE0040 */ lh $t6, 0x40($a3) -/* AD6F9C 8005FDFC 00E09025 */ move $s2, $a3 -/* AD6FA0 8005FE00 00C09825 */ move $s3, $a2 -/* AD6FA4 8005FE04 59C00059 */ blezl $t6, .L8005FF6C -/* AD6FA8 8005FE08 8FBF0044 */ lw $ra, 0x44($sp) -/* AD6FAC 8005FE0C 84EF0042 */ lh $t7, 0x42($a3) -/* AD6FB0 8005FE10 59E00056 */ blezl $t7, .L8005FF6C -/* AD6FB4 8005FE14 8FBF0044 */ lw $ra, 0x44($sp) -/* AD6FB8 8005FE18 8CD80018 */ lw $t8, 0x18($a2) -/* AD6FBC 8005FE1C 5B000053 */ blezl $t8, .L8005FF6C -/* AD6FC0 8005FE20 8FBF0044 */ lw $ra, 0x44($sp) -/* AD6FC4 8005FE24 8CD9001C */ lw $t9, 0x1c($a2) -/* AD6FC8 8005FE28 24F50018 */ addiu $s5, $a3, 0x18 -/* AD6FCC 8005FE2C 02A02025 */ move $a0, $s5 -/* AD6FD0 8005FE30 5320004E */ beql $t9, $zero, .L8005FF6C -/* AD6FD4 8005FE34 8FBF0044 */ lw $ra, 0x44($sp) -/* AD6FD8 8005FE38 0C0177D4 */ jal func_8005DF50 -/* AD6FDC 8005FE3C AFA60080 */ sw $a2, 0x80($sp) -/* AD6FE0 8005FE40 24110001 */ li $s1, 1 -/* AD6FE4 8005FE44 10510048 */ beq $v0, $s1, .L8005FF68 -/* AD6FE8 8005FE48 8FA30080 */ lw $v1, 0x80($sp) -/* AD6FEC 8005FE4C 8C680018 */ lw $t0, 0x18($v1) -/* AD6FF0 8005FE50 2416005C */ li $s6, 92 -/* AD6FF4 8005FE54 8C70001C */ lw $s0, 0x1c($v1) -/* AD6FF8 8005FE58 01160019 */ multu $t0, $s6 -/* AD6FFC 8005FE5C 3C148016 */ lui $s4, %hi(D_8015E310) # $s4, 0x8016 -/* AD7000 8005FE60 2694E310 */ addiu $s4, %lo(D_8015E310) # addiu $s4, $s4, -0x1cf0 -/* AD7004 8005FE64 00004812 */ mflo $t1 -/* AD7008 8005FE68 02095021 */ addu $t2, $s0, $t1 -/* AD700C 8005FE6C 020A082B */ sltu $at, $s0, $t2 -/* AD7010 8005FE70 5020003E */ beql $at, $zero, .L8005FF6C -/* AD7014 8005FE74 8FBF0044 */ lw $ra, 0x44($sp) -.L8005FE78: -/* AD7018 8005FE78 0C0177CB */ jal func_8005DF2C -/* AD701C 8005FE7C 02002025 */ move $a0, $s0 -/* AD7020 8005FE80 10510030 */ beq $v0, $s1, .L8005FF44 -/* AD7024 8005FE84 02002025 */ move $a0, $s0 -/* AD7028 8005FE88 0C0177DD */ jal func_8005DF74 -/* AD702C 8005FE8C 02A02825 */ move $a1, $s5 -/* AD7030 8005FE90 1051002C */ beq $v0, $s1, .L8005FF44 -/* AD7034 8005FE94 26440040 */ addiu $a0, $s2, 0x40 -/* AD7038 8005FE98 26050028 */ addiu $a1, $s0, 0x28 -/* AD703C 8005FE9C 0C033DF4 */ jal func_800CF7D0 -/* AD7040 8005FEA0 02803025 */ move $a2, $s4 -/* AD7044 8005FEA4 54510028 */ bnel $v0, $s1, .L8005FF48 -/* AD7048 8005FEA8 8E6C0018 */ lw $t4, 0x18($s3) -/* AD704C 8005FEAC C6040028 */ lwc1 $f4, 0x28($s0) -/* AD7050 8005FEB0 C6060034 */ lwc1 $f6, 0x34($s0) -/* AD7054 8005FEB4 C60A0040 */ lwc1 $f10, 0x40($s0) -/* AD7058 8005FEB8 3C018014 */ lui $at, %hi(D_8013AD14) -/* AD705C 8005FEBC 46062200 */ add.s $f8, $f4, $f6 -/* AD7060 8005FEC0 C420AD14 */ lwc1 $f0, %lo(D_8013AD14)($at) -/* AD7064 8005FEC4 27B10054 */ addiu $s1, $sp, 0x54 -/* AD7068 8005FEC8 02202025 */ move $a0, $s1 -/* AD706C 8005FECC 46085400 */ add.s $f16, $f10, $f8 -/* AD7070 8005FED0 26450046 */ addiu $a1, $s2, 0x46 -/* AD7074 8005FED4 46008482 */ mul.s $f18, $f16, $f0 -/* AD7078 8005FED8 E7B20060 */ swc1 $f18, 0x60($sp) -/* AD707C 8005FEDC C6060038 */ lwc1 $f6, 0x38($s0) -/* AD7080 8005FEE0 C604002C */ lwc1 $f4, 0x2c($s0) -/* AD7084 8005FEE4 C6080044 */ lwc1 $f8, 0x44($s0) -/* AD7088 8005FEE8 46062280 */ add.s $f10, $f4, $f6 -/* AD708C 8005FEEC 460A4400 */ add.s $f16, $f8, $f10 -/* AD7090 8005FEF0 46008482 */ mul.s $f18, $f16, $f0 -/* AD7094 8005FEF4 E7B20064 */ swc1 $f18, 0x64($sp) -/* AD7098 8005FEF8 C606003C */ lwc1 $f6, 0x3c($s0) -/* AD709C 8005FEFC C6040030 */ lwc1 $f4, 0x30($s0) -/* AD70A0 8005FF00 C60A0048 */ lwc1 $f10, 0x48($s0) -/* AD70A4 8005FF04 46062200 */ add.s $f8, $f4, $f6 -/* AD70A8 8005FF08 46085400 */ add.s $f16, $f10, $f8 -/* AD70AC 8005FF0C 46008482 */ mul.s $f18, $f16, $f0 -/* AD70B0 8005FF10 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD70B4 8005FF14 E7B20068 */ swc1 $f18, 0x68($sp) -/* AD70B8 8005FF18 8FA40078 */ lw $a0, 0x78($sp) -/* AD70BC 8005FF1C 8FA50080 */ lw $a1, 0x80($sp) -/* AD70C0 8005FF20 02003025 */ move $a2, $s0 -/* AD70C4 8005FF24 27A70060 */ addiu $a3, $sp, 0x60 -/* AD70C8 8005FF28 AFB20010 */ sw $s2, 0x10($sp) -/* AD70CC 8005FF2C AFB50014 */ sw $s5, 0x14($sp) -/* AD70D0 8005FF30 AFB10018 */ sw $s1, 0x18($sp) -/* AD70D4 8005FF34 0C017A07 */ jal func_8005E81C -/* AD70D8 8005FF38 AFB4001C */ sw $s4, 0x1c($sp) -/* AD70DC 8005FF3C 1000000B */ b .L8005FF6C -/* AD70E0 8005FF40 8FBF0044 */ lw $ra, 0x44($sp) -.L8005FF44: -/* AD70E4 8005FF44 8E6C0018 */ lw $t4, 0x18($s3) -.L8005FF48: -/* AD70E8 8005FF48 8E6B001C */ lw $t3, 0x1c($s3) -/* AD70EC 8005FF4C 2610005C */ addiu $s0, $s0, 0x5c -/* AD70F0 8005FF50 01960019 */ multu $t4, $s6 -/* AD70F4 8005FF54 00006812 */ mflo $t5 -/* AD70F8 8005FF58 016D7021 */ addu $t6, $t3, $t5 -/* AD70FC 8005FF5C 020E082B */ sltu $at, $s0, $t6 -/* AD7100 8005FF60 1420FFC5 */ bnez $at, .L8005FE78 -/* AD7104 8005FF64 00000000 */ nop -.L8005FF68: -/* AD7108 8005FF68 8FBF0044 */ lw $ra, 0x44($sp) -.L8005FF6C: -/* AD710C 8005FF6C 8FB00028 */ lw $s0, 0x28($sp) -/* AD7110 8005FF70 8FB1002C */ lw $s1, 0x2c($sp) -/* AD7114 8005FF74 8FB20030 */ lw $s2, 0x30($sp) -/* AD7118 8005FF78 8FB30034 */ lw $s3, 0x34($sp) -/* AD711C 8005FF7C 8FB40038 */ lw $s4, 0x38($sp) -/* AD7120 8005FF80 8FB5003C */ lw $s5, 0x3c($sp) -/* AD7124 8005FF84 8FB60040 */ lw $s6, 0x40($sp) -/* AD7128 8005FF88 03E00008 */ jr $ra -/* AD712C 8005FF8C 27BD0078 */ addiu $sp, $sp, 0x78 - -/* AD7130 8005FF90 27BDFF88 */ addiu $sp, $sp, -0x78 -/* AD7134 8005FF94 AFBF002C */ sw $ra, 0x2c($sp) -/* AD7138 8005FF98 AFB10028 */ sw $s1, 0x28($sp) -/* AD713C 8005FF9C AFB00024 */ sw $s0, 0x24($sp) -/* AD7140 8005FFA0 AFA40078 */ sw $a0, 0x78($sp) -/* AD7144 8005FFA4 AFA5007C */ sw $a1, 0x7c($sp) -/* AD7148 8005FFA8 84CE0042 */ lh $t6, 0x42($a2) -/* AD714C 8005FFAC 00E08025 */ move $s0, $a3 -/* AD7150 8005FFB0 00C08825 */ move $s1, $a2 -/* AD7154 8005FFB4 59C0008F */ blezl $t6, .L800601F4 -/* AD7158 8005FFB8 8FBF002C */ lw $ra, 0x2c($sp) -/* AD715C 8005FFBC 84CF0040 */ lh $t7, 0x40($a2) -/* AD7160 8005FFC0 24C40018 */ addiu $a0, $a2, 0x18 -/* AD7164 8005FFC4 59E0008B */ blezl $t7, .L800601F4 -/* AD7168 8005FFC8 8FBF002C */ lw $ra, 0x2c($sp) -/* AD716C 8005FFCC 0C0177CB */ jal func_8005DF2C -/* AD7170 8005FFD0 AFA4003C */ sw $a0, 0x3c($sp) -/* AD7174 8005FFD4 24010001 */ li $at, 1 -/* AD7178 8005FFD8 10410085 */ beq $v0, $at, .L800601F0 -/* AD717C 8005FFDC 26040018 */ addiu $a0, $s0, 0x18 -/* AD7180 8005FFE0 0C0177D4 */ jal func_8005DF50 -/* AD7184 8005FFE4 AFA40038 */ sw $a0, 0x38($sp) -/* AD7188 8005FFE8 24010001 */ li $at, 1 -/* AD718C 8005FFEC 10410080 */ beq $v0, $at, .L800601F0 -/* AD7190 8005FFF0 8FA4003C */ lw $a0, 0x3c($sp) -/* AD7194 8005FFF4 0C0177DD */ jal func_8005DF74 -/* AD7198 8005FFF8 8FA50038 */ lw $a1, 0x38($sp) -/* AD719C 8005FFFC 24010001 */ li $at, 1 -/* AD71A0 80060000 1041007B */ beq $v0, $at, .L800601F0 -/* AD71A4 80060004 3C048016 */ lui $a0, %hi(D_8015E320) # $a0, 0x8016 -/* AD71A8 80060008 26050058 */ addiu $a1, $s0, 0x58 -/* AD71AC 8006000C 2607004C */ addiu $a3, $s0, 0x4c -/* AD71B0 80060010 AFA70034 */ sw $a3, 0x34($sp) -/* AD71B4 80060014 AFA50030 */ sw $a1, 0x30($sp) -/* AD71B8 80060018 2484E320 */ addiu $a0, %lo(D_8015E320) # addiu $a0, $a0, -0x1ce0 -/* AD71BC 8006001C 0C0338F0 */ jal func_800CE3C0 -/* AD71C0 80060020 26060064 */ addiu $a2, $s0, 0x64 -/* AD71C4 80060024 3C048016 */ lui $a0, %hi(D_8015E358) # $a0, 0x8016 -/* AD71C8 80060028 2484E358 */ addiu $a0, %lo(D_8015E358) # addiu $a0, $a0, -0x1ca8 -/* AD71CC 8006002C 8FA50034 */ lw $a1, 0x34($sp) -/* AD71D0 80060030 26060040 */ addiu $a2, $s0, 0x40 -/* AD71D4 80060034 0C0338F0 */ jal func_800CE3C0 -/* AD71D8 80060038 8FA70030 */ lw $a3, 0x30($sp) -/* AD71DC 8006003C 26240040 */ addiu $a0, $s1, 0x40 -/* AD71E0 80060040 3C058016 */ lui $a1, %hi(D_8015E320) # $a1, 0x8016 -/* AD71E4 80060044 3C068016 */ lui $a2, %hi(D_8015E390) # $a2, 0x8016 -/* AD71E8 80060048 24C6E390 */ addiu $a2, %lo(D_8015E390) # addiu $a2, $a2, -0x1c70 -/* AD71EC 8006004C 24A5E320 */ addiu $a1, %lo(D_8015E320) # addiu $a1, $a1, -0x1ce0 -/* AD71F0 80060050 0C033DF4 */ jal func_800CF7D0 -/* AD71F4 80060054 AFA40034 */ sw $a0, 0x34($sp) -/* AD71F8 80060058 24010001 */ li $at, 1 -/* AD71FC 8006005C 14410030 */ bne $v0, $at, .L80060120 -/* AD7200 80060060 8FA40034 */ lw $a0, 0x34($sp) -/* AD7204 80060064 27A40064 */ addiu $a0, $sp, 0x64 -/* AD7208 80060068 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD720C 8006006C 26250046 */ addiu $a1, $s1, 0x46 -/* AD7210 80060070 C6040058 */ lwc1 $f4, 0x58($s0) -/* AD7214 80060074 C6060064 */ lwc1 $f6, 0x64($s0) -/* AD7218 80060078 C60A004C */ lwc1 $f10, 0x4c($s0) -/* AD721C 8006007C C6120040 */ lwc1 $f18, 0x40($s0) -/* AD7220 80060080 46062200 */ add.s $f8, $f4, $f6 -/* AD7224 80060084 3C013E80 */ li $at, 0x3E800000 # 0.000000 -/* AD7228 80060088 44810000 */ mtc1 $at, $f0 -/* AD722C 8006008C 8FB80038 */ lw $t8, 0x38($sp) -/* AD7230 80060090 460A4400 */ add.s $f16, $f8, $f10 -/* AD7234 80060094 3C088016 */ lui $t0, %hi(D_8015E390) # $t0, 0x8016 -/* AD7238 80060098 2508E390 */ addiu $t0, %lo(D_8015E390) # addiu $t0, $t0, -0x1c70 -/* AD723C 8006009C 27B90058 */ addiu $t9, $sp, 0x58 -/* AD7240 800600A0 46128100 */ add.s $f4, $f16, $f18 -/* AD7244 800600A4 8FA40078 */ lw $a0, 0x78($sp) -/* AD7248 800600A8 02202825 */ move $a1, $s1 -/* AD724C 800600AC 8FA6003C */ lw $a2, 0x3c($sp) -/* AD7250 800600B0 46002182 */ mul.s $f6, $f4, $f0 -/* AD7254 800600B4 27A70064 */ addiu $a3, $sp, 0x64 -/* AD7258 800600B8 E7A60058 */ swc1 $f6, 0x58($sp) -/* AD725C 800600BC C60A0068 */ lwc1 $f10, 0x68($s0) -/* AD7260 800600C0 C608005C */ lwc1 $f8, 0x5c($s0) -/* AD7264 800600C4 C6120050 */ lwc1 $f18, 0x50($s0) -/* AD7268 800600C8 C6060044 */ lwc1 $f6, 0x44($s0) -/* AD726C 800600CC 460A4400 */ add.s $f16, $f8, $f10 -/* AD7270 800600D0 46128100 */ add.s $f4, $f16, $f18 -/* AD7274 800600D4 46062200 */ add.s $f8, $f4, $f6 -/* AD7278 800600D8 46004282 */ mul.s $f10, $f8, $f0 -/* AD727C 800600DC E7AA005C */ swc1 $f10, 0x5c($sp) -/* AD7280 800600E0 C612006C */ lwc1 $f18, 0x6c($s0) -/* AD7284 800600E4 C6100060 */ lwc1 $f16, 0x60($s0) -/* AD7288 800600E8 C6060054 */ lwc1 $f6, 0x54($s0) -/* AD728C 800600EC C60A0048 */ lwc1 $f10, 0x48($s0) -/* AD7290 800600F0 46128100 */ add.s $f4, $f16, $f18 -/* AD7294 800600F4 AFA8001C */ sw $t0, 0x1c($sp) -/* AD7298 800600F8 AFB90018 */ sw $t9, 0x18($sp) -/* AD729C 800600FC AFB00010 */ sw $s0, 0x10($sp) -/* AD72A0 80060100 46062200 */ add.s $f8, $f4, $f6 -/* AD72A4 80060104 AFB80014 */ sw $t8, 0x14($sp) -/* AD72A8 80060108 460A4400 */ add.s $f16, $f8, $f10 -/* AD72AC 8006010C 46008482 */ mul.s $f18, $f16, $f0 -/* AD72B0 80060110 0C017A07 */ jal func_8005E81C -/* AD72B4 80060114 E7B20060 */ swc1 $f18, 0x60($sp) -/* AD72B8 80060118 10000036 */ b .L800601F4 -/* AD72BC 8006011C 8FBF002C */ lw $ra, 0x2c($sp) -.L80060120: -/* AD72C0 80060120 3C058016 */ lui $a1, %hi(D_8015E358) # $a1, 0x8016 -/* AD72C4 80060124 3C068016 */ lui $a2, %hi(D_8015E390) # $a2, 0x8016 -/* AD72C8 80060128 24C6E390 */ addiu $a2, %lo(D_8015E390) # addiu $a2, $a2, -0x1c70 -/* AD72CC 8006012C 0C033DF4 */ jal func_800CF7D0 -/* AD72D0 80060130 24A5E358 */ addiu $a1, %lo(D_8015E358) # addiu $a1, $a1, -0x1ca8 -/* AD72D4 80060134 24010001 */ li $at, 1 -/* AD72D8 80060138 1441002D */ bne $v0, $at, .L800601F0 -/* AD72DC 8006013C 27A4004C */ addiu $a0, $sp, 0x4c -/* AD72E0 80060140 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD72E4 80060144 26250046 */ addiu $a1, $s1, 0x46 -/* AD72E8 80060148 C6040058 */ lwc1 $f4, 0x58($s0) -/* AD72EC 8006014C C6060064 */ lwc1 $f6, 0x64($s0) -/* AD72F0 80060150 C60A004C */ lwc1 $f10, 0x4c($s0) -/* AD72F4 80060154 C6120040 */ lwc1 $f18, 0x40($s0) -/* AD72F8 80060158 46062200 */ add.s $f8, $f4, $f6 -/* AD72FC 8006015C 3C013E80 */ li $at, 0x3E800000 # 0.000000 -/* AD7300 80060160 44810000 */ mtc1 $at, $f0 -/* AD7304 80060164 8FA90038 */ lw $t1, 0x38($sp) -/* AD7308 80060168 460A4400 */ add.s $f16, $f8, $f10 -/* AD730C 8006016C 3C0B8016 */ lui $t3, %hi(D_8015E390) # $t3, 0x8016 -/* AD7310 80060170 256BE390 */ addiu $t3, %lo(D_8015E390) # addiu $t3, $t3, -0x1c70 -/* AD7314 80060174 27AA0040 */ addiu $t2, $sp, 0x40 -/* AD7318 80060178 46128100 */ add.s $f4, $f16, $f18 -/* AD731C 8006017C 8FA40078 */ lw $a0, 0x78($sp) -/* AD7320 80060180 02202825 */ move $a1, $s1 -/* AD7324 80060184 8FA6003C */ lw $a2, 0x3c($sp) -/* AD7328 80060188 46002182 */ mul.s $f6, $f4, $f0 -/* AD732C 8006018C 27A7004C */ addiu $a3, $sp, 0x4c -/* AD7330 80060190 E7A60040 */ swc1 $f6, 0x40($sp) -/* AD7334 80060194 C60A0068 */ lwc1 $f10, 0x68($s0) -/* AD7338 80060198 C608005C */ lwc1 $f8, 0x5c($s0) -/* AD733C 8006019C C6120050 */ lwc1 $f18, 0x50($s0) -/* AD7340 800601A0 C6060044 */ lwc1 $f6, 0x44($s0) -/* AD7344 800601A4 460A4400 */ add.s $f16, $f8, $f10 -/* AD7348 800601A8 46128100 */ add.s $f4, $f16, $f18 -/* AD734C 800601AC 46062200 */ add.s $f8, $f4, $f6 -/* AD7350 800601B0 46004282 */ mul.s $f10, $f8, $f0 -/* AD7354 800601B4 E7AA0044 */ swc1 $f10, 0x44($sp) -/* AD7358 800601B8 C612006C */ lwc1 $f18, 0x6c($s0) -/* AD735C 800601BC C6100060 */ lwc1 $f16, 0x60($s0) -/* AD7360 800601C0 C6060054 */ lwc1 $f6, 0x54($s0) -/* AD7364 800601C4 C60A0048 */ lwc1 $f10, 0x48($s0) -/* AD7368 800601C8 46128100 */ add.s $f4, $f16, $f18 -/* AD736C 800601CC AFAB001C */ sw $t3, 0x1c($sp) -/* AD7370 800601D0 AFAA0018 */ sw $t2, 0x18($sp) -/* AD7374 800601D4 AFB00010 */ sw $s0, 0x10($sp) -/* AD7378 800601D8 46062200 */ add.s $f8, $f4, $f6 -/* AD737C 800601DC AFA90014 */ sw $t1, 0x14($sp) -/* AD7380 800601E0 460A4400 */ add.s $f16, $f8, $f10 -/* AD7384 800601E4 46008482 */ mul.s $f18, $f16, $f0 -/* AD7388 800601E8 0C017A07 */ jal func_8005E81C -/* AD738C 800601EC E7B20048 */ swc1 $f18, 0x48($sp) -.L800601F0: -/* AD7390 800601F0 8FBF002C */ lw $ra, 0x2c($sp) -.L800601F4: -/* AD7394 800601F4 8FB00024 */ lw $s0, 0x24($sp) -/* AD7398 800601F8 8FB10028 */ lw $s1, 0x28($sp) -/* AD739C 800601FC 03E00008 */ jr $ra -/* AD73A0 80060200 27BD0078 */ addiu $sp, $sp, 0x78 - -/* AD73A4 80060204 27BDFF88 */ addiu $sp, $sp, -0x78 -/* AD73A8 80060208 AFBF002C */ sw $ra, 0x2c($sp) -/* AD73AC 8006020C AFB10028 */ sw $s1, 0x28($sp) -/* AD73B0 80060210 AFB00024 */ sw $s0, 0x24($sp) -/* AD73B4 80060214 AFA40078 */ sw $a0, 0x78($sp) -/* AD73B8 80060218 AFA5007C */ sw $a1, 0x7c($sp) -/* AD73BC 8006021C 84EE0042 */ lh $t6, 0x42($a3) -/* AD73C0 80060220 00C08025 */ move $s0, $a2 -/* AD73C4 80060224 00E08825 */ move $s1, $a3 -/* AD73C8 80060228 59C0009D */ blezl $t6, .L800604A0 -/* AD73CC 8006022C 8FBF002C */ lw $ra, 0x2c($sp) -/* AD73D0 80060230 84EF0040 */ lh $t7, 0x40($a3) -/* AD73D4 80060234 24E40018 */ addiu $a0, $a3, 0x18 -/* AD73D8 80060238 59E00099 */ blezl $t7, .L800604A0 -/* AD73DC 8006023C 8FBF002C */ lw $ra, 0x2c($sp) -/* AD73E0 80060240 0C0177D4 */ jal func_8005DF50 -/* AD73E4 80060244 AFA40038 */ sw $a0, 0x38($sp) -/* AD73E8 80060248 24010001 */ li $at, 1 -/* AD73EC 8006024C 10410093 */ beq $v0, $at, .L8006049C -/* AD73F0 80060250 26040018 */ addiu $a0, $s0, 0x18 -/* AD73F4 80060254 0C0177CB */ jal func_8005DF2C -/* AD73F8 80060258 AFA4003C */ sw $a0, 0x3c($sp) -/* AD73FC 8006025C 24010001 */ li $at, 1 -/* AD7400 80060260 1041008E */ beq $v0, $at, .L8006049C -/* AD7404 80060264 8FA4003C */ lw $a0, 0x3c($sp) -/* AD7408 80060268 0C0177DD */ jal func_8005DF74 -/* AD740C 8006026C 8FA50038 */ lw $a1, 0x38($sp) -/* AD7410 80060270 24010001 */ li $at, 1 -/* AD7414 80060274 10410089 */ beq $v0, $at, .L8006049C -/* AD7418 80060278 3C048016 */ lui $a0, %hi(D_8015E3A0) # $a0, 0x8016 -/* AD741C 8006027C 26050058 */ addiu $a1, $s0, 0x58 -/* AD7420 80060280 2607004C */ addiu $a3, $s0, 0x4c -/* AD7424 80060284 AFA70030 */ sw $a3, 0x30($sp) -/* AD7428 80060288 AFA50034 */ sw $a1, 0x34($sp) -/* AD742C 8006028C 2484E3A0 */ addiu $a0, %lo(D_8015E3A0) # addiu $a0, $a0, -0x1c60 -/* AD7430 80060290 0C0338F0 */ jal func_800CE3C0 -/* AD7434 80060294 26060064 */ addiu $a2, $s0, 0x64 -/* AD7438 80060298 3C048016 */ lui $a0, %hi(D_8015E3D8) # $a0, 0x8016 -/* AD743C 8006029C 8FA50034 */ lw $a1, 0x34($sp) -/* AD7440 800602A0 2484E3D8 */ addiu $a0, %lo(D_8015E3D8) # addiu $a0, $a0, -0x1c28 -/* AD7444 800602A4 8FA60030 */ lw $a2, 0x30($sp) -/* AD7448 800602A8 0C0338F0 */ jal func_800CE3C0 -/* AD744C 800602AC 26070040 */ addiu $a3, $s0, 0x40 -/* AD7450 800602B0 26240040 */ addiu $a0, $s1, 0x40 -/* AD7454 800602B4 3C058016 */ lui $a1, %hi(D_8015E3A0) # $a1, 0x8016 -/* AD7458 800602B8 3C068016 */ lui $a2, %hi(D_8015E410) # $a2, 0x8016 -/* AD745C 800602BC 24C6E410 */ addiu $a2, %lo(D_8015E410) # addiu $a2, $a2, -0x1bf0 -/* AD7460 800602C0 24A5E3A0 */ addiu $a1, %lo(D_8015E3A0) # addiu $a1, $a1, -0x1c60 -/* AD7464 800602C4 0C033DF4 */ jal func_800CF7D0 -/* AD7468 800602C8 AFA40034 */ sw $a0, 0x34($sp) -/* AD746C 800602CC 24010001 */ li $at, 1 -/* AD7470 800602D0 14410036 */ bne $v0, $at, .L800603AC -/* AD7474 800602D4 8FA40078 */ lw $a0, 0x78($sp) -/* AD7478 800602D8 3C068016 */ lui $a2, %hi(D_8015E410) # $a2, 0x8016 -/* AD747C 800602DC 24C6E410 */ addiu $a2, %lo(D_8015E410) # addiu $a2, $a2, -0x1bf0 -/* AD7480 800602E0 0C017486 */ jal func_8005D218 -/* AD7484 800602E4 02002825 */ move $a1, $s0 -/* AD7488 800602E8 10400030 */ beqz $v0, .L800603AC -/* AD748C 800602EC 00000000 */ nop -/* AD7490 800602F0 C6040058 */ lwc1 $f4, 0x58($s0) -/* AD7494 800602F4 C6060064 */ lwc1 $f6, 0x64($s0) -/* AD7498 800602F8 C60A004C */ lwc1 $f10, 0x4c($s0) -/* AD749C 800602FC C6120040 */ lwc1 $f18, 0x40($s0) -/* AD74A0 80060300 46062200 */ add.s $f8, $f4, $f6 -/* AD74A4 80060304 3C013E80 */ li $at, 0x3E800000 # 0.000000 -/* AD74A8 80060308 44810000 */ mtc1 $at, $f0 -/* AD74AC 8006030C 27A40058 */ addiu $a0, $sp, 0x58 -/* AD74B0 80060310 460A4400 */ add.s $f16, $f8, $f10 -/* AD74B4 80060314 26250046 */ addiu $a1, $s1, 0x46 -/* AD74B8 80060318 46128100 */ add.s $f4, $f16, $f18 -/* AD74BC 8006031C 46002182 */ mul.s $f6, $f4, $f0 -/* AD74C0 80060320 E7A60064 */ swc1 $f6, 0x64($sp) -/* AD74C4 80060324 C60A0068 */ lwc1 $f10, 0x68($s0) -/* AD74C8 80060328 C608005C */ lwc1 $f8, 0x5c($s0) -/* AD74CC 8006032C C6120050 */ lwc1 $f18, 0x50($s0) -/* AD74D0 80060330 C6060044 */ lwc1 $f6, 0x44($s0) -/* AD74D4 80060334 460A4400 */ add.s $f16, $f8, $f10 -/* AD74D8 80060338 46128100 */ add.s $f4, $f16, $f18 -/* AD74DC 8006033C 46062200 */ add.s $f8, $f4, $f6 -/* AD74E0 80060340 46004282 */ mul.s $f10, $f8, $f0 -/* AD74E4 80060344 E7AA0068 */ swc1 $f10, 0x68($sp) -/* AD74E8 80060348 C612006C */ lwc1 $f18, 0x6c($s0) -/* AD74EC 8006034C C6100060 */ lwc1 $f16, 0x60($s0) -/* AD74F0 80060350 C6060054 */ lwc1 $f6, 0x54($s0) -/* AD74F4 80060354 C60A0048 */ lwc1 $f10, 0x48($s0) -/* AD74F8 80060358 46128100 */ add.s $f4, $f16, $f18 -/* AD74FC 8006035C 46062200 */ add.s $f8, $f4, $f6 -/* AD7500 80060360 460A4400 */ add.s $f16, $f8, $f10 -/* AD7504 80060364 46008482 */ mul.s $f18, $f16, $f0 -/* AD7508 80060368 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD750C 8006036C E7B2006C */ swc1 $f18, 0x6c($sp) -/* AD7510 80060370 8FB80038 */ lw $t8, 0x38($sp) -/* AD7514 80060374 3C088016 */ lui $t0, %hi(D_8015E410) # $t0, 0x8016 -/* AD7518 80060378 2508E410 */ addiu $t0, %lo(D_8015E410) # addiu $t0, $t0, -0x1bf0 -/* AD751C 8006037C 27B90058 */ addiu $t9, $sp, 0x58 -/* AD7520 80060380 AFB90018 */ sw $t9, 0x18($sp) -/* AD7524 80060384 AFA8001C */ sw $t0, 0x1c($sp) -/* AD7528 80060388 8FA40078 */ lw $a0, 0x78($sp) -/* AD752C 8006038C 02002825 */ move $a1, $s0 -/* AD7530 80060390 8FA6003C */ lw $a2, 0x3c($sp) -/* AD7534 80060394 27A70064 */ addiu $a3, $sp, 0x64 -/* AD7538 80060398 AFB10010 */ sw $s1, 0x10($sp) -/* AD753C 8006039C 0C017A07 */ jal func_8005E81C -/* AD7540 800603A0 AFB80014 */ sw $t8, 0x14($sp) -/* AD7544 800603A4 1000003E */ b .L800604A0 -/* AD7548 800603A8 8FBF002C */ lw $ra, 0x2c($sp) -.L800603AC: -/* AD754C 800603AC 3C058016 */ lui $a1, %hi(D_8015E3D8) # $a1, 0x8016 -/* AD7550 800603B0 3C068016 */ lui $a2, %hi(D_8015E410) # $a2, 0x8016 -/* AD7554 800603B4 24C6E410 */ addiu $a2, %lo(D_8015E410) # addiu $a2, $a2, -0x1bf0 -/* AD7558 800603B8 24A5E3D8 */ addiu $a1, %lo(D_8015E3D8) # addiu $a1, $a1, -0x1c28 -/* AD755C 800603BC 0C033DF4 */ jal func_800CF7D0 -/* AD7560 800603C0 8FA40034 */ lw $a0, 0x34($sp) -/* AD7564 800603C4 24010001 */ li $at, 1 -/* AD7568 800603C8 14410034 */ bne $v0, $at, .L8006049C -/* AD756C 800603CC 8FA40078 */ lw $a0, 0x78($sp) -/* AD7570 800603D0 3C068016 */ lui $a2, %hi(D_8015E410) # $a2, 0x8016 -/* AD7574 800603D4 24C6E410 */ addiu $a2, %lo(D_8015E410) # addiu $a2, $a2, -0x1bf0 -/* AD7578 800603D8 0C017486 */ jal func_8005D218 -/* AD757C 800603DC 02002825 */ move $a1, $s0 -/* AD7580 800603E0 5040002F */ beql $v0, $zero, .L800604A0 -/* AD7584 800603E4 8FBF002C */ lw $ra, 0x2c($sp) -/* AD7588 800603E8 C6040058 */ lwc1 $f4, 0x58($s0) -/* AD758C 800603EC C6060064 */ lwc1 $f6, 0x64($s0) -/* AD7590 800603F0 C60A004C */ lwc1 $f10, 0x4c($s0) -/* AD7594 800603F4 C6120040 */ lwc1 $f18, 0x40($s0) -/* AD7598 800603F8 46062200 */ add.s $f8, $f4, $f6 -/* AD759C 800603FC 3C013E80 */ li $at, 0x3E800000 # 0.000000 -/* AD75A0 80060400 44810000 */ mtc1 $at, $f0 -/* AD75A4 80060404 27A40040 */ addiu $a0, $sp, 0x40 -/* AD75A8 80060408 460A4400 */ add.s $f16, $f8, $f10 -/* AD75AC 8006040C 26250046 */ addiu $a1, $s1, 0x46 -/* AD75B0 80060410 46128100 */ add.s $f4, $f16, $f18 -/* AD75B4 80060414 46002182 */ mul.s $f6, $f4, $f0 -/* AD75B8 80060418 E7A6004C */ swc1 $f6, 0x4c($sp) -/* AD75BC 8006041C C60A0068 */ lwc1 $f10, 0x68($s0) -/* AD75C0 80060420 C608005C */ lwc1 $f8, 0x5c($s0) -/* AD75C4 80060424 C6120050 */ lwc1 $f18, 0x50($s0) -/* AD75C8 80060428 C6060044 */ lwc1 $f6, 0x44($s0) -/* AD75CC 8006042C 460A4400 */ add.s $f16, $f8, $f10 -/* AD75D0 80060430 46128100 */ add.s $f4, $f16, $f18 -/* AD75D4 80060434 46062200 */ add.s $f8, $f4, $f6 -/* AD75D8 80060438 46004282 */ mul.s $f10, $f8, $f0 -/* AD75DC 8006043C E7AA0050 */ swc1 $f10, 0x50($sp) -/* AD75E0 80060440 C612006C */ lwc1 $f18, 0x6c($s0) -/* AD75E4 80060444 C6100060 */ lwc1 $f16, 0x60($s0) -/* AD75E8 80060448 C6060054 */ lwc1 $f6, 0x54($s0) -/* AD75EC 8006044C C60A0048 */ lwc1 $f10, 0x48($s0) -/* AD75F0 80060450 46128100 */ add.s $f4, $f16, $f18 -/* AD75F4 80060454 46062200 */ add.s $f8, $f4, $f6 -/* AD75F8 80060458 460A4400 */ add.s $f16, $f8, $f10 -/* AD75FC 8006045C 46008482 */ mul.s $f18, $f16, $f0 -/* AD7600 80060460 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD7604 80060464 E7B20054 */ swc1 $f18, 0x54($sp) -/* AD7608 80060468 8FA90038 */ lw $t1, 0x38($sp) -/* AD760C 8006046C 3C0B8016 */ lui $t3, %hi(D_8015E410) # $t3, 0x8016 -/* AD7610 80060470 256BE410 */ addiu $t3, %lo(D_8015E410) # addiu $t3, $t3, -0x1bf0 -/* AD7614 80060474 27AA0040 */ addiu $t2, $sp, 0x40 -/* AD7618 80060478 AFAA0018 */ sw $t2, 0x18($sp) -/* AD761C 8006047C AFAB001C */ sw $t3, 0x1c($sp) -/* AD7620 80060480 8FA40078 */ lw $a0, 0x78($sp) -/* AD7624 80060484 02002825 */ move $a1, $s0 -/* AD7628 80060488 8FA6003C */ lw $a2, 0x3c($sp) -/* AD762C 8006048C 27A7004C */ addiu $a3, $sp, 0x4c -/* AD7630 80060490 AFB10010 */ sw $s1, 0x10($sp) -/* AD7634 80060494 0C017A07 */ jal func_8005E81C -/* AD7638 80060498 AFA90014 */ sw $t1, 0x14($sp) -.L8006049C: -/* AD763C 8006049C 8FBF002C */ lw $ra, 0x2c($sp) -.L800604A0: -/* AD7640 800604A0 8FB00024 */ lw $s0, 0x24($sp) -/* AD7644 800604A4 8FB10028 */ lw $s1, 0x28($sp) -/* AD7648 800604A8 03E00008 */ jr $ra -/* AD764C 800604AC 27BD0078 */ addiu $sp, $sp, 0x78 - -/* AD7650 800604B0 27BDFF88 */ addiu $sp, $sp, -0x78 -/* AD7654 800604B4 AFBF0044 */ sw $ra, 0x44($sp) -/* AD7658 800604B8 AFB70040 */ sw $s7, 0x40($sp) -/* AD765C 800604BC AFB6003C */ sw $s6, 0x3c($sp) -/* AD7660 800604C0 AFB50038 */ sw $s5, 0x38($sp) -/* AD7664 800604C4 AFB40034 */ sw $s4, 0x34($sp) -/* AD7668 800604C8 AFB30030 */ sw $s3, 0x30($sp) -/* AD766C 800604CC AFB2002C */ sw $s2, 0x2c($sp) -/* AD7670 800604D0 AFB10028 */ sw $s1, 0x28($sp) -/* AD7674 800604D4 AFB00024 */ sw $s0, 0x24($sp) -/* AD7678 800604D8 AFA40078 */ sw $a0, 0x78($sp) -/* AD767C 800604DC AFA5007C */ sw $a1, 0x7c($sp) -/* AD7680 800604E0 8CE30018 */ lw $v1, 0x18($a3) -/* AD7684 800604E4 00C0B025 */ move $s6, $a2 -/* AD7688 800604E8 00C09825 */ move $s3, $a2 -/* AD768C 800604EC 1860007A */ blez $v1, .L800606D8 -/* AD7690 800604F0 00E0B825 */ move $s7, $a3 -/* AD7694 800604F4 8CE2001C */ lw $v0, 0x1c($a3) -/* AD7698 800604F8 50400078 */ beql $v0, $zero, .L800606DC -/* AD769C 800604FC 8FBF0044 */ lw $ra, 0x44($sp) -/* AD76A0 80060500 8CCE0018 */ lw $t6, 0x18($a2) -/* AD76A4 80060504 59C00075 */ blezl $t6, .L800606DC -/* AD76A8 80060508 8FBF0044 */ lw $ra, 0x44($sp) -/* AD76AC 8006050C 8CCF001C */ lw $t7, 0x1c($a2) -/* AD76B0 80060510 2414005C */ li $s4, 92 -/* AD76B4 80060514 51E00071 */ beql $t7, $zero, .L800606DC -/* AD76B8 80060518 8FBF0044 */ lw $ra, 0x44($sp) -/* AD76BC 8006051C 00740019 */ multu $v1, $s4 -/* AD76C0 80060520 3C158016 */ lui $s5, %hi(D_8015E420) # $s5, 0x8016 -/* AD76C4 80060524 26B5E420 */ addiu $s5, %lo(D_8015E420) # addiu $s5, $s5, -0x1be0 -/* AD76C8 80060528 00409025 */ move $s2, $v0 -/* AD76CC 8006052C 24110001 */ li $s1, 1 -/* AD76D0 80060530 0000C012 */ mflo $t8 -/* AD76D4 80060534 0058C821 */ addu $t9, $v0, $t8 -/* AD76D8 80060538 0059082B */ sltu $at, $v0, $t9 -/* AD76DC 8006053C 50200067 */ beql $at, $zero, .L800606DC -/* AD76E0 80060540 8FBF0044 */ lw $ra, 0x44($sp) -/* AD76E4 80060544 AFA70084 */ sw $a3, 0x84($sp) -.L80060548: -/* AD76E8 80060548 0C0177D4 */ jal func_8005DF50 -/* AD76EC 8006054C 02402025 */ move $a0, $s2 -/* AD76F0 80060550 50510059 */ beql $v0, $s1, .L800606B8 -/* AD76F4 80060554 8EE80018 */ lw $t0, 0x18($s7) -/* AD76F8 80060558 8EC80018 */ lw $t0, 0x18($s6) -/* AD76FC 8006055C 8ED0001C */ lw $s0, 0x1c($s6) -/* AD7700 80060560 01140019 */ multu $t0, $s4 -/* AD7704 80060564 00004812 */ mflo $t1 -/* AD7708 80060568 02095021 */ addu $t2, $s0, $t1 -/* AD770C 8006056C 020A082B */ sltu $at, $s0, $t2 -/* AD7710 80060570 50200051 */ beql $at, $zero, .L800606B8 -/* AD7714 80060574 8EE80018 */ lw $t0, 0x18($s7) -.L80060578: -/* AD7718 80060578 0C0177CB */ jal func_8005DF2C -/* AD771C 8006057C 02002025 */ move $a0, $s0 -/* AD7720 80060580 10510043 */ beq $v0, $s1, .L80060690 -/* AD7724 80060584 02002025 */ move $a0, $s0 -/* AD7728 80060588 0C0177DD */ jal func_8005DF74 -/* AD772C 8006058C 02402825 */ move $a1, $s2 -/* AD7730 80060590 1051003F */ beq $v0, $s1, .L80060690 -/* AD7734 80060594 26040028 */ addiu $a0, $s0, 0x28 -/* AD7738 80060598 26450028 */ addiu $a1, $s2, 0x28 -/* AD773C 8006059C 0C034041 */ jal func_800D0104 -/* AD7740 800605A0 02A03025 */ move $a2, $s5 -/* AD7744 800605A4 5451003B */ bnel $v0, $s1, .L80060694 -/* AD7748 800605A8 8E6E0018 */ lw $t6, 0x18($s3) -/* AD774C 800605AC C6040028 */ lwc1 $f4, 0x28($s0) -/* AD7750 800605B0 C6060034 */ lwc1 $f6, 0x34($s0) -/* AD7754 800605B4 C60A0040 */ lwc1 $f10, 0x40($s0) -/* AD7758 800605B8 3C018014 */ lui $at, %hi(D_8013AD18) -/* AD775C 800605BC 46062200 */ add.s $f8, $f4, $f6 -/* AD7760 800605C0 C420AD18 */ lwc1 $f0, %lo(D_8013AD18)($at) -/* AD7764 800605C4 8FAB0084 */ lw $t3, 0x84($sp) -/* AD7768 800605C8 27AC0050 */ addiu $t4, $sp, 0x50 -/* AD776C 800605CC 46085400 */ add.s $f16, $f10, $f8 -/* AD7770 800605D0 8FA40078 */ lw $a0, 0x78($sp) -/* AD7774 800605D4 02C02825 */ move $a1, $s6 -/* AD7778 800605D8 02003025 */ move $a2, $s0 -/* AD777C 800605DC 46008482 */ mul.s $f18, $f16, $f0 -/* AD7780 800605E0 27A7005C */ addiu $a3, $sp, 0x5c -/* AD7784 800605E4 E7B2005C */ swc1 $f18, 0x5c($sp) -/* AD7788 800605E8 C6060038 */ lwc1 $f6, 0x38($s0) -/* AD778C 800605EC C604002C */ lwc1 $f4, 0x2c($s0) -/* AD7790 800605F0 C6080044 */ lwc1 $f8, 0x44($s0) -/* AD7794 800605F4 46062280 */ add.s $f10, $f4, $f6 -/* AD7798 800605F8 460A4400 */ add.s $f16, $f8, $f10 -/* AD779C 800605FC 46008482 */ mul.s $f18, $f16, $f0 -/* AD77A0 80060600 E7B20060 */ swc1 $f18, 0x60($sp) -/* AD77A4 80060604 C606003C */ lwc1 $f6, 0x3c($s0) -/* AD77A8 80060608 C6040030 */ lwc1 $f4, 0x30($s0) -/* AD77AC 8006060C C60A0048 */ lwc1 $f10, 0x48($s0) -/* AD77B0 80060610 46062200 */ add.s $f8, $f4, $f6 -/* AD77B4 80060614 46085400 */ add.s $f16, $f10, $f8 -/* AD77B8 80060618 46008482 */ mul.s $f18, $f16, $f0 -/* AD77BC 8006061C E7B20064 */ swc1 $f18, 0x64($sp) -/* AD77C0 80060620 C6460034 */ lwc1 $f6, 0x34($s2) -/* AD77C4 80060624 C6440028 */ lwc1 $f4, 0x28($s2) -/* AD77C8 80060628 C6480040 */ lwc1 $f8, 0x40($s2) -/* AD77CC 8006062C 46062280 */ add.s $f10, $f4, $f6 -/* AD77D0 80060630 460A4400 */ add.s $f16, $f8, $f10 -/* AD77D4 80060634 46008482 */ mul.s $f18, $f16, $f0 -/* AD77D8 80060638 E7B20050 */ swc1 $f18, 0x50($sp) -/* AD77DC 8006063C C6460038 */ lwc1 $f6, 0x38($s2) -/* AD77E0 80060640 C644002C */ lwc1 $f4, 0x2c($s2) -/* AD77E4 80060644 C64A0044 */ lwc1 $f10, 0x44($s2) -/* AD77E8 80060648 46062200 */ add.s $f8, $f4, $f6 -/* AD77EC 8006064C 46085400 */ add.s $f16, $f10, $f8 -/* AD77F0 80060650 46008482 */ mul.s $f18, $f16, $f0 -/* AD77F4 80060654 E7B20054 */ swc1 $f18, 0x54($sp) -/* AD77F8 80060658 C646003C */ lwc1 $f6, 0x3c($s2) -/* AD77FC 8006065C C6440030 */ lwc1 $f4, 0x30($s2) -/* AD7800 80060660 C6480048 */ lwc1 $f8, 0x48($s2) -/* AD7804 80060664 AFB5001C */ sw $s5, 0x1c($sp) -/* AD7808 80060668 46062280 */ add.s $f10, $f4, $f6 -/* AD780C 8006066C AFAC0018 */ sw $t4, 0x18($sp) -/* AD7810 80060670 AFB20014 */ sw $s2, 0x14($sp) -/* AD7814 80060674 AFAB0010 */ sw $t3, 0x10($sp) -/* AD7818 80060678 460A4400 */ add.s $f16, $f8, $f10 -/* AD781C 8006067C 46008482 */ mul.s $f18, $f16, $f0 -/* AD7820 80060680 0C017A07 */ jal func_8005E81C -/* AD7824 80060684 E7B20058 */ swc1 $f18, 0x58($sp) -/* AD7828 80060688 10000014 */ b .L800606DC -/* AD782C 8006068C 8FBF0044 */ lw $ra, 0x44($sp) -.L80060690: -/* AD7830 80060690 8E6E0018 */ lw $t6, 0x18($s3) -.L80060694: -/* AD7834 80060694 8E6D001C */ lw $t5, 0x1c($s3) -/* AD7838 80060698 2610005C */ addiu $s0, $s0, 0x5c -/* AD783C 8006069C 01D40019 */ multu $t6, $s4 -/* AD7840 800606A0 00007812 */ mflo $t7 -/* AD7844 800606A4 01AFC021 */ addu $t8, $t5, $t7 -/* AD7848 800606A8 0218082B */ sltu $at, $s0, $t8 -/* AD784C 800606AC 1420FFB2 */ bnez $at, .L80060578 -/* AD7850 800606B0 00000000 */ nop -/* AD7854 800606B4 8EE80018 */ lw $t0, 0x18($s7) -.L800606B8: -/* AD7858 800606B8 8EF9001C */ lw $t9, 0x1c($s7) -/* AD785C 800606BC 2652005C */ addiu $s2, $s2, 0x5c -/* AD7860 800606C0 01140019 */ multu $t0, $s4 -/* AD7864 800606C4 00004812 */ mflo $t1 -/* AD7868 800606C8 03295021 */ addu $t2, $t9, $t1 -/* AD786C 800606CC 024A082B */ sltu $at, $s2, $t2 -/* AD7870 800606D0 1420FF9D */ bnez $at, .L80060548 -/* AD7874 800606D4 00000000 */ nop -.L800606D8: -/* AD7878 800606D8 8FBF0044 */ lw $ra, 0x44($sp) -.L800606DC: -/* AD787C 800606DC 8FB00024 */ lw $s0, 0x24($sp) -/* AD7880 800606E0 8FB10028 */ lw $s1, 0x28($sp) -/* AD7884 800606E4 8FB2002C */ lw $s2, 0x2c($sp) -/* AD7888 800606E8 8FB30030 */ lw $s3, 0x30($sp) -/* AD788C 800606EC 8FB40034 */ lw $s4, 0x34($sp) -/* AD7890 800606F0 8FB50038 */ lw $s5, 0x38($sp) -/* AD7894 800606F4 8FB6003C */ lw $s6, 0x3c($sp) -/* AD7898 800606F8 8FB70040 */ lw $s7, 0x40($sp) -/* AD789C 800606FC 03E00008 */ jr $ra -/* AD78A0 80060700 27BD0078 */ addiu $sp, $sp, 0x78 - -/* AD78A4 80060704 27BDFF80 */ addiu $sp, $sp, -0x80 -/* AD78A8 80060708 AFBF004C */ sw $ra, 0x4c($sp) -/* AD78AC 8006070C AFBE0048 */ sw $fp, 0x48($sp) -/* AD78B0 80060710 AFB70044 */ sw $s7, 0x44($sp) -/* AD78B4 80060714 AFB60040 */ sw $s6, 0x40($sp) -/* AD78B8 80060718 AFB5003C */ sw $s5, 0x3c($sp) -/* AD78BC 8006071C AFB40038 */ sw $s4, 0x38($sp) -/* AD78C0 80060720 AFB30034 */ sw $s3, 0x34($sp) -/* AD78C4 80060724 AFB20030 */ sw $s2, 0x30($sp) -/* AD78C8 80060728 AFB1002C */ sw $s1, 0x2c($sp) -/* AD78CC 8006072C AFB00028 */ sw $s0, 0x28($sp) -/* AD78D0 80060730 AFA40080 */ sw $a0, 0x80($sp) -/* AD78D4 80060734 AFA50084 */ sw $a1, 0x84($sp) -/* AD78D8 80060738 8CCE0018 */ lw $t6, 0x18($a2) -/* AD78DC 8006073C 00E09825 */ move $s3, $a3 -/* AD78E0 80060740 00C0A825 */ move $s5, $a2 -/* AD78E4 80060744 59C00088 */ blezl $t6, .L80060968 -/* AD78E8 80060748 8FBF004C */ lw $ra, 0x4c($sp) -/* AD78EC 8006074C 8CCF001C */ lw $t7, 0x1c($a2) -/* AD78F0 80060750 24F60018 */ addiu $s6, $a3, 0x18 -/* AD78F4 80060754 02C02025 */ move $a0, $s6 -/* AD78F8 80060758 51E00083 */ beql $t7, $zero, .L80060968 -/* AD78FC 8006075C 8FBF004C */ lw $ra, 0x4c($sp) -/* AD7900 80060760 0C0177D4 */ jal func_8005DF50 -/* AD7904 80060764 AFA60088 */ sw $a2, 0x88($sp) -/* AD7908 80060768 24120001 */ li $s2, 1 -/* AD790C 8006076C 1052007D */ beq $v0, $s2, .L80060964 -/* AD7910 80060770 3C178016 */ lui $s7, %hi(D_8015E440) # $s7, 0x8016 -/* AD7914 80060774 26F7E440 */ addiu $s7, %lo(D_8015E440) # addiu $s7, $s7, -0x1bc0 -/* AD7918 80060778 26710058 */ addiu $s1, $s3, 0x58 -/* AD791C 8006077C 2670004C */ addiu $s0, $s3, 0x4c -/* AD7920 80060780 02003825 */ move $a3, $s0 -/* AD7924 80060784 02202825 */ move $a1, $s1 -/* AD7928 80060788 02E02025 */ move $a0, $s7 -/* AD792C 8006078C 0C0338F0 */ jal func_800CE3C0 -/* AD7930 80060790 26660064 */ addiu $a2, $s3, 0x64 -/* AD7934 80060794 3C1E8016 */ lui $fp, %hi(D_8015E478) # $fp, 0x8016 -/* AD7938 80060798 27DEE478 */ addiu $fp, %lo(D_8015E478) # addiu $fp, $fp, -0x1b88 -/* AD793C 8006079C 03C02025 */ move $a0, $fp -/* AD7940 800607A0 02002825 */ move $a1, $s0 -/* AD7944 800607A4 26660040 */ addiu $a2, $s3, 0x40 -/* AD7948 800607A8 0C0338F0 */ jal func_800CE3C0 -/* AD794C 800607AC 02203825 */ move $a3, $s1 -/* AD7950 800607B0 8FA30088 */ lw $v1, 0x88($sp) -/* AD7954 800607B4 3C148016 */ lui $s4, %hi(D_8015E430) # $s4, 0x8016 -/* AD7958 800607B8 2694E430 */ addiu $s4, %lo(D_8015E430) # addiu $s4, $s4, -0x1bd0 -/* AD795C 800607BC 8C780018 */ lw $t8, 0x18($v1) -/* AD7960 800607C0 8C71001C */ lw $s1, 0x1c($v1) -/* AD7964 800607C4 0018C880 */ sll $t9, $t8, 2 -/* AD7968 800607C8 0338C823 */ subu $t9, $t9, $t8 -/* AD796C 800607CC 0019C8C0 */ sll $t9, $t9, 3 -/* AD7970 800607D0 0338C823 */ subu $t9, $t9, $t8 -/* AD7974 800607D4 0019C880 */ sll $t9, $t9, 2 -/* AD7978 800607D8 02394021 */ addu $t0, $s1, $t9 -/* AD797C 800607DC 0228082B */ sltu $at, $s1, $t0 -/* AD7980 800607E0 50200061 */ beql $at, $zero, .L80060968 -/* AD7984 800607E4 8FBF004C */ lw $ra, 0x4c($sp) -.L800607E8: -/* AD7988 800607E8 0C0177CB */ jal func_8005DF2C -/* AD798C 800607EC 02202025 */ move $a0, $s1 -/* AD7990 800607F0 10520050 */ beq $v0, $s2, .L80060934 -/* AD7994 800607F4 02202025 */ move $a0, $s1 -/* AD7998 800607F8 0C0177DD */ jal func_8005DF74 -/* AD799C 800607FC 02C02825 */ move $a1, $s6 -/* AD79A0 80060800 1052004C */ beq $v0, $s2, .L80060934 -/* AD79A4 80060804 02E02025 */ move $a0, $s7 -/* AD79A8 80060808 26300028 */ addiu $s0, $s1, 0x28 -/* AD79AC 8006080C 02002825 */ move $a1, $s0 -/* AD79B0 80060810 0C034041 */ jal func_800D0104 -/* AD79B4 80060814 02803025 */ move $a2, $s4 -/* AD79B8 80060818 10520006 */ beq $v0, $s2, .L80060834 -/* AD79BC 8006081C 03C02025 */ move $a0, $fp -/* AD79C0 80060820 02002825 */ move $a1, $s0 -/* AD79C4 80060824 0C034041 */ jal func_800D0104 -/* AD79C8 80060828 02803025 */ move $a2, $s4 -/* AD79CC 8006082C 54520042 */ bnel $v0, $s2, .L80060938 -/* AD79D0 80060830 8EAB0018 */ lw $t3, 0x18($s5) -.L80060834: -/* AD79D4 80060834 C6240028 */ lwc1 $f4, 0x28($s1) -/* AD79D8 80060838 C6260034 */ lwc1 $f6, 0x34($s1) -/* AD79DC 8006083C C62A0040 */ lwc1 $f10, 0x40($s1) -/* AD79E0 80060840 3C018014 */ lui $at, %hi(D_8013AD1C) -/* AD79E4 80060844 46062200 */ add.s $f8, $f4, $f6 -/* AD79E8 80060848 C420AD1C */ lwc1 $f0, %lo(D_8013AD1C)($at) -/* AD79EC 8006084C 3C013E80 */ li $at, 0x3E800000 # 0.000000 -/* AD79F0 80060850 44811000 */ mtc1 $at, $f2 -/* AD79F4 80060854 46085400 */ add.s $f16, $f10, $f8 -/* AD79F8 80060858 27A9005C */ addiu $t1, $sp, 0x5c -/* AD79FC 8006085C 8FA40080 */ lw $a0, 0x80($sp) -/* AD7A00 80060860 8FA50088 */ lw $a1, 0x88($sp) -/* AD7A04 80060864 46008482 */ mul.s $f18, $f16, $f0 -/* AD7A08 80060868 02203025 */ move $a2, $s1 -/* AD7A0C 8006086C 27A70068 */ addiu $a3, $sp, 0x68 -/* AD7A10 80060870 E7B20068 */ swc1 $f18, 0x68($sp) -/* AD7A14 80060874 C6260038 */ lwc1 $f6, 0x38($s1) -/* AD7A18 80060878 C624002C */ lwc1 $f4, 0x2c($s1) -/* AD7A1C 8006087C C6280044 */ lwc1 $f8, 0x44($s1) -/* AD7A20 80060880 46062280 */ add.s $f10, $f4, $f6 -/* AD7A24 80060884 460A4400 */ add.s $f16, $f8, $f10 -/* AD7A28 80060888 46008482 */ mul.s $f18, $f16, $f0 -/* AD7A2C 8006088C E7B2006C */ swc1 $f18, 0x6c($sp) -/* AD7A30 80060890 C626003C */ lwc1 $f6, 0x3c($s1) -/* AD7A34 80060894 C6240030 */ lwc1 $f4, 0x30($s1) -/* AD7A38 80060898 C62A0048 */ lwc1 $f10, 0x48($s1) -/* AD7A3C 8006089C 46062200 */ add.s $f8, $f4, $f6 -/* AD7A40 800608A0 46085400 */ add.s $f16, $f10, $f8 -/* AD7A44 800608A4 46008482 */ mul.s $f18, $f16, $f0 -/* AD7A48 800608A8 E7B20070 */ swc1 $f18, 0x70($sp) -/* AD7A4C 800608AC C6660064 */ lwc1 $f6, 0x64($s3) -/* AD7A50 800608B0 C6640058 */ lwc1 $f4, 0x58($s3) -/* AD7A54 800608B4 C668004C */ lwc1 $f8, 0x4c($s3) -/* AD7A58 800608B8 C6720040 */ lwc1 $f18, 0x40($s3) -/* AD7A5C 800608BC 46062280 */ add.s $f10, $f4, $f6 -/* AD7A60 800608C0 46085400 */ add.s $f16, $f10, $f8 -/* AD7A64 800608C4 46128100 */ add.s $f4, $f16, $f18 -/* AD7A68 800608C8 46022182 */ mul.s $f6, $f4, $f2 -/* AD7A6C 800608CC E7A6005C */ swc1 $f6, 0x5c($sp) -/* AD7A70 800608D0 C6680068 */ lwc1 $f8, 0x68($s3) -/* AD7A74 800608D4 C66A005C */ lwc1 $f10, 0x5c($s3) -/* AD7A78 800608D8 C6720050 */ lwc1 $f18, 0x50($s3) -/* AD7A7C 800608DC C6660044 */ lwc1 $f6, 0x44($s3) -/* AD7A80 800608E0 46085400 */ add.s $f16, $f10, $f8 -/* AD7A84 800608E4 46128100 */ add.s $f4, $f16, $f18 -/* AD7A88 800608E8 46062280 */ add.s $f10, $f4, $f6 -/* AD7A8C 800608EC 46025202 */ mul.s $f8, $f10, $f2 -/* AD7A90 800608F0 E7A80060 */ swc1 $f8, 0x60($sp) -/* AD7A94 800608F4 C672006C */ lwc1 $f18, 0x6c($s3) -/* AD7A98 800608F8 C6700060 */ lwc1 $f16, 0x60($s3) -/* AD7A9C 800608FC C6660054 */ lwc1 $f6, 0x54($s3) -/* AD7AA0 80060900 C6680048 */ lwc1 $f8, 0x48($s3) -/* AD7AA4 80060904 46128100 */ add.s $f4, $f16, $f18 -/* AD7AA8 80060908 AFB4001C */ sw $s4, 0x1c($sp) -/* AD7AAC 8006090C AFA90018 */ sw $t1, 0x18($sp) -/* AD7AB0 80060910 AFB60014 */ sw $s6, 0x14($sp) -/* AD7AB4 80060914 46062280 */ add.s $f10, $f4, $f6 -/* AD7AB8 80060918 AFB30010 */ sw $s3, 0x10($sp) -/* AD7ABC 8006091C 46085400 */ add.s $f16, $f10, $f8 -/* AD7AC0 80060920 46028482 */ mul.s $f18, $f16, $f2 -/* AD7AC4 80060924 0C017A07 */ jal func_8005E81C -/* AD7AC8 80060928 E7B20064 */ swc1 $f18, 0x64($sp) -/* AD7ACC 8006092C 1000000E */ b .L80060968 -/* AD7AD0 80060930 8FBF004C */ lw $ra, 0x4c($sp) -.L80060934: -/* AD7AD4 80060934 8EAB0018 */ lw $t3, 0x18($s5) -.L80060938: -/* AD7AD8 80060938 8EAA001C */ lw $t2, 0x1c($s5) -/* AD7ADC 8006093C 2631005C */ addiu $s1, $s1, 0x5c -/* AD7AE0 80060940 000B6080 */ sll $t4, $t3, 2 -/* AD7AE4 80060944 018B6023 */ subu $t4, $t4, $t3 -/* AD7AE8 80060948 000C60C0 */ sll $t4, $t4, 3 -/* AD7AEC 8006094C 018B6023 */ subu $t4, $t4, $t3 -/* AD7AF0 80060950 000C6080 */ sll $t4, $t4, 2 -/* AD7AF4 80060954 014C6821 */ addu $t5, $t2, $t4 -/* AD7AF8 80060958 022D082B */ sltu $at, $s1, $t5 -/* AD7AFC 8006095C 1420FFA2 */ bnez $at, .L800607E8 -/* AD7B00 80060960 00000000 */ nop -.L80060964: -/* AD7B04 80060964 8FBF004C */ lw $ra, 0x4c($sp) -.L80060968: -/* AD7B08 80060968 8FB00028 */ lw $s0, 0x28($sp) -/* AD7B0C 8006096C 8FB1002C */ lw $s1, 0x2c($sp) -/* AD7B10 80060970 8FB20030 */ lw $s2, 0x30($sp) -/* AD7B14 80060974 8FB30034 */ lw $s3, 0x34($sp) -/* AD7B18 80060978 8FB40038 */ lw $s4, 0x38($sp) -/* AD7B1C 8006097C 8FB5003C */ lw $s5, 0x3c($sp) -/* AD7B20 80060980 8FB60040 */ lw $s6, 0x40($sp) -/* AD7B24 80060984 8FB70044 */ lw $s7, 0x44($sp) -/* AD7B28 80060988 8FBE0048 */ lw $fp, 0x48($sp) -/* AD7B2C 8006098C 03E00008 */ jr $ra -/* AD7B30 80060990 27BD0080 */ addiu $sp, $sp, 0x80 - -/* AD7B34 80060994 27BDFF80 */ addiu $sp, $sp, -0x80 -/* AD7B38 80060998 AFBF004C */ sw $ra, 0x4c($sp) -/* AD7B3C 8006099C AFBE0048 */ sw $fp, 0x48($sp) -/* AD7B40 800609A0 AFB70044 */ sw $s7, 0x44($sp) -/* AD7B44 800609A4 AFB60040 */ sw $s6, 0x40($sp) -/* AD7B48 800609A8 AFB5003C */ sw $s5, 0x3c($sp) -/* AD7B4C 800609AC AFB40038 */ sw $s4, 0x38($sp) -/* AD7B50 800609B0 AFB30034 */ sw $s3, 0x34($sp) -/* AD7B54 800609B4 AFB20030 */ sw $s2, 0x30($sp) -/* AD7B58 800609B8 AFB1002C */ sw $s1, 0x2c($sp) -/* AD7B5C 800609BC AFB00028 */ sw $s0, 0x28($sp) -/* AD7B60 800609C0 AFA40080 */ sw $a0, 0x80($sp) -/* AD7B64 800609C4 AFA50084 */ sw $a1, 0x84($sp) -/* AD7B68 800609C8 8CEE0018 */ lw $t6, 0x18($a3) -/* AD7B6C 800609CC 00C0A025 */ move $s4, $a2 -/* AD7B70 800609D0 00E0A825 */ move $s5, $a3 -/* AD7B74 800609D4 59C0008A */ blezl $t6, .L80060C00 -/* AD7B78 800609D8 8FBF004C */ lw $ra, 0x4c($sp) -/* AD7B7C 800609DC 8CEF001C */ lw $t7, 0x1c($a3) -/* AD7B80 800609E0 24D70018 */ addiu $s7, $a2, 0x18 -/* AD7B84 800609E4 02E02025 */ move $a0, $s7 -/* AD7B88 800609E8 51E00085 */ beql $t7, $zero, .L80060C00 -/* AD7B8C 800609EC 8FBF004C */ lw $ra, 0x4c($sp) -/* AD7B90 800609F0 0C0177CB */ jal func_8005DF2C -/* AD7B94 800609F4 AFA7008C */ sw $a3, 0x8c($sp) -/* AD7B98 800609F8 24120001 */ li $s2, 1 -/* AD7B9C 800609FC 1052007F */ beq $v0, $s2, .L80060BFC -/* AD7BA0 80060A00 3C1E8016 */ lui $fp, %hi(D_8015E4C0) # $fp, 0x8016 -/* AD7BA4 80060A04 27DEE4C0 */ addiu $fp, %lo(D_8015E4C0) # addiu $fp, $fp, -0x1b40 -/* AD7BA8 80060A08 26910058 */ addiu $s1, $s4, 0x58 -/* AD7BAC 80060A0C 2690004C */ addiu $s0, $s4, 0x4c -/* AD7BB0 80060A10 02003825 */ move $a3, $s0 -/* AD7BB4 80060A14 02202825 */ move $a1, $s1 -/* AD7BB8 80060A18 03C02025 */ move $a0, $fp -/* AD7BBC 80060A1C 0C0338F0 */ jal func_800CE3C0 -/* AD7BC0 80060A20 26860064 */ addiu $a2, $s4, 0x64 -/* AD7BC4 80060A24 3C048016 */ lui $a0, %hi(D_8015E4F8) # $a0, 0x8016 -/* AD7BC8 80060A28 2484E4F8 */ addiu $a0, %lo(D_8015E4F8) # addiu $a0, $a0, -0x1b08 -/* AD7BCC 80060A2C 02002825 */ move $a1, $s0 -/* AD7BD0 80060A30 26860040 */ addiu $a2, $s4, 0x40 -/* AD7BD4 80060A34 0C0338F0 */ jal func_800CE3C0 -/* AD7BD8 80060A38 02203825 */ move $a3, $s1 -/* AD7BDC 80060A3C 8FA3008C */ lw $v1, 0x8c($sp) -/* AD7BE0 80060A40 2416005C */ li $s6, 92 -/* AD7BE4 80060A44 3C138016 */ lui $s3, %hi(D_8015E4B0) # $s3, 0x8016 -/* AD7BE8 80060A48 8C780018 */ lw $t8, 0x18($v1) -/* AD7BEC 80060A4C 8C71001C */ lw $s1, 0x1c($v1) -/* AD7BF0 80060A50 2673E4B0 */ addiu $s3, %lo(D_8015E4B0) # addiu $s3, $s3, -0x1b50 -/* AD7BF4 80060A54 03160019 */ multu $t8, $s6 -/* AD7BF8 80060A58 0000C812 */ mflo $t9 -/* AD7BFC 80060A5C 02394021 */ addu $t0, $s1, $t9 -/* AD7C00 80060A60 0228082B */ sltu $at, $s1, $t0 -/* AD7C04 80060A64 50200066 */ beql $at, $zero, .L80060C00 -/* AD7C08 80060A68 8FBF004C */ lw $ra, 0x4c($sp) -.L80060A6C: -/* AD7C0C 80060A6C 0C0177D4 */ jal func_8005DF50 -/* AD7C10 80060A70 02202025 */ move $a0, $s1 -/* AD7C14 80060A74 10520058 */ beq $v0, $s2, .L80060BD8 -/* AD7C18 80060A78 02E02025 */ move $a0, $s7 -/* AD7C1C 80060A7C 0C0177DD */ jal func_8005DF74 -/* AD7C20 80060A80 02202825 */ move $a1, $s1 -/* AD7C24 80060A84 10520054 */ beq $v0, $s2, .L80060BD8 -/* AD7C28 80060A88 03C02025 */ move $a0, $fp -/* AD7C2C 80060A8C 26300028 */ addiu $s0, $s1, 0x28 -/* AD7C30 80060A90 02002825 */ move $a1, $s0 -/* AD7C34 80060A94 0C034041 */ jal func_800D0104 -/* AD7C38 80060A98 02603025 */ move $a2, $s3 -/* AD7C3C 80060A9C 10520007 */ beq $v0, $s2, .L80060ABC -/* AD7C40 80060AA0 3C048016 */ lui $a0, %hi(D_8015E4F8) # $a0, 0x8016 -/* AD7C44 80060AA4 2484E4F8 */ addiu $a0, %lo(D_8015E4F8) # addiu $a0, $a0, -0x1b08 -/* AD7C48 80060AA8 02002825 */ move $a1, $s0 -/* AD7C4C 80060AAC 0C034041 */ jal func_800D0104 -/* AD7C50 80060AB0 02603025 */ move $a2, $s3 -/* AD7C54 80060AB4 54520049 */ bnel $v0, $s2, .L80060BDC -/* AD7C58 80060AB8 8EAC0018 */ lw $t4, 0x18($s5) -.L80060ABC: -/* AD7C5C 80060ABC 8FA40080 */ lw $a0, 0x80($sp) -/* AD7C60 80060AC0 02802825 */ move $a1, $s4 -/* AD7C64 80060AC4 0C017486 */ jal func_8005D218 -/* AD7C68 80060AC8 02603025 */ move $a2, $s3 -/* AD7C6C 80060ACC 50400043 */ beql $v0, $zero, .L80060BDC -/* AD7C70 80060AD0 8EAC0018 */ lw $t4, 0x18($s5) -/* AD7C74 80060AD4 C6240028 */ lwc1 $f4, 0x28($s1) -/* AD7C78 80060AD8 C6260034 */ lwc1 $f6, 0x34($s1) -/* AD7C7C 80060ADC C62A0040 */ lwc1 $f10, 0x40($s1) -/* AD7C80 80060AE0 3C018014 */ lui $at, %hi(D_8013AD20) -/* AD7C84 80060AE4 46062200 */ add.s $f8, $f4, $f6 -/* AD7C88 80060AE8 C420AD20 */ lwc1 $f0, %lo(D_8013AD20)($at) -/* AD7C8C 80060AEC 3C013E80 */ li $at, 0x3E800000 # 0.000000 -/* AD7C90 80060AF0 44811000 */ mtc1 $at, $f2 -/* AD7C94 80060AF4 46085400 */ add.s $f16, $f10, $f8 -/* AD7C98 80060AF8 8FA9008C */ lw $t1, 0x8c($sp) -/* AD7C9C 80060AFC 27AA005C */ addiu $t2, $sp, 0x5c -/* AD7CA0 80060B00 8FA40080 */ lw $a0, 0x80($sp) -/* AD7CA4 80060B04 46008482 */ mul.s $f18, $f16, $f0 -/* AD7CA8 80060B08 02802825 */ move $a1, $s4 -/* AD7CAC 80060B0C 02E03025 */ move $a2, $s7 -/* AD7CB0 80060B10 27A70068 */ addiu $a3, $sp, 0x68 -/* AD7CB4 80060B14 E7B2005C */ swc1 $f18, 0x5c($sp) -/* AD7CB8 80060B18 C6260038 */ lwc1 $f6, 0x38($s1) -/* AD7CBC 80060B1C C624002C */ lwc1 $f4, 0x2c($s1) -/* AD7CC0 80060B20 C6280044 */ lwc1 $f8, 0x44($s1) -/* AD7CC4 80060B24 46062280 */ add.s $f10, $f4, $f6 -/* AD7CC8 80060B28 460A4400 */ add.s $f16, $f8, $f10 -/* AD7CCC 80060B2C 46008482 */ mul.s $f18, $f16, $f0 -/* AD7CD0 80060B30 E7B20060 */ swc1 $f18, 0x60($sp) -/* AD7CD4 80060B34 C626003C */ lwc1 $f6, 0x3c($s1) -/* AD7CD8 80060B38 C6240030 */ lwc1 $f4, 0x30($s1) -/* AD7CDC 80060B3C C62A0048 */ lwc1 $f10, 0x48($s1) -/* AD7CE0 80060B40 46062200 */ add.s $f8, $f4, $f6 -/* AD7CE4 80060B44 46085400 */ add.s $f16, $f10, $f8 -/* AD7CE8 80060B48 46008482 */ mul.s $f18, $f16, $f0 -/* AD7CEC 80060B4C E7B20064 */ swc1 $f18, 0x64($sp) -/* AD7CF0 80060B50 C6860064 */ lwc1 $f6, 0x64($s4) -/* AD7CF4 80060B54 C6840058 */ lwc1 $f4, 0x58($s4) -/* AD7CF8 80060B58 C688004C */ lwc1 $f8, 0x4c($s4) -/* AD7CFC 80060B5C C6920040 */ lwc1 $f18, 0x40($s4) -/* AD7D00 80060B60 46062280 */ add.s $f10, $f4, $f6 -/* AD7D04 80060B64 46085400 */ add.s $f16, $f10, $f8 -/* AD7D08 80060B68 46128100 */ add.s $f4, $f16, $f18 -/* AD7D0C 80060B6C 46022182 */ mul.s $f6, $f4, $f2 -/* AD7D10 80060B70 E7A60068 */ swc1 $f6, 0x68($sp) -/* AD7D14 80060B74 C6880068 */ lwc1 $f8, 0x68($s4) -/* AD7D18 80060B78 C68A005C */ lwc1 $f10, 0x5c($s4) -/* AD7D1C 80060B7C C6920050 */ lwc1 $f18, 0x50($s4) -/* AD7D20 80060B80 C6860044 */ lwc1 $f6, 0x44($s4) -/* AD7D24 80060B84 46085400 */ add.s $f16, $f10, $f8 -/* AD7D28 80060B88 46128100 */ add.s $f4, $f16, $f18 -/* AD7D2C 80060B8C 46062280 */ add.s $f10, $f4, $f6 -/* AD7D30 80060B90 46025202 */ mul.s $f8, $f10, $f2 -/* AD7D34 80060B94 E7A8006C */ swc1 $f8, 0x6c($sp) -/* AD7D38 80060B98 C692006C */ lwc1 $f18, 0x6c($s4) -/* AD7D3C 80060B9C C6900060 */ lwc1 $f16, 0x60($s4) -/* AD7D40 80060BA0 C6860054 */ lwc1 $f6, 0x54($s4) -/* AD7D44 80060BA4 C6880048 */ lwc1 $f8, 0x48($s4) -/* AD7D48 80060BA8 46128100 */ add.s $f4, $f16, $f18 -/* AD7D4C 80060BAC AFB3001C */ sw $s3, 0x1c($sp) -/* AD7D50 80060BB0 AFAA0018 */ sw $t2, 0x18($sp) -/* AD7D54 80060BB4 AFB10014 */ sw $s1, 0x14($sp) -/* AD7D58 80060BB8 46062280 */ add.s $f10, $f4, $f6 -/* AD7D5C 80060BBC AFA90010 */ sw $t1, 0x10($sp) -/* AD7D60 80060BC0 46085400 */ add.s $f16, $f10, $f8 -/* AD7D64 80060BC4 46028482 */ mul.s $f18, $f16, $f2 -/* AD7D68 80060BC8 0C017A07 */ jal func_8005E81C -/* AD7D6C 80060BCC E7B20070 */ swc1 $f18, 0x70($sp) -/* AD7D70 80060BD0 1000000B */ b .L80060C00 -/* AD7D74 80060BD4 8FBF004C */ lw $ra, 0x4c($sp) -.L80060BD8: -/* AD7D78 80060BD8 8EAC0018 */ lw $t4, 0x18($s5) -.L80060BDC: -/* AD7D7C 80060BDC 8EAB001C */ lw $t3, 0x1c($s5) -/* AD7D80 80060BE0 2631005C */ addiu $s1, $s1, 0x5c -/* AD7D84 80060BE4 01960019 */ multu $t4, $s6 -/* AD7D88 80060BE8 00006812 */ mflo $t5 -/* AD7D8C 80060BEC 016D7021 */ addu $t6, $t3, $t5 -/* AD7D90 80060BF0 022E082B */ sltu $at, $s1, $t6 -/* AD7D94 80060BF4 1420FF9D */ bnez $at, .L80060A6C -/* AD7D98 80060BF8 00000000 */ nop -.L80060BFC: -/* AD7D9C 80060BFC 8FBF004C */ lw $ra, 0x4c($sp) -.L80060C00: -/* AD7DA0 80060C00 8FB00028 */ lw $s0, 0x28($sp) -/* AD7DA4 80060C04 8FB1002C */ lw $s1, 0x2c($sp) -/* AD7DA8 80060C08 8FB20030 */ lw $s2, 0x30($sp) -/* AD7DAC 80060C0C 8FB30034 */ lw $s3, 0x34($sp) -/* AD7DB0 80060C10 8FB40038 */ lw $s4, 0x38($sp) -/* AD7DB4 80060C14 8FB5003C */ lw $s5, 0x3c($sp) -/* AD7DB8 80060C18 8FB60040 */ lw $s6, 0x40($sp) -/* AD7DBC 80060C1C 8FB70044 */ lw $s7, 0x44($sp) -/* AD7DC0 80060C20 8FBE0048 */ lw $fp, 0x48($sp) -/* AD7DC4 80060C24 03E00008 */ jr $ra -/* AD7DC8 80060C28 27BD0080 */ addiu $sp, $sp, 0x80 - -/* AD7DCC 80060C2C 27BDFF78 */ addiu $sp, $sp, -0x88 -/* AD7DD0 80060C30 AFB60040 */ sw $s6, 0x40($sp) -/* AD7DD4 80060C34 0080B025 */ move $s6, $a0 -/* AD7DD8 80060C38 AFBF004C */ sw $ra, 0x4c($sp) -/* AD7DDC 80060C3C AFB70044 */ sw $s7, 0x44($sp) -/* AD7DE0 80060C40 AFB40038 */ sw $s4, 0x38($sp) -/* AD7DE4 80060C44 24C40018 */ addiu $a0, $a2, 0x18 -/* AD7DE8 80060C48 00C0A025 */ move $s4, $a2 -/* AD7DEC 80060C4C 00E0B825 */ move $s7, $a3 -/* AD7DF0 80060C50 AFBE0048 */ sw $fp, 0x48($sp) -/* AD7DF4 80060C54 AFB5003C */ sw $s5, 0x3c($sp) -/* AD7DF8 80060C58 AFB30034 */ sw $s3, 0x34($sp) -/* AD7DFC 80060C5C AFB20030 */ sw $s2, 0x30($sp) -/* AD7E00 80060C60 AFB1002C */ sw $s1, 0x2c($sp) -/* AD7E04 80060C64 AFB00028 */ sw $s0, 0x28($sp) -/* AD7E08 80060C68 AFA5008C */ sw $a1, 0x8c($sp) -/* AD7E0C 80060C6C 0C0177CB */ jal func_8005DF2C -/* AD7E10 80060C70 AFA4005C */ sw $a0, 0x5c($sp) -/* AD7E14 80060C74 24150001 */ li $s5, 1 -/* AD7E18 80060C78 10550084 */ beq $v0, $s5, .L80060E8C -/* AD7E1C 80060C7C 26E40018 */ addiu $a0, $s7, 0x18 -/* AD7E20 80060C80 0C0177D4 */ jal func_8005DF50 -/* AD7E24 80060C84 AFA40050 */ sw $a0, 0x50($sp) -/* AD7E28 80060C88 10550080 */ beq $v0, $s5, .L80060E8C -/* AD7E2C 80060C8C 8FA4005C */ lw $a0, 0x5c($sp) -/* AD7E30 80060C90 0C0177DD */ jal func_8005DF74 -/* AD7E34 80060C94 8FA50050 */ lw $a1, 0x50($sp) -/* AD7E38 80060C98 1055007C */ beq $v0, $s5, .L80060E8C -/* AD7E3C 80060C9C 3C048016 */ lui $a0, %hi(D_8015E5A8) # $a0, 0x8016 -/* AD7E40 80060CA0 26900058 */ addiu $s0, $s4, 0x58 -/* AD7E44 80060CA4 2691004C */ addiu $s1, $s4, 0x4c -/* AD7E48 80060CA8 02203825 */ move $a3, $s1 -/* AD7E4C 80060CAC 02002825 */ move $a1, $s0 -/* AD7E50 80060CB0 2484E5A8 */ addiu $a0, %lo(D_8015E5A8) # addiu $a0, $a0, -0x1a58 -/* AD7E54 80060CB4 0C0338F0 */ jal func_800CE3C0 -/* AD7E58 80060CB8 26860064 */ addiu $a2, $s4, 0x64 -/* AD7E5C 80060CBC 3C048016 */ lui $a0, %hi(D_8015E5DC) # $a0, 0x8016 -/* AD7E60 80060CC0 2484E5DC */ addiu $a0, %lo(D_8015E5DC) # addiu $a0, $a0, -0x1a24 -/* AD7E64 80060CC4 02002825 */ move $a1, $s0 -/* AD7E68 80060CC8 02203025 */ move $a2, $s1 -/* AD7E6C 80060CCC 0C0338F0 */ jal func_800CE3C0 -/* AD7E70 80060CD0 26870040 */ addiu $a3, $s4, 0x40 -/* AD7E74 80060CD4 3C048016 */ lui $a0, %hi(D_8015E530) # $a0, 0x8016 -/* AD7E78 80060CD8 26F00058 */ addiu $s0, $s7, 0x58 -/* AD7E7C 80060CDC 26F1004C */ addiu $s1, $s7, 0x4c -/* AD7E80 80060CE0 02203825 */ move $a3, $s1 -/* AD7E84 80060CE4 02002825 */ move $a1, $s0 -/* AD7E88 80060CE8 2484E530 */ addiu $a0, %lo(D_8015E530) # addiu $a0, $a0, -0x1ad0 -/* AD7E8C 80060CEC 0C0338F0 */ jal func_800CE3C0 -/* AD7E90 80060CF0 26E60064 */ addiu $a2, $s7, 0x64 -/* AD7E94 80060CF4 3C048016 */ lui $a0, %hi(D_8015E564) # $a0, 0x8016 -/* AD7E98 80060CF8 2484E564 */ addiu $a0, %lo(D_8015E564) # addiu $a0, $a0, -0x1a9c -/* AD7E9C 80060CFC 02002825 */ move $a1, $s0 -/* AD7EA0 80060D00 02203025 */ move $a2, $s1 -/* AD7EA4 80060D04 0C0338F0 */ jal func_800CE3C0 -/* AD7EA8 80060D08 26E70040 */ addiu $a3, $s7, 0x40 -/* AD7EAC 80060D0C 3C128016 */ lui $s2, %hi(D_8015E530) # $s2, 0x8016 -/* AD7EB0 80060D10 3C1E8016 */ lui $fp, %hi(D_8015E598) # $fp, 0x8016 -/* AD7EB4 80060D14 3C138016 */ lui $s3, %hi(D_8015E610) # $s3, 0x8016 -/* AD7EB8 80060D18 3C118016 */ lui $s1, %hi(D_8015E598) # $s1, 0x8016 -/* AD7EBC 80060D1C 2631E598 */ addiu $s1, %lo(D_8015E598) # addiu $s1, $s1, -0x1a68 -/* AD7EC0 80060D20 2673E610 */ addiu $s3, %lo(D_8015E610) # addiu $s3, $s3, -0x19f0 -/* AD7EC4 80060D24 27DEE598 */ addiu $fp, %lo(D_8015E598) # addiu $fp, $fp, -0x1a68 -/* AD7EC8 80060D28 2652E530 */ addiu $s2, %lo(D_8015E530) # addiu $s2, $s2, -0x1ad0 -.L80060D2C: -/* AD7ECC 80060D2C 3C108016 */ lui $s0, %hi(D_8015E5A8) # $s0, 0x8016 -/* AD7ED0 80060D30 2610E5A8 */ addiu $s0, %lo(D_8015E5A8) # addiu $s0, $s0, -0x1a58 -/* AD7ED4 80060D34 02002025 */ move $a0, $s0 -.L80060D38: -/* AD7ED8 80060D38 02402825 */ move $a1, $s2 -/* AD7EDC 80060D3C 0C034041 */ jal func_800D0104 -/* AD7EE0 80060D40 02203025 */ move $a2, $s1 -/* AD7EE4 80060D44 1455004B */ bne $v0, $s5, .L80060E74 -/* AD7EE8 80060D48 02C02025 */ move $a0, $s6 -/* AD7EEC 80060D4C 02802825 */ move $a1, $s4 -/* AD7EF0 80060D50 0C017486 */ jal func_8005D218 -/* AD7EF4 80060D54 02203025 */ move $a2, $s1 -/* AD7EF8 80060D58 50400047 */ beql $v0, $zero, .L80060E78 -/* AD7EFC 80060D5C 26100034 */ addiu $s0, $s0, 0x34 -/* AD7F00 80060D60 C6840058 */ lwc1 $f4, 0x58($s4) -/* AD7F04 80060D64 C6860064 */ lwc1 $f6, 0x64($s4) -/* AD7F08 80060D68 C68A004C */ lwc1 $f10, 0x4c($s4) -/* AD7F0C 80060D6C C6920040 */ lwc1 $f18, 0x40($s4) -/* AD7F10 80060D70 46062200 */ add.s $f8, $f4, $f6 -/* AD7F14 80060D74 3C013E80 */ li $at, 0x3E800000 # 0.000000 -/* AD7F18 80060D78 44810000 */ mtc1 $at, $f0 -/* AD7F1C 80060D7C 8FAE0050 */ lw $t6, 0x50($sp) -/* AD7F20 80060D80 460A4400 */ add.s $f16, $f8, $f10 -/* AD7F24 80060D84 27AF0060 */ addiu $t7, $sp, 0x60 -/* AD7F28 80060D88 02C02025 */ move $a0, $s6 -/* AD7F2C 80060D8C 02802825 */ move $a1, $s4 -/* AD7F30 80060D90 46128100 */ add.s $f4, $f16, $f18 -/* AD7F34 80060D94 8FA6005C */ lw $a2, 0x5c($sp) -/* AD7F38 80060D98 27A7006C */ addiu $a3, $sp, 0x6c -/* AD7F3C 80060D9C 46002182 */ mul.s $f6, $f4, $f0 -/* AD7F40 80060DA0 E7A6006C */ swc1 $f6, 0x6c($sp) -/* AD7F44 80060DA4 C68A0068 */ lwc1 $f10, 0x68($s4) -/* AD7F48 80060DA8 C688005C */ lwc1 $f8, 0x5c($s4) -/* AD7F4C 80060DAC C6920050 */ lwc1 $f18, 0x50($s4) -/* AD7F50 80060DB0 C6860044 */ lwc1 $f6, 0x44($s4) -/* AD7F54 80060DB4 460A4400 */ add.s $f16, $f8, $f10 -/* AD7F58 80060DB8 46128100 */ add.s $f4, $f16, $f18 -/* AD7F5C 80060DBC 46062200 */ add.s $f8, $f4, $f6 -/* AD7F60 80060DC0 46004282 */ mul.s $f10, $f8, $f0 -/* AD7F64 80060DC4 E7AA0070 */ swc1 $f10, 0x70($sp) -/* AD7F68 80060DC8 C692006C */ lwc1 $f18, 0x6c($s4) -/* AD7F6C 80060DCC C6900060 */ lwc1 $f16, 0x60($s4) -/* AD7F70 80060DD0 C6860054 */ lwc1 $f6, 0x54($s4) -/* AD7F74 80060DD4 C68A0048 */ lwc1 $f10, 0x48($s4) -/* AD7F78 80060DD8 46128100 */ add.s $f4, $f16, $f18 -/* AD7F7C 80060DDC 46062200 */ add.s $f8, $f4, $f6 -/* AD7F80 80060DE0 460A4400 */ add.s $f16, $f8, $f10 -/* AD7F84 80060DE4 46008482 */ mul.s $f18, $f16, $f0 -/* AD7F88 80060DE8 E7B20074 */ swc1 $f18, 0x74($sp) -/* AD7F8C 80060DEC C6E60064 */ lwc1 $f6, 0x64($s7) -/* AD7F90 80060DF0 C6E40058 */ lwc1 $f4, 0x58($s7) -/* AD7F94 80060DF4 C6EA004C */ lwc1 $f10, 0x4c($s7) -/* AD7F98 80060DF8 C6F20040 */ lwc1 $f18, 0x40($s7) -/* AD7F9C 80060DFC 46062200 */ add.s $f8, $f4, $f6 -/* AD7FA0 80060E00 460A4400 */ add.s $f16, $f8, $f10 -/* AD7FA4 80060E04 46128100 */ add.s $f4, $f16, $f18 -/* AD7FA8 80060E08 46002182 */ mul.s $f6, $f4, $f0 -/* AD7FAC 80060E0C E7A60060 */ swc1 $f6, 0x60($sp) -/* AD7FB0 80060E10 C6EA0068 */ lwc1 $f10, 0x68($s7) -/* AD7FB4 80060E14 C6E8005C */ lwc1 $f8, 0x5c($s7) -/* AD7FB8 80060E18 C6F20050 */ lwc1 $f18, 0x50($s7) -/* AD7FBC 80060E1C C6E60044 */ lwc1 $f6, 0x44($s7) -/* AD7FC0 80060E20 460A4400 */ add.s $f16, $f8, $f10 -/* AD7FC4 80060E24 46128100 */ add.s $f4, $f16, $f18 -/* AD7FC8 80060E28 46062200 */ add.s $f8, $f4, $f6 -/* AD7FCC 80060E2C 46004282 */ mul.s $f10, $f8, $f0 -/* AD7FD0 80060E30 E7AA0064 */ swc1 $f10, 0x64($sp) -/* AD7FD4 80060E34 C6F2006C */ lwc1 $f18, 0x6c($s7) -/* AD7FD8 80060E38 C6F00060 */ lwc1 $f16, 0x60($s7) -/* AD7FDC 80060E3C C6E60054 */ lwc1 $f6, 0x54($s7) -/* AD7FE0 80060E40 C6EA0048 */ lwc1 $f10, 0x48($s7) -/* AD7FE4 80060E44 46128100 */ add.s $f4, $f16, $f18 -/* AD7FE8 80060E48 AFB1001C */ sw $s1, 0x1c($sp) -/* AD7FEC 80060E4C AFAF0018 */ sw $t7, 0x18($sp) -/* AD7FF0 80060E50 AFB70010 */ sw $s7, 0x10($sp) -/* AD7FF4 80060E54 46062200 */ add.s $f8, $f4, $f6 -/* AD7FF8 80060E58 AFAE0014 */ sw $t6, 0x14($sp) -/* AD7FFC 80060E5C 460A4400 */ add.s $f16, $f8, $f10 -/* AD8000 80060E60 46008482 */ mul.s $f18, $f16, $f0 -/* AD8004 80060E64 0C017A07 */ jal func_8005E81C -/* AD8008 80060E68 E7B20068 */ swc1 $f18, 0x68($sp) -/* AD800C 80060E6C 10000008 */ b .L80060E90 -/* AD8010 80060E70 8FBF004C */ lw $ra, 0x4c($sp) -.L80060E74: -/* AD8014 80060E74 26100034 */ addiu $s0, $s0, 0x34 -.L80060E78: -/* AD8018 80060E78 5613FFAF */ bnel $s0, $s3, .L80060D38 -/* AD801C 80060E7C 02002025 */ move $a0, $s0 -/* AD8020 80060E80 26520034 */ addiu $s2, $s2, 0x34 -/* AD8024 80060E84 165EFFA9 */ bne $s2, $fp, .L80060D2C -/* AD8028 80060E88 00000000 */ nop -.L80060E8C: -/* AD802C 80060E8C 8FBF004C */ lw $ra, 0x4c($sp) -.L80060E90: -/* AD8030 80060E90 8FB00028 */ lw $s0, 0x28($sp) -/* AD8034 80060E94 8FB1002C */ lw $s1, 0x2c($sp) -/* AD8038 80060E98 8FB20030 */ lw $s2, 0x30($sp) -/* AD803C 80060E9C 8FB30034 */ lw $s3, 0x34($sp) -/* AD8040 80060EA0 8FB40038 */ lw $s4, 0x38($sp) -/* AD8044 80060EA4 8FB5003C */ lw $s5, 0x3c($sp) -/* AD8048 80060EA8 8FB60040 */ lw $s6, 0x40($sp) -/* AD804C 80060EAC 8FB70044 */ lw $s7, 0x44($sp) -/* AD8050 80060EB0 8FBE0048 */ lw $fp, 0x48($sp) -/* AD8054 80060EB4 03E00008 */ jr $ra -/* AD8058 80060EB8 27BD0088 */ addiu $sp, $sp, 0x88 - -/* AD805C 80060EBC 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* AD8060 80060EC0 AFBF001C */ sw $ra, 0x1c($sp) -/* AD8064 80060EC4 AFA40038 */ sw $a0, 0x38($sp) -/* AD8068 80060EC8 AFA5003C */ sw $a1, 0x3c($sp) -/* AD806C 80060ECC 8CCE0018 */ lw $t6, 0x18($a2) -/* AD8070 80060ED0 8CC2001C */ lw $v0, 0x1c($a2) -/* AD8074 80060ED4 00C03825 */ move $a3, $a2 -/* AD8078 80060ED8 000E7980 */ sll $t7, $t6, 6 -/* AD807C 80060EDC 004FC021 */ addu $t8, $v0, $t7 -/* AD8080 80060EE0 0058082B */ sltu $at, $v0, $t8 -/* AD8084 80060EE4 10200027 */ beqz $at, .L80060F84 -/* AD8088 80060EE8 00C02825 */ move $a1, $a2 -/* AD808C 80060EEC 90590016 */ lbu $t9, 0x16($v0) -.L80060EF0: -/* AD8090 80060EF0 33280080 */ andi $t0, $t9, 0x80 -/* AD8094 80060EF4 5100001C */ beql $t0, $zero, .L80060F68 -/* AD8098 80060EF8 8CAF0018 */ lw $t7, 0x18($a1) -/* AD809C 80060EFC 8C430024 */ lw $v1, 0x24($v0) -/* AD80A0 80060F00 50600019 */ beql $v1, $zero, .L80060F68 -/* AD80A4 80060F04 8CAF0018 */ lw $t7, 0x18($a1) -/* AD80A8 80060F08 90690015 */ lbu $t1, 0x15($v1) -/* AD80AC 80060F0C 312A0040 */ andi $t2, $t1, 0x40 -/* AD80B0 80060F10 15400014 */ bnez $t2, .L80060F64 -/* AD80B4 80060F14 27A40024 */ addiu $a0, $sp, 0x24 -/* AD80B8 80060F18 2445000E */ addiu $a1, $v0, 0xe -/* AD80BC 80060F1C AFA20030 */ sw $v0, 0x30($sp) -/* AD80C0 80060F20 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD80C4 80060F24 AFA70040 */ sw $a3, 0x40($sp) -/* AD80C8 80060F28 8FA20030 */ lw $v0, 0x30($sp) -/* AD80CC 80060F2C 27AB0024 */ addiu $t3, $sp, 0x24 -/* AD80D0 80060F30 8FA70040 */ lw $a3, 0x40($sp) -/* AD80D4 80060F34 8C45001C */ lw $a1, 0x1c($v0) -/* AD80D8 80060F38 8C460024 */ lw $a2, 0x24($v0) -/* AD80DC 80060F3C AFAB0014 */ sw $t3, 0x14($sp) -/* AD80E0 80060F40 8FA40038 */ lw $a0, 0x38($sp) -/* AD80E4 80060F44 0C017981 */ jal func_8005E604 -/* AD80E8 80060F48 AFA20010 */ sw $v0, 0x10($sp) -/* AD80EC 80060F4C 8FA20030 */ lw $v0, 0x30($sp) -/* AD80F0 80060F50 8C430024 */ lw $v1, 0x24($v0) -/* AD80F4 80060F54 906C0015 */ lbu $t4, 0x15($v1) -/* AD80F8 80060F58 358D0040 */ ori $t5, $t4, 0x40 -/* AD80FC 80060F5C 10000009 */ b .L80060F84 -/* AD8100 80060F60 A06D0015 */ sb $t5, 0x15($v1) -.L80060F64: -/* AD8104 80060F64 8CAF0018 */ lw $t7, 0x18($a1) -.L80060F68: -/* AD8108 80060F68 8CAE001C */ lw $t6, 0x1c($a1) -/* AD810C 80060F6C 24420040 */ addiu $v0, $v0, 0x40 -/* AD8110 80060F70 000FC180 */ sll $t8, $t7, 6 -/* AD8114 80060F74 01D8C821 */ addu $t9, $t6, $t8 -/* AD8118 80060F78 0059082B */ sltu $at, $v0, $t9 -/* AD811C 80060F7C 5420FFDC */ bnezl $at, .L80060EF0 -/* AD8120 80060F80 90590016 */ lbu $t9, 0x16($v0) -.L80060F84: -/* AD8124 80060F84 8FBF001C */ lw $ra, 0x1c($sp) -/* AD8128 80060F88 27BD0038 */ addiu $sp, $sp, 0x38 -/* AD812C 80060F8C 03E00008 */ jr $ra -/* AD8130 80060F90 00000000 */ nop - -/* AD8134 80060F94 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* AD8138 80060F98 AFBF001C */ sw $ra, 0x1c($sp) -/* AD813C 80060F9C AFA40038 */ sw $a0, 0x38($sp) -/* AD8140 80060FA0 AFA5003C */ sw $a1, 0x3c($sp) -/* AD8144 80060FA4 90CE002E */ lbu $t6, 0x2e($a2) -/* AD8148 80060FA8 31CF0080 */ andi $t7, $t6, 0x80 -/* AD814C 80060FAC 51E0001B */ beql $t7, $zero, .L8006101C -/* AD8150 80060FB0 8FBF001C */ lw $ra, 0x1c($sp) -/* AD8154 80060FB4 8CC2003C */ lw $v0, 0x3c($a2) -/* AD8158 80060FB8 50400018 */ beql $v0, $zero, .L8006101C -/* AD815C 80060FBC 8FBF001C */ lw $ra, 0x1c($sp) -/* AD8160 80060FC0 90580015 */ lbu $t8, 0x15($v0) -/* AD8164 80060FC4 27A40028 */ addiu $a0, $sp, 0x28 -/* AD8168 80060FC8 24C50026 */ addiu $a1, $a2, 0x26 -/* AD816C 80060FCC 33190040 */ andi $t9, $t8, 0x40 -/* AD8170 80060FD0 57200012 */ bnezl $t9, .L8006101C -/* AD8174 80060FD4 8FBF001C */ lw $ra, 0x1c($sp) -/* AD8178 80060FD8 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD817C 80060FDC AFA60040 */ sw $a2, 0x40($sp) -/* AD8180 80060FE0 8FA70040 */ lw $a3, 0x40($sp) -/* AD8184 80060FE4 27A90028 */ addiu $t1, $sp, 0x28 -/* AD8188 80060FE8 8FA40038 */ lw $a0, 0x38($sp) -/* AD818C 80060FEC 8CE50034 */ lw $a1, 0x34($a3) -/* AD8190 80060FF0 8CE6003C */ lw $a2, 0x3c($a3) -/* AD8194 80060FF4 24E80018 */ addiu $t0, $a3, 0x18 -/* AD8198 80060FF8 AFA80010 */ sw $t0, 0x10($sp) -/* AD819C 80060FFC 0C017981 */ jal func_8005E604 -/* AD81A0 80061000 AFA90014 */ sw $t1, 0x14($sp) -/* AD81A4 80061004 8FA70040 */ lw $a3, 0x40($sp) -/* AD81A8 80061008 8CE2003C */ lw $v0, 0x3c($a3) -/* AD81AC 8006100C 904A0015 */ lbu $t2, 0x15($v0) -/* AD81B0 80061010 354B0040 */ ori $t3, $t2, 0x40 -/* AD81B4 80061014 A04B0015 */ sb $t3, 0x15($v0) -/* AD81B8 80061018 8FBF001C */ lw $ra, 0x1c($sp) -.L8006101C: -/* AD81BC 8006101C 27BD0038 */ addiu $sp, $sp, 0x38 -/* AD81C0 80061020 03E00008 */ jr $ra -/* AD81C4 80061024 00000000 */ nop - -/* AD81C8 80061028 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* AD81CC 8006102C AFBF001C */ sw $ra, 0x1c($sp) -/* AD81D0 80061030 AFA40038 */ sw $a0, 0x38($sp) -/* AD81D4 80061034 AFA5003C */ sw $a1, 0x3c($sp) -/* AD81D8 80061038 8CCE0018 */ lw $t6, 0x18($a2) -/* AD81DC 8006103C 2407005C */ li $a3, 92 -/* AD81E0 80061040 8CC2001C */ lw $v0, 0x1c($a2) -/* AD81E4 80061044 01C70019 */ multu $t6, $a3 -/* AD81E8 80061048 00C02825 */ move $a1, $a2 -/* AD81EC 8006104C 00007812 */ mflo $t7 -/* AD81F0 80061050 004FC021 */ addu $t8, $v0, $t7 -/* AD81F4 80061054 0058082B */ sltu $at, $v0, $t8 -/* AD81F8 80061058 50200029 */ beql $at, $zero, .L80061100 -/* AD81FC 8006105C 8FBF001C */ lw $ra, 0x1c($sp) -/* AD8200 80061060 90590016 */ lbu $t9, 0x16($v0) -.L80061064: -/* AD8204 80061064 33280080 */ andi $t0, $t9, 0x80 -/* AD8208 80061068 5100001C */ beql $t0, $zero, .L800610DC -/* AD820C 8006106C 8CAF0018 */ lw $t7, 0x18($a1) -/* AD8210 80061070 8C430024 */ lw $v1, 0x24($v0) -/* AD8214 80061074 50600019 */ beql $v1, $zero, .L800610DC -/* AD8218 80061078 8CAF0018 */ lw $t7, 0x18($a1) -/* AD821C 8006107C 90690015 */ lbu $t1, 0x15($v1) -/* AD8220 80061080 312A0040 */ andi $t2, $t1, 0x40 -/* AD8224 80061084 15400014 */ bnez $t2, .L800610D8 -/* AD8228 80061088 27A40024 */ addiu $a0, $sp, 0x24 -/* AD822C 8006108C 2445000E */ addiu $a1, $v0, 0xe -/* AD8230 80061090 AFA20030 */ sw $v0, 0x30($sp) -/* AD8234 80061094 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD8238 80061098 AFA60040 */ sw $a2, 0x40($sp) -/* AD823C 8006109C 8FA20030 */ lw $v0, 0x30($sp) -/* AD8240 800610A0 27AB0024 */ addiu $t3, $sp, 0x24 -/* AD8244 800610A4 8FA40038 */ lw $a0, 0x38($sp) -/* AD8248 800610A8 8C45001C */ lw $a1, 0x1c($v0) -/* AD824C 800610AC 8C460024 */ lw $a2, 0x24($v0) -/* AD8250 800610B0 AFAB0014 */ sw $t3, 0x14($sp) -/* AD8254 800610B4 8FA70040 */ lw $a3, 0x40($sp) -/* AD8258 800610B8 0C017981 */ jal func_8005E604 -/* AD825C 800610BC AFA20010 */ sw $v0, 0x10($sp) -/* AD8260 800610C0 8FA20030 */ lw $v0, 0x30($sp) -/* AD8264 800610C4 8C430024 */ lw $v1, 0x24($v0) -/* AD8268 800610C8 906C0015 */ lbu $t4, 0x15($v1) -/* AD826C 800610CC 358D0040 */ ori $t5, $t4, 0x40 -/* AD8270 800610D0 1000000A */ b .L800610FC -/* AD8274 800610D4 A06D0015 */ sb $t5, 0x15($v1) -.L800610D8: -/* AD8278 800610D8 8CAF0018 */ lw $t7, 0x18($a1) -.L800610DC: -/* AD827C 800610DC 8CAE001C */ lw $t6, 0x1c($a1) -/* AD8280 800610E0 2442005C */ addiu $v0, $v0, 0x5c -/* AD8284 800610E4 01E70019 */ multu $t7, $a3 -/* AD8288 800610E8 0000C012 */ mflo $t8 -/* AD828C 800610EC 01D8C821 */ addu $t9, $t6, $t8 -/* AD8290 800610F0 0059082B */ sltu $at, $v0, $t9 -/* AD8294 800610F4 5420FFDB */ bnezl $at, .L80061064 -/* AD8298 800610F8 90590016 */ lbu $t9, 0x16($v0) -.L800610FC: -/* AD829C 800610FC 8FBF001C */ lw $ra, 0x1c($sp) -.L80061100: -/* AD82A0 80061100 27BD0038 */ addiu $sp, $sp, 0x38 -/* AD82A4 80061104 03E00008 */ jr $ra -/* AD82A8 80061108 00000000 */ nop - -/* AD82AC 8006110C 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* AD82B0 80061110 AFBF001C */ sw $ra, 0x1c($sp) -/* AD82B4 80061114 AFA40038 */ sw $a0, 0x38($sp) -/* AD82B8 80061118 AFA5003C */ sw $a1, 0x3c($sp) -/* AD82BC 8006111C 90CE002E */ lbu $t6, 0x2e($a2) -/* AD82C0 80061120 31CF0080 */ andi $t7, $t6, 0x80 -/* AD82C4 80061124 51E0001B */ beql $t7, $zero, .L80061194 -/* AD82C8 80061128 8FBF001C */ lw $ra, 0x1c($sp) -/* AD82CC 8006112C 8CC2003C */ lw $v0, 0x3c($a2) -/* AD82D0 80061130 50400018 */ beql $v0, $zero, .L80061194 -/* AD82D4 80061134 8FBF001C */ lw $ra, 0x1c($sp) -/* AD82D8 80061138 90580015 */ lbu $t8, 0x15($v0) -/* AD82DC 8006113C 27A40028 */ addiu $a0, $sp, 0x28 -/* AD82E0 80061140 24C50026 */ addiu $a1, $a2, 0x26 -/* AD82E4 80061144 33190040 */ andi $t9, $t8, 0x40 -/* AD82E8 80061148 57200012 */ bnezl $t9, .L80061194 -/* AD82EC 8006114C 8FBF001C */ lw $ra, 0x1c($sp) -/* AD82F0 80061150 0C01DF97 */ jal Math_Vec3s_ToVec3f -/* AD82F4 80061154 AFA60040 */ sw $a2, 0x40($sp) -/* AD82F8 80061158 8FA70040 */ lw $a3, 0x40($sp) -/* AD82FC 8006115C 27A90028 */ addiu $t1, $sp, 0x28 -/* AD8300 80061160 8FA40038 */ lw $a0, 0x38($sp) -/* AD8304 80061164 8CE50034 */ lw $a1, 0x34($a3) -/* AD8308 80061168 8CE6003C */ lw $a2, 0x3c($a3) -/* AD830C 8006116C 24E80018 */ addiu $t0, $a3, 0x18 -/* AD8310 80061170 AFA80010 */ sw $t0, 0x10($sp) -/* AD8314 80061174 0C017981 */ jal func_8005E604 -/* AD8318 80061178 AFA90014 */ sw $t1, 0x14($sp) -/* AD831C 8006117C 8FA70040 */ lw $a3, 0x40($sp) -/* AD8320 80061180 8CE2003C */ lw $v0, 0x3c($a3) -/* AD8324 80061184 904A0015 */ lbu $t2, 0x15($v0) -/* AD8328 80061188 354B0040 */ ori $t3, $t2, 0x40 -/* AD832C 8006118C A04B0015 */ sb $t3, 0x15($v0) -/* AD8330 80061190 8FBF001C */ lw $ra, 0x1c($sp) -.L80061194: -/* AD8334 80061194 27BD0038 */ addiu $sp, $sp, 0x38 -/* AD8338 80061198 03E00008 */ jr $ra -/* AD833C 8006119C 00000000 */ nop - diff --git a/asm/non_matchings/code/z_collision_check/func_8005EC6C.s b/asm/non_matchings/code/z_collision_check/func_8005EC6C.s new file mode 100644 index 0000000000..0e177b8761 --- /dev/null +++ b/asm/non_matchings/code/z_collision_check/func_8005EC6C.s @@ -0,0 +1,2494 @@ +.late_rodata + +glabel D_8013ACFC + .float 0.008 + +glabel D_8013AD00 + .float 0.008 + +glabel D_8013AD04 + .float 0.33333334 + +glabel D_8013AD08 + .float 0.33333334 + +glabel D_8013AD0C + .float 0.008 + +glabel D_8013AD10 + .float 0.33333334 + +glabel D_8013AD14 + .float 0.33333334 + +glabel D_8013AD18 + .float 0.33333334 + +glabel D_8013AD1C + .float 0.33333334 + +glabel D_8013AD20 + .float 0.33333334 + +.text +glabel func_8005EC6C +/* AD5E0C 8005EC6C 27BDFF70 */ addiu $sp, $sp, -0x90 +/* AD5E10 8005EC70 AFBF0044 */ sw $ra, 0x44($sp) +/* AD5E14 8005EC74 AFB60040 */ sw $s6, 0x40($sp) +/* AD5E18 8005EC78 AFB5003C */ sw $s5, 0x3c($sp) +/* AD5E1C 8005EC7C AFB40038 */ sw $s4, 0x38($sp) +/* AD5E20 8005EC80 AFB30034 */ sw $s3, 0x34($sp) +/* AD5E24 8005EC84 AFB20030 */ sw $s2, 0x30($sp) +/* AD5E28 8005EC88 AFB1002C */ sw $s1, 0x2c($sp) +/* AD5E2C 8005EC8C AFB00028 */ sw $s0, 0x28($sp) +/* AD5E30 8005EC90 AFA40090 */ sw $a0, 0x90($sp) +/* AD5E34 8005EC94 AFA50094 */ sw $a1, 0x94($sp) +/* AD5E38 8005EC98 8CCE0018 */ lw $t6, 0x18($a2) +/* AD5E3C 8005EC9C 00E09025 */ move $s2, $a3 +/* AD5E40 8005ECA0 00C09825 */ move $s3, $a2 +/* AD5E44 8005ECA4 59C00085 */ blezl $t6, .L8005EEBC +/* AD5E48 8005ECA8 8FBF0044 */ lw $ra, 0x44($sp) +/* AD5E4C 8005ECAC 8CCF001C */ lw $t7, 0x1c($a2) +/* AD5E50 8005ECB0 51E00082 */ beql $t7, $zero, .L8005EEBC +/* AD5E54 8005ECB4 8FBF0044 */ lw $ra, 0x44($sp) +/* AD5E58 8005ECB8 84F80040 */ lh $t8, 0x40($a3) +/* AD5E5C 8005ECBC 5B00007F */ blezl $t8, .L8005EEBC +/* AD5E60 8005ECC0 8FBF0044 */ lw $ra, 0x44($sp) +/* AD5E64 8005ECC4 84F90042 */ lh $t9, 0x42($a3) +/* AD5E68 8005ECC8 24F60018 */ addiu $s6, $a3, 0x18 +/* AD5E6C 8005ECCC 02C02025 */ move $a0, $s6 +/* AD5E70 8005ECD0 5B20007A */ blezl $t9, .L8005EEBC +/* AD5E74 8005ECD4 8FBF0044 */ lw $ra, 0x44($sp) +/* AD5E78 8005ECD8 0C0177D4 */ jal func_8005DF50 +/* AD5E7C 8005ECDC AFA60098 */ sw $a2, 0x98($sp) +/* AD5E80 8005ECE0 24110001 */ li $s1, 1 +/* AD5E84 8005ECE4 10510074 */ beq $v0, $s1, .L8005EEB8 +/* AD5E88 8005ECE8 8FA30098 */ lw $v1, 0x98($sp) +/* AD5E8C 8005ECEC 8C680018 */ lw $t0, 0x18($v1) +/* AD5E90 8005ECF0 8C70001C */ lw $s0, 0x1c($v1) +/* AD5E94 8005ECF4 27B5007C */ addiu $s5, $sp, 0x7c +/* AD5E98 8005ECF8 00084980 */ sll $t1, $t0, 6 +/* AD5E9C 8005ECFC 02095021 */ addu $t2, $s0, $t1 +/* AD5EA0 8005ED00 020A082B */ sltu $at, $s0, $t2 +/* AD5EA4 8005ED04 1020006C */ beqz $at, .L8005EEB8 +/* AD5EA8 8005ED08 27B40080 */ addiu $s4, $sp, 0x80 +.L8005ED0C: +/* AD5EAC 8005ED0C 0C0177CB */ jal func_8005DF2C +/* AD5EB0 8005ED10 02002025 */ move $a0, $s0 +/* AD5EB4 8005ED14 10510060 */ beq $v0, $s1, .L8005EE98 +/* AD5EB8 8005ED18 02002025 */ move $a0, $s0 +/* AD5EBC 8005ED1C 0C0177DD */ jal func_8005DF74 +/* AD5EC0 8005ED20 02C02825 */ move $a1, $s6 +/* AD5EC4 8005ED24 1051005C */ beq $v0, $s1, .L8005EE98 +/* AD5EC8 8005ED28 26040030 */ addiu $a0, $s0, 0x30 +/* AD5ECC 8005ED2C 26450040 */ addiu $a1, $s2, 0x40 +/* AD5ED0 8005ED30 02803025 */ move $a2, $s4 +/* AD5ED4 8005ED34 0C033F69 */ jal func_800CFDA4 +/* AD5ED8 8005ED38 02A03825 */ move $a3, $s5 +/* AD5EDC 8005ED3C 50400057 */ beql $v0, $zero, .L8005EE9C +/* AD5EE0 8005ED40 8E6B0018 */ lw $t3, 0x18($s3) +/* AD5EE4 8005ED44 860B0030 */ lh $t3, 0x30($s0) +/* AD5EE8 8005ED48 3C018014 */ lui $at, %hi(D_8013ACFC) +/* AD5EEC 8005ED4C 27A40070 */ addiu $a0, $sp, 0x70 +/* AD5EF0 8005ED50 448B2000 */ mtc1 $t3, $f4 +/* AD5EF4 8005ED54 00000000 */ nop +/* AD5EF8 8005ED58 468021A0 */ cvt.s.w $f6, $f4 +/* AD5EFC 8005ED5C E7A60064 */ swc1 $f6, 0x64($sp) +/* AD5F00 8005ED60 860C0032 */ lh $t4, 0x32($s0) +/* AD5F04 8005ED64 448C4000 */ mtc1 $t4, $f8 +/* AD5F08 8005ED68 00000000 */ nop +/* AD5F0C 8005ED6C 468042A0 */ cvt.s.w $f10, $f8 +/* AD5F10 8005ED70 E7AA0068 */ swc1 $f10, 0x68($sp) +/* AD5F14 8005ED74 860D0034 */ lh $t5, 0x34($s0) +/* AD5F18 8005ED78 448D8000 */ mtc1 $t5, $f16 +/* AD5F1C 8005ED7C 00000000 */ nop +/* AD5F20 8005ED80 468084A0 */ cvt.s.w $f18, $f16 +/* AD5F24 8005ED84 E7B2006C */ swc1 $f18, 0x6c($sp) +/* AD5F28 8005ED88 864E0046 */ lh $t6, 0x46($s2) +/* AD5F2C 8005ED8C 448E2000 */ mtc1 $t6, $f4 +/* AD5F30 8005ED90 00000000 */ nop +/* AD5F34 8005ED94 468021A0 */ cvt.s.w $f6, $f4 +/* AD5F38 8005ED98 C7A4007C */ lwc1 $f4, 0x7c($sp) +/* AD5F3C 8005ED9C 46002005 */ abs.s $f0, $f4 +/* AD5F40 8005EDA0 E7A60058 */ swc1 $f6, 0x58($sp) +/* AD5F44 8005EDA4 864F0048 */ lh $t7, 0x48($s2) +/* AD5F48 8005EDA8 C426ACFC */ lwc1 $f6, %lo(D_8013ACFC)($at) +/* AD5F4C 8005EDAC 448F4000 */ mtc1 $t7, $f8 +/* AD5F50 8005EDB0 4606003C */ c.lt.s $f0, $f6 +/* AD5F54 8005EDB4 468042A0 */ cvt.s.w $f10, $f8 +/* AD5F58 8005EDB8 E7AA005C */ swc1 $f10, 0x5c($sp) +/* AD5F5C 8005EDBC 8658004A */ lh $t8, 0x4a($s2) +/* AD5F60 8005EDC0 44988000 */ mtc1 $t8, $f16 +/* AD5F64 8005EDC4 00000000 */ nop +/* AD5F68 8005EDC8 468084A0 */ cvt.s.w $f18, $f16 +/* AD5F6C 8005EDCC 45010023 */ bc1t .L8005EE5C +/* AD5F70 8005EDD0 E7B20060 */ swc1 $f18, 0x60($sp) +/* AD5F74 8005EDD4 86590040 */ lh $t9, 0x40($s2) +/* AD5F78 8005EDD8 3C013F80 */ li $at, 0x3F800000 # 0.000000 +/* AD5F7C 8005EDDC 44818000 */ mtc1 $at, $f16 +/* AD5F80 8005EDE0 44994000 */ mtc1 $t9, $f8 +/* AD5F84 8005EDE4 C7A20058 */ lwc1 $f2, 0x58($sp) +/* AD5F88 8005EDE8 C7B20064 */ lwc1 $f18, 0x64($sp) +/* AD5F8C 8005EDEC 468042A0 */ cvt.s.w $f10, $f8 +/* AD5F90 8005EDF0 27A40070 */ addiu $a0, $sp, 0x70 +/* AD5F94 8005EDF4 46045003 */ div.s $f0, $f10, $f4 +/* AD5F98 8005EDF8 4610003E */ c.le.s $f0, $f16 +/* AD5F9C 8005EDFC 00000000 */ nop +/* AD5FA0 8005EE00 45000012 */ bc1f .L8005EE4C +/* AD5FA4 8005EE04 00000000 */ nop +/* AD5FA8 8005EE08 46029181 */ sub.s $f6, $f18, $f2 +/* AD5FAC 8005EE0C C7AC005C */ lwc1 $f12, 0x5c($sp) +/* AD5FB0 8005EE10 C7A40068 */ lwc1 $f4, 0x68($sp) +/* AD5FB4 8005EE14 C7AE0060 */ lwc1 $f14, 0x60($sp) +/* AD5FB8 8005EE18 46003202 */ mul.s $f8, $f6, $f0 +/* AD5FBC 8005EE1C 460C2401 */ sub.s $f16, $f4, $f12 +/* AD5FC0 8005EE20 46008482 */ mul.s $f18, $f16, $f0 +/* AD5FC4 8005EE24 46024280 */ add.s $f10, $f8, $f2 +/* AD5FC8 8005EE28 C7A8006C */ lwc1 $f8, 0x6c($sp) +/* AD5FCC 8005EE2C E7AA0070 */ swc1 $f10, 0x70($sp) +/* AD5FD0 8005EE30 460E4281 */ sub.s $f10, $f8, $f14 +/* AD5FD4 8005EE34 460C9180 */ add.s $f6, $f18, $f12 +/* AD5FD8 8005EE38 46005102 */ mul.s $f4, $f10, $f0 +/* AD5FDC 8005EE3C E7A60074 */ swc1 $f6, 0x74($sp) +/* AD5FE0 8005EE40 460E2400 */ add.s $f16, $f4, $f14 +/* AD5FE4 8005EE44 10000007 */ b .L8005EE64 +/* AD5FE8 8005EE48 E7B00078 */ swc1 $f16, 0x78($sp) +.L8005EE4C: +/* AD5FEC 8005EE4C 0C01DF90 */ jal Math_Vec3f_Copy +/* AD5FF0 8005EE50 27A50064 */ addiu $a1, $sp, 0x64 +/* AD5FF4 8005EE54 10000004 */ b .L8005EE68 +/* AD5FF8 8005EE58 27A80058 */ addiu $t0, $sp, 0x58 +.L8005EE5C: +/* AD5FFC 8005EE5C 0C01DF90 */ jal Math_Vec3f_Copy +/* AD6000 8005EE60 27A50064 */ addiu $a1, $sp, 0x64 +.L8005EE64: +/* AD6004 8005EE64 27A80058 */ addiu $t0, $sp, 0x58 +.L8005EE68: +/* AD6008 8005EE68 27A90070 */ addiu $t1, $sp, 0x70 +/* AD600C 8005EE6C AFA9001C */ sw $t1, 0x1c($sp) +/* AD6010 8005EE70 AFA80018 */ sw $t0, 0x18($sp) +/* AD6014 8005EE74 8FA40090 */ lw $a0, 0x90($sp) +/* AD6018 8005EE78 8FA50098 */ lw $a1, 0x98($sp) +/* AD601C 8005EE7C 02003025 */ move $a2, $s0 +/* AD6020 8005EE80 27A70064 */ addiu $a3, $sp, 0x64 +/* AD6024 8005EE84 AFB20010 */ sw $s2, 0x10($sp) +/* AD6028 8005EE88 0C017A07 */ jal func_8005E81C +/* AD602C 8005EE8C AFB60014 */ sw $s6, 0x14($sp) +/* AD6030 8005EE90 1000000A */ b .L8005EEBC +/* AD6034 8005EE94 8FBF0044 */ lw $ra, 0x44($sp) +.L8005EE98: +/* AD6038 8005EE98 8E6B0018 */ lw $t3, 0x18($s3) +.L8005EE9C: +/* AD603C 8005EE9C 8E6A001C */ lw $t2, 0x1c($s3) +/* AD6040 8005EEA0 26100040 */ addiu $s0, $s0, 0x40 +/* AD6044 8005EEA4 000B6180 */ sll $t4, $t3, 6 +/* AD6048 8005EEA8 014C6821 */ addu $t5, $t2, $t4 +/* AD604C 8005EEAC 020D082B */ sltu $at, $s0, $t5 +/* AD6050 8005EEB0 1420FF96 */ bnez $at, .L8005ED0C +/* AD6054 8005EEB4 00000000 */ nop +.L8005EEB8: +/* AD6058 8005EEB8 8FBF0044 */ lw $ra, 0x44($sp) +.L8005EEBC: +/* AD605C 8005EEBC 8FB00028 */ lw $s0, 0x28($sp) +/* AD6060 8005EEC0 8FB1002C */ lw $s1, 0x2c($sp) +/* AD6064 8005EEC4 8FB20030 */ lw $s2, 0x30($sp) +/* AD6068 8005EEC8 8FB30034 */ lw $s3, 0x34($sp) +/* AD606C 8005EECC 8FB40038 */ lw $s4, 0x38($sp) +/* AD6070 8005EED0 8FB5003C */ lw $s5, 0x3c($sp) +/* AD6074 8005EED4 8FB60040 */ lw $s6, 0x40($sp) +/* AD6078 8005EED8 03E00008 */ jr $ra +/* AD607C 8005EEDC 27BD0090 */ addiu $sp, $sp, 0x90 + +/* AD6080 8005EEE0 27BDFF58 */ addiu $sp, $sp, -0xa8 +/* AD6084 8005EEE4 AFBF005C */ sw $ra, 0x5c($sp) +/* AD6088 8005EEE8 AFBE0058 */ sw $fp, 0x58($sp) +/* AD608C 8005EEEC AFB70054 */ sw $s7, 0x54($sp) +/* AD6090 8005EEF0 AFB60050 */ sw $s6, 0x50($sp) +/* AD6094 8005EEF4 AFB5004C */ sw $s5, 0x4c($sp) +/* AD6098 8005EEF8 AFB40048 */ sw $s4, 0x48($sp) +/* AD609C 8005EEFC AFB30044 */ sw $s3, 0x44($sp) +/* AD60A0 8005EF00 AFB20040 */ sw $s2, 0x40($sp) +/* AD60A4 8005EF04 AFB1003C */ sw $s1, 0x3c($sp) +/* AD60A8 8005EF08 AFB00038 */ sw $s0, 0x38($sp) +/* AD60AC 8005EF0C F7B60030 */ sdc1 $f22, 0x30($sp) +/* AD60B0 8005EF10 F7B40028 */ sdc1 $f20, 0x28($sp) +/* AD60B4 8005EF14 AFA400A8 */ sw $a0, 0xa8($sp) +/* AD60B8 8005EF18 AFA500AC */ sw $a1, 0xac($sp) +/* AD60BC 8005EF1C 8CEE0018 */ lw $t6, 0x18($a3) +/* AD60C0 8005EF20 00C08825 */ move $s1, $a2 +/* AD60C4 8005EF24 00E0A825 */ move $s5, $a3 +/* AD60C8 8005EF28 19C00086 */ blez $t6, .L8005F144 +/* AD60CC 8005EF2C 00E0B825 */ move $s7, $a3 +/* AD60D0 8005EF30 8CEF001C */ lw $t7, 0x1c($a3) +/* AD60D4 8005EF34 51E00084 */ beql $t7, $zero, .L8005F148 +/* AD60D8 8005EF38 8FBF005C */ lw $ra, 0x5c($sp) +/* AD60DC 8005EF3C 84D80040 */ lh $t8, 0x40($a2) +/* AD60E0 8005EF40 5B000081 */ blezl $t8, .L8005F148 +/* AD60E4 8005EF44 8FBF005C */ lw $ra, 0x5c($sp) +/* AD60E8 8005EF48 84D90042 */ lh $t9, 0x42($a2) +/* AD60EC 8005EF4C 24D40018 */ addiu $s4, $a2, 0x18 +/* AD60F0 8005EF50 5B20007D */ blezl $t9, .L8005F148 +/* AD60F4 8005EF54 8FBF005C */ lw $ra, 0x5c($sp) +/* AD60F8 8005EF58 0C0177CB */ jal func_8005DF2C +/* AD60FC 8005EF5C 02802025 */ move $a0, $s4 +/* AD6100 8005EF60 24160001 */ li $s6, 1 +/* AD6104 8005EF64 50560078 */ beql $v0, $s6, .L8005F148 +/* AD6108 8005EF68 8FBF005C */ lw $ra, 0x5c($sp) +/* AD610C 8005EF6C 8EA80018 */ lw $t0, 0x18($s5) +/* AD6110 8005EF70 8EB0001C */ lw $s0, 0x1c($s5) +/* AD6114 8005EF74 27BE009C */ addiu $fp, $sp, 0x9c +/* AD6118 8005EF78 00084980 */ sll $t1, $t0, 6 +/* AD611C 8005EF7C 02095021 */ addu $t2, $s0, $t1 +/* AD6120 8005EF80 020A082B */ sltu $at, $s0, $t2 +/* AD6124 8005EF84 1020006F */ beqz $at, .L8005F144 +/* AD6128 8005EF88 27B30088 */ addiu $s3, $sp, 0x88 +/* AD612C 8005EF8C 3C013F80 */ li $at, 0x3F800000 # 0.000000 +/* AD6130 8005EF90 4481B000 */ mtc1 $at, $f22 +/* AD6134 8005EF94 3C018014 */ lui $at, %hi(D_8013AD00) +/* AD6138 8005EF98 C434AD00 */ lwc1 $f20, %lo(D_8013AD00)($at) +/* AD613C 8005EF9C 27B2007C */ addiu $s2, $sp, 0x7c +.L8005EFA0: +/* AD6140 8005EFA0 0C0177D4 */ jal func_8005DF50 +/* AD6144 8005EFA4 02002025 */ move $a0, $s0 +/* AD6148 8005EFA8 1056005E */ beq $v0, $s6, .L8005F124 +/* AD614C 8005EFAC 02802025 */ move $a0, $s4 +/* AD6150 8005EFB0 0C0177DD */ jal func_8005DF74 +/* AD6154 8005EFB4 02002825 */ move $a1, $s0 +/* AD6158 8005EFB8 1056005A */ beq $v0, $s6, .L8005F124 +/* AD615C 8005EFBC 26040030 */ addiu $a0, $s0, 0x30 +/* AD6160 8005EFC0 26250040 */ addiu $a1, $s1, 0x40 +/* AD6164 8005EFC4 03C03025 */ move $a2, $fp +/* AD6168 8005EFC8 0C033F69 */ jal func_800CFDA4 +/* AD616C 8005EFCC 27A70098 */ addiu $a3, $sp, 0x98 +/* AD6170 8005EFD0 50400055 */ beql $v0, $zero, .L8005F128 +/* AD6174 8005EFD4 8EEC0018 */ lw $t4, 0x18($s7) +/* AD6178 8005EFD8 862B0046 */ lh $t3, 0x46($s1) +/* AD617C 8005EFDC 02602025 */ move $a0, $s3 +/* AD6180 8005EFE0 448B2000 */ mtc1 $t3, $f4 +/* AD6184 8005EFE4 00000000 */ nop +/* AD6188 8005EFE8 468021A0 */ cvt.s.w $f6, $f4 +/* AD618C 8005EFEC E7A6007C */ swc1 $f6, 0x7c($sp) +/* AD6190 8005EFF0 862C0048 */ lh $t4, 0x48($s1) +/* AD6194 8005EFF4 448C4000 */ mtc1 $t4, $f8 +/* AD6198 8005EFF8 00000000 */ nop +/* AD619C 8005EFFC 468042A0 */ cvt.s.w $f10, $f8 +/* AD61A0 8005F000 E7AA0080 */ swc1 $f10, 0x80($sp) +/* AD61A4 8005F004 862D004A */ lh $t5, 0x4a($s1) +/* AD61A8 8005F008 448D8000 */ mtc1 $t5, $f16 +/* AD61AC 8005F00C 00000000 */ nop +/* AD61B0 8005F010 468084A0 */ cvt.s.w $f18, $f16 +/* AD61B4 8005F014 E7B20084 */ swc1 $f18, 0x84($sp) +/* AD61B8 8005F018 860E0030 */ lh $t6, 0x30($s0) +/* AD61BC 8005F01C 448E2000 */ mtc1 $t6, $f4 +/* AD61C0 8005F020 00000000 */ nop +/* AD61C4 8005F024 468021A0 */ cvt.s.w $f6, $f4 +/* AD61C8 8005F028 C7A40098 */ lwc1 $f4, 0x98($sp) +/* AD61CC 8005F02C 46002005 */ abs.s $f0, $f4 +/* AD61D0 8005F030 E7A60070 */ swc1 $f6, 0x70($sp) +/* AD61D4 8005F034 860F0032 */ lh $t7, 0x32($s0) +/* AD61D8 8005F038 4614003C */ c.lt.s $f0, $f20 +/* AD61DC 8005F03C 448F4000 */ mtc1 $t7, $f8 +/* AD61E0 8005F040 00000000 */ nop +/* AD61E4 8005F044 468042A0 */ cvt.s.w $f10, $f8 +/* AD61E8 8005F048 E7AA0074 */ swc1 $f10, 0x74($sp) +/* AD61EC 8005F04C 86180034 */ lh $t8, 0x34($s0) +/* AD61F0 8005F050 44988000 */ mtc1 $t8, $f16 +/* AD61F4 8005F054 00000000 */ nop +/* AD61F8 8005F058 468084A0 */ cvt.s.w $f18, $f16 +/* AD61FC 8005F05C 45010021 */ bc1t .L8005F0E4 +/* AD6200 8005F060 E7B20078 */ swc1 $f18, 0x78($sp) +/* AD6204 8005F064 86190036 */ lh $t9, 0x36($s0) +/* AD6208 8005F068 C7A20070 */ lwc1 $f2, 0x70($sp) +/* AD620C 8005F06C C7AA007C */ lwc1 $f10, 0x7c($sp) +/* AD6210 8005F070 44993000 */ mtc1 $t9, $f6 +/* AD6214 8005F074 02602025 */ move $a0, $s3 +/* AD6218 8005F078 46803220 */ cvt.s.w $f8, $f6 +/* AD621C 8005F07C 46044003 */ div.s $f0, $f8, $f4 +/* AD6220 8005F080 4616003E */ c.le.s $f0, $f22 +/* AD6224 8005F084 00000000 */ nop +/* AD6228 8005F088 45000012 */ bc1f .L8005F0D4 +/* AD622C 8005F08C 00000000 */ nop +/* AD6230 8005F090 46025401 */ sub.s $f16, $f10, $f2 +/* AD6234 8005F094 C7AC0074 */ lwc1 $f12, 0x74($sp) +/* AD6238 8005F098 C7A80080 */ lwc1 $f8, 0x80($sp) +/* AD623C 8005F09C C7AE0078 */ lwc1 $f14, 0x78($sp) +/* AD6240 8005F0A0 46008482 */ mul.s $f18, $f16, $f0 +/* AD6244 8005F0A4 460C4101 */ sub.s $f4, $f8, $f12 +/* AD6248 8005F0A8 46002282 */ mul.s $f10, $f4, $f0 +/* AD624C 8005F0AC 46029180 */ add.s $f6, $f18, $f2 +/* AD6250 8005F0B0 C7B20084 */ lwc1 $f18, 0x84($sp) +/* AD6254 8005F0B4 E7A60088 */ swc1 $f6, 0x88($sp) +/* AD6258 8005F0B8 460E9181 */ sub.s $f6, $f18, $f14 +/* AD625C 8005F0BC 460C5400 */ add.s $f16, $f10, $f12 +/* AD6260 8005F0C0 46003202 */ mul.s $f8, $f6, $f0 +/* AD6264 8005F0C4 E7B0008C */ swc1 $f16, 0x8c($sp) +/* AD6268 8005F0C8 460E4100 */ add.s $f4, $f8, $f14 +/* AD626C 8005F0CC 10000007 */ b .L8005F0EC +/* AD6270 8005F0D0 E7A40090 */ swc1 $f4, 0x90($sp) +.L8005F0D4: +/* AD6274 8005F0D4 0C01DF90 */ jal Math_Vec3f_Copy +/* AD6278 8005F0D8 02402825 */ move $a1, $s2 +/* AD627C 8005F0DC 10000004 */ b .L8005F0F0 +/* AD6280 8005F0E0 27A80070 */ addiu $t0, $sp, 0x70 +.L8005F0E4: +/* AD6284 8005F0E4 0C01DF90 */ jal Math_Vec3f_Copy +/* AD6288 8005F0E8 02402825 */ move $a1, $s2 +.L8005F0EC: +/* AD628C 8005F0EC 27A80070 */ addiu $t0, $sp, 0x70 +.L8005F0F0: +/* AD6290 8005F0F0 AFA80018 */ sw $t0, 0x18($sp) +/* AD6294 8005F0F4 8FA400A8 */ lw $a0, 0xa8($sp) +/* AD6298 8005F0F8 02202825 */ move $a1, $s1 +/* AD629C 8005F0FC 02803025 */ move $a2, $s4 +/* AD62A0 8005F100 02403825 */ move $a3, $s2 +/* AD62A4 8005F104 AFB50010 */ sw $s5, 0x10($sp) +/* AD62A8 8005F108 AFB00014 */ sw $s0, 0x14($sp) +/* AD62AC 8005F10C 0C017A07 */ jal func_8005E81C +/* AD62B0 8005F110 AFB3001C */ sw $s3, 0x1c($sp) +/* AD62B4 8005F114 92A90013 */ lbu $t1, 0x13($s5) +/* AD62B8 8005F118 312A0040 */ andi $t2, $t1, 0x40 +/* AD62BC 8005F11C 5140000A */ beql $t2, $zero, .L8005F148 +/* AD62C0 8005F120 8FBF005C */ lw $ra, 0x5c($sp) +.L8005F124: +/* AD62C4 8005F124 8EEC0018 */ lw $t4, 0x18($s7) +.L8005F128: +/* AD62C8 8005F128 8EEB001C */ lw $t3, 0x1c($s7) +/* AD62CC 8005F12C 26100040 */ addiu $s0, $s0, 0x40 +/* AD62D0 8005F130 000C6980 */ sll $t5, $t4, 6 +/* AD62D4 8005F134 016D7021 */ addu $t6, $t3, $t5 +/* AD62D8 8005F138 020E082B */ sltu $at, $s0, $t6 +/* AD62DC 8005F13C 1420FF98 */ bnez $at, .L8005EFA0 +/* AD62E0 8005F140 00000000 */ nop +.L8005F144: +/* AD62E4 8005F144 8FBF005C */ lw $ra, 0x5c($sp) +.L8005F148: +/* AD62E8 8005F148 D7B40028 */ ldc1 $f20, 0x28($sp) +/* AD62EC 8005F14C D7B60030 */ ldc1 $f22, 0x30($sp) +/* AD62F0 8005F150 8FB00038 */ lw $s0, 0x38($sp) +/* AD62F4 8005F154 8FB1003C */ lw $s1, 0x3c($sp) +/* AD62F8 8005F158 8FB20040 */ lw $s2, 0x40($sp) +/* AD62FC 8005F15C 8FB30044 */ lw $s3, 0x44($sp) +/* AD6300 8005F160 8FB40048 */ lw $s4, 0x48($sp) +/* AD6304 8005F164 8FB5004C */ lw $s5, 0x4c($sp) +/* AD6308 8005F168 8FB60050 */ lw $s6, 0x50($sp) +/* AD630C 8005F16C 8FB70054 */ lw $s7, 0x54($sp) +/* AD6310 8005F170 8FBE0058 */ lw $fp, 0x58($sp) +/* AD6314 8005F174 03E00008 */ jr $ra +/* AD6318 8005F178 27BD00A8 */ addiu $sp, $sp, 0xa8 + +/* AD631C 8005F17C 27BDFF78 */ addiu $sp, $sp, -0x88 +/* AD6320 8005F180 AFBF0044 */ sw $ra, 0x44($sp) +/* AD6324 8005F184 AFB70040 */ sw $s7, 0x40($sp) +/* AD6328 8005F188 AFB6003C */ sw $s6, 0x3c($sp) +/* AD632C 8005F18C AFB50038 */ sw $s5, 0x38($sp) +/* AD6330 8005F190 AFB40034 */ sw $s4, 0x34($sp) +/* AD6334 8005F194 AFB30030 */ sw $s3, 0x30($sp) +/* AD6338 8005F198 AFB2002C */ sw $s2, 0x2c($sp) +/* AD633C 8005F19C AFB10028 */ sw $s1, 0x28($sp) +/* AD6340 8005F1A0 AFB00024 */ sw $s0, 0x24($sp) +/* AD6344 8005F1A4 AFA40088 */ sw $a0, 0x88($sp) +/* AD6348 8005F1A8 AFA5008C */ sw $a1, 0x8c($sp) +/* AD634C 8005F1AC 8CC30018 */ lw $v1, 0x18($a2) +/* AD6350 8005F1B0 00E0B025 */ move $s6, $a3 +/* AD6354 8005F1B4 00C0B825 */ move $s7, $a2 +/* AD6358 8005F1B8 1860006D */ blez $v1, .L8005F370 +/* AD635C 8005F1BC 00E09825 */ move $s3, $a3 +/* AD6360 8005F1C0 8CC2001C */ lw $v0, 0x1c($a2) +/* AD6364 8005F1C4 5040006B */ beql $v0, $zero, .L8005F374 +/* AD6368 8005F1C8 8FBF0044 */ lw $ra, 0x44($sp) +/* AD636C 8005F1CC 8CEE0018 */ lw $t6, 0x18($a3) +/* AD6370 8005F1D0 59C00068 */ blezl $t6, .L8005F374 +/* AD6374 8005F1D4 8FBF0044 */ lw $ra, 0x44($sp) +/* AD6378 8005F1D8 8CEF001C */ lw $t7, 0x1c($a3) +/* AD637C 8005F1DC 0003C180 */ sll $t8, $v1, 6 +/* AD6380 8005F1E0 0058C821 */ addu $t9, $v0, $t8 +/* AD6384 8005F1E4 11E00062 */ beqz $t7, .L8005F370 +/* AD6388 8005F1E8 0059082B */ sltu $at, $v0, $t9 +/* AD638C 8005F1EC 10200060 */ beqz $at, .L8005F370 +/* AD6390 8005F1F0 00409025 */ move $s2, $v0 +/* AD6394 8005F1F4 AFA60090 */ sw $a2, 0x90($sp) +/* AD6398 8005F1F8 27B5006C */ addiu $s5, $sp, 0x6c +/* AD639C 8005F1FC 2414005C */ li $s4, 92 +/* AD63A0 8005F200 24110001 */ li $s1, 1 +.L8005F204: +/* AD63A4 8005F204 0C0177CB */ jal func_8005DF2C +/* AD63A8 8005F208 02402025 */ move $a0, $s2 +/* AD63AC 8005F20C 50510051 */ beql $v0, $s1, .L8005F354 +/* AD63B0 8005F210 8EEA0018 */ lw $t2, 0x18($s7) +/* AD63B4 8005F214 8EC80018 */ lw $t0, 0x18($s6) +/* AD63B8 8005F218 8ED0001C */ lw $s0, 0x1c($s6) +/* AD63BC 8005F21C 01140019 */ multu $t0, $s4 +/* AD63C0 8005F220 00004812 */ mflo $t1 +/* AD63C4 8005F224 02095021 */ addu $t2, $s0, $t1 +/* AD63C8 8005F228 020A082B */ sltu $at, $s0, $t2 +/* AD63CC 8005F22C 50200049 */ beql $at, $zero, .L8005F354 +/* AD63D0 8005F230 8EEA0018 */ lw $t2, 0x18($s7) +.L8005F234: +/* AD63D4 8005F234 0C0177D4 */ jal func_8005DF50 +/* AD63D8 8005F238 02002025 */ move $a0, $s0 +/* AD63DC 8005F23C 1051003B */ beq $v0, $s1, .L8005F32C +/* AD63E0 8005F240 02402025 */ move $a0, $s2 +/* AD63E4 8005F244 0C0177DD */ jal func_8005DF74 +/* AD63E8 8005F248 02002825 */ move $a1, $s0 +/* AD63EC 8005F24C 10510037 */ beq $v0, $s1, .L8005F32C +/* AD63F0 8005F250 26440030 */ addiu $a0, $s2, 0x30 +/* AD63F4 8005F254 26050028 */ addiu $a1, $s0, 0x28 +/* AD63F8 8005F258 0C033A4D */ jal func_800CE934 +/* AD63FC 8005F25C 02A03025 */ move $a2, $s5 +/* AD6400 8005F260 54510033 */ bnel $v0, $s1, .L8005F330 +/* AD6404 8005F264 8E780018 */ lw $t8, 0x18($s3) +/* AD6408 8005F268 864B0030 */ lh $t3, 0x30($s2) +/* AD640C 8005F26C 3C018014 */ lui $at, %hi(D_8013AD04) +/* AD6410 8005F270 C420AD04 */ lwc1 $f0, %lo(D_8013AD04)($at) +/* AD6414 8005F274 448B2000 */ mtc1 $t3, $f4 +/* AD6418 8005F278 27AE0054 */ addiu $t6, $sp, 0x54 +/* AD641C 8005F27C 8FA40088 */ lw $a0, 0x88($sp) +/* AD6420 8005F280 468021A0 */ cvt.s.w $f6, $f4 +/* AD6424 8005F284 8FA50090 */ lw $a1, 0x90($sp) +/* AD6428 8005F288 02403025 */ move $a2, $s2 +/* AD642C 8005F28C 27A70060 */ addiu $a3, $sp, 0x60 +/* AD6430 8005F290 E7A60060 */ swc1 $f6, 0x60($sp) +/* AD6434 8005F294 864C0032 */ lh $t4, 0x32($s2) +/* AD6438 8005F298 448C4000 */ mtc1 $t4, $f8 +/* AD643C 8005F29C 00000000 */ nop +/* AD6440 8005F2A0 468042A0 */ cvt.s.w $f10, $f8 +/* AD6444 8005F2A4 E7AA0064 */ swc1 $f10, 0x64($sp) +/* AD6448 8005F2A8 864D0034 */ lh $t5, 0x34($s2) +/* AD644C 8005F2AC 448D8000 */ mtc1 $t5, $f16 +/* AD6450 8005F2B0 00000000 */ nop +/* AD6454 8005F2B4 468084A0 */ cvt.s.w $f18, $f16 +/* AD6458 8005F2B8 E7B20068 */ swc1 $f18, 0x68($sp) +/* AD645C 8005F2BC C6060034 */ lwc1 $f6, 0x34($s0) +/* AD6460 8005F2C0 C6040028 */ lwc1 $f4, 0x28($s0) +/* AD6464 8005F2C4 C60A0040 */ lwc1 $f10, 0x40($s0) +/* AD6468 8005F2C8 46062200 */ add.s $f8, $f4, $f6 +/* AD646C 8005F2CC 46085400 */ add.s $f16, $f10, $f8 +/* AD6470 8005F2D0 46008482 */ mul.s $f18, $f16, $f0 +/* AD6474 8005F2D4 E7B20054 */ swc1 $f18, 0x54($sp) +/* AD6478 8005F2D8 C6060038 */ lwc1 $f6, 0x38($s0) +/* AD647C 8005F2DC C604002C */ lwc1 $f4, 0x2c($s0) +/* AD6480 8005F2E0 C6080044 */ lwc1 $f8, 0x44($s0) +/* AD6484 8005F2E4 46062280 */ add.s $f10, $f4, $f6 +/* AD6488 8005F2E8 460A4400 */ add.s $f16, $f8, $f10 +/* AD648C 8005F2EC 46008482 */ mul.s $f18, $f16, $f0 +/* AD6490 8005F2F0 E7B20058 */ swc1 $f18, 0x58($sp) +/* AD6494 8005F2F4 C606003C */ lwc1 $f6, 0x3c($s0) +/* AD6498 8005F2F8 C6040030 */ lwc1 $f4, 0x30($s0) +/* AD649C 8005F2FC C60A0048 */ lwc1 $f10, 0x48($s0) +/* AD64A0 8005F300 AFB5001C */ sw $s5, 0x1c($sp) +/* AD64A4 8005F304 46062200 */ add.s $f8, $f4, $f6 +/* AD64A8 8005F308 AFAE0018 */ sw $t6, 0x18($sp) +/* AD64AC 8005F30C AFB00014 */ sw $s0, 0x14($sp) +/* AD64B0 8005F310 AFB60010 */ sw $s6, 0x10($sp) +/* AD64B4 8005F314 46085400 */ add.s $f16, $f10, $f8 +/* AD64B8 8005F318 46008482 */ mul.s $f18, $f16, $f0 +/* AD64BC 8005F31C 0C017A07 */ jal func_8005E81C +/* AD64C0 8005F320 E7B2005C */ swc1 $f18, 0x5c($sp) +/* AD64C4 8005F324 10000013 */ b .L8005F374 +/* AD64C8 8005F328 8FBF0044 */ lw $ra, 0x44($sp) +.L8005F32C: +/* AD64CC 8005F32C 8E780018 */ lw $t8, 0x18($s3) +.L8005F330: +/* AD64D0 8005F330 8E6F001C */ lw $t7, 0x1c($s3) +/* AD64D4 8005F334 2610005C */ addiu $s0, $s0, 0x5c +/* AD64D8 8005F338 03140019 */ multu $t8, $s4 +/* AD64DC 8005F33C 0000C812 */ mflo $t9 +/* AD64E0 8005F340 01F94021 */ addu $t0, $t7, $t9 +/* AD64E4 8005F344 0208082B */ sltu $at, $s0, $t0 +/* AD64E8 8005F348 1420FFBA */ bnez $at, .L8005F234 +/* AD64EC 8005F34C 00000000 */ nop +/* AD64F0 8005F350 8EEA0018 */ lw $t2, 0x18($s7) +.L8005F354: +/* AD64F4 8005F354 8EE9001C */ lw $t1, 0x1c($s7) +/* AD64F8 8005F358 26520040 */ addiu $s2, $s2, 0x40 +/* AD64FC 8005F35C 000A5980 */ sll $t3, $t2, 6 +/* AD6500 8005F360 012B6021 */ addu $t4, $t1, $t3 +/* AD6504 8005F364 024C082B */ sltu $at, $s2, $t4 +/* AD6508 8005F368 1420FFA6 */ bnez $at, .L8005F204 +/* AD650C 8005F36C 00000000 */ nop +.L8005F370: +/* AD6510 8005F370 8FBF0044 */ lw $ra, 0x44($sp) +.L8005F374: +/* AD6514 8005F374 8FB00024 */ lw $s0, 0x24($sp) +/* AD6518 8005F378 8FB10028 */ lw $s1, 0x28($sp) +/* AD651C 8005F37C 8FB2002C */ lw $s2, 0x2c($sp) +/* AD6520 8005F380 8FB30030 */ lw $s3, 0x30($sp) +/* AD6524 8005F384 8FB40034 */ lw $s4, 0x34($sp) +/* AD6528 8005F388 8FB50038 */ lw $s5, 0x38($sp) +/* AD652C 8005F38C 8FB6003C */ lw $s6, 0x3c($sp) +/* AD6530 8005F390 8FB70040 */ lw $s7, 0x40($sp) +/* AD6534 8005F394 03E00008 */ jr $ra +/* AD6538 8005F398 27BD0088 */ addiu $sp, $sp, 0x88 + +/* AD653C 8005F39C 27BDFF68 */ addiu $sp, $sp, -0x98 +/* AD6540 8005F3A0 AFBF0054 */ sw $ra, 0x54($sp) +/* AD6544 8005F3A4 AFBE0050 */ sw $fp, 0x50($sp) +/* AD6548 8005F3A8 AFB7004C */ sw $s7, 0x4c($sp) +/* AD654C 8005F3AC AFB60048 */ sw $s6, 0x48($sp) +/* AD6550 8005F3B0 AFB50044 */ sw $s5, 0x44($sp) +/* AD6554 8005F3B4 AFB40040 */ sw $s4, 0x40($sp) +/* AD6558 8005F3B8 AFB3003C */ sw $s3, 0x3c($sp) +/* AD655C 8005F3BC AFB20038 */ sw $s2, 0x38($sp) +/* AD6560 8005F3C0 AFB10034 */ sw $s1, 0x34($sp) +/* AD6564 8005F3C4 AFB00030 */ sw $s0, 0x30($sp) +/* AD6568 8005F3C8 F7B40028 */ sdc1 $f20, 0x28($sp) +/* AD656C 8005F3CC AFA40098 */ sw $a0, 0x98($sp) +/* AD6570 8005F3D0 AFA5009C */ sw $a1, 0x9c($sp) +/* AD6574 8005F3D4 AFA7008C */ sw $a3, 0x8c($sp) +/* AD6578 8005F3D8 8CE30018 */ lw $v1, 0x18($a3) +/* AD657C 8005F3DC 00E0B025 */ move $s6, $a3 +/* AD6580 8005F3E0 00C0B825 */ move $s7, $a2 +/* AD6584 8005F3E4 58600066 */ blezl $v1, .L8005F580 +/* AD6588 8005F3E8 8FBF0054 */ lw $ra, 0x54($sp) +/* AD658C 8005F3EC 8CE2001C */ lw $v0, 0x1c($a3) +/* AD6590 8005F3F0 50400063 */ beql $v0, $zero, .L8005F580 +/* AD6594 8005F3F4 8FBF0054 */ lw $ra, 0x54($sp) +/* AD6598 8005F3F8 8CCE0018 */ lw $t6, 0x18($a2) +/* AD659C 8005F3FC 59C00060 */ blezl $t6, .L8005F580 +/* AD65A0 8005F400 8FBF0054 */ lw $ra, 0x54($sp) +/* AD65A4 8005F404 8CCF001C */ lw $t7, 0x1c($a2) +/* AD65A8 8005F408 0003C180 */ sll $t8, $v1, 6 +/* AD65AC 8005F40C 0058C821 */ addu $t9, $v0, $t8 +/* AD65B0 8005F410 11E0005A */ beqz $t7, .L8005F57C +/* AD65B4 8005F414 0059082B */ sltu $at, $v0, $t9 +/* AD65B8 8005F418 10200058 */ beqz $at, .L8005F57C +/* AD65BC 8005F41C 00409825 */ move $s3, $v0 +/* AD65C0 8005F420 3C018014 */ lui $at, %hi(D_8013AD08) +/* AD65C4 8005F424 C434AD08 */ lwc1 $f20, %lo(D_8013AD08)($at) +/* AD65C8 8005F428 AFA600A0 */ sw $a2, 0xa0($sp) +/* AD65CC 8005F42C 241E005C */ li $fp, 92 +/* AD65D0 8005F430 27B50064 */ addiu $s5, $sp, 0x64 +/* AD65D4 8005F434 27B4007C */ addiu $s4, $sp, 0x7c +/* AD65D8 8005F438 24120001 */ li $s2, 1 +.L8005F43C: +/* AD65DC 8005F43C 0C0177D4 */ jal func_8005DF50 +/* AD65E0 8005F440 02602025 */ move $a0, $s3 +/* AD65E4 8005F444 10520044 */ beq $v0, $s2, .L8005F558 +/* AD65E8 8005F448 8FA800A0 */ lw $t0, 0xa0($sp) +/* AD65EC 8005F44C 8D090018 */ lw $t1, 0x18($t0) +/* AD65F0 8005F450 8D10001C */ lw $s0, 0x1c($t0) +/* AD65F4 8005F454 013E0019 */ multu $t1, $fp +/* AD65F8 8005F458 00005012 */ mflo $t2 +/* AD65FC 8005F45C 020A5821 */ addu $t3, $s0, $t2 +/* AD6600 8005F460 020B082B */ sltu $at, $s0, $t3 +/* AD6604 8005F464 5020003D */ beql $at, $zero, .L8005F55C +/* AD6608 8005F468 8FA2008C */ lw $v0, 0x8c($sp) +.L8005F46C: +/* AD660C 8005F46C 0C0177CB */ jal func_8005DF2C +/* AD6610 8005F470 02002025 */ move $a0, $s0 +/* AD6614 8005F474 1052002F */ beq $v0, $s2, .L8005F534 +/* AD6618 8005F478 02002025 */ move $a0, $s0 +/* AD661C 8005F47C 0C0177DD */ jal func_8005DF74 +/* AD6620 8005F480 02602825 */ move $a1, $s3 +/* AD6624 8005F484 1052002B */ beq $v0, $s2, .L8005F534 +/* AD6628 8005F488 26710030 */ addiu $s1, $s3, 0x30 +/* AD662C 8005F48C 02202025 */ move $a0, $s1 +/* AD6630 8005F490 26050028 */ addiu $a1, $s0, 0x28 +/* AD6634 8005F494 0C033A4D */ jal func_800CE934 +/* AD6638 8005F498 02803025 */ move $a2, $s4 +/* AD663C 8005F49C 14520025 */ bne $v0, $s2, .L8005F534 +/* AD6640 8005F4A0 02A02025 */ move $a0, $s5 +/* AD6644 8005F4A4 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD6648 8005F4A8 02202825 */ move $a1, $s1 +/* AD664C 8005F4AC C6040028 */ lwc1 $f4, 0x28($s0) +/* AD6650 8005F4B0 C6060034 */ lwc1 $f6, 0x34($s0) +/* AD6654 8005F4B4 C60A0040 */ lwc1 $f10, 0x40($s0) +/* AD6658 8005F4B8 8FA40098 */ lw $a0, 0x98($sp) +/* AD665C 8005F4BC 46062200 */ add.s $f8, $f4, $f6 +/* AD6660 8005F4C0 8FA500A0 */ lw $a1, 0xa0($sp) +/* AD6664 8005F4C4 02003025 */ move $a2, $s0 +/* AD6668 8005F4C8 27A70070 */ addiu $a3, $sp, 0x70 +/* AD666C 8005F4CC 46085400 */ add.s $f16, $f10, $f8 +/* AD6670 8005F4D0 46148482 */ mul.s $f18, $f16, $f20 +/* AD6674 8005F4D4 E7B20070 */ swc1 $f18, 0x70($sp) +/* AD6678 8005F4D8 C6060038 */ lwc1 $f6, 0x38($s0) +/* AD667C 8005F4DC C604002C */ lwc1 $f4, 0x2c($s0) +/* AD6680 8005F4E0 C6080044 */ lwc1 $f8, 0x44($s0) +/* AD6684 8005F4E4 46062280 */ add.s $f10, $f4, $f6 +/* AD6688 8005F4E8 460A4400 */ add.s $f16, $f8, $f10 +/* AD668C 8005F4EC 46148482 */ mul.s $f18, $f16, $f20 +/* AD6690 8005F4F0 E7B20074 */ swc1 $f18, 0x74($sp) +/* AD6694 8005F4F4 C606003C */ lwc1 $f6, 0x3c($s0) +/* AD6698 8005F4F8 C6040030 */ lwc1 $f4, 0x30($s0) +/* AD669C 8005F4FC C60A0048 */ lwc1 $f10, 0x48($s0) +/* AD66A0 8005F500 AFB4001C */ sw $s4, 0x1c($sp) +/* AD66A4 8005F504 46062200 */ add.s $f8, $f4, $f6 +/* AD66A8 8005F508 AFB50018 */ sw $s5, 0x18($sp) +/* AD66AC 8005F50C AFB30014 */ sw $s3, 0x14($sp) +/* AD66B0 8005F510 AFB60010 */ sw $s6, 0x10($sp) +/* AD66B4 8005F514 46085400 */ add.s $f16, $f10, $f8 +/* AD66B8 8005F518 46148482 */ mul.s $f18, $f16, $f20 +/* AD66BC 8005F51C 0C017A07 */ jal func_8005E81C +/* AD66C0 8005F520 E7B20078 */ swc1 $f18, 0x78($sp) +/* AD66C4 8005F524 92CC0013 */ lbu $t4, 0x13($s6) +/* AD66C8 8005F528 318D0040 */ andi $t5, $t4, 0x40 +/* AD66CC 8005F52C 51A00014 */ beql $t5, $zero, .L8005F580 +/* AD66D0 8005F530 8FBF0054 */ lw $ra, 0x54($sp) +.L8005F534: +/* AD66D4 8005F534 8EEF0018 */ lw $t7, 0x18($s7) +/* AD66D8 8005F538 8EEE001C */ lw $t6, 0x1c($s7) +/* AD66DC 8005F53C 2610005C */ addiu $s0, $s0, 0x5c +/* AD66E0 8005F540 01FE0019 */ multu $t7, $fp +/* AD66E4 8005F544 0000C012 */ mflo $t8 +/* AD66E8 8005F548 01D8C821 */ addu $t9, $t6, $t8 +/* AD66EC 8005F54C 0219082B */ sltu $at, $s0, $t9 +/* AD66F0 8005F550 1420FFC6 */ bnez $at, .L8005F46C +/* AD66F4 8005F554 00000000 */ nop +.L8005F558: +/* AD66F8 8005F558 8FA2008C */ lw $v0, 0x8c($sp) +.L8005F55C: +/* AD66FC 8005F55C 26730040 */ addiu $s3, $s3, 0x40 +/* AD6700 8005F560 8C490018 */ lw $t1, 0x18($v0) +/* AD6704 8005F564 8C48001C */ lw $t0, 0x1c($v0) +/* AD6708 8005F568 00095180 */ sll $t2, $t1, 6 +/* AD670C 8005F56C 010A5821 */ addu $t3, $t0, $t2 +/* AD6710 8005F570 026B082B */ sltu $at, $s3, $t3 +/* AD6714 8005F574 1420FFB1 */ bnez $at, .L8005F43C +/* AD6718 8005F578 00000000 */ nop +.L8005F57C: +/* AD671C 8005F57C 8FBF0054 */ lw $ra, 0x54($sp) +.L8005F580: +/* AD6720 8005F580 D7B40028 */ ldc1 $f20, 0x28($sp) +/* AD6724 8005F584 8FB00030 */ lw $s0, 0x30($sp) +/* AD6728 8005F588 8FB10034 */ lw $s1, 0x34($sp) +/* AD672C 8005F58C 8FB20038 */ lw $s2, 0x38($sp) +/* AD6730 8005F590 8FB3003C */ lw $s3, 0x3c($sp) +/* AD6734 8005F594 8FB40040 */ lw $s4, 0x40($sp) +/* AD6738 8005F598 8FB50044 */ lw $s5, 0x44($sp) +/* AD673C 8005F59C 8FB60048 */ lw $s6, 0x48($sp) +/* AD6740 8005F5A0 8FB7004C */ lw $s7, 0x4c($sp) +/* AD6744 8005F5A4 8FBE0050 */ lw $fp, 0x50($sp) +/* AD6748 8005F5A8 03E00008 */ jr $ra +/* AD674C 8005F5AC 27BD0098 */ addiu $sp, $sp, 0x98 + +/* AD6750 8005F5B0 27BDFF70 */ addiu $sp, $sp, -0x90 +/* AD6754 8005F5B4 AFBF004C */ sw $ra, 0x4c($sp) +/* AD6758 8005F5B8 AFBE0048 */ sw $fp, 0x48($sp) +/* AD675C 8005F5BC AFB70044 */ sw $s7, 0x44($sp) +/* AD6760 8005F5C0 AFB60040 */ sw $s6, 0x40($sp) +/* AD6764 8005F5C4 AFB5003C */ sw $s5, 0x3c($sp) +/* AD6768 8005F5C8 AFB40038 */ sw $s4, 0x38($sp) +/* AD676C 8005F5CC AFB30034 */ sw $s3, 0x34($sp) +/* AD6770 8005F5D0 AFB20030 */ sw $s2, 0x30($sp) +/* AD6774 8005F5D4 AFB1002C */ sw $s1, 0x2c($sp) +/* AD6778 8005F5D8 AFB00028 */ sw $s0, 0x28($sp) +/* AD677C 8005F5DC AFA40090 */ sw $a0, 0x90($sp) +/* AD6780 8005F5E0 AFA50094 */ sw $a1, 0x94($sp) +/* AD6784 8005F5E4 8CCE0018 */ lw $t6, 0x18($a2) +/* AD6788 8005F5E8 00E09825 */ move $s3, $a3 +/* AD678C 8005F5EC 00C0A825 */ move $s5, $a2 +/* AD6790 8005F5F0 59C0006C */ blezl $t6, .L8005F7A4 +/* AD6794 8005F5F4 8FBF004C */ lw $ra, 0x4c($sp) +/* AD6798 8005F5F8 8CCF001C */ lw $t7, 0x1c($a2) +/* AD679C 8005F5FC 24F60018 */ addiu $s6, $a3, 0x18 +/* AD67A0 8005F600 02C02025 */ move $a0, $s6 +/* AD67A4 8005F604 51E00067 */ beql $t7, $zero, .L8005F7A4 +/* AD67A8 8005F608 8FBF004C */ lw $ra, 0x4c($sp) +/* AD67AC 8005F60C 0C0177D4 */ jal func_8005DF50 +/* AD67B0 8005F610 AFA60098 */ sw $a2, 0x98($sp) +/* AD67B4 8005F614 24120001 */ li $s2, 1 +/* AD67B8 8005F618 10520061 */ beq $v0, $s2, .L8005F7A0 +/* AD67BC 8005F61C 3C178016 */ lui $s7, %hi(D_8015E230) # $s7, 0x8016 +/* AD67C0 8005F620 26F7E230 */ addiu $s7, %lo(D_8015E230) # addiu $s7, $s7, -0x1dd0 +/* AD67C4 8005F624 26710058 */ addiu $s1, $s3, 0x58 +/* AD67C8 8005F628 2670004C */ addiu $s0, $s3, 0x4c +/* AD67CC 8005F62C 02003825 */ move $a3, $s0 +/* AD67D0 8005F630 02202825 */ move $a1, $s1 +/* AD67D4 8005F634 02E02025 */ move $a0, $s7 +/* AD67D8 8005F638 0C0338F0 */ jal func_800CE3C0 +/* AD67DC 8005F63C 26660064 */ addiu $a2, $s3, 0x64 +/* AD67E0 8005F640 3C1E8016 */ lui $fp, %hi(D_8015E268) # $fp, 0x8016 +/* AD67E4 8005F644 27DEE268 */ addiu $fp, %lo(D_8015E268) # addiu $fp, $fp, -0x1d98 +/* AD67E8 8005F648 03C02025 */ move $a0, $fp +/* AD67EC 8005F64C 02002825 */ move $a1, $s0 +/* AD67F0 8005F650 26660040 */ addiu $a2, $s3, 0x40 +/* AD67F4 8005F654 0C0338F0 */ jal func_800CE3C0 +/* AD67F8 8005F658 02203825 */ move $a3, $s1 +/* AD67FC 8005F65C 8FA30098 */ lw $v1, 0x98($sp) +/* AD6800 8005F660 27B4007C */ addiu $s4, $sp, 0x7c +/* AD6804 8005F664 8C780018 */ lw $t8, 0x18($v1) +/* AD6808 8005F668 8C70001C */ lw $s0, 0x1c($v1) +/* AD680C 8005F66C 0018C980 */ sll $t9, $t8, 6 +/* AD6810 8005F670 02194021 */ addu $t0, $s0, $t9 +/* AD6814 8005F674 0208082B */ sltu $at, $s0, $t0 +/* AD6818 8005F678 5020004A */ beql $at, $zero, .L8005F7A4 +/* AD681C 8005F67C 8FBF004C */ lw $ra, 0x4c($sp) +.L8005F680: +/* AD6820 8005F680 0C0177CB */ jal func_8005DF2C +/* AD6824 8005F684 02002025 */ move $a0, $s0 +/* AD6828 8005F688 1052003D */ beq $v0, $s2, .L8005F780 +/* AD682C 8005F68C 02002025 */ move $a0, $s0 +/* AD6830 8005F690 0C0177DD */ jal func_8005DF74 +/* AD6834 8005F694 02C02825 */ move $a1, $s6 +/* AD6838 8005F698 10520039 */ beq $v0, $s2, .L8005F780 +/* AD683C 8005F69C 26110030 */ addiu $s1, $s0, 0x30 +/* AD6840 8005F6A0 02202025 */ move $a0, $s1 +/* AD6844 8005F6A4 02E02825 */ move $a1, $s7 +/* AD6848 8005F6A8 0C033A4D */ jal func_800CE934 +/* AD684C 8005F6AC 02803025 */ move $a2, $s4 +/* AD6850 8005F6B0 10520006 */ beq $v0, $s2, .L8005F6CC +/* AD6854 8005F6B4 02202025 */ move $a0, $s1 +/* AD6858 8005F6B8 03C02825 */ move $a1, $fp +/* AD685C 8005F6BC 0C033A4D */ jal func_800CE934 +/* AD6860 8005F6C0 02803025 */ move $a2, $s4 +/* AD6864 8005F6C4 5452002F */ bnel $v0, $s2, .L8005F784 +/* AD6868 8005F6C8 8EAB0018 */ lw $t3, 0x18($s5) +.L8005F6CC: +/* AD686C 8005F6CC 27B2006C */ addiu $s2, $sp, 0x6c +/* AD6870 8005F6D0 02402025 */ move $a0, $s2 +/* AD6874 8005F6D4 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD6878 8005F6D8 02202825 */ move $a1, $s1 +/* AD687C 8005F6DC C6640058 */ lwc1 $f4, 0x58($s3) +/* AD6880 8005F6E0 C6660064 */ lwc1 $f6, 0x64($s3) +/* AD6884 8005F6E4 C66A004C */ lwc1 $f10, 0x4c($s3) +/* AD6888 8005F6E8 C6720040 */ lwc1 $f18, 0x40($s3) +/* AD688C 8005F6EC 46062200 */ add.s $f8, $f4, $f6 +/* AD6890 8005F6F0 3C013E80 */ li $at, 0x3E800000 # 0.000000 +/* AD6894 8005F6F4 44810000 */ mtc1 $at, $f0 +/* AD6898 8005F6F8 27A90060 */ addiu $t1, $sp, 0x60 +/* AD689C 8005F6FC 460A4400 */ add.s $f16, $f8, $f10 +/* AD68A0 8005F700 8FA40090 */ lw $a0, 0x90($sp) +/* AD68A4 8005F704 8FA50098 */ lw $a1, 0x98($sp) +/* AD68A8 8005F708 02003025 */ move $a2, $s0 +/* AD68AC 8005F70C 46128100 */ add.s $f4, $f16, $f18 +/* AD68B0 8005F710 02403825 */ move $a3, $s2 +/* AD68B4 8005F714 46002182 */ mul.s $f6, $f4, $f0 +/* AD68B8 8005F718 E7A60060 */ swc1 $f6, 0x60($sp) +/* AD68BC 8005F71C C66A0068 */ lwc1 $f10, 0x68($s3) +/* AD68C0 8005F720 C668005C */ lwc1 $f8, 0x5c($s3) +/* AD68C4 8005F724 C6720050 */ lwc1 $f18, 0x50($s3) +/* AD68C8 8005F728 C6660044 */ lwc1 $f6, 0x44($s3) +/* AD68CC 8005F72C 460A4400 */ add.s $f16, $f8, $f10 +/* AD68D0 8005F730 46128100 */ add.s $f4, $f16, $f18 +/* AD68D4 8005F734 46062200 */ add.s $f8, $f4, $f6 +/* AD68D8 8005F738 46004282 */ mul.s $f10, $f8, $f0 +/* AD68DC 8005F73C E7AA0064 */ swc1 $f10, 0x64($sp) +/* AD68E0 8005F740 C672006C */ lwc1 $f18, 0x6c($s3) +/* AD68E4 8005F744 C6700060 */ lwc1 $f16, 0x60($s3) +/* AD68E8 8005F748 C6660054 */ lwc1 $f6, 0x54($s3) +/* AD68EC 8005F74C C66A0048 */ lwc1 $f10, 0x48($s3) +/* AD68F0 8005F750 46128100 */ add.s $f4, $f16, $f18 +/* AD68F4 8005F754 AFB4001C */ sw $s4, 0x1c($sp) +/* AD68F8 8005F758 AFA90018 */ sw $t1, 0x18($sp) +/* AD68FC 8005F75C AFB60014 */ sw $s6, 0x14($sp) +/* AD6900 8005F760 46062200 */ add.s $f8, $f4, $f6 +/* AD6904 8005F764 AFB30010 */ sw $s3, 0x10($sp) +/* AD6908 8005F768 460A4400 */ add.s $f16, $f8, $f10 +/* AD690C 8005F76C 46008482 */ mul.s $f18, $f16, $f0 +/* AD6910 8005F770 0C017A07 */ jal func_8005E81C +/* AD6914 8005F774 E7B20068 */ swc1 $f18, 0x68($sp) +/* AD6918 8005F778 1000000A */ b .L8005F7A4 +/* AD691C 8005F77C 8FBF004C */ lw $ra, 0x4c($sp) +.L8005F780: +/* AD6920 8005F780 8EAB0018 */ lw $t3, 0x18($s5) +.L8005F784: +/* AD6924 8005F784 8EAA001C */ lw $t2, 0x1c($s5) +/* AD6928 8005F788 26100040 */ addiu $s0, $s0, 0x40 +/* AD692C 8005F78C 000B6180 */ sll $t4, $t3, 6 +/* AD6930 8005F790 014C6821 */ addu $t5, $t2, $t4 +/* AD6934 8005F794 020D082B */ sltu $at, $s0, $t5 +/* AD6938 8005F798 1420FFB9 */ bnez $at, .L8005F680 +/* AD693C 8005F79C 00000000 */ nop +.L8005F7A0: +/* AD6940 8005F7A0 8FBF004C */ lw $ra, 0x4c($sp) +.L8005F7A4: +/* AD6944 8005F7A4 8FB00028 */ lw $s0, 0x28($sp) +/* AD6948 8005F7A8 8FB1002C */ lw $s1, 0x2c($sp) +/* AD694C 8005F7AC 8FB20030 */ lw $s2, 0x30($sp) +/* AD6950 8005F7B0 8FB30034 */ lw $s3, 0x34($sp) +/* AD6954 8005F7B4 8FB40038 */ lw $s4, 0x38($sp) +/* AD6958 8005F7B8 8FB5003C */ lw $s5, 0x3c($sp) +/* AD695C 8005F7BC 8FB60040 */ lw $s6, 0x40($sp) +/* AD6960 8005F7C0 8FB70044 */ lw $s7, 0x44($sp) +/* AD6964 8005F7C4 8FBE0048 */ lw $fp, 0x48($sp) +/* AD6968 8005F7C8 03E00008 */ jr $ra +/* AD696C 8005F7CC 27BD0090 */ addiu $sp, $sp, 0x90 + +/* AD6970 8005F7D0 27BDFF68 */ addiu $sp, $sp, -0x98 +/* AD6974 8005F7D4 AFBF0054 */ sw $ra, 0x54($sp) +/* AD6978 8005F7D8 AFBE0050 */ sw $fp, 0x50($sp) +/* AD697C 8005F7DC AFB7004C */ sw $s7, 0x4c($sp) +/* AD6980 8005F7E0 AFB60048 */ sw $s6, 0x48($sp) +/* AD6984 8005F7E4 AFB50044 */ sw $s5, 0x44($sp) +/* AD6988 8005F7E8 AFB40040 */ sw $s4, 0x40($sp) +/* AD698C 8005F7EC AFB3003C */ sw $s3, 0x3c($sp) +/* AD6990 8005F7F0 AFB20038 */ sw $s2, 0x38($sp) +/* AD6994 8005F7F4 AFB10034 */ sw $s1, 0x34($sp) +/* AD6998 8005F7F8 AFB00030 */ sw $s0, 0x30($sp) +/* AD699C 8005F7FC F7B40028 */ sdc1 $f20, 0x28($sp) +/* AD69A0 8005F800 AFA5009C */ sw $a1, 0x9c($sp) +/* AD69A4 8005F804 8CEE0018 */ lw $t6, 0x18($a3) +/* AD69A8 8005F808 00C08025 */ move $s0, $a2 +/* AD69AC 8005F80C 00E0A825 */ move $s5, $a3 +/* AD69B0 8005F810 0080F025 */ move $fp, $a0 +/* AD69B4 8005F814 19C00079 */ blez $t6, .L8005F9FC +/* AD69B8 8005F818 00E0B825 */ move $s7, $a3 +/* AD69BC 8005F81C 8CEF001C */ lw $t7, 0x1c($a3) +/* AD69C0 8005F820 24D60018 */ addiu $s6, $a2, 0x18 +/* AD69C4 8005F824 51E00076 */ beql $t7, $zero, .L8005FA00 +/* AD69C8 8005F828 8FBF0054 */ lw $ra, 0x54($sp) +/* AD69CC 8005F82C 0C0177CB */ jal func_8005DF2C +/* AD69D0 8005F830 02C02025 */ move $a0, $s6 +/* AD69D4 8005F834 24140001 */ li $s4, 1 +/* AD69D8 8005F838 10540070 */ beq $v0, $s4, .L8005F9FC +/* AD69DC 8005F83C 3C048016 */ lui $a0, %hi(D_8015E2A0) # $a0, 0x8016 +/* AD69E0 8005F840 26110058 */ addiu $s1, $s0, 0x58 +/* AD69E4 8005F844 2612004C */ addiu $s2, $s0, 0x4c +/* AD69E8 8005F848 02403825 */ move $a3, $s2 +/* AD69EC 8005F84C 02202825 */ move $a1, $s1 +/* AD69F0 8005F850 2484E2A0 */ addiu $a0, %lo(D_8015E2A0) # addiu $a0, $a0, -0x1d60 +/* AD69F4 8005F854 0C0338F0 */ jal func_800CE3C0 +/* AD69F8 8005F858 26060064 */ addiu $a2, $s0, 0x64 +/* AD69FC 8005F85C 3C048016 */ lui $a0, %hi(D_8015E2D8) # $a0, 0x8016 +/* AD6A00 8005F860 2484E2D8 */ addiu $a0, %lo(D_8015E2D8) # addiu $a0, $a0, -0x1d28 +/* AD6A04 8005F864 02202825 */ move $a1, $s1 +/* AD6A08 8005F868 02403025 */ move $a2, $s2 +/* AD6A0C 8005F86C 0C0338F0 */ jal func_800CE3C0 +/* AD6A10 8005F870 26070040 */ addiu $a3, $s0, 0x40 +/* AD6A14 8005F874 8EB80018 */ lw $t8, 0x18($s5) +/* AD6A18 8005F878 8EB1001C */ lw $s1, 0x1c($s5) +/* AD6A1C 8005F87C 0018C980 */ sll $t9, $t8, 6 +/* AD6A20 8005F880 02394021 */ addu $t0, $s1, $t9 +/* AD6A24 8005F884 0228082B */ sltu $at, $s1, $t0 +/* AD6A28 8005F888 1020005C */ beqz $at, .L8005F9FC +/* AD6A2C 8005F88C 3C013E80 */ li $at, 0x3E800000 # 0.000000 +/* AD6A30 8005F890 4481A000 */ mtc1 $at, $f20 +/* AD6A34 8005F894 27B30088 */ addiu $s3, $sp, 0x88 +.L8005F898: +/* AD6A38 8005F898 0C0177D4 */ jal func_8005DF50 +/* AD6A3C 8005F89C 02202025 */ move $a0, $s1 +/* AD6A40 8005F8A0 1054004E */ beq $v0, $s4, .L8005F9DC +/* AD6A44 8005F8A4 02C02025 */ move $a0, $s6 +/* AD6A48 8005F8A8 0C0177DD */ jal func_8005DF74 +/* AD6A4C 8005F8AC 02202825 */ move $a1, $s1 +/* AD6A50 8005F8B0 1054004A */ beq $v0, $s4, .L8005F9DC +/* AD6A54 8005F8B4 26320030 */ addiu $s2, $s1, 0x30 +/* AD6A58 8005F8B8 3C058016 */ lui $a1, %hi(D_8015E2A0) # $a1, 0x8016 +/* AD6A5C 8005F8BC 24A5E2A0 */ addiu $a1, %lo(D_8015E2A0) # addiu $a1, $a1, -0x1d60 +/* AD6A60 8005F8C0 02402025 */ move $a0, $s2 +/* AD6A64 8005F8C4 0C033A4D */ jal func_800CE934 +/* AD6A68 8005F8C8 02603025 */ move $a2, $s3 +/* AD6A6C 8005F8CC 10540006 */ beq $v0, $s4, .L8005F8E8 +/* AD6A70 8005F8D0 02402025 */ move $a0, $s2 +/* AD6A74 8005F8D4 3C058016 */ lui $a1, %hi(D_8015E2D8) # $a1, 0x8016 +/* AD6A78 8005F8D8 24A5E2D8 */ addiu $a1, %lo(D_8015E2D8) # addiu $a1, $a1, -0x1d28 +/* AD6A7C 8005F8DC 0C033A4D */ jal func_800CE934 +/* AD6A80 8005F8E0 02603025 */ move $a2, $s3 +/* AD6A84 8005F8E4 1454003D */ bne $v0, $s4, .L8005F9DC +.L8005F8E8: +/* AD6A88 8005F8E8 03C02025 */ move $a0, $fp +/* AD6A8C 8005F8EC 02002825 */ move $a1, $s0 +/* AD6A90 8005F8F0 0C017486 */ jal func_8005D218 +/* AD6A94 8005F8F4 02603025 */ move $a2, $s3 +/* AD6A98 8005F8F8 50400039 */ beql $v0, $zero, .L8005F9E0 +/* AD6A9C 8005F8FC 8EF80018 */ lw $t8, 0x18($s7) +/* AD6AA0 8005F900 86290030 */ lh $t1, 0x30($s1) +/* AD6AA4 8005F904 27AC0068 */ addiu $t4, $sp, 0x68 +/* AD6AA8 8005F908 03C02025 */ move $a0, $fp +/* AD6AAC 8005F90C 44892000 */ mtc1 $t1, $f4 +/* AD6AB0 8005F910 02002825 */ move $a1, $s0 +/* AD6AB4 8005F914 02C03025 */ move $a2, $s6 +/* AD6AB8 8005F918 468021A0 */ cvt.s.w $f6, $f4 +/* AD6ABC 8005F91C 27A70074 */ addiu $a3, $sp, 0x74 +/* AD6AC0 8005F920 E7A60068 */ swc1 $f6, 0x68($sp) +/* AD6AC4 8005F924 862A0032 */ lh $t2, 0x32($s1) +/* AD6AC8 8005F928 448A4000 */ mtc1 $t2, $f8 +/* AD6ACC 8005F92C 00000000 */ nop +/* AD6AD0 8005F930 468042A0 */ cvt.s.w $f10, $f8 +/* AD6AD4 8005F934 E7AA006C */ swc1 $f10, 0x6c($sp) +/* AD6AD8 8005F938 862B0034 */ lh $t3, 0x34($s1) +/* AD6ADC 8005F93C 448B8000 */ mtc1 $t3, $f16 +/* AD6AE0 8005F940 00000000 */ nop +/* AD6AE4 8005F944 468084A0 */ cvt.s.w $f18, $f16 +/* AD6AE8 8005F948 E7B20070 */ swc1 $f18, 0x70($sp) +/* AD6AEC 8005F94C C6060064 */ lwc1 $f6, 0x64($s0) +/* AD6AF0 8005F950 C6040058 */ lwc1 $f4, 0x58($s0) +/* AD6AF4 8005F954 C60A004C */ lwc1 $f10, 0x4c($s0) +/* AD6AF8 8005F958 C6120040 */ lwc1 $f18, 0x40($s0) +/* AD6AFC 8005F95C 46062200 */ add.s $f8, $f4, $f6 +/* AD6B00 8005F960 460A4400 */ add.s $f16, $f8, $f10 +/* AD6B04 8005F964 46128100 */ add.s $f4, $f16, $f18 +/* AD6B08 8005F968 46142182 */ mul.s $f6, $f4, $f20 +/* AD6B0C 8005F96C E7A60074 */ swc1 $f6, 0x74($sp) +/* AD6B10 8005F970 C60A0068 */ lwc1 $f10, 0x68($s0) +/* AD6B14 8005F974 C608005C */ lwc1 $f8, 0x5c($s0) +/* AD6B18 8005F978 C6120050 */ lwc1 $f18, 0x50($s0) +/* AD6B1C 8005F97C C6060044 */ lwc1 $f6, 0x44($s0) +/* AD6B20 8005F980 460A4400 */ add.s $f16, $f8, $f10 +/* AD6B24 8005F984 46128100 */ add.s $f4, $f16, $f18 +/* AD6B28 8005F988 46062200 */ add.s $f8, $f4, $f6 +/* AD6B2C 8005F98C 46144282 */ mul.s $f10, $f8, $f20 +/* AD6B30 8005F990 E7AA0078 */ swc1 $f10, 0x78($sp) +/* AD6B34 8005F994 C612006C */ lwc1 $f18, 0x6c($s0) +/* AD6B38 8005F998 C6100060 */ lwc1 $f16, 0x60($s0) +/* AD6B3C 8005F99C C6060054 */ lwc1 $f6, 0x54($s0) +/* AD6B40 8005F9A0 C60A0048 */ lwc1 $f10, 0x48($s0) +/* AD6B44 8005F9A4 46128100 */ add.s $f4, $f16, $f18 +/* AD6B48 8005F9A8 AFB3001C */ sw $s3, 0x1c($sp) +/* AD6B4C 8005F9AC AFAC0018 */ sw $t4, 0x18($sp) +/* AD6B50 8005F9B0 AFB10014 */ sw $s1, 0x14($sp) +/* AD6B54 8005F9B4 46062200 */ add.s $f8, $f4, $f6 +/* AD6B58 8005F9B8 AFB50010 */ sw $s5, 0x10($sp) +/* AD6B5C 8005F9BC 460A4400 */ add.s $f16, $f8, $f10 +/* AD6B60 8005F9C0 46148482 */ mul.s $f18, $f16, $f20 +/* AD6B64 8005F9C4 0C017A07 */ jal func_8005E81C +/* AD6B68 8005F9C8 E7B2007C */ swc1 $f18, 0x7c($sp) +/* AD6B6C 8005F9CC 92AD0013 */ lbu $t5, 0x13($s5) +/* AD6B70 8005F9D0 31AE0040 */ andi $t6, $t5, 0x40 +/* AD6B74 8005F9D4 51C0000A */ beql $t6, $zero, .L8005FA00 +/* AD6B78 8005F9D8 8FBF0054 */ lw $ra, 0x54($sp) +.L8005F9DC: +/* AD6B7C 8005F9DC 8EF80018 */ lw $t8, 0x18($s7) +.L8005F9E0: +/* AD6B80 8005F9E0 8EEF001C */ lw $t7, 0x1c($s7) +/* AD6B84 8005F9E4 26310040 */ addiu $s1, $s1, 0x40 +/* AD6B88 8005F9E8 0018C980 */ sll $t9, $t8, 6 +/* AD6B8C 8005F9EC 01F94021 */ addu $t0, $t7, $t9 +/* AD6B90 8005F9F0 0228082B */ sltu $at, $s1, $t0 +/* AD6B94 8005F9F4 1420FFA8 */ bnez $at, .L8005F898 +/* AD6B98 8005F9F8 00000000 */ nop +.L8005F9FC: +/* AD6B9C 8005F9FC 8FBF0054 */ lw $ra, 0x54($sp) +.L8005FA00: +/* AD6BA0 8005FA00 D7B40028 */ ldc1 $f20, 0x28($sp) +/* AD6BA4 8005FA04 8FB00030 */ lw $s0, 0x30($sp) +/* AD6BA8 8005FA08 8FB10034 */ lw $s1, 0x34($sp) +/* AD6BAC 8005FA0C 8FB20038 */ lw $s2, 0x38($sp) +/* AD6BB0 8005FA10 8FB3003C */ lw $s3, 0x3c($sp) +/* AD6BB4 8005FA14 8FB40040 */ lw $s4, 0x40($sp) +/* AD6BB8 8005FA18 8FB50044 */ lw $s5, 0x44($sp) +/* AD6BBC 8005FA1C 8FB60048 */ lw $s6, 0x48($sp) +/* AD6BC0 8005FA20 8FB7004C */ lw $s7, 0x4c($sp) +/* AD6BC4 8005FA24 8FBE0050 */ lw $fp, 0x50($sp) +/* AD6BC8 8005FA28 03E00008 */ jr $ra +/* AD6BCC 8005FA2C 27BD0098 */ addiu $sp, $sp, 0x98 + +/* AD6BD0 8005FA30 27BDFF88 */ addiu $sp, $sp, -0x78 +/* AD6BD4 8005FA34 AFBF002C */ sw $ra, 0x2c($sp) +/* AD6BD8 8005FA38 AFB10028 */ sw $s1, 0x28($sp) +/* AD6BDC 8005FA3C AFB00024 */ sw $s0, 0x24($sp) +/* AD6BE0 8005FA40 AFA40078 */ sw $a0, 0x78($sp) +/* AD6BE4 8005FA44 AFA5007C */ sw $a1, 0x7c($sp) +/* AD6BE8 8005FA48 84CE0040 */ lh $t6, 0x40($a2) +/* AD6BEC 8005FA4C 00E08025 */ move $s0, $a3 +/* AD6BF0 8005FA50 00C08825 */ move $s1, $a2 +/* AD6BF4 8005FA54 59C00067 */ blezl $t6, .L8005FBF4 +/* AD6BF8 8005FA58 8FBF002C */ lw $ra, 0x2c($sp) +/* AD6BFC 8005FA5C 84CF0042 */ lh $t7, 0x42($a2) +/* AD6C00 8005FA60 59E00064 */ blezl $t7, .L8005FBF4 +/* AD6C04 8005FA64 8FBF002C */ lw $ra, 0x2c($sp) +/* AD6C08 8005FA68 84F80040 */ lh $t8, 0x40($a3) +/* AD6C0C 8005FA6C 5B000061 */ blezl $t8, .L8005FBF4 +/* AD6C10 8005FA70 8FBF002C */ lw $ra, 0x2c($sp) +/* AD6C14 8005FA74 84F90042 */ lh $t9, 0x42($a3) +/* AD6C18 8005FA78 24E40018 */ addiu $a0, $a3, 0x18 +/* AD6C1C 8005FA7C 5B20005D */ blezl $t9, .L8005FBF4 +/* AD6C20 8005FA80 8FBF002C */ lw $ra, 0x2c($sp) +/* AD6C24 8005FA84 0C0177D4 */ jal func_8005DF50 +/* AD6C28 8005FA88 AFA40034 */ sw $a0, 0x34($sp) +/* AD6C2C 8005FA8C 24010001 */ li $at, 1 +/* AD6C30 8005FA90 10410057 */ beq $v0, $at, .L8005FBF0 +/* AD6C34 8005FA94 26240018 */ addiu $a0, $s1, 0x18 +/* AD6C38 8005FA98 0C0177CB */ jal func_8005DF2C +/* AD6C3C 8005FA9C AFA40038 */ sw $a0, 0x38($sp) +/* AD6C40 8005FAA0 24010001 */ li $at, 1 +/* AD6C44 8005FAA4 10410052 */ beq $v0, $at, .L8005FBF0 +/* AD6C48 8005FAA8 8FA40038 */ lw $a0, 0x38($sp) +/* AD6C4C 8005FAAC 0C0177DD */ jal func_8005DF74 +/* AD6C50 8005FAB0 8FA50034 */ lw $a1, 0x34($sp) +/* AD6C54 8005FAB4 24010001 */ li $at, 1 +/* AD6C58 8005FAB8 1041004D */ beq $v0, $at, .L8005FBF0 +/* AD6C5C 8005FABC 26240040 */ addiu $a0, $s1, 0x40 +/* AD6C60 8005FAC0 26050040 */ addiu $a1, $s0, 0x40 +/* AD6C64 8005FAC4 27A6006C */ addiu $a2, $sp, 0x6c +/* AD6C68 8005FAC8 0C033FCD */ jal func_800CFF34 +/* AD6C6C 8005FACC 27A70068 */ addiu $a3, $sp, 0x68 +/* AD6C70 8005FAD0 24010001 */ li $at, 1 +/* AD6C74 8005FAD4 14410046 */ bne $v0, $at, .L8005FBF0 +/* AD6C78 8005FAD8 27A40050 */ addiu $a0, $sp, 0x50 +/* AD6C7C 8005FADC 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD6C80 8005FAE0 26250046 */ addiu $a1, $s1, 0x46 +/* AD6C84 8005FAE4 26050046 */ addiu $a1, $s0, 0x46 +/* AD6C88 8005FAE8 AFA5003C */ sw $a1, 0x3c($sp) +/* AD6C8C 8005FAEC 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD6C90 8005FAF0 27A40044 */ addiu $a0, $sp, 0x44 +/* AD6C94 8005FAF4 C7A40068 */ lwc1 $f4, 0x68($sp) +/* AD6C98 8005FAF8 3C018014 */ lui $at, %hi(D_8013AD0C) +/* AD6C9C 8005FAFC C426AD0C */ lwc1 $f6, %lo(D_8013AD0C)($at) +/* AD6CA0 8005FB00 46002005 */ abs.s $f0, $f4 +/* AD6CA4 8005FB04 8FA5003C */ lw $a1, 0x3c($sp) +/* AD6CA8 8005FB08 4606003C */ c.lt.s $f0, $f6 +/* AD6CAC 8005FB0C 00000000 */ nop +/* AD6CB0 8005FB10 45010029 */ bc1t .L8005FBB8 +/* AD6CB4 8005FB14 00000000 */ nop +/* AD6CB8 8005FB18 86080040 */ lh $t0, 0x40($s0) +/* AD6CBC 8005FB1C 86090048 */ lh $t1, 0x48($s0) +/* AD6CC0 8005FB20 860A0044 */ lh $t2, 0x44($s0) +/* AD6CC4 8005FB24 44884000 */ mtc1 $t0, $f8 +/* AD6CC8 8005FB28 860B0042 */ lh $t3, 0x42($s0) +/* AD6CCC 8005FB2C 44898000 */ mtc1 $t1, $f16 +/* AD6CD0 8005FB30 468042A0 */ cvt.s.w $f10, $f8 +/* AD6CD4 8005FB34 448A3000 */ mtc1 $t2, $f6 +/* AD6CD8 8005FB38 3C013F00 */ li $at, 0x3F000000 # 0.000000 +/* AD6CDC 8005FB3C 468084A0 */ cvt.s.w $f18, $f16 +/* AD6CE0 8005FB40 46045003 */ div.s $f0, $f10, $f4 +/* AD6CE4 8005FB44 448B2000 */ mtc1 $t3, $f4 +/* AD6CE8 8005FB48 46803220 */ cvt.s.w $f8, $f6 +/* AD6CEC 8005FB4C 44813000 */ mtc1 $at, $f6 +/* AD6CF0 8005FB50 46802420 */ cvt.s.w $f16, $f4 +/* AD6CF4 8005FB54 46089280 */ add.s $f10, $f18, $f8 +/* AD6CF8 8005FB58 46068482 */ mul.s $f18, $f16, $f6 +/* AD6CFC 8005FB5C 46125200 */ add.s $f8, $f10, $f18 +/* AD6D00 8005FB60 E7A80060 */ swc1 $f8, 0x60($sp) +/* AD6D04 8005FB64 862D0046 */ lh $t5, 0x46($s1) +/* AD6D08 8005FB68 860C0046 */ lh $t4, 0x46($s0) +/* AD6D0C 8005FB6C 448D8000 */ mtc1 $t5, $f16 +/* AD6D10 8005FB70 448C2000 */ mtc1 $t4, $f4 +/* AD6D14 8005FB74 468081A0 */ cvt.s.w $f6, $f16 +/* AD6D18 8005FB78 468020A0 */ cvt.s.w $f2, $f4 +/* AD6D1C 8005FB7C 46023281 */ sub.s $f10, $f6, $f2 +/* AD6D20 8005FB80 46005482 */ mul.s $f18, $f10, $f0 +/* AD6D24 8005FB84 46029200 */ add.s $f8, $f18, $f2 +/* AD6D28 8005FB88 E7A8005C */ swc1 $f8, 0x5c($sp) +/* AD6D2C 8005FB8C 862F004A */ lh $t7, 0x4a($s1) +/* AD6D30 8005FB90 860E004A */ lh $t6, 0x4a($s0) +/* AD6D34 8005FB94 448F8000 */ mtc1 $t7, $f16 +/* AD6D38 8005FB98 448E2000 */ mtc1 $t6, $f4 +/* AD6D3C 8005FB9C 468081A0 */ cvt.s.w $f6, $f16 +/* AD6D40 8005FBA0 46802320 */ cvt.s.w $f12, $f4 +/* AD6D44 8005FBA4 460C3281 */ sub.s $f10, $f6, $f12 +/* AD6D48 8005FBA8 46005482 */ mul.s $f18, $f10, $f0 +/* AD6D4C 8005FBAC 460C9200 */ add.s $f8, $f18, $f12 +/* AD6D50 8005FBB0 10000003 */ b .L8005FBC0 +/* AD6D54 8005FBB4 E7A80064 */ swc1 $f8, 0x64($sp) +.L8005FBB8: +/* AD6D58 8005FBB8 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD6D5C 8005FBBC 27A4005C */ addiu $a0, $sp, 0x5c +.L8005FBC0: +/* AD6D60 8005FBC0 8FB80034 */ lw $t8, 0x34($sp) +/* AD6D64 8005FBC4 27B90044 */ addiu $t9, $sp, 0x44 +/* AD6D68 8005FBC8 27A8005C */ addiu $t0, $sp, 0x5c +/* AD6D6C 8005FBCC AFA8001C */ sw $t0, 0x1c($sp) +/* AD6D70 8005FBD0 AFB90018 */ sw $t9, 0x18($sp) +/* AD6D74 8005FBD4 8FA40078 */ lw $a0, 0x78($sp) +/* AD6D78 8005FBD8 02202825 */ move $a1, $s1 +/* AD6D7C 8005FBDC 8FA60038 */ lw $a2, 0x38($sp) +/* AD6D80 8005FBE0 27A70050 */ addiu $a3, $sp, 0x50 +/* AD6D84 8005FBE4 AFB00010 */ sw $s0, 0x10($sp) +/* AD6D88 8005FBE8 0C017A07 */ jal func_8005E81C +/* AD6D8C 8005FBEC AFB80014 */ sw $t8, 0x14($sp) +.L8005FBF0: +/* AD6D90 8005FBF0 8FBF002C */ lw $ra, 0x2c($sp) +.L8005FBF4: +/* AD6D94 8005FBF4 8FB00024 */ lw $s0, 0x24($sp) +/* AD6D98 8005FBF8 8FB10028 */ lw $s1, 0x28($sp) +/* AD6D9C 8005FBFC 03E00008 */ jr $ra +/* AD6DA0 8005FC00 27BD0078 */ addiu $sp, $sp, 0x78 + +/* AD6DA4 8005FC04 27BDFF80 */ addiu $sp, $sp, -0x80 +/* AD6DA8 8005FC08 AFBF0044 */ sw $ra, 0x44($sp) +/* AD6DAC 8005FC0C AFB60040 */ sw $s6, 0x40($sp) +/* AD6DB0 8005FC10 AFB5003C */ sw $s5, 0x3c($sp) +/* AD6DB4 8005FC14 AFB40038 */ sw $s4, 0x38($sp) +/* AD6DB8 8005FC18 AFB30034 */ sw $s3, 0x34($sp) +/* AD6DBC 8005FC1C AFB20030 */ sw $s2, 0x30($sp) +/* AD6DC0 8005FC20 AFB1002C */ sw $s1, 0x2c($sp) +/* AD6DC4 8005FC24 AFB00028 */ sw $s0, 0x28($sp) +/* AD6DC8 8005FC28 AFA40080 */ sw $a0, 0x80($sp) +/* AD6DCC 8005FC2C AFA50084 */ sw $a1, 0x84($sp) +/* AD6DD0 8005FC30 84CE0040 */ lh $t6, 0x40($a2) +/* AD6DD4 8005FC34 00C09025 */ move $s2, $a2 +/* AD6DD8 8005FC38 00E09825 */ move $s3, $a3 +/* AD6DDC 8005FC3C 59C0005A */ blezl $t6, .L8005FDA8 +/* AD6DE0 8005FC40 8FBF0044 */ lw $ra, 0x44($sp) +/* AD6DE4 8005FC44 84CF0042 */ lh $t7, 0x42($a2) +/* AD6DE8 8005FC48 59E00057 */ blezl $t7, .L8005FDA8 +/* AD6DEC 8005FC4C 8FBF0044 */ lw $ra, 0x44($sp) +/* AD6DF0 8005FC50 8CF80018 */ lw $t8, 0x18($a3) +/* AD6DF4 8005FC54 5B000054 */ blezl $t8, .L8005FDA8 +/* AD6DF8 8005FC58 8FBF0044 */ lw $ra, 0x44($sp) +/* AD6DFC 8005FC5C 8CF9001C */ lw $t9, 0x1c($a3) +/* AD6E00 8005FC60 24D50018 */ addiu $s5, $a2, 0x18 +/* AD6E04 8005FC64 02A02025 */ move $a0, $s5 +/* AD6E08 8005FC68 5320004F */ beql $t9, $zero, .L8005FDA8 +/* AD6E0C 8005FC6C 8FBF0044 */ lw $ra, 0x44($sp) +/* AD6E10 8005FC70 0C0177CB */ jal func_8005DF2C +/* AD6E14 8005FC74 AFA7008C */ sw $a3, 0x8c($sp) +/* AD6E18 8005FC78 24110001 */ li $s1, 1 +/* AD6E1C 8005FC7C 10510049 */ beq $v0, $s1, .L8005FDA4 +/* AD6E20 8005FC80 8FA3008C */ lw $v1, 0x8c($sp) +/* AD6E24 8005FC84 8C680018 */ lw $t0, 0x18($v1) +/* AD6E28 8005FC88 2416005C */ li $s6, 92 +/* AD6E2C 8005FC8C 8C70001C */ lw $s0, 0x1c($v1) +/* AD6E30 8005FC90 01160019 */ multu $t0, $s6 +/* AD6E34 8005FC94 27B40068 */ addiu $s4, $sp, 0x68 +/* AD6E38 8005FC98 00004812 */ mflo $t1 +/* AD6E3C 8005FC9C 02095021 */ addu $t2, $s0, $t1 +/* AD6E40 8005FCA0 020A082B */ sltu $at, $s0, $t2 +/* AD6E44 8005FCA4 50200040 */ beql $at, $zero, .L8005FDA8 +/* AD6E48 8005FCA8 8FBF0044 */ lw $ra, 0x44($sp) +.L8005FCAC: +/* AD6E4C 8005FCAC 0C0177D4 */ jal func_8005DF50 +/* AD6E50 8005FCB0 02002025 */ move $a0, $s0 +/* AD6E54 8005FCB4 10510032 */ beq $v0, $s1, .L8005FD80 +/* AD6E58 8005FCB8 02A02025 */ move $a0, $s5 +/* AD6E5C 8005FCBC 0C0177DD */ jal func_8005DF74 +/* AD6E60 8005FCC0 02002825 */ move $a1, $s0 +/* AD6E64 8005FCC4 1051002E */ beq $v0, $s1, .L8005FD80 +/* AD6E68 8005FCC8 26440040 */ addiu $a0, $s2, 0x40 +/* AD6E6C 8005FCCC 26050028 */ addiu $a1, $s0, 0x28 +/* AD6E70 8005FCD0 0C033DF4 */ jal func_800CF7D0 +/* AD6E74 8005FCD4 02803025 */ move $a2, $s4 +/* AD6E78 8005FCD8 5451002A */ bnel $v0, $s1, .L8005FD84 +/* AD6E7C 8005FCDC 8E6E0018 */ lw $t6, 0x18($s3) +/* AD6E80 8005FCE0 27B1005C */ addiu $s1, $sp, 0x5c +/* AD6E84 8005FCE4 02202025 */ move $a0, $s1 +/* AD6E88 8005FCE8 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD6E8C 8005FCEC 26450046 */ addiu $a1, $s2, 0x46 +/* AD6E90 8005FCF0 C6040028 */ lwc1 $f4, 0x28($s0) +/* AD6E94 8005FCF4 C6060034 */ lwc1 $f6, 0x34($s0) +/* AD6E98 8005FCF8 C60A0040 */ lwc1 $f10, 0x40($s0) +/* AD6E9C 8005FCFC 3C018014 */ lui $at, %hi(D_8013AD10) +/* AD6EA0 8005FD00 46062200 */ add.s $f8, $f4, $f6 +/* AD6EA4 8005FD04 C420AD10 */ lwc1 $f0, %lo(D_8013AD10)($at) +/* AD6EA8 8005FD08 8FAB008C */ lw $t3, 0x8c($sp) +/* AD6EAC 8005FD0C 27AC0050 */ addiu $t4, $sp, 0x50 +/* AD6EB0 8005FD10 46085400 */ add.s $f16, $f10, $f8 +/* AD6EB4 8005FD14 8FA40080 */ lw $a0, 0x80($sp) +/* AD6EB8 8005FD18 02402825 */ move $a1, $s2 +/* AD6EBC 8005FD1C 02A03025 */ move $a2, $s5 +/* AD6EC0 8005FD20 46008482 */ mul.s $f18, $f16, $f0 +/* AD6EC4 8005FD24 02203825 */ move $a3, $s1 +/* AD6EC8 8005FD28 E7B20050 */ swc1 $f18, 0x50($sp) +/* AD6ECC 8005FD2C C6060038 */ lwc1 $f6, 0x38($s0) +/* AD6ED0 8005FD30 C604002C */ lwc1 $f4, 0x2c($s0) +/* AD6ED4 8005FD34 C6080044 */ lwc1 $f8, 0x44($s0) +/* AD6ED8 8005FD38 46062280 */ add.s $f10, $f4, $f6 +/* AD6EDC 8005FD3C 460A4400 */ add.s $f16, $f8, $f10 +/* AD6EE0 8005FD40 46008482 */ mul.s $f18, $f16, $f0 +/* AD6EE4 8005FD44 E7B20054 */ swc1 $f18, 0x54($sp) +/* AD6EE8 8005FD48 C606003C */ lwc1 $f6, 0x3c($s0) +/* AD6EEC 8005FD4C C6040030 */ lwc1 $f4, 0x30($s0) +/* AD6EF0 8005FD50 C60A0048 */ lwc1 $f10, 0x48($s0) +/* AD6EF4 8005FD54 AFB4001C */ sw $s4, 0x1c($sp) +/* AD6EF8 8005FD58 46062200 */ add.s $f8, $f4, $f6 +/* AD6EFC 8005FD5C AFAC0018 */ sw $t4, 0x18($sp) +/* AD6F00 8005FD60 AFB00014 */ sw $s0, 0x14($sp) +/* AD6F04 8005FD64 AFAB0010 */ sw $t3, 0x10($sp) +/* AD6F08 8005FD68 46085400 */ add.s $f16, $f10, $f8 +/* AD6F0C 8005FD6C 46008482 */ mul.s $f18, $f16, $f0 +/* AD6F10 8005FD70 0C017A07 */ jal func_8005E81C +/* AD6F14 8005FD74 E7B20058 */ swc1 $f18, 0x58($sp) +/* AD6F18 8005FD78 1000000B */ b .L8005FDA8 +/* AD6F1C 8005FD7C 8FBF0044 */ lw $ra, 0x44($sp) +.L8005FD80: +/* AD6F20 8005FD80 8E6E0018 */ lw $t6, 0x18($s3) +.L8005FD84: +/* AD6F24 8005FD84 8E6D001C */ lw $t5, 0x1c($s3) +/* AD6F28 8005FD88 2610005C */ addiu $s0, $s0, 0x5c +/* AD6F2C 8005FD8C 01D60019 */ multu $t6, $s6 +/* AD6F30 8005FD90 00007812 */ mflo $t7 +/* AD6F34 8005FD94 01AFC021 */ addu $t8, $t5, $t7 +/* AD6F38 8005FD98 0218082B */ sltu $at, $s0, $t8 +/* AD6F3C 8005FD9C 1420FFC3 */ bnez $at, .L8005FCAC +/* AD6F40 8005FDA0 00000000 */ nop +.L8005FDA4: +/* AD6F44 8005FDA4 8FBF0044 */ lw $ra, 0x44($sp) +.L8005FDA8: +/* AD6F48 8005FDA8 8FB00028 */ lw $s0, 0x28($sp) +/* AD6F4C 8005FDAC 8FB1002C */ lw $s1, 0x2c($sp) +/* AD6F50 8005FDB0 8FB20030 */ lw $s2, 0x30($sp) +/* AD6F54 8005FDB4 8FB30034 */ lw $s3, 0x34($sp) +/* AD6F58 8005FDB8 8FB40038 */ lw $s4, 0x38($sp) +/* AD6F5C 8005FDBC 8FB5003C */ lw $s5, 0x3c($sp) +/* AD6F60 8005FDC0 8FB60040 */ lw $s6, 0x40($sp) +/* AD6F64 8005FDC4 03E00008 */ jr $ra +/* AD6F68 8005FDC8 27BD0080 */ addiu $sp, $sp, 0x80 + +/* AD6F6C 8005FDCC 27BDFF88 */ addiu $sp, $sp, -0x78 +/* AD6F70 8005FDD0 AFBF0044 */ sw $ra, 0x44($sp) +/* AD6F74 8005FDD4 AFB60040 */ sw $s6, 0x40($sp) +/* AD6F78 8005FDD8 AFB5003C */ sw $s5, 0x3c($sp) +/* AD6F7C 8005FDDC AFB40038 */ sw $s4, 0x38($sp) +/* AD6F80 8005FDE0 AFB30034 */ sw $s3, 0x34($sp) +/* AD6F84 8005FDE4 AFB20030 */ sw $s2, 0x30($sp) +/* AD6F88 8005FDE8 AFB1002C */ sw $s1, 0x2c($sp) +/* AD6F8C 8005FDEC AFB00028 */ sw $s0, 0x28($sp) +/* AD6F90 8005FDF0 AFA40078 */ sw $a0, 0x78($sp) +/* AD6F94 8005FDF4 AFA5007C */ sw $a1, 0x7c($sp) +/* AD6F98 8005FDF8 84EE0040 */ lh $t6, 0x40($a3) +/* AD6F9C 8005FDFC 00E09025 */ move $s2, $a3 +/* AD6FA0 8005FE00 00C09825 */ move $s3, $a2 +/* AD6FA4 8005FE04 59C00059 */ blezl $t6, .L8005FF6C +/* AD6FA8 8005FE08 8FBF0044 */ lw $ra, 0x44($sp) +/* AD6FAC 8005FE0C 84EF0042 */ lh $t7, 0x42($a3) +/* AD6FB0 8005FE10 59E00056 */ blezl $t7, .L8005FF6C +/* AD6FB4 8005FE14 8FBF0044 */ lw $ra, 0x44($sp) +/* AD6FB8 8005FE18 8CD80018 */ lw $t8, 0x18($a2) +/* AD6FBC 8005FE1C 5B000053 */ blezl $t8, .L8005FF6C +/* AD6FC0 8005FE20 8FBF0044 */ lw $ra, 0x44($sp) +/* AD6FC4 8005FE24 8CD9001C */ lw $t9, 0x1c($a2) +/* AD6FC8 8005FE28 24F50018 */ addiu $s5, $a3, 0x18 +/* AD6FCC 8005FE2C 02A02025 */ move $a0, $s5 +/* AD6FD0 8005FE30 5320004E */ beql $t9, $zero, .L8005FF6C +/* AD6FD4 8005FE34 8FBF0044 */ lw $ra, 0x44($sp) +/* AD6FD8 8005FE38 0C0177D4 */ jal func_8005DF50 +/* AD6FDC 8005FE3C AFA60080 */ sw $a2, 0x80($sp) +/* AD6FE0 8005FE40 24110001 */ li $s1, 1 +/* AD6FE4 8005FE44 10510048 */ beq $v0, $s1, .L8005FF68 +/* AD6FE8 8005FE48 8FA30080 */ lw $v1, 0x80($sp) +/* AD6FEC 8005FE4C 8C680018 */ lw $t0, 0x18($v1) +/* AD6FF0 8005FE50 2416005C */ li $s6, 92 +/* AD6FF4 8005FE54 8C70001C */ lw $s0, 0x1c($v1) +/* AD6FF8 8005FE58 01160019 */ multu $t0, $s6 +/* AD6FFC 8005FE5C 3C148016 */ lui $s4, %hi(D_8015E310) # $s4, 0x8016 +/* AD7000 8005FE60 2694E310 */ addiu $s4, %lo(D_8015E310) # addiu $s4, $s4, -0x1cf0 +/* AD7004 8005FE64 00004812 */ mflo $t1 +/* AD7008 8005FE68 02095021 */ addu $t2, $s0, $t1 +/* AD700C 8005FE6C 020A082B */ sltu $at, $s0, $t2 +/* AD7010 8005FE70 5020003E */ beql $at, $zero, .L8005FF6C +/* AD7014 8005FE74 8FBF0044 */ lw $ra, 0x44($sp) +.L8005FE78: +/* AD7018 8005FE78 0C0177CB */ jal func_8005DF2C +/* AD701C 8005FE7C 02002025 */ move $a0, $s0 +/* AD7020 8005FE80 10510030 */ beq $v0, $s1, .L8005FF44 +/* AD7024 8005FE84 02002025 */ move $a0, $s0 +/* AD7028 8005FE88 0C0177DD */ jal func_8005DF74 +/* AD702C 8005FE8C 02A02825 */ move $a1, $s5 +/* AD7030 8005FE90 1051002C */ beq $v0, $s1, .L8005FF44 +/* AD7034 8005FE94 26440040 */ addiu $a0, $s2, 0x40 +/* AD7038 8005FE98 26050028 */ addiu $a1, $s0, 0x28 +/* AD703C 8005FE9C 0C033DF4 */ jal func_800CF7D0 +/* AD7040 8005FEA0 02803025 */ move $a2, $s4 +/* AD7044 8005FEA4 54510028 */ bnel $v0, $s1, .L8005FF48 +/* AD7048 8005FEA8 8E6C0018 */ lw $t4, 0x18($s3) +/* AD704C 8005FEAC C6040028 */ lwc1 $f4, 0x28($s0) +/* AD7050 8005FEB0 C6060034 */ lwc1 $f6, 0x34($s0) +/* AD7054 8005FEB4 C60A0040 */ lwc1 $f10, 0x40($s0) +/* AD7058 8005FEB8 3C018014 */ lui $at, %hi(D_8013AD14) +/* AD705C 8005FEBC 46062200 */ add.s $f8, $f4, $f6 +/* AD7060 8005FEC0 C420AD14 */ lwc1 $f0, %lo(D_8013AD14)($at) +/* AD7064 8005FEC4 27B10054 */ addiu $s1, $sp, 0x54 +/* AD7068 8005FEC8 02202025 */ move $a0, $s1 +/* AD706C 8005FECC 46085400 */ add.s $f16, $f10, $f8 +/* AD7070 8005FED0 26450046 */ addiu $a1, $s2, 0x46 +/* AD7074 8005FED4 46008482 */ mul.s $f18, $f16, $f0 +/* AD7078 8005FED8 E7B20060 */ swc1 $f18, 0x60($sp) +/* AD707C 8005FEDC C6060038 */ lwc1 $f6, 0x38($s0) +/* AD7080 8005FEE0 C604002C */ lwc1 $f4, 0x2c($s0) +/* AD7084 8005FEE4 C6080044 */ lwc1 $f8, 0x44($s0) +/* AD7088 8005FEE8 46062280 */ add.s $f10, $f4, $f6 +/* AD708C 8005FEEC 460A4400 */ add.s $f16, $f8, $f10 +/* AD7090 8005FEF0 46008482 */ mul.s $f18, $f16, $f0 +/* AD7094 8005FEF4 E7B20064 */ swc1 $f18, 0x64($sp) +/* AD7098 8005FEF8 C606003C */ lwc1 $f6, 0x3c($s0) +/* AD709C 8005FEFC C6040030 */ lwc1 $f4, 0x30($s0) +/* AD70A0 8005FF00 C60A0048 */ lwc1 $f10, 0x48($s0) +/* AD70A4 8005FF04 46062200 */ add.s $f8, $f4, $f6 +/* AD70A8 8005FF08 46085400 */ add.s $f16, $f10, $f8 +/* AD70AC 8005FF0C 46008482 */ mul.s $f18, $f16, $f0 +/* AD70B0 8005FF10 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD70B4 8005FF14 E7B20068 */ swc1 $f18, 0x68($sp) +/* AD70B8 8005FF18 8FA40078 */ lw $a0, 0x78($sp) +/* AD70BC 8005FF1C 8FA50080 */ lw $a1, 0x80($sp) +/* AD70C0 8005FF20 02003025 */ move $a2, $s0 +/* AD70C4 8005FF24 27A70060 */ addiu $a3, $sp, 0x60 +/* AD70C8 8005FF28 AFB20010 */ sw $s2, 0x10($sp) +/* AD70CC 8005FF2C AFB50014 */ sw $s5, 0x14($sp) +/* AD70D0 8005FF30 AFB10018 */ sw $s1, 0x18($sp) +/* AD70D4 8005FF34 0C017A07 */ jal func_8005E81C +/* AD70D8 8005FF38 AFB4001C */ sw $s4, 0x1c($sp) +/* AD70DC 8005FF3C 1000000B */ b .L8005FF6C +/* AD70E0 8005FF40 8FBF0044 */ lw $ra, 0x44($sp) +.L8005FF44: +/* AD70E4 8005FF44 8E6C0018 */ lw $t4, 0x18($s3) +.L8005FF48: +/* AD70E8 8005FF48 8E6B001C */ lw $t3, 0x1c($s3) +/* AD70EC 8005FF4C 2610005C */ addiu $s0, $s0, 0x5c +/* AD70F0 8005FF50 01960019 */ multu $t4, $s6 +/* AD70F4 8005FF54 00006812 */ mflo $t5 +/* AD70F8 8005FF58 016D7021 */ addu $t6, $t3, $t5 +/* AD70FC 8005FF5C 020E082B */ sltu $at, $s0, $t6 +/* AD7100 8005FF60 1420FFC5 */ bnez $at, .L8005FE78 +/* AD7104 8005FF64 00000000 */ nop +.L8005FF68: +/* AD7108 8005FF68 8FBF0044 */ lw $ra, 0x44($sp) +.L8005FF6C: +/* AD710C 8005FF6C 8FB00028 */ lw $s0, 0x28($sp) +/* AD7110 8005FF70 8FB1002C */ lw $s1, 0x2c($sp) +/* AD7114 8005FF74 8FB20030 */ lw $s2, 0x30($sp) +/* AD7118 8005FF78 8FB30034 */ lw $s3, 0x34($sp) +/* AD711C 8005FF7C 8FB40038 */ lw $s4, 0x38($sp) +/* AD7120 8005FF80 8FB5003C */ lw $s5, 0x3c($sp) +/* AD7124 8005FF84 8FB60040 */ lw $s6, 0x40($sp) +/* AD7128 8005FF88 03E00008 */ jr $ra +/* AD712C 8005FF8C 27BD0078 */ addiu $sp, $sp, 0x78 + +/* AD7130 8005FF90 27BDFF88 */ addiu $sp, $sp, -0x78 +/* AD7134 8005FF94 AFBF002C */ sw $ra, 0x2c($sp) +/* AD7138 8005FF98 AFB10028 */ sw $s1, 0x28($sp) +/* AD713C 8005FF9C AFB00024 */ sw $s0, 0x24($sp) +/* AD7140 8005FFA0 AFA40078 */ sw $a0, 0x78($sp) +/* AD7144 8005FFA4 AFA5007C */ sw $a1, 0x7c($sp) +/* AD7148 8005FFA8 84CE0042 */ lh $t6, 0x42($a2) +/* AD714C 8005FFAC 00E08025 */ move $s0, $a3 +/* AD7150 8005FFB0 00C08825 */ move $s1, $a2 +/* AD7154 8005FFB4 59C0008F */ blezl $t6, .L800601F4 +/* AD7158 8005FFB8 8FBF002C */ lw $ra, 0x2c($sp) +/* AD715C 8005FFBC 84CF0040 */ lh $t7, 0x40($a2) +/* AD7160 8005FFC0 24C40018 */ addiu $a0, $a2, 0x18 +/* AD7164 8005FFC4 59E0008B */ blezl $t7, .L800601F4 +/* AD7168 8005FFC8 8FBF002C */ lw $ra, 0x2c($sp) +/* AD716C 8005FFCC 0C0177CB */ jal func_8005DF2C +/* AD7170 8005FFD0 AFA4003C */ sw $a0, 0x3c($sp) +/* AD7174 8005FFD4 24010001 */ li $at, 1 +/* AD7178 8005FFD8 10410085 */ beq $v0, $at, .L800601F0 +/* AD717C 8005FFDC 26040018 */ addiu $a0, $s0, 0x18 +/* AD7180 8005FFE0 0C0177D4 */ jal func_8005DF50 +/* AD7184 8005FFE4 AFA40038 */ sw $a0, 0x38($sp) +/* AD7188 8005FFE8 24010001 */ li $at, 1 +/* AD718C 8005FFEC 10410080 */ beq $v0, $at, .L800601F0 +/* AD7190 8005FFF0 8FA4003C */ lw $a0, 0x3c($sp) +/* AD7194 8005FFF4 0C0177DD */ jal func_8005DF74 +/* AD7198 8005FFF8 8FA50038 */ lw $a1, 0x38($sp) +/* AD719C 8005FFFC 24010001 */ li $at, 1 +/* AD71A0 80060000 1041007B */ beq $v0, $at, .L800601F0 +/* AD71A4 80060004 3C048016 */ lui $a0, %hi(D_8015E320) # $a0, 0x8016 +/* AD71A8 80060008 26050058 */ addiu $a1, $s0, 0x58 +/* AD71AC 8006000C 2607004C */ addiu $a3, $s0, 0x4c +/* AD71B0 80060010 AFA70034 */ sw $a3, 0x34($sp) +/* AD71B4 80060014 AFA50030 */ sw $a1, 0x30($sp) +/* AD71B8 80060018 2484E320 */ addiu $a0, %lo(D_8015E320) # addiu $a0, $a0, -0x1ce0 +/* AD71BC 8006001C 0C0338F0 */ jal func_800CE3C0 +/* AD71C0 80060020 26060064 */ addiu $a2, $s0, 0x64 +/* AD71C4 80060024 3C048016 */ lui $a0, %hi(D_8015E358) # $a0, 0x8016 +/* AD71C8 80060028 2484E358 */ addiu $a0, %lo(D_8015E358) # addiu $a0, $a0, -0x1ca8 +/* AD71CC 8006002C 8FA50034 */ lw $a1, 0x34($sp) +/* AD71D0 80060030 26060040 */ addiu $a2, $s0, 0x40 +/* AD71D4 80060034 0C0338F0 */ jal func_800CE3C0 +/* AD71D8 80060038 8FA70030 */ lw $a3, 0x30($sp) +/* AD71DC 8006003C 26240040 */ addiu $a0, $s1, 0x40 +/* AD71E0 80060040 3C058016 */ lui $a1, %hi(D_8015E320) # $a1, 0x8016 +/* AD71E4 80060044 3C068016 */ lui $a2, %hi(D_8015E390) # $a2, 0x8016 +/* AD71E8 80060048 24C6E390 */ addiu $a2, %lo(D_8015E390) # addiu $a2, $a2, -0x1c70 +/* AD71EC 8006004C 24A5E320 */ addiu $a1, %lo(D_8015E320) # addiu $a1, $a1, -0x1ce0 +/* AD71F0 80060050 0C033DF4 */ jal func_800CF7D0 +/* AD71F4 80060054 AFA40034 */ sw $a0, 0x34($sp) +/* AD71F8 80060058 24010001 */ li $at, 1 +/* AD71FC 8006005C 14410030 */ bne $v0, $at, .L80060120 +/* AD7200 80060060 8FA40034 */ lw $a0, 0x34($sp) +/* AD7204 80060064 27A40064 */ addiu $a0, $sp, 0x64 +/* AD7208 80060068 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD720C 8006006C 26250046 */ addiu $a1, $s1, 0x46 +/* AD7210 80060070 C6040058 */ lwc1 $f4, 0x58($s0) +/* AD7214 80060074 C6060064 */ lwc1 $f6, 0x64($s0) +/* AD7218 80060078 C60A004C */ lwc1 $f10, 0x4c($s0) +/* AD721C 8006007C C6120040 */ lwc1 $f18, 0x40($s0) +/* AD7220 80060080 46062200 */ add.s $f8, $f4, $f6 +/* AD7224 80060084 3C013E80 */ li $at, 0x3E800000 # 0.000000 +/* AD7228 80060088 44810000 */ mtc1 $at, $f0 +/* AD722C 8006008C 8FB80038 */ lw $t8, 0x38($sp) +/* AD7230 80060090 460A4400 */ add.s $f16, $f8, $f10 +/* AD7234 80060094 3C088016 */ lui $t0, %hi(D_8015E390) # $t0, 0x8016 +/* AD7238 80060098 2508E390 */ addiu $t0, %lo(D_8015E390) # addiu $t0, $t0, -0x1c70 +/* AD723C 8006009C 27B90058 */ addiu $t9, $sp, 0x58 +/* AD7240 800600A0 46128100 */ add.s $f4, $f16, $f18 +/* AD7244 800600A4 8FA40078 */ lw $a0, 0x78($sp) +/* AD7248 800600A8 02202825 */ move $a1, $s1 +/* AD724C 800600AC 8FA6003C */ lw $a2, 0x3c($sp) +/* AD7250 800600B0 46002182 */ mul.s $f6, $f4, $f0 +/* AD7254 800600B4 27A70064 */ addiu $a3, $sp, 0x64 +/* AD7258 800600B8 E7A60058 */ swc1 $f6, 0x58($sp) +/* AD725C 800600BC C60A0068 */ lwc1 $f10, 0x68($s0) +/* AD7260 800600C0 C608005C */ lwc1 $f8, 0x5c($s0) +/* AD7264 800600C4 C6120050 */ lwc1 $f18, 0x50($s0) +/* AD7268 800600C8 C6060044 */ lwc1 $f6, 0x44($s0) +/* AD726C 800600CC 460A4400 */ add.s $f16, $f8, $f10 +/* AD7270 800600D0 46128100 */ add.s $f4, $f16, $f18 +/* AD7274 800600D4 46062200 */ add.s $f8, $f4, $f6 +/* AD7278 800600D8 46004282 */ mul.s $f10, $f8, $f0 +/* AD727C 800600DC E7AA005C */ swc1 $f10, 0x5c($sp) +/* AD7280 800600E0 C612006C */ lwc1 $f18, 0x6c($s0) +/* AD7284 800600E4 C6100060 */ lwc1 $f16, 0x60($s0) +/* AD7288 800600E8 C6060054 */ lwc1 $f6, 0x54($s0) +/* AD728C 800600EC C60A0048 */ lwc1 $f10, 0x48($s0) +/* AD7290 800600F0 46128100 */ add.s $f4, $f16, $f18 +/* AD7294 800600F4 AFA8001C */ sw $t0, 0x1c($sp) +/* AD7298 800600F8 AFB90018 */ sw $t9, 0x18($sp) +/* AD729C 800600FC AFB00010 */ sw $s0, 0x10($sp) +/* AD72A0 80060100 46062200 */ add.s $f8, $f4, $f6 +/* AD72A4 80060104 AFB80014 */ sw $t8, 0x14($sp) +/* AD72A8 80060108 460A4400 */ add.s $f16, $f8, $f10 +/* AD72AC 8006010C 46008482 */ mul.s $f18, $f16, $f0 +/* AD72B0 80060110 0C017A07 */ jal func_8005E81C +/* AD72B4 80060114 E7B20060 */ swc1 $f18, 0x60($sp) +/* AD72B8 80060118 10000036 */ b .L800601F4 +/* AD72BC 8006011C 8FBF002C */ lw $ra, 0x2c($sp) +.L80060120: +/* AD72C0 80060120 3C058016 */ lui $a1, %hi(D_8015E358) # $a1, 0x8016 +/* AD72C4 80060124 3C068016 */ lui $a2, %hi(D_8015E390) # $a2, 0x8016 +/* AD72C8 80060128 24C6E390 */ addiu $a2, %lo(D_8015E390) # addiu $a2, $a2, -0x1c70 +/* AD72CC 8006012C 0C033DF4 */ jal func_800CF7D0 +/* AD72D0 80060130 24A5E358 */ addiu $a1, %lo(D_8015E358) # addiu $a1, $a1, -0x1ca8 +/* AD72D4 80060134 24010001 */ li $at, 1 +/* AD72D8 80060138 1441002D */ bne $v0, $at, .L800601F0 +/* AD72DC 8006013C 27A4004C */ addiu $a0, $sp, 0x4c +/* AD72E0 80060140 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD72E4 80060144 26250046 */ addiu $a1, $s1, 0x46 +/* AD72E8 80060148 C6040058 */ lwc1 $f4, 0x58($s0) +/* AD72EC 8006014C C6060064 */ lwc1 $f6, 0x64($s0) +/* AD72F0 80060150 C60A004C */ lwc1 $f10, 0x4c($s0) +/* AD72F4 80060154 C6120040 */ lwc1 $f18, 0x40($s0) +/* AD72F8 80060158 46062200 */ add.s $f8, $f4, $f6 +/* AD72FC 8006015C 3C013E80 */ li $at, 0x3E800000 # 0.000000 +/* AD7300 80060160 44810000 */ mtc1 $at, $f0 +/* AD7304 80060164 8FA90038 */ lw $t1, 0x38($sp) +/* AD7308 80060168 460A4400 */ add.s $f16, $f8, $f10 +/* AD730C 8006016C 3C0B8016 */ lui $t3, %hi(D_8015E390) # $t3, 0x8016 +/* AD7310 80060170 256BE390 */ addiu $t3, %lo(D_8015E390) # addiu $t3, $t3, -0x1c70 +/* AD7314 80060174 27AA0040 */ addiu $t2, $sp, 0x40 +/* AD7318 80060178 46128100 */ add.s $f4, $f16, $f18 +/* AD731C 8006017C 8FA40078 */ lw $a0, 0x78($sp) +/* AD7320 80060180 02202825 */ move $a1, $s1 +/* AD7324 80060184 8FA6003C */ lw $a2, 0x3c($sp) +/* AD7328 80060188 46002182 */ mul.s $f6, $f4, $f0 +/* AD732C 8006018C 27A7004C */ addiu $a3, $sp, 0x4c +/* AD7330 80060190 E7A60040 */ swc1 $f6, 0x40($sp) +/* AD7334 80060194 C60A0068 */ lwc1 $f10, 0x68($s0) +/* AD7338 80060198 C608005C */ lwc1 $f8, 0x5c($s0) +/* AD733C 8006019C C6120050 */ lwc1 $f18, 0x50($s0) +/* AD7340 800601A0 C6060044 */ lwc1 $f6, 0x44($s0) +/* AD7344 800601A4 460A4400 */ add.s $f16, $f8, $f10 +/* AD7348 800601A8 46128100 */ add.s $f4, $f16, $f18 +/* AD734C 800601AC 46062200 */ add.s $f8, $f4, $f6 +/* AD7350 800601B0 46004282 */ mul.s $f10, $f8, $f0 +/* AD7354 800601B4 E7AA0044 */ swc1 $f10, 0x44($sp) +/* AD7358 800601B8 C612006C */ lwc1 $f18, 0x6c($s0) +/* AD735C 800601BC C6100060 */ lwc1 $f16, 0x60($s0) +/* AD7360 800601C0 C6060054 */ lwc1 $f6, 0x54($s0) +/* AD7364 800601C4 C60A0048 */ lwc1 $f10, 0x48($s0) +/* AD7368 800601C8 46128100 */ add.s $f4, $f16, $f18 +/* AD736C 800601CC AFAB001C */ sw $t3, 0x1c($sp) +/* AD7370 800601D0 AFAA0018 */ sw $t2, 0x18($sp) +/* AD7374 800601D4 AFB00010 */ sw $s0, 0x10($sp) +/* AD7378 800601D8 46062200 */ add.s $f8, $f4, $f6 +/* AD737C 800601DC AFA90014 */ sw $t1, 0x14($sp) +/* AD7380 800601E0 460A4400 */ add.s $f16, $f8, $f10 +/* AD7384 800601E4 46008482 */ mul.s $f18, $f16, $f0 +/* AD7388 800601E8 0C017A07 */ jal func_8005E81C +/* AD738C 800601EC E7B20048 */ swc1 $f18, 0x48($sp) +.L800601F0: +/* AD7390 800601F0 8FBF002C */ lw $ra, 0x2c($sp) +.L800601F4: +/* AD7394 800601F4 8FB00024 */ lw $s0, 0x24($sp) +/* AD7398 800601F8 8FB10028 */ lw $s1, 0x28($sp) +/* AD739C 800601FC 03E00008 */ jr $ra +/* AD73A0 80060200 27BD0078 */ addiu $sp, $sp, 0x78 + +/* AD73A4 80060204 27BDFF88 */ addiu $sp, $sp, -0x78 +/* AD73A8 80060208 AFBF002C */ sw $ra, 0x2c($sp) +/* AD73AC 8006020C AFB10028 */ sw $s1, 0x28($sp) +/* AD73B0 80060210 AFB00024 */ sw $s0, 0x24($sp) +/* AD73B4 80060214 AFA40078 */ sw $a0, 0x78($sp) +/* AD73B8 80060218 AFA5007C */ sw $a1, 0x7c($sp) +/* AD73BC 8006021C 84EE0042 */ lh $t6, 0x42($a3) +/* AD73C0 80060220 00C08025 */ move $s0, $a2 +/* AD73C4 80060224 00E08825 */ move $s1, $a3 +/* AD73C8 80060228 59C0009D */ blezl $t6, .L800604A0 +/* AD73CC 8006022C 8FBF002C */ lw $ra, 0x2c($sp) +/* AD73D0 80060230 84EF0040 */ lh $t7, 0x40($a3) +/* AD73D4 80060234 24E40018 */ addiu $a0, $a3, 0x18 +/* AD73D8 80060238 59E00099 */ blezl $t7, .L800604A0 +/* AD73DC 8006023C 8FBF002C */ lw $ra, 0x2c($sp) +/* AD73E0 80060240 0C0177D4 */ jal func_8005DF50 +/* AD73E4 80060244 AFA40038 */ sw $a0, 0x38($sp) +/* AD73E8 80060248 24010001 */ li $at, 1 +/* AD73EC 8006024C 10410093 */ beq $v0, $at, .L8006049C +/* AD73F0 80060250 26040018 */ addiu $a0, $s0, 0x18 +/* AD73F4 80060254 0C0177CB */ jal func_8005DF2C +/* AD73F8 80060258 AFA4003C */ sw $a0, 0x3c($sp) +/* AD73FC 8006025C 24010001 */ li $at, 1 +/* AD7400 80060260 1041008E */ beq $v0, $at, .L8006049C +/* AD7404 80060264 8FA4003C */ lw $a0, 0x3c($sp) +/* AD7408 80060268 0C0177DD */ jal func_8005DF74 +/* AD740C 8006026C 8FA50038 */ lw $a1, 0x38($sp) +/* AD7410 80060270 24010001 */ li $at, 1 +/* AD7414 80060274 10410089 */ beq $v0, $at, .L8006049C +/* AD7418 80060278 3C048016 */ lui $a0, %hi(D_8015E3A0) # $a0, 0x8016 +/* AD741C 8006027C 26050058 */ addiu $a1, $s0, 0x58 +/* AD7420 80060280 2607004C */ addiu $a3, $s0, 0x4c +/* AD7424 80060284 AFA70030 */ sw $a3, 0x30($sp) +/* AD7428 80060288 AFA50034 */ sw $a1, 0x34($sp) +/* AD742C 8006028C 2484E3A0 */ addiu $a0, %lo(D_8015E3A0) # addiu $a0, $a0, -0x1c60 +/* AD7430 80060290 0C0338F0 */ jal func_800CE3C0 +/* AD7434 80060294 26060064 */ addiu $a2, $s0, 0x64 +/* AD7438 80060298 3C048016 */ lui $a0, %hi(D_8015E3D8) # $a0, 0x8016 +/* AD743C 8006029C 8FA50034 */ lw $a1, 0x34($sp) +/* AD7440 800602A0 2484E3D8 */ addiu $a0, %lo(D_8015E3D8) # addiu $a0, $a0, -0x1c28 +/* AD7444 800602A4 8FA60030 */ lw $a2, 0x30($sp) +/* AD7448 800602A8 0C0338F0 */ jal func_800CE3C0 +/* AD744C 800602AC 26070040 */ addiu $a3, $s0, 0x40 +/* AD7450 800602B0 26240040 */ addiu $a0, $s1, 0x40 +/* AD7454 800602B4 3C058016 */ lui $a1, %hi(D_8015E3A0) # $a1, 0x8016 +/* AD7458 800602B8 3C068016 */ lui $a2, %hi(D_8015E410) # $a2, 0x8016 +/* AD745C 800602BC 24C6E410 */ addiu $a2, %lo(D_8015E410) # addiu $a2, $a2, -0x1bf0 +/* AD7460 800602C0 24A5E3A0 */ addiu $a1, %lo(D_8015E3A0) # addiu $a1, $a1, -0x1c60 +/* AD7464 800602C4 0C033DF4 */ jal func_800CF7D0 +/* AD7468 800602C8 AFA40034 */ sw $a0, 0x34($sp) +/* AD746C 800602CC 24010001 */ li $at, 1 +/* AD7470 800602D0 14410036 */ bne $v0, $at, .L800603AC +/* AD7474 800602D4 8FA40078 */ lw $a0, 0x78($sp) +/* AD7478 800602D8 3C068016 */ lui $a2, %hi(D_8015E410) # $a2, 0x8016 +/* AD747C 800602DC 24C6E410 */ addiu $a2, %lo(D_8015E410) # addiu $a2, $a2, -0x1bf0 +/* AD7480 800602E0 0C017486 */ jal func_8005D218 +/* AD7484 800602E4 02002825 */ move $a1, $s0 +/* AD7488 800602E8 10400030 */ beqz $v0, .L800603AC +/* AD748C 800602EC 00000000 */ nop +/* AD7490 800602F0 C6040058 */ lwc1 $f4, 0x58($s0) +/* AD7494 800602F4 C6060064 */ lwc1 $f6, 0x64($s0) +/* AD7498 800602F8 C60A004C */ lwc1 $f10, 0x4c($s0) +/* AD749C 800602FC C6120040 */ lwc1 $f18, 0x40($s0) +/* AD74A0 80060300 46062200 */ add.s $f8, $f4, $f6 +/* AD74A4 80060304 3C013E80 */ li $at, 0x3E800000 # 0.000000 +/* AD74A8 80060308 44810000 */ mtc1 $at, $f0 +/* AD74AC 8006030C 27A40058 */ addiu $a0, $sp, 0x58 +/* AD74B0 80060310 460A4400 */ add.s $f16, $f8, $f10 +/* AD74B4 80060314 26250046 */ addiu $a1, $s1, 0x46 +/* AD74B8 80060318 46128100 */ add.s $f4, $f16, $f18 +/* AD74BC 8006031C 46002182 */ mul.s $f6, $f4, $f0 +/* AD74C0 80060320 E7A60064 */ swc1 $f6, 0x64($sp) +/* AD74C4 80060324 C60A0068 */ lwc1 $f10, 0x68($s0) +/* AD74C8 80060328 C608005C */ lwc1 $f8, 0x5c($s0) +/* AD74CC 8006032C C6120050 */ lwc1 $f18, 0x50($s0) +/* AD74D0 80060330 C6060044 */ lwc1 $f6, 0x44($s0) +/* AD74D4 80060334 460A4400 */ add.s $f16, $f8, $f10 +/* AD74D8 80060338 46128100 */ add.s $f4, $f16, $f18 +/* AD74DC 8006033C 46062200 */ add.s $f8, $f4, $f6 +/* AD74E0 80060340 46004282 */ mul.s $f10, $f8, $f0 +/* AD74E4 80060344 E7AA0068 */ swc1 $f10, 0x68($sp) +/* AD74E8 80060348 C612006C */ lwc1 $f18, 0x6c($s0) +/* AD74EC 8006034C C6100060 */ lwc1 $f16, 0x60($s0) +/* AD74F0 80060350 C6060054 */ lwc1 $f6, 0x54($s0) +/* AD74F4 80060354 C60A0048 */ lwc1 $f10, 0x48($s0) +/* AD74F8 80060358 46128100 */ add.s $f4, $f16, $f18 +/* AD74FC 8006035C 46062200 */ add.s $f8, $f4, $f6 +/* AD7500 80060360 460A4400 */ add.s $f16, $f8, $f10 +/* AD7504 80060364 46008482 */ mul.s $f18, $f16, $f0 +/* AD7508 80060368 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD750C 8006036C E7B2006C */ swc1 $f18, 0x6c($sp) +/* AD7510 80060370 8FB80038 */ lw $t8, 0x38($sp) +/* AD7514 80060374 3C088016 */ lui $t0, %hi(D_8015E410) # $t0, 0x8016 +/* AD7518 80060378 2508E410 */ addiu $t0, %lo(D_8015E410) # addiu $t0, $t0, -0x1bf0 +/* AD751C 8006037C 27B90058 */ addiu $t9, $sp, 0x58 +/* AD7520 80060380 AFB90018 */ sw $t9, 0x18($sp) +/* AD7524 80060384 AFA8001C */ sw $t0, 0x1c($sp) +/* AD7528 80060388 8FA40078 */ lw $a0, 0x78($sp) +/* AD752C 8006038C 02002825 */ move $a1, $s0 +/* AD7530 80060390 8FA6003C */ lw $a2, 0x3c($sp) +/* AD7534 80060394 27A70064 */ addiu $a3, $sp, 0x64 +/* AD7538 80060398 AFB10010 */ sw $s1, 0x10($sp) +/* AD753C 8006039C 0C017A07 */ jal func_8005E81C +/* AD7540 800603A0 AFB80014 */ sw $t8, 0x14($sp) +/* AD7544 800603A4 1000003E */ b .L800604A0 +/* AD7548 800603A8 8FBF002C */ lw $ra, 0x2c($sp) +.L800603AC: +/* AD754C 800603AC 3C058016 */ lui $a1, %hi(D_8015E3D8) # $a1, 0x8016 +/* AD7550 800603B0 3C068016 */ lui $a2, %hi(D_8015E410) # $a2, 0x8016 +/* AD7554 800603B4 24C6E410 */ addiu $a2, %lo(D_8015E410) # addiu $a2, $a2, -0x1bf0 +/* AD7558 800603B8 24A5E3D8 */ addiu $a1, %lo(D_8015E3D8) # addiu $a1, $a1, -0x1c28 +/* AD755C 800603BC 0C033DF4 */ jal func_800CF7D0 +/* AD7560 800603C0 8FA40034 */ lw $a0, 0x34($sp) +/* AD7564 800603C4 24010001 */ li $at, 1 +/* AD7568 800603C8 14410034 */ bne $v0, $at, .L8006049C +/* AD756C 800603CC 8FA40078 */ lw $a0, 0x78($sp) +/* AD7570 800603D0 3C068016 */ lui $a2, %hi(D_8015E410) # $a2, 0x8016 +/* AD7574 800603D4 24C6E410 */ addiu $a2, %lo(D_8015E410) # addiu $a2, $a2, -0x1bf0 +/* AD7578 800603D8 0C017486 */ jal func_8005D218 +/* AD757C 800603DC 02002825 */ move $a1, $s0 +/* AD7580 800603E0 5040002F */ beql $v0, $zero, .L800604A0 +/* AD7584 800603E4 8FBF002C */ lw $ra, 0x2c($sp) +/* AD7588 800603E8 C6040058 */ lwc1 $f4, 0x58($s0) +/* AD758C 800603EC C6060064 */ lwc1 $f6, 0x64($s0) +/* AD7590 800603F0 C60A004C */ lwc1 $f10, 0x4c($s0) +/* AD7594 800603F4 C6120040 */ lwc1 $f18, 0x40($s0) +/* AD7598 800603F8 46062200 */ add.s $f8, $f4, $f6 +/* AD759C 800603FC 3C013E80 */ li $at, 0x3E800000 # 0.000000 +/* AD75A0 80060400 44810000 */ mtc1 $at, $f0 +/* AD75A4 80060404 27A40040 */ addiu $a0, $sp, 0x40 +/* AD75A8 80060408 460A4400 */ add.s $f16, $f8, $f10 +/* AD75AC 8006040C 26250046 */ addiu $a1, $s1, 0x46 +/* AD75B0 80060410 46128100 */ add.s $f4, $f16, $f18 +/* AD75B4 80060414 46002182 */ mul.s $f6, $f4, $f0 +/* AD75B8 80060418 E7A6004C */ swc1 $f6, 0x4c($sp) +/* AD75BC 8006041C C60A0068 */ lwc1 $f10, 0x68($s0) +/* AD75C0 80060420 C608005C */ lwc1 $f8, 0x5c($s0) +/* AD75C4 80060424 C6120050 */ lwc1 $f18, 0x50($s0) +/* AD75C8 80060428 C6060044 */ lwc1 $f6, 0x44($s0) +/* AD75CC 8006042C 460A4400 */ add.s $f16, $f8, $f10 +/* AD75D0 80060430 46128100 */ add.s $f4, $f16, $f18 +/* AD75D4 80060434 46062200 */ add.s $f8, $f4, $f6 +/* AD75D8 80060438 46004282 */ mul.s $f10, $f8, $f0 +/* AD75DC 8006043C E7AA0050 */ swc1 $f10, 0x50($sp) +/* AD75E0 80060440 C612006C */ lwc1 $f18, 0x6c($s0) +/* AD75E4 80060444 C6100060 */ lwc1 $f16, 0x60($s0) +/* AD75E8 80060448 C6060054 */ lwc1 $f6, 0x54($s0) +/* AD75EC 8006044C C60A0048 */ lwc1 $f10, 0x48($s0) +/* AD75F0 80060450 46128100 */ add.s $f4, $f16, $f18 +/* AD75F4 80060454 46062200 */ add.s $f8, $f4, $f6 +/* AD75F8 80060458 460A4400 */ add.s $f16, $f8, $f10 +/* AD75FC 8006045C 46008482 */ mul.s $f18, $f16, $f0 +/* AD7600 80060460 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD7604 80060464 E7B20054 */ swc1 $f18, 0x54($sp) +/* AD7608 80060468 8FA90038 */ lw $t1, 0x38($sp) +/* AD760C 8006046C 3C0B8016 */ lui $t3, %hi(D_8015E410) # $t3, 0x8016 +/* AD7610 80060470 256BE410 */ addiu $t3, %lo(D_8015E410) # addiu $t3, $t3, -0x1bf0 +/* AD7614 80060474 27AA0040 */ addiu $t2, $sp, 0x40 +/* AD7618 80060478 AFAA0018 */ sw $t2, 0x18($sp) +/* AD761C 8006047C AFAB001C */ sw $t3, 0x1c($sp) +/* AD7620 80060480 8FA40078 */ lw $a0, 0x78($sp) +/* AD7624 80060484 02002825 */ move $a1, $s0 +/* AD7628 80060488 8FA6003C */ lw $a2, 0x3c($sp) +/* AD762C 8006048C 27A7004C */ addiu $a3, $sp, 0x4c +/* AD7630 80060490 AFB10010 */ sw $s1, 0x10($sp) +/* AD7634 80060494 0C017A07 */ jal func_8005E81C +/* AD7638 80060498 AFA90014 */ sw $t1, 0x14($sp) +.L8006049C: +/* AD763C 8006049C 8FBF002C */ lw $ra, 0x2c($sp) +.L800604A0: +/* AD7640 800604A0 8FB00024 */ lw $s0, 0x24($sp) +/* AD7644 800604A4 8FB10028 */ lw $s1, 0x28($sp) +/* AD7648 800604A8 03E00008 */ jr $ra +/* AD764C 800604AC 27BD0078 */ addiu $sp, $sp, 0x78 + +/* AD7650 800604B0 27BDFF88 */ addiu $sp, $sp, -0x78 +/* AD7654 800604B4 AFBF0044 */ sw $ra, 0x44($sp) +/* AD7658 800604B8 AFB70040 */ sw $s7, 0x40($sp) +/* AD765C 800604BC AFB6003C */ sw $s6, 0x3c($sp) +/* AD7660 800604C0 AFB50038 */ sw $s5, 0x38($sp) +/* AD7664 800604C4 AFB40034 */ sw $s4, 0x34($sp) +/* AD7668 800604C8 AFB30030 */ sw $s3, 0x30($sp) +/* AD766C 800604CC AFB2002C */ sw $s2, 0x2c($sp) +/* AD7670 800604D0 AFB10028 */ sw $s1, 0x28($sp) +/* AD7674 800604D4 AFB00024 */ sw $s0, 0x24($sp) +/* AD7678 800604D8 AFA40078 */ sw $a0, 0x78($sp) +/* AD767C 800604DC AFA5007C */ sw $a1, 0x7c($sp) +/* AD7680 800604E0 8CE30018 */ lw $v1, 0x18($a3) +/* AD7684 800604E4 00C0B025 */ move $s6, $a2 +/* AD7688 800604E8 00C09825 */ move $s3, $a2 +/* AD768C 800604EC 1860007A */ blez $v1, .L800606D8 +/* AD7690 800604F0 00E0B825 */ move $s7, $a3 +/* AD7694 800604F4 8CE2001C */ lw $v0, 0x1c($a3) +/* AD7698 800604F8 50400078 */ beql $v0, $zero, .L800606DC +/* AD769C 800604FC 8FBF0044 */ lw $ra, 0x44($sp) +/* AD76A0 80060500 8CCE0018 */ lw $t6, 0x18($a2) +/* AD76A4 80060504 59C00075 */ blezl $t6, .L800606DC +/* AD76A8 80060508 8FBF0044 */ lw $ra, 0x44($sp) +/* AD76AC 8006050C 8CCF001C */ lw $t7, 0x1c($a2) +/* AD76B0 80060510 2414005C */ li $s4, 92 +/* AD76B4 80060514 51E00071 */ beql $t7, $zero, .L800606DC +/* AD76B8 80060518 8FBF0044 */ lw $ra, 0x44($sp) +/* AD76BC 8006051C 00740019 */ multu $v1, $s4 +/* AD76C0 80060520 3C158016 */ lui $s5, %hi(D_8015E420) # $s5, 0x8016 +/* AD76C4 80060524 26B5E420 */ addiu $s5, %lo(D_8015E420) # addiu $s5, $s5, -0x1be0 +/* AD76C8 80060528 00409025 */ move $s2, $v0 +/* AD76CC 8006052C 24110001 */ li $s1, 1 +/* AD76D0 80060530 0000C012 */ mflo $t8 +/* AD76D4 80060534 0058C821 */ addu $t9, $v0, $t8 +/* AD76D8 80060538 0059082B */ sltu $at, $v0, $t9 +/* AD76DC 8006053C 50200067 */ beql $at, $zero, .L800606DC +/* AD76E0 80060540 8FBF0044 */ lw $ra, 0x44($sp) +/* AD76E4 80060544 AFA70084 */ sw $a3, 0x84($sp) +.L80060548: +/* AD76E8 80060548 0C0177D4 */ jal func_8005DF50 +/* AD76EC 8006054C 02402025 */ move $a0, $s2 +/* AD76F0 80060550 50510059 */ beql $v0, $s1, .L800606B8 +/* AD76F4 80060554 8EE80018 */ lw $t0, 0x18($s7) +/* AD76F8 80060558 8EC80018 */ lw $t0, 0x18($s6) +/* AD76FC 8006055C 8ED0001C */ lw $s0, 0x1c($s6) +/* AD7700 80060560 01140019 */ multu $t0, $s4 +/* AD7704 80060564 00004812 */ mflo $t1 +/* AD7708 80060568 02095021 */ addu $t2, $s0, $t1 +/* AD770C 8006056C 020A082B */ sltu $at, $s0, $t2 +/* AD7710 80060570 50200051 */ beql $at, $zero, .L800606B8 +/* AD7714 80060574 8EE80018 */ lw $t0, 0x18($s7) +.L80060578: +/* AD7718 80060578 0C0177CB */ jal func_8005DF2C +/* AD771C 8006057C 02002025 */ move $a0, $s0 +/* AD7720 80060580 10510043 */ beq $v0, $s1, .L80060690 +/* AD7724 80060584 02002025 */ move $a0, $s0 +/* AD7728 80060588 0C0177DD */ jal func_8005DF74 +/* AD772C 8006058C 02402825 */ move $a1, $s2 +/* AD7730 80060590 1051003F */ beq $v0, $s1, .L80060690 +/* AD7734 80060594 26040028 */ addiu $a0, $s0, 0x28 +/* AD7738 80060598 26450028 */ addiu $a1, $s2, 0x28 +/* AD773C 8006059C 0C034041 */ jal func_800D0104 +/* AD7740 800605A0 02A03025 */ move $a2, $s5 +/* AD7744 800605A4 5451003B */ bnel $v0, $s1, .L80060694 +/* AD7748 800605A8 8E6E0018 */ lw $t6, 0x18($s3) +/* AD774C 800605AC C6040028 */ lwc1 $f4, 0x28($s0) +/* AD7750 800605B0 C6060034 */ lwc1 $f6, 0x34($s0) +/* AD7754 800605B4 C60A0040 */ lwc1 $f10, 0x40($s0) +/* AD7758 800605B8 3C018014 */ lui $at, %hi(D_8013AD18) +/* AD775C 800605BC 46062200 */ add.s $f8, $f4, $f6 +/* AD7760 800605C0 C420AD18 */ lwc1 $f0, %lo(D_8013AD18)($at) +/* AD7764 800605C4 8FAB0084 */ lw $t3, 0x84($sp) +/* AD7768 800605C8 27AC0050 */ addiu $t4, $sp, 0x50 +/* AD776C 800605CC 46085400 */ add.s $f16, $f10, $f8 +/* AD7770 800605D0 8FA40078 */ lw $a0, 0x78($sp) +/* AD7774 800605D4 02C02825 */ move $a1, $s6 +/* AD7778 800605D8 02003025 */ move $a2, $s0 +/* AD777C 800605DC 46008482 */ mul.s $f18, $f16, $f0 +/* AD7780 800605E0 27A7005C */ addiu $a3, $sp, 0x5c +/* AD7784 800605E4 E7B2005C */ swc1 $f18, 0x5c($sp) +/* AD7788 800605E8 C6060038 */ lwc1 $f6, 0x38($s0) +/* AD778C 800605EC C604002C */ lwc1 $f4, 0x2c($s0) +/* AD7790 800605F0 C6080044 */ lwc1 $f8, 0x44($s0) +/* AD7794 800605F4 46062280 */ add.s $f10, $f4, $f6 +/* AD7798 800605F8 460A4400 */ add.s $f16, $f8, $f10 +/* AD779C 800605FC 46008482 */ mul.s $f18, $f16, $f0 +/* AD77A0 80060600 E7B20060 */ swc1 $f18, 0x60($sp) +/* AD77A4 80060604 C606003C */ lwc1 $f6, 0x3c($s0) +/* AD77A8 80060608 C6040030 */ lwc1 $f4, 0x30($s0) +/* AD77AC 8006060C C60A0048 */ lwc1 $f10, 0x48($s0) +/* AD77B0 80060610 46062200 */ add.s $f8, $f4, $f6 +/* AD77B4 80060614 46085400 */ add.s $f16, $f10, $f8 +/* AD77B8 80060618 46008482 */ mul.s $f18, $f16, $f0 +/* AD77BC 8006061C E7B20064 */ swc1 $f18, 0x64($sp) +/* AD77C0 80060620 C6460034 */ lwc1 $f6, 0x34($s2) +/* AD77C4 80060624 C6440028 */ lwc1 $f4, 0x28($s2) +/* AD77C8 80060628 C6480040 */ lwc1 $f8, 0x40($s2) +/* AD77CC 8006062C 46062280 */ add.s $f10, $f4, $f6 +/* AD77D0 80060630 460A4400 */ add.s $f16, $f8, $f10 +/* AD77D4 80060634 46008482 */ mul.s $f18, $f16, $f0 +/* AD77D8 80060638 E7B20050 */ swc1 $f18, 0x50($sp) +/* AD77DC 8006063C C6460038 */ lwc1 $f6, 0x38($s2) +/* AD77E0 80060640 C644002C */ lwc1 $f4, 0x2c($s2) +/* AD77E4 80060644 C64A0044 */ lwc1 $f10, 0x44($s2) +/* AD77E8 80060648 46062200 */ add.s $f8, $f4, $f6 +/* AD77EC 8006064C 46085400 */ add.s $f16, $f10, $f8 +/* AD77F0 80060650 46008482 */ mul.s $f18, $f16, $f0 +/* AD77F4 80060654 E7B20054 */ swc1 $f18, 0x54($sp) +/* AD77F8 80060658 C646003C */ lwc1 $f6, 0x3c($s2) +/* AD77FC 8006065C C6440030 */ lwc1 $f4, 0x30($s2) +/* AD7800 80060660 C6480048 */ lwc1 $f8, 0x48($s2) +/* AD7804 80060664 AFB5001C */ sw $s5, 0x1c($sp) +/* AD7808 80060668 46062280 */ add.s $f10, $f4, $f6 +/* AD780C 8006066C AFAC0018 */ sw $t4, 0x18($sp) +/* AD7810 80060670 AFB20014 */ sw $s2, 0x14($sp) +/* AD7814 80060674 AFAB0010 */ sw $t3, 0x10($sp) +/* AD7818 80060678 460A4400 */ add.s $f16, $f8, $f10 +/* AD781C 8006067C 46008482 */ mul.s $f18, $f16, $f0 +/* AD7820 80060680 0C017A07 */ jal func_8005E81C +/* AD7824 80060684 E7B20058 */ swc1 $f18, 0x58($sp) +/* AD7828 80060688 10000014 */ b .L800606DC +/* AD782C 8006068C 8FBF0044 */ lw $ra, 0x44($sp) +.L80060690: +/* AD7830 80060690 8E6E0018 */ lw $t6, 0x18($s3) +.L80060694: +/* AD7834 80060694 8E6D001C */ lw $t5, 0x1c($s3) +/* AD7838 80060698 2610005C */ addiu $s0, $s0, 0x5c +/* AD783C 8006069C 01D40019 */ multu $t6, $s4 +/* AD7840 800606A0 00007812 */ mflo $t7 +/* AD7844 800606A4 01AFC021 */ addu $t8, $t5, $t7 +/* AD7848 800606A8 0218082B */ sltu $at, $s0, $t8 +/* AD784C 800606AC 1420FFB2 */ bnez $at, .L80060578 +/* AD7850 800606B0 00000000 */ nop +/* AD7854 800606B4 8EE80018 */ lw $t0, 0x18($s7) +.L800606B8: +/* AD7858 800606B8 8EF9001C */ lw $t9, 0x1c($s7) +/* AD785C 800606BC 2652005C */ addiu $s2, $s2, 0x5c +/* AD7860 800606C0 01140019 */ multu $t0, $s4 +/* AD7864 800606C4 00004812 */ mflo $t1 +/* AD7868 800606C8 03295021 */ addu $t2, $t9, $t1 +/* AD786C 800606CC 024A082B */ sltu $at, $s2, $t2 +/* AD7870 800606D0 1420FF9D */ bnez $at, .L80060548 +/* AD7874 800606D4 00000000 */ nop +.L800606D8: +/* AD7878 800606D8 8FBF0044 */ lw $ra, 0x44($sp) +.L800606DC: +/* AD787C 800606DC 8FB00024 */ lw $s0, 0x24($sp) +/* AD7880 800606E0 8FB10028 */ lw $s1, 0x28($sp) +/* AD7884 800606E4 8FB2002C */ lw $s2, 0x2c($sp) +/* AD7888 800606E8 8FB30030 */ lw $s3, 0x30($sp) +/* AD788C 800606EC 8FB40034 */ lw $s4, 0x34($sp) +/* AD7890 800606F0 8FB50038 */ lw $s5, 0x38($sp) +/* AD7894 800606F4 8FB6003C */ lw $s6, 0x3c($sp) +/* AD7898 800606F8 8FB70040 */ lw $s7, 0x40($sp) +/* AD789C 800606FC 03E00008 */ jr $ra +/* AD78A0 80060700 27BD0078 */ addiu $sp, $sp, 0x78 + +/* AD78A4 80060704 27BDFF80 */ addiu $sp, $sp, -0x80 +/* AD78A8 80060708 AFBF004C */ sw $ra, 0x4c($sp) +/* AD78AC 8006070C AFBE0048 */ sw $fp, 0x48($sp) +/* AD78B0 80060710 AFB70044 */ sw $s7, 0x44($sp) +/* AD78B4 80060714 AFB60040 */ sw $s6, 0x40($sp) +/* AD78B8 80060718 AFB5003C */ sw $s5, 0x3c($sp) +/* AD78BC 8006071C AFB40038 */ sw $s4, 0x38($sp) +/* AD78C0 80060720 AFB30034 */ sw $s3, 0x34($sp) +/* AD78C4 80060724 AFB20030 */ sw $s2, 0x30($sp) +/* AD78C8 80060728 AFB1002C */ sw $s1, 0x2c($sp) +/* AD78CC 8006072C AFB00028 */ sw $s0, 0x28($sp) +/* AD78D0 80060730 AFA40080 */ sw $a0, 0x80($sp) +/* AD78D4 80060734 AFA50084 */ sw $a1, 0x84($sp) +/* AD78D8 80060738 8CCE0018 */ lw $t6, 0x18($a2) +/* AD78DC 8006073C 00E09825 */ move $s3, $a3 +/* AD78E0 80060740 00C0A825 */ move $s5, $a2 +/* AD78E4 80060744 59C00088 */ blezl $t6, .L80060968 +/* AD78E8 80060748 8FBF004C */ lw $ra, 0x4c($sp) +/* AD78EC 8006074C 8CCF001C */ lw $t7, 0x1c($a2) +/* AD78F0 80060750 24F60018 */ addiu $s6, $a3, 0x18 +/* AD78F4 80060754 02C02025 */ move $a0, $s6 +/* AD78F8 80060758 51E00083 */ beql $t7, $zero, .L80060968 +/* AD78FC 8006075C 8FBF004C */ lw $ra, 0x4c($sp) +/* AD7900 80060760 0C0177D4 */ jal func_8005DF50 +/* AD7904 80060764 AFA60088 */ sw $a2, 0x88($sp) +/* AD7908 80060768 24120001 */ li $s2, 1 +/* AD790C 8006076C 1052007D */ beq $v0, $s2, .L80060964 +/* AD7910 80060770 3C178016 */ lui $s7, %hi(D_8015E440) # $s7, 0x8016 +/* AD7914 80060774 26F7E440 */ addiu $s7, %lo(D_8015E440) # addiu $s7, $s7, -0x1bc0 +/* AD7918 80060778 26710058 */ addiu $s1, $s3, 0x58 +/* AD791C 8006077C 2670004C */ addiu $s0, $s3, 0x4c +/* AD7920 80060780 02003825 */ move $a3, $s0 +/* AD7924 80060784 02202825 */ move $a1, $s1 +/* AD7928 80060788 02E02025 */ move $a0, $s7 +/* AD792C 8006078C 0C0338F0 */ jal func_800CE3C0 +/* AD7930 80060790 26660064 */ addiu $a2, $s3, 0x64 +/* AD7934 80060794 3C1E8016 */ lui $fp, %hi(D_8015E478) # $fp, 0x8016 +/* AD7938 80060798 27DEE478 */ addiu $fp, %lo(D_8015E478) # addiu $fp, $fp, -0x1b88 +/* AD793C 8006079C 03C02025 */ move $a0, $fp +/* AD7940 800607A0 02002825 */ move $a1, $s0 +/* AD7944 800607A4 26660040 */ addiu $a2, $s3, 0x40 +/* AD7948 800607A8 0C0338F0 */ jal func_800CE3C0 +/* AD794C 800607AC 02203825 */ move $a3, $s1 +/* AD7950 800607B0 8FA30088 */ lw $v1, 0x88($sp) +/* AD7954 800607B4 3C148016 */ lui $s4, %hi(D_8015E430) # $s4, 0x8016 +/* AD7958 800607B8 2694E430 */ addiu $s4, %lo(D_8015E430) # addiu $s4, $s4, -0x1bd0 +/* AD795C 800607BC 8C780018 */ lw $t8, 0x18($v1) +/* AD7960 800607C0 8C71001C */ lw $s1, 0x1c($v1) +/* AD7964 800607C4 0018C880 */ sll $t9, $t8, 2 +/* AD7968 800607C8 0338C823 */ subu $t9, $t9, $t8 +/* AD796C 800607CC 0019C8C0 */ sll $t9, $t9, 3 +/* AD7970 800607D0 0338C823 */ subu $t9, $t9, $t8 +/* AD7974 800607D4 0019C880 */ sll $t9, $t9, 2 +/* AD7978 800607D8 02394021 */ addu $t0, $s1, $t9 +/* AD797C 800607DC 0228082B */ sltu $at, $s1, $t0 +/* AD7980 800607E0 50200061 */ beql $at, $zero, .L80060968 +/* AD7984 800607E4 8FBF004C */ lw $ra, 0x4c($sp) +.L800607E8: +/* AD7988 800607E8 0C0177CB */ jal func_8005DF2C +/* AD798C 800607EC 02202025 */ move $a0, $s1 +/* AD7990 800607F0 10520050 */ beq $v0, $s2, .L80060934 +/* AD7994 800607F4 02202025 */ move $a0, $s1 +/* AD7998 800607F8 0C0177DD */ jal func_8005DF74 +/* AD799C 800607FC 02C02825 */ move $a1, $s6 +/* AD79A0 80060800 1052004C */ beq $v0, $s2, .L80060934 +/* AD79A4 80060804 02E02025 */ move $a0, $s7 +/* AD79A8 80060808 26300028 */ addiu $s0, $s1, 0x28 +/* AD79AC 8006080C 02002825 */ move $a1, $s0 +/* AD79B0 80060810 0C034041 */ jal func_800D0104 +/* AD79B4 80060814 02803025 */ move $a2, $s4 +/* AD79B8 80060818 10520006 */ beq $v0, $s2, .L80060834 +/* AD79BC 8006081C 03C02025 */ move $a0, $fp +/* AD79C0 80060820 02002825 */ move $a1, $s0 +/* AD79C4 80060824 0C034041 */ jal func_800D0104 +/* AD79C8 80060828 02803025 */ move $a2, $s4 +/* AD79CC 8006082C 54520042 */ bnel $v0, $s2, .L80060938 +/* AD79D0 80060830 8EAB0018 */ lw $t3, 0x18($s5) +.L80060834: +/* AD79D4 80060834 C6240028 */ lwc1 $f4, 0x28($s1) +/* AD79D8 80060838 C6260034 */ lwc1 $f6, 0x34($s1) +/* AD79DC 8006083C C62A0040 */ lwc1 $f10, 0x40($s1) +/* AD79E0 80060840 3C018014 */ lui $at, %hi(D_8013AD1C) +/* AD79E4 80060844 46062200 */ add.s $f8, $f4, $f6 +/* AD79E8 80060848 C420AD1C */ lwc1 $f0, %lo(D_8013AD1C)($at) +/* AD79EC 8006084C 3C013E80 */ li $at, 0x3E800000 # 0.000000 +/* AD79F0 80060850 44811000 */ mtc1 $at, $f2 +/* AD79F4 80060854 46085400 */ add.s $f16, $f10, $f8 +/* AD79F8 80060858 27A9005C */ addiu $t1, $sp, 0x5c +/* AD79FC 8006085C 8FA40080 */ lw $a0, 0x80($sp) +/* AD7A00 80060860 8FA50088 */ lw $a1, 0x88($sp) +/* AD7A04 80060864 46008482 */ mul.s $f18, $f16, $f0 +/* AD7A08 80060868 02203025 */ move $a2, $s1 +/* AD7A0C 8006086C 27A70068 */ addiu $a3, $sp, 0x68 +/* AD7A10 80060870 E7B20068 */ swc1 $f18, 0x68($sp) +/* AD7A14 80060874 C6260038 */ lwc1 $f6, 0x38($s1) +/* AD7A18 80060878 C624002C */ lwc1 $f4, 0x2c($s1) +/* AD7A1C 8006087C C6280044 */ lwc1 $f8, 0x44($s1) +/* AD7A20 80060880 46062280 */ add.s $f10, $f4, $f6 +/* AD7A24 80060884 460A4400 */ add.s $f16, $f8, $f10 +/* AD7A28 80060888 46008482 */ mul.s $f18, $f16, $f0 +/* AD7A2C 8006088C E7B2006C */ swc1 $f18, 0x6c($sp) +/* AD7A30 80060890 C626003C */ lwc1 $f6, 0x3c($s1) +/* AD7A34 80060894 C6240030 */ lwc1 $f4, 0x30($s1) +/* AD7A38 80060898 C62A0048 */ lwc1 $f10, 0x48($s1) +/* AD7A3C 8006089C 46062200 */ add.s $f8, $f4, $f6 +/* AD7A40 800608A0 46085400 */ add.s $f16, $f10, $f8 +/* AD7A44 800608A4 46008482 */ mul.s $f18, $f16, $f0 +/* AD7A48 800608A8 E7B20070 */ swc1 $f18, 0x70($sp) +/* AD7A4C 800608AC C6660064 */ lwc1 $f6, 0x64($s3) +/* AD7A50 800608B0 C6640058 */ lwc1 $f4, 0x58($s3) +/* AD7A54 800608B4 C668004C */ lwc1 $f8, 0x4c($s3) +/* AD7A58 800608B8 C6720040 */ lwc1 $f18, 0x40($s3) +/* AD7A5C 800608BC 46062280 */ add.s $f10, $f4, $f6 +/* AD7A60 800608C0 46085400 */ add.s $f16, $f10, $f8 +/* AD7A64 800608C4 46128100 */ add.s $f4, $f16, $f18 +/* AD7A68 800608C8 46022182 */ mul.s $f6, $f4, $f2 +/* AD7A6C 800608CC E7A6005C */ swc1 $f6, 0x5c($sp) +/* AD7A70 800608D0 C6680068 */ lwc1 $f8, 0x68($s3) +/* AD7A74 800608D4 C66A005C */ lwc1 $f10, 0x5c($s3) +/* AD7A78 800608D8 C6720050 */ lwc1 $f18, 0x50($s3) +/* AD7A7C 800608DC C6660044 */ lwc1 $f6, 0x44($s3) +/* AD7A80 800608E0 46085400 */ add.s $f16, $f10, $f8 +/* AD7A84 800608E4 46128100 */ add.s $f4, $f16, $f18 +/* AD7A88 800608E8 46062280 */ add.s $f10, $f4, $f6 +/* AD7A8C 800608EC 46025202 */ mul.s $f8, $f10, $f2 +/* AD7A90 800608F0 E7A80060 */ swc1 $f8, 0x60($sp) +/* AD7A94 800608F4 C672006C */ lwc1 $f18, 0x6c($s3) +/* AD7A98 800608F8 C6700060 */ lwc1 $f16, 0x60($s3) +/* AD7A9C 800608FC C6660054 */ lwc1 $f6, 0x54($s3) +/* AD7AA0 80060900 C6680048 */ lwc1 $f8, 0x48($s3) +/* AD7AA4 80060904 46128100 */ add.s $f4, $f16, $f18 +/* AD7AA8 80060908 AFB4001C */ sw $s4, 0x1c($sp) +/* AD7AAC 8006090C AFA90018 */ sw $t1, 0x18($sp) +/* AD7AB0 80060910 AFB60014 */ sw $s6, 0x14($sp) +/* AD7AB4 80060914 46062280 */ add.s $f10, $f4, $f6 +/* AD7AB8 80060918 AFB30010 */ sw $s3, 0x10($sp) +/* AD7ABC 8006091C 46085400 */ add.s $f16, $f10, $f8 +/* AD7AC0 80060920 46028482 */ mul.s $f18, $f16, $f2 +/* AD7AC4 80060924 0C017A07 */ jal func_8005E81C +/* AD7AC8 80060928 E7B20064 */ swc1 $f18, 0x64($sp) +/* AD7ACC 8006092C 1000000E */ b .L80060968 +/* AD7AD0 80060930 8FBF004C */ lw $ra, 0x4c($sp) +.L80060934: +/* AD7AD4 80060934 8EAB0018 */ lw $t3, 0x18($s5) +.L80060938: +/* AD7AD8 80060938 8EAA001C */ lw $t2, 0x1c($s5) +/* AD7ADC 8006093C 2631005C */ addiu $s1, $s1, 0x5c +/* AD7AE0 80060940 000B6080 */ sll $t4, $t3, 2 +/* AD7AE4 80060944 018B6023 */ subu $t4, $t4, $t3 +/* AD7AE8 80060948 000C60C0 */ sll $t4, $t4, 3 +/* AD7AEC 8006094C 018B6023 */ subu $t4, $t4, $t3 +/* AD7AF0 80060950 000C6080 */ sll $t4, $t4, 2 +/* AD7AF4 80060954 014C6821 */ addu $t5, $t2, $t4 +/* AD7AF8 80060958 022D082B */ sltu $at, $s1, $t5 +/* AD7AFC 8006095C 1420FFA2 */ bnez $at, .L800607E8 +/* AD7B00 80060960 00000000 */ nop +.L80060964: +/* AD7B04 80060964 8FBF004C */ lw $ra, 0x4c($sp) +.L80060968: +/* AD7B08 80060968 8FB00028 */ lw $s0, 0x28($sp) +/* AD7B0C 8006096C 8FB1002C */ lw $s1, 0x2c($sp) +/* AD7B10 80060970 8FB20030 */ lw $s2, 0x30($sp) +/* AD7B14 80060974 8FB30034 */ lw $s3, 0x34($sp) +/* AD7B18 80060978 8FB40038 */ lw $s4, 0x38($sp) +/* AD7B1C 8006097C 8FB5003C */ lw $s5, 0x3c($sp) +/* AD7B20 80060980 8FB60040 */ lw $s6, 0x40($sp) +/* AD7B24 80060984 8FB70044 */ lw $s7, 0x44($sp) +/* AD7B28 80060988 8FBE0048 */ lw $fp, 0x48($sp) +/* AD7B2C 8006098C 03E00008 */ jr $ra +/* AD7B30 80060990 27BD0080 */ addiu $sp, $sp, 0x80 + +/* AD7B34 80060994 27BDFF80 */ addiu $sp, $sp, -0x80 +/* AD7B38 80060998 AFBF004C */ sw $ra, 0x4c($sp) +/* AD7B3C 8006099C AFBE0048 */ sw $fp, 0x48($sp) +/* AD7B40 800609A0 AFB70044 */ sw $s7, 0x44($sp) +/* AD7B44 800609A4 AFB60040 */ sw $s6, 0x40($sp) +/* AD7B48 800609A8 AFB5003C */ sw $s5, 0x3c($sp) +/* AD7B4C 800609AC AFB40038 */ sw $s4, 0x38($sp) +/* AD7B50 800609B0 AFB30034 */ sw $s3, 0x34($sp) +/* AD7B54 800609B4 AFB20030 */ sw $s2, 0x30($sp) +/* AD7B58 800609B8 AFB1002C */ sw $s1, 0x2c($sp) +/* AD7B5C 800609BC AFB00028 */ sw $s0, 0x28($sp) +/* AD7B60 800609C0 AFA40080 */ sw $a0, 0x80($sp) +/* AD7B64 800609C4 AFA50084 */ sw $a1, 0x84($sp) +/* AD7B68 800609C8 8CEE0018 */ lw $t6, 0x18($a3) +/* AD7B6C 800609CC 00C0A025 */ move $s4, $a2 +/* AD7B70 800609D0 00E0A825 */ move $s5, $a3 +/* AD7B74 800609D4 59C0008A */ blezl $t6, .L80060C00 +/* AD7B78 800609D8 8FBF004C */ lw $ra, 0x4c($sp) +/* AD7B7C 800609DC 8CEF001C */ lw $t7, 0x1c($a3) +/* AD7B80 800609E0 24D70018 */ addiu $s7, $a2, 0x18 +/* AD7B84 800609E4 02E02025 */ move $a0, $s7 +/* AD7B88 800609E8 51E00085 */ beql $t7, $zero, .L80060C00 +/* AD7B8C 800609EC 8FBF004C */ lw $ra, 0x4c($sp) +/* AD7B90 800609F0 0C0177CB */ jal func_8005DF2C +/* AD7B94 800609F4 AFA7008C */ sw $a3, 0x8c($sp) +/* AD7B98 800609F8 24120001 */ li $s2, 1 +/* AD7B9C 800609FC 1052007F */ beq $v0, $s2, .L80060BFC +/* AD7BA0 80060A00 3C1E8016 */ lui $fp, %hi(D_8015E4C0) # $fp, 0x8016 +/* AD7BA4 80060A04 27DEE4C0 */ addiu $fp, %lo(D_8015E4C0) # addiu $fp, $fp, -0x1b40 +/* AD7BA8 80060A08 26910058 */ addiu $s1, $s4, 0x58 +/* AD7BAC 80060A0C 2690004C */ addiu $s0, $s4, 0x4c +/* AD7BB0 80060A10 02003825 */ move $a3, $s0 +/* AD7BB4 80060A14 02202825 */ move $a1, $s1 +/* AD7BB8 80060A18 03C02025 */ move $a0, $fp +/* AD7BBC 80060A1C 0C0338F0 */ jal func_800CE3C0 +/* AD7BC0 80060A20 26860064 */ addiu $a2, $s4, 0x64 +/* AD7BC4 80060A24 3C048016 */ lui $a0, %hi(D_8015E4F8) # $a0, 0x8016 +/* AD7BC8 80060A28 2484E4F8 */ addiu $a0, %lo(D_8015E4F8) # addiu $a0, $a0, -0x1b08 +/* AD7BCC 80060A2C 02002825 */ move $a1, $s0 +/* AD7BD0 80060A30 26860040 */ addiu $a2, $s4, 0x40 +/* AD7BD4 80060A34 0C0338F0 */ jal func_800CE3C0 +/* AD7BD8 80060A38 02203825 */ move $a3, $s1 +/* AD7BDC 80060A3C 8FA3008C */ lw $v1, 0x8c($sp) +/* AD7BE0 80060A40 2416005C */ li $s6, 92 +/* AD7BE4 80060A44 3C138016 */ lui $s3, %hi(D_8015E4B0) # $s3, 0x8016 +/* AD7BE8 80060A48 8C780018 */ lw $t8, 0x18($v1) +/* AD7BEC 80060A4C 8C71001C */ lw $s1, 0x1c($v1) +/* AD7BF0 80060A50 2673E4B0 */ addiu $s3, %lo(D_8015E4B0) # addiu $s3, $s3, -0x1b50 +/* AD7BF4 80060A54 03160019 */ multu $t8, $s6 +/* AD7BF8 80060A58 0000C812 */ mflo $t9 +/* AD7BFC 80060A5C 02394021 */ addu $t0, $s1, $t9 +/* AD7C00 80060A60 0228082B */ sltu $at, $s1, $t0 +/* AD7C04 80060A64 50200066 */ beql $at, $zero, .L80060C00 +/* AD7C08 80060A68 8FBF004C */ lw $ra, 0x4c($sp) +.L80060A6C: +/* AD7C0C 80060A6C 0C0177D4 */ jal func_8005DF50 +/* AD7C10 80060A70 02202025 */ move $a0, $s1 +/* AD7C14 80060A74 10520058 */ beq $v0, $s2, .L80060BD8 +/* AD7C18 80060A78 02E02025 */ move $a0, $s7 +/* AD7C1C 80060A7C 0C0177DD */ jal func_8005DF74 +/* AD7C20 80060A80 02202825 */ move $a1, $s1 +/* AD7C24 80060A84 10520054 */ beq $v0, $s2, .L80060BD8 +/* AD7C28 80060A88 03C02025 */ move $a0, $fp +/* AD7C2C 80060A8C 26300028 */ addiu $s0, $s1, 0x28 +/* AD7C30 80060A90 02002825 */ move $a1, $s0 +/* AD7C34 80060A94 0C034041 */ jal func_800D0104 +/* AD7C38 80060A98 02603025 */ move $a2, $s3 +/* AD7C3C 80060A9C 10520007 */ beq $v0, $s2, .L80060ABC +/* AD7C40 80060AA0 3C048016 */ lui $a0, %hi(D_8015E4F8) # $a0, 0x8016 +/* AD7C44 80060AA4 2484E4F8 */ addiu $a0, %lo(D_8015E4F8) # addiu $a0, $a0, -0x1b08 +/* AD7C48 80060AA8 02002825 */ move $a1, $s0 +/* AD7C4C 80060AAC 0C034041 */ jal func_800D0104 +/* AD7C50 80060AB0 02603025 */ move $a2, $s3 +/* AD7C54 80060AB4 54520049 */ bnel $v0, $s2, .L80060BDC +/* AD7C58 80060AB8 8EAC0018 */ lw $t4, 0x18($s5) +.L80060ABC: +/* AD7C5C 80060ABC 8FA40080 */ lw $a0, 0x80($sp) +/* AD7C60 80060AC0 02802825 */ move $a1, $s4 +/* AD7C64 80060AC4 0C017486 */ jal func_8005D218 +/* AD7C68 80060AC8 02603025 */ move $a2, $s3 +/* AD7C6C 80060ACC 50400043 */ beql $v0, $zero, .L80060BDC +/* AD7C70 80060AD0 8EAC0018 */ lw $t4, 0x18($s5) +/* AD7C74 80060AD4 C6240028 */ lwc1 $f4, 0x28($s1) +/* AD7C78 80060AD8 C6260034 */ lwc1 $f6, 0x34($s1) +/* AD7C7C 80060ADC C62A0040 */ lwc1 $f10, 0x40($s1) +/* AD7C80 80060AE0 3C018014 */ lui $at, %hi(D_8013AD20) +/* AD7C84 80060AE4 46062200 */ add.s $f8, $f4, $f6 +/* AD7C88 80060AE8 C420AD20 */ lwc1 $f0, %lo(D_8013AD20)($at) +/* AD7C8C 80060AEC 3C013E80 */ li $at, 0x3E800000 # 0.000000 +/* AD7C90 80060AF0 44811000 */ mtc1 $at, $f2 +/* AD7C94 80060AF4 46085400 */ add.s $f16, $f10, $f8 +/* AD7C98 80060AF8 8FA9008C */ lw $t1, 0x8c($sp) +/* AD7C9C 80060AFC 27AA005C */ addiu $t2, $sp, 0x5c +/* AD7CA0 80060B00 8FA40080 */ lw $a0, 0x80($sp) +/* AD7CA4 80060B04 46008482 */ mul.s $f18, $f16, $f0 +/* AD7CA8 80060B08 02802825 */ move $a1, $s4 +/* AD7CAC 80060B0C 02E03025 */ move $a2, $s7 +/* AD7CB0 80060B10 27A70068 */ addiu $a3, $sp, 0x68 +/* AD7CB4 80060B14 E7B2005C */ swc1 $f18, 0x5c($sp) +/* AD7CB8 80060B18 C6260038 */ lwc1 $f6, 0x38($s1) +/* AD7CBC 80060B1C C624002C */ lwc1 $f4, 0x2c($s1) +/* AD7CC0 80060B20 C6280044 */ lwc1 $f8, 0x44($s1) +/* AD7CC4 80060B24 46062280 */ add.s $f10, $f4, $f6 +/* AD7CC8 80060B28 460A4400 */ add.s $f16, $f8, $f10 +/* AD7CCC 80060B2C 46008482 */ mul.s $f18, $f16, $f0 +/* AD7CD0 80060B30 E7B20060 */ swc1 $f18, 0x60($sp) +/* AD7CD4 80060B34 C626003C */ lwc1 $f6, 0x3c($s1) +/* AD7CD8 80060B38 C6240030 */ lwc1 $f4, 0x30($s1) +/* AD7CDC 80060B3C C62A0048 */ lwc1 $f10, 0x48($s1) +/* AD7CE0 80060B40 46062200 */ add.s $f8, $f4, $f6 +/* AD7CE4 80060B44 46085400 */ add.s $f16, $f10, $f8 +/* AD7CE8 80060B48 46008482 */ mul.s $f18, $f16, $f0 +/* AD7CEC 80060B4C E7B20064 */ swc1 $f18, 0x64($sp) +/* AD7CF0 80060B50 C6860064 */ lwc1 $f6, 0x64($s4) +/* AD7CF4 80060B54 C6840058 */ lwc1 $f4, 0x58($s4) +/* AD7CF8 80060B58 C688004C */ lwc1 $f8, 0x4c($s4) +/* AD7CFC 80060B5C C6920040 */ lwc1 $f18, 0x40($s4) +/* AD7D00 80060B60 46062280 */ add.s $f10, $f4, $f6 +/* AD7D04 80060B64 46085400 */ add.s $f16, $f10, $f8 +/* AD7D08 80060B68 46128100 */ add.s $f4, $f16, $f18 +/* AD7D0C 80060B6C 46022182 */ mul.s $f6, $f4, $f2 +/* AD7D10 80060B70 E7A60068 */ swc1 $f6, 0x68($sp) +/* AD7D14 80060B74 C6880068 */ lwc1 $f8, 0x68($s4) +/* AD7D18 80060B78 C68A005C */ lwc1 $f10, 0x5c($s4) +/* AD7D1C 80060B7C C6920050 */ lwc1 $f18, 0x50($s4) +/* AD7D20 80060B80 C6860044 */ lwc1 $f6, 0x44($s4) +/* AD7D24 80060B84 46085400 */ add.s $f16, $f10, $f8 +/* AD7D28 80060B88 46128100 */ add.s $f4, $f16, $f18 +/* AD7D2C 80060B8C 46062280 */ add.s $f10, $f4, $f6 +/* AD7D30 80060B90 46025202 */ mul.s $f8, $f10, $f2 +/* AD7D34 80060B94 E7A8006C */ swc1 $f8, 0x6c($sp) +/* AD7D38 80060B98 C692006C */ lwc1 $f18, 0x6c($s4) +/* AD7D3C 80060B9C C6900060 */ lwc1 $f16, 0x60($s4) +/* AD7D40 80060BA0 C6860054 */ lwc1 $f6, 0x54($s4) +/* AD7D44 80060BA4 C6880048 */ lwc1 $f8, 0x48($s4) +/* AD7D48 80060BA8 46128100 */ add.s $f4, $f16, $f18 +/* AD7D4C 80060BAC AFB3001C */ sw $s3, 0x1c($sp) +/* AD7D50 80060BB0 AFAA0018 */ sw $t2, 0x18($sp) +/* AD7D54 80060BB4 AFB10014 */ sw $s1, 0x14($sp) +/* AD7D58 80060BB8 46062280 */ add.s $f10, $f4, $f6 +/* AD7D5C 80060BBC AFA90010 */ sw $t1, 0x10($sp) +/* AD7D60 80060BC0 46085400 */ add.s $f16, $f10, $f8 +/* AD7D64 80060BC4 46028482 */ mul.s $f18, $f16, $f2 +/* AD7D68 80060BC8 0C017A07 */ jal func_8005E81C +/* AD7D6C 80060BCC E7B20070 */ swc1 $f18, 0x70($sp) +/* AD7D70 80060BD0 1000000B */ b .L80060C00 +/* AD7D74 80060BD4 8FBF004C */ lw $ra, 0x4c($sp) +.L80060BD8: +/* AD7D78 80060BD8 8EAC0018 */ lw $t4, 0x18($s5) +.L80060BDC: +/* AD7D7C 80060BDC 8EAB001C */ lw $t3, 0x1c($s5) +/* AD7D80 80060BE0 2631005C */ addiu $s1, $s1, 0x5c +/* AD7D84 80060BE4 01960019 */ multu $t4, $s6 +/* AD7D88 80060BE8 00006812 */ mflo $t5 +/* AD7D8C 80060BEC 016D7021 */ addu $t6, $t3, $t5 +/* AD7D90 80060BF0 022E082B */ sltu $at, $s1, $t6 +/* AD7D94 80060BF4 1420FF9D */ bnez $at, .L80060A6C +/* AD7D98 80060BF8 00000000 */ nop +.L80060BFC: +/* AD7D9C 80060BFC 8FBF004C */ lw $ra, 0x4c($sp) +.L80060C00: +/* AD7DA0 80060C00 8FB00028 */ lw $s0, 0x28($sp) +/* AD7DA4 80060C04 8FB1002C */ lw $s1, 0x2c($sp) +/* AD7DA8 80060C08 8FB20030 */ lw $s2, 0x30($sp) +/* AD7DAC 80060C0C 8FB30034 */ lw $s3, 0x34($sp) +/* AD7DB0 80060C10 8FB40038 */ lw $s4, 0x38($sp) +/* AD7DB4 80060C14 8FB5003C */ lw $s5, 0x3c($sp) +/* AD7DB8 80060C18 8FB60040 */ lw $s6, 0x40($sp) +/* AD7DBC 80060C1C 8FB70044 */ lw $s7, 0x44($sp) +/* AD7DC0 80060C20 8FBE0048 */ lw $fp, 0x48($sp) +/* AD7DC4 80060C24 03E00008 */ jr $ra +/* AD7DC8 80060C28 27BD0080 */ addiu $sp, $sp, 0x80 + +/* AD7DCC 80060C2C 27BDFF78 */ addiu $sp, $sp, -0x88 +/* AD7DD0 80060C30 AFB60040 */ sw $s6, 0x40($sp) +/* AD7DD4 80060C34 0080B025 */ move $s6, $a0 +/* AD7DD8 80060C38 AFBF004C */ sw $ra, 0x4c($sp) +/* AD7DDC 80060C3C AFB70044 */ sw $s7, 0x44($sp) +/* AD7DE0 80060C40 AFB40038 */ sw $s4, 0x38($sp) +/* AD7DE4 80060C44 24C40018 */ addiu $a0, $a2, 0x18 +/* AD7DE8 80060C48 00C0A025 */ move $s4, $a2 +/* AD7DEC 80060C4C 00E0B825 */ move $s7, $a3 +/* AD7DF0 80060C50 AFBE0048 */ sw $fp, 0x48($sp) +/* AD7DF4 80060C54 AFB5003C */ sw $s5, 0x3c($sp) +/* AD7DF8 80060C58 AFB30034 */ sw $s3, 0x34($sp) +/* AD7DFC 80060C5C AFB20030 */ sw $s2, 0x30($sp) +/* AD7E00 80060C60 AFB1002C */ sw $s1, 0x2c($sp) +/* AD7E04 80060C64 AFB00028 */ sw $s0, 0x28($sp) +/* AD7E08 80060C68 AFA5008C */ sw $a1, 0x8c($sp) +/* AD7E0C 80060C6C 0C0177CB */ jal func_8005DF2C +/* AD7E10 80060C70 AFA4005C */ sw $a0, 0x5c($sp) +/* AD7E14 80060C74 24150001 */ li $s5, 1 +/* AD7E18 80060C78 10550084 */ beq $v0, $s5, .L80060E8C +/* AD7E1C 80060C7C 26E40018 */ addiu $a0, $s7, 0x18 +/* AD7E20 80060C80 0C0177D4 */ jal func_8005DF50 +/* AD7E24 80060C84 AFA40050 */ sw $a0, 0x50($sp) +/* AD7E28 80060C88 10550080 */ beq $v0, $s5, .L80060E8C +/* AD7E2C 80060C8C 8FA4005C */ lw $a0, 0x5c($sp) +/* AD7E30 80060C90 0C0177DD */ jal func_8005DF74 +/* AD7E34 80060C94 8FA50050 */ lw $a1, 0x50($sp) +/* AD7E38 80060C98 1055007C */ beq $v0, $s5, .L80060E8C +/* AD7E3C 80060C9C 3C048016 */ lui $a0, %hi(D_8015E5A8) # $a0, 0x8016 +/* AD7E40 80060CA0 26900058 */ addiu $s0, $s4, 0x58 +/* AD7E44 80060CA4 2691004C */ addiu $s1, $s4, 0x4c +/* AD7E48 80060CA8 02203825 */ move $a3, $s1 +/* AD7E4C 80060CAC 02002825 */ move $a1, $s0 +/* AD7E50 80060CB0 2484E5A8 */ addiu $a0, %lo(D_8015E5A8) # addiu $a0, $a0, -0x1a58 +/* AD7E54 80060CB4 0C0338F0 */ jal func_800CE3C0 +/* AD7E58 80060CB8 26860064 */ addiu $a2, $s4, 0x64 +/* AD7E5C 80060CBC 3C048016 */ lui $a0, %hi(D_8015E5DC) # $a0, 0x8016 +/* AD7E60 80060CC0 2484E5DC */ addiu $a0, %lo(D_8015E5DC) # addiu $a0, $a0, -0x1a24 +/* AD7E64 80060CC4 02002825 */ move $a1, $s0 +/* AD7E68 80060CC8 02203025 */ move $a2, $s1 +/* AD7E6C 80060CCC 0C0338F0 */ jal func_800CE3C0 +/* AD7E70 80060CD0 26870040 */ addiu $a3, $s4, 0x40 +/* AD7E74 80060CD4 3C048016 */ lui $a0, %hi(D_8015E530) # $a0, 0x8016 +/* AD7E78 80060CD8 26F00058 */ addiu $s0, $s7, 0x58 +/* AD7E7C 80060CDC 26F1004C */ addiu $s1, $s7, 0x4c +/* AD7E80 80060CE0 02203825 */ move $a3, $s1 +/* AD7E84 80060CE4 02002825 */ move $a1, $s0 +/* AD7E88 80060CE8 2484E530 */ addiu $a0, %lo(D_8015E530) # addiu $a0, $a0, -0x1ad0 +/* AD7E8C 80060CEC 0C0338F0 */ jal func_800CE3C0 +/* AD7E90 80060CF0 26E60064 */ addiu $a2, $s7, 0x64 +/* AD7E94 80060CF4 3C048016 */ lui $a0, %hi(D_8015E564) # $a0, 0x8016 +/* AD7E98 80060CF8 2484E564 */ addiu $a0, %lo(D_8015E564) # addiu $a0, $a0, -0x1a9c +/* AD7E9C 80060CFC 02002825 */ move $a1, $s0 +/* AD7EA0 80060D00 02203025 */ move $a2, $s1 +/* AD7EA4 80060D04 0C0338F0 */ jal func_800CE3C0 +/* AD7EA8 80060D08 26E70040 */ addiu $a3, $s7, 0x40 +/* AD7EAC 80060D0C 3C128016 */ lui $s2, %hi(D_8015E530) # $s2, 0x8016 +/* AD7EB0 80060D10 3C1E8016 */ lui $fp, %hi(D_8015E598) # $fp, 0x8016 +/* AD7EB4 80060D14 3C138016 */ lui $s3, %hi(D_8015E610) # $s3, 0x8016 +/* AD7EB8 80060D18 3C118016 */ lui $s1, %hi(D_8015E598) # $s1, 0x8016 +/* AD7EBC 80060D1C 2631E598 */ addiu $s1, %lo(D_8015E598) # addiu $s1, $s1, -0x1a68 +/* AD7EC0 80060D20 2673E610 */ addiu $s3, %lo(D_8015E610) # addiu $s3, $s3, -0x19f0 +/* AD7EC4 80060D24 27DEE598 */ addiu $fp, %lo(D_8015E598) # addiu $fp, $fp, -0x1a68 +/* AD7EC8 80060D28 2652E530 */ addiu $s2, %lo(D_8015E530) # addiu $s2, $s2, -0x1ad0 +.L80060D2C: +/* AD7ECC 80060D2C 3C108016 */ lui $s0, %hi(D_8015E5A8) # $s0, 0x8016 +/* AD7ED0 80060D30 2610E5A8 */ addiu $s0, %lo(D_8015E5A8) # addiu $s0, $s0, -0x1a58 +/* AD7ED4 80060D34 02002025 */ move $a0, $s0 +.L80060D38: +/* AD7ED8 80060D38 02402825 */ move $a1, $s2 +/* AD7EDC 80060D3C 0C034041 */ jal func_800D0104 +/* AD7EE0 80060D40 02203025 */ move $a2, $s1 +/* AD7EE4 80060D44 1455004B */ bne $v0, $s5, .L80060E74 +/* AD7EE8 80060D48 02C02025 */ move $a0, $s6 +/* AD7EEC 80060D4C 02802825 */ move $a1, $s4 +/* AD7EF0 80060D50 0C017486 */ jal func_8005D218 +/* AD7EF4 80060D54 02203025 */ move $a2, $s1 +/* AD7EF8 80060D58 50400047 */ beql $v0, $zero, .L80060E78 +/* AD7EFC 80060D5C 26100034 */ addiu $s0, $s0, 0x34 +/* AD7F00 80060D60 C6840058 */ lwc1 $f4, 0x58($s4) +/* AD7F04 80060D64 C6860064 */ lwc1 $f6, 0x64($s4) +/* AD7F08 80060D68 C68A004C */ lwc1 $f10, 0x4c($s4) +/* AD7F0C 80060D6C C6920040 */ lwc1 $f18, 0x40($s4) +/* AD7F10 80060D70 46062200 */ add.s $f8, $f4, $f6 +/* AD7F14 80060D74 3C013E80 */ li $at, 0x3E800000 # 0.000000 +/* AD7F18 80060D78 44810000 */ mtc1 $at, $f0 +/* AD7F1C 80060D7C 8FAE0050 */ lw $t6, 0x50($sp) +/* AD7F20 80060D80 460A4400 */ add.s $f16, $f8, $f10 +/* AD7F24 80060D84 27AF0060 */ addiu $t7, $sp, 0x60 +/* AD7F28 80060D88 02C02025 */ move $a0, $s6 +/* AD7F2C 80060D8C 02802825 */ move $a1, $s4 +/* AD7F30 80060D90 46128100 */ add.s $f4, $f16, $f18 +/* AD7F34 80060D94 8FA6005C */ lw $a2, 0x5c($sp) +/* AD7F38 80060D98 27A7006C */ addiu $a3, $sp, 0x6c +/* AD7F3C 80060D9C 46002182 */ mul.s $f6, $f4, $f0 +/* AD7F40 80060DA0 E7A6006C */ swc1 $f6, 0x6c($sp) +/* AD7F44 80060DA4 C68A0068 */ lwc1 $f10, 0x68($s4) +/* AD7F48 80060DA8 C688005C */ lwc1 $f8, 0x5c($s4) +/* AD7F4C 80060DAC C6920050 */ lwc1 $f18, 0x50($s4) +/* AD7F50 80060DB0 C6860044 */ lwc1 $f6, 0x44($s4) +/* AD7F54 80060DB4 460A4400 */ add.s $f16, $f8, $f10 +/* AD7F58 80060DB8 46128100 */ add.s $f4, $f16, $f18 +/* AD7F5C 80060DBC 46062200 */ add.s $f8, $f4, $f6 +/* AD7F60 80060DC0 46004282 */ mul.s $f10, $f8, $f0 +/* AD7F64 80060DC4 E7AA0070 */ swc1 $f10, 0x70($sp) +/* AD7F68 80060DC8 C692006C */ lwc1 $f18, 0x6c($s4) +/* AD7F6C 80060DCC C6900060 */ lwc1 $f16, 0x60($s4) +/* AD7F70 80060DD0 C6860054 */ lwc1 $f6, 0x54($s4) +/* AD7F74 80060DD4 C68A0048 */ lwc1 $f10, 0x48($s4) +/* AD7F78 80060DD8 46128100 */ add.s $f4, $f16, $f18 +/* AD7F7C 80060DDC 46062200 */ add.s $f8, $f4, $f6 +/* AD7F80 80060DE0 460A4400 */ add.s $f16, $f8, $f10 +/* AD7F84 80060DE4 46008482 */ mul.s $f18, $f16, $f0 +/* AD7F88 80060DE8 E7B20074 */ swc1 $f18, 0x74($sp) +/* AD7F8C 80060DEC C6E60064 */ lwc1 $f6, 0x64($s7) +/* AD7F90 80060DF0 C6E40058 */ lwc1 $f4, 0x58($s7) +/* AD7F94 80060DF4 C6EA004C */ lwc1 $f10, 0x4c($s7) +/* AD7F98 80060DF8 C6F20040 */ lwc1 $f18, 0x40($s7) +/* AD7F9C 80060DFC 46062200 */ add.s $f8, $f4, $f6 +/* AD7FA0 80060E00 460A4400 */ add.s $f16, $f8, $f10 +/* AD7FA4 80060E04 46128100 */ add.s $f4, $f16, $f18 +/* AD7FA8 80060E08 46002182 */ mul.s $f6, $f4, $f0 +/* AD7FAC 80060E0C E7A60060 */ swc1 $f6, 0x60($sp) +/* AD7FB0 80060E10 C6EA0068 */ lwc1 $f10, 0x68($s7) +/* AD7FB4 80060E14 C6E8005C */ lwc1 $f8, 0x5c($s7) +/* AD7FB8 80060E18 C6F20050 */ lwc1 $f18, 0x50($s7) +/* AD7FBC 80060E1C C6E60044 */ lwc1 $f6, 0x44($s7) +/* AD7FC0 80060E20 460A4400 */ add.s $f16, $f8, $f10 +/* AD7FC4 80060E24 46128100 */ add.s $f4, $f16, $f18 +/* AD7FC8 80060E28 46062200 */ add.s $f8, $f4, $f6 +/* AD7FCC 80060E2C 46004282 */ mul.s $f10, $f8, $f0 +/* AD7FD0 80060E30 E7AA0064 */ swc1 $f10, 0x64($sp) +/* AD7FD4 80060E34 C6F2006C */ lwc1 $f18, 0x6c($s7) +/* AD7FD8 80060E38 C6F00060 */ lwc1 $f16, 0x60($s7) +/* AD7FDC 80060E3C C6E60054 */ lwc1 $f6, 0x54($s7) +/* AD7FE0 80060E40 C6EA0048 */ lwc1 $f10, 0x48($s7) +/* AD7FE4 80060E44 46128100 */ add.s $f4, $f16, $f18 +/* AD7FE8 80060E48 AFB1001C */ sw $s1, 0x1c($sp) +/* AD7FEC 80060E4C AFAF0018 */ sw $t7, 0x18($sp) +/* AD7FF0 80060E50 AFB70010 */ sw $s7, 0x10($sp) +/* AD7FF4 80060E54 46062200 */ add.s $f8, $f4, $f6 +/* AD7FF8 80060E58 AFAE0014 */ sw $t6, 0x14($sp) +/* AD7FFC 80060E5C 460A4400 */ add.s $f16, $f8, $f10 +/* AD8000 80060E60 46008482 */ mul.s $f18, $f16, $f0 +/* AD8004 80060E64 0C017A07 */ jal func_8005E81C +/* AD8008 80060E68 E7B20068 */ swc1 $f18, 0x68($sp) +/* AD800C 80060E6C 10000008 */ b .L80060E90 +/* AD8010 80060E70 8FBF004C */ lw $ra, 0x4c($sp) +.L80060E74: +/* AD8014 80060E74 26100034 */ addiu $s0, $s0, 0x34 +.L80060E78: +/* AD8018 80060E78 5613FFAF */ bnel $s0, $s3, .L80060D38 +/* AD801C 80060E7C 02002025 */ move $a0, $s0 +/* AD8020 80060E80 26520034 */ addiu $s2, $s2, 0x34 +/* AD8024 80060E84 165EFFA9 */ bne $s2, $fp, .L80060D2C +/* AD8028 80060E88 00000000 */ nop +.L80060E8C: +/* AD802C 80060E8C 8FBF004C */ lw $ra, 0x4c($sp) +.L80060E90: +/* AD8030 80060E90 8FB00028 */ lw $s0, 0x28($sp) +/* AD8034 80060E94 8FB1002C */ lw $s1, 0x2c($sp) +/* AD8038 80060E98 8FB20030 */ lw $s2, 0x30($sp) +/* AD803C 80060E9C 8FB30034 */ lw $s3, 0x34($sp) +/* AD8040 80060EA0 8FB40038 */ lw $s4, 0x38($sp) +/* AD8044 80060EA4 8FB5003C */ lw $s5, 0x3c($sp) +/* AD8048 80060EA8 8FB60040 */ lw $s6, 0x40($sp) +/* AD804C 80060EAC 8FB70044 */ lw $s7, 0x44($sp) +/* AD8050 80060EB0 8FBE0048 */ lw $fp, 0x48($sp) +/* AD8054 80060EB4 03E00008 */ jr $ra +/* AD8058 80060EB8 27BD0088 */ addiu $sp, $sp, 0x88 + +/* AD805C 80060EBC 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* AD8060 80060EC0 AFBF001C */ sw $ra, 0x1c($sp) +/* AD8064 80060EC4 AFA40038 */ sw $a0, 0x38($sp) +/* AD8068 80060EC8 AFA5003C */ sw $a1, 0x3c($sp) +/* AD806C 80060ECC 8CCE0018 */ lw $t6, 0x18($a2) +/* AD8070 80060ED0 8CC2001C */ lw $v0, 0x1c($a2) +/* AD8074 80060ED4 00C03825 */ move $a3, $a2 +/* AD8078 80060ED8 000E7980 */ sll $t7, $t6, 6 +/* AD807C 80060EDC 004FC021 */ addu $t8, $v0, $t7 +/* AD8080 80060EE0 0058082B */ sltu $at, $v0, $t8 +/* AD8084 80060EE4 10200027 */ beqz $at, .L80060F84 +/* AD8088 80060EE8 00C02825 */ move $a1, $a2 +/* AD808C 80060EEC 90590016 */ lbu $t9, 0x16($v0) +.L80060EF0: +/* AD8090 80060EF0 33280080 */ andi $t0, $t9, 0x80 +/* AD8094 80060EF4 5100001C */ beql $t0, $zero, .L80060F68 +/* AD8098 80060EF8 8CAF0018 */ lw $t7, 0x18($a1) +/* AD809C 80060EFC 8C430024 */ lw $v1, 0x24($v0) +/* AD80A0 80060F00 50600019 */ beql $v1, $zero, .L80060F68 +/* AD80A4 80060F04 8CAF0018 */ lw $t7, 0x18($a1) +/* AD80A8 80060F08 90690015 */ lbu $t1, 0x15($v1) +/* AD80AC 80060F0C 312A0040 */ andi $t2, $t1, 0x40 +/* AD80B0 80060F10 15400014 */ bnez $t2, .L80060F64 +/* AD80B4 80060F14 27A40024 */ addiu $a0, $sp, 0x24 +/* AD80B8 80060F18 2445000E */ addiu $a1, $v0, 0xe +/* AD80BC 80060F1C AFA20030 */ sw $v0, 0x30($sp) +/* AD80C0 80060F20 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD80C4 80060F24 AFA70040 */ sw $a3, 0x40($sp) +/* AD80C8 80060F28 8FA20030 */ lw $v0, 0x30($sp) +/* AD80CC 80060F2C 27AB0024 */ addiu $t3, $sp, 0x24 +/* AD80D0 80060F30 8FA70040 */ lw $a3, 0x40($sp) +/* AD80D4 80060F34 8C45001C */ lw $a1, 0x1c($v0) +/* AD80D8 80060F38 8C460024 */ lw $a2, 0x24($v0) +/* AD80DC 80060F3C AFAB0014 */ sw $t3, 0x14($sp) +/* AD80E0 80060F40 8FA40038 */ lw $a0, 0x38($sp) +/* AD80E4 80060F44 0C017981 */ jal func_8005E604 +/* AD80E8 80060F48 AFA20010 */ sw $v0, 0x10($sp) +/* AD80EC 80060F4C 8FA20030 */ lw $v0, 0x30($sp) +/* AD80F0 80060F50 8C430024 */ lw $v1, 0x24($v0) +/* AD80F4 80060F54 906C0015 */ lbu $t4, 0x15($v1) +/* AD80F8 80060F58 358D0040 */ ori $t5, $t4, 0x40 +/* AD80FC 80060F5C 10000009 */ b .L80060F84 +/* AD8100 80060F60 A06D0015 */ sb $t5, 0x15($v1) +.L80060F64: +/* AD8104 80060F64 8CAF0018 */ lw $t7, 0x18($a1) +.L80060F68: +/* AD8108 80060F68 8CAE001C */ lw $t6, 0x1c($a1) +/* AD810C 80060F6C 24420040 */ addiu $v0, $v0, 0x40 +/* AD8110 80060F70 000FC180 */ sll $t8, $t7, 6 +/* AD8114 80060F74 01D8C821 */ addu $t9, $t6, $t8 +/* AD8118 80060F78 0059082B */ sltu $at, $v0, $t9 +/* AD811C 80060F7C 5420FFDC */ bnezl $at, .L80060EF0 +/* AD8120 80060F80 90590016 */ lbu $t9, 0x16($v0) +.L80060F84: +/* AD8124 80060F84 8FBF001C */ lw $ra, 0x1c($sp) +/* AD8128 80060F88 27BD0038 */ addiu $sp, $sp, 0x38 +/* AD812C 80060F8C 03E00008 */ jr $ra +/* AD8130 80060F90 00000000 */ nop + +/* AD8134 80060F94 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* AD8138 80060F98 AFBF001C */ sw $ra, 0x1c($sp) +/* AD813C 80060F9C AFA40038 */ sw $a0, 0x38($sp) +/* AD8140 80060FA0 AFA5003C */ sw $a1, 0x3c($sp) +/* AD8144 80060FA4 90CE002E */ lbu $t6, 0x2e($a2) +/* AD8148 80060FA8 31CF0080 */ andi $t7, $t6, 0x80 +/* AD814C 80060FAC 51E0001B */ beql $t7, $zero, .L8006101C +/* AD8150 80060FB0 8FBF001C */ lw $ra, 0x1c($sp) +/* AD8154 80060FB4 8CC2003C */ lw $v0, 0x3c($a2) +/* AD8158 80060FB8 50400018 */ beql $v0, $zero, .L8006101C +/* AD815C 80060FBC 8FBF001C */ lw $ra, 0x1c($sp) +/* AD8160 80060FC0 90580015 */ lbu $t8, 0x15($v0) +/* AD8164 80060FC4 27A40028 */ addiu $a0, $sp, 0x28 +/* AD8168 80060FC8 24C50026 */ addiu $a1, $a2, 0x26 +/* AD816C 80060FCC 33190040 */ andi $t9, $t8, 0x40 +/* AD8170 80060FD0 57200012 */ bnezl $t9, .L8006101C +/* AD8174 80060FD4 8FBF001C */ lw $ra, 0x1c($sp) +/* AD8178 80060FD8 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD817C 80060FDC AFA60040 */ sw $a2, 0x40($sp) +/* AD8180 80060FE0 8FA70040 */ lw $a3, 0x40($sp) +/* AD8184 80060FE4 27A90028 */ addiu $t1, $sp, 0x28 +/* AD8188 80060FE8 8FA40038 */ lw $a0, 0x38($sp) +/* AD818C 80060FEC 8CE50034 */ lw $a1, 0x34($a3) +/* AD8190 80060FF0 8CE6003C */ lw $a2, 0x3c($a3) +/* AD8194 80060FF4 24E80018 */ addiu $t0, $a3, 0x18 +/* AD8198 80060FF8 AFA80010 */ sw $t0, 0x10($sp) +/* AD819C 80060FFC 0C017981 */ jal func_8005E604 +/* AD81A0 80061000 AFA90014 */ sw $t1, 0x14($sp) +/* AD81A4 80061004 8FA70040 */ lw $a3, 0x40($sp) +/* AD81A8 80061008 8CE2003C */ lw $v0, 0x3c($a3) +/* AD81AC 8006100C 904A0015 */ lbu $t2, 0x15($v0) +/* AD81B0 80061010 354B0040 */ ori $t3, $t2, 0x40 +/* AD81B4 80061014 A04B0015 */ sb $t3, 0x15($v0) +/* AD81B8 80061018 8FBF001C */ lw $ra, 0x1c($sp) +.L8006101C: +/* AD81BC 8006101C 27BD0038 */ addiu $sp, $sp, 0x38 +/* AD81C0 80061020 03E00008 */ jr $ra +/* AD81C4 80061024 00000000 */ nop + +/* AD81C8 80061028 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* AD81CC 8006102C AFBF001C */ sw $ra, 0x1c($sp) +/* AD81D0 80061030 AFA40038 */ sw $a0, 0x38($sp) +/* AD81D4 80061034 AFA5003C */ sw $a1, 0x3c($sp) +/* AD81D8 80061038 8CCE0018 */ lw $t6, 0x18($a2) +/* AD81DC 8006103C 2407005C */ li $a3, 92 +/* AD81E0 80061040 8CC2001C */ lw $v0, 0x1c($a2) +/* AD81E4 80061044 01C70019 */ multu $t6, $a3 +/* AD81E8 80061048 00C02825 */ move $a1, $a2 +/* AD81EC 8006104C 00007812 */ mflo $t7 +/* AD81F0 80061050 004FC021 */ addu $t8, $v0, $t7 +/* AD81F4 80061054 0058082B */ sltu $at, $v0, $t8 +/* AD81F8 80061058 50200029 */ beql $at, $zero, .L80061100 +/* AD81FC 8006105C 8FBF001C */ lw $ra, 0x1c($sp) +/* AD8200 80061060 90590016 */ lbu $t9, 0x16($v0) +.L80061064: +/* AD8204 80061064 33280080 */ andi $t0, $t9, 0x80 +/* AD8208 80061068 5100001C */ beql $t0, $zero, .L800610DC +/* AD820C 8006106C 8CAF0018 */ lw $t7, 0x18($a1) +/* AD8210 80061070 8C430024 */ lw $v1, 0x24($v0) +/* AD8214 80061074 50600019 */ beql $v1, $zero, .L800610DC +/* AD8218 80061078 8CAF0018 */ lw $t7, 0x18($a1) +/* AD821C 8006107C 90690015 */ lbu $t1, 0x15($v1) +/* AD8220 80061080 312A0040 */ andi $t2, $t1, 0x40 +/* AD8224 80061084 15400014 */ bnez $t2, .L800610D8 +/* AD8228 80061088 27A40024 */ addiu $a0, $sp, 0x24 +/* AD822C 8006108C 2445000E */ addiu $a1, $v0, 0xe +/* AD8230 80061090 AFA20030 */ sw $v0, 0x30($sp) +/* AD8234 80061094 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD8238 80061098 AFA60040 */ sw $a2, 0x40($sp) +/* AD823C 8006109C 8FA20030 */ lw $v0, 0x30($sp) +/* AD8240 800610A0 27AB0024 */ addiu $t3, $sp, 0x24 +/* AD8244 800610A4 8FA40038 */ lw $a0, 0x38($sp) +/* AD8248 800610A8 8C45001C */ lw $a1, 0x1c($v0) +/* AD824C 800610AC 8C460024 */ lw $a2, 0x24($v0) +/* AD8250 800610B0 AFAB0014 */ sw $t3, 0x14($sp) +/* AD8254 800610B4 8FA70040 */ lw $a3, 0x40($sp) +/* AD8258 800610B8 0C017981 */ jal func_8005E604 +/* AD825C 800610BC AFA20010 */ sw $v0, 0x10($sp) +/* AD8260 800610C0 8FA20030 */ lw $v0, 0x30($sp) +/* AD8264 800610C4 8C430024 */ lw $v1, 0x24($v0) +/* AD8268 800610C8 906C0015 */ lbu $t4, 0x15($v1) +/* AD826C 800610CC 358D0040 */ ori $t5, $t4, 0x40 +/* AD8270 800610D0 1000000A */ b .L800610FC +/* AD8274 800610D4 A06D0015 */ sb $t5, 0x15($v1) +.L800610D8: +/* AD8278 800610D8 8CAF0018 */ lw $t7, 0x18($a1) +.L800610DC: +/* AD827C 800610DC 8CAE001C */ lw $t6, 0x1c($a1) +/* AD8280 800610E0 2442005C */ addiu $v0, $v0, 0x5c +/* AD8284 800610E4 01E70019 */ multu $t7, $a3 +/* AD8288 800610E8 0000C012 */ mflo $t8 +/* AD828C 800610EC 01D8C821 */ addu $t9, $t6, $t8 +/* AD8290 800610F0 0059082B */ sltu $at, $v0, $t9 +/* AD8294 800610F4 5420FFDB */ bnezl $at, .L80061064 +/* AD8298 800610F8 90590016 */ lbu $t9, 0x16($v0) +.L800610FC: +/* AD829C 800610FC 8FBF001C */ lw $ra, 0x1c($sp) +.L80061100: +/* AD82A0 80061100 27BD0038 */ addiu $sp, $sp, 0x38 +/* AD82A4 80061104 03E00008 */ jr $ra +/* AD82A8 80061108 00000000 */ nop diff --git a/asm/non_matchings/code/z_collision_check/func_8006110C.s b/asm/non_matchings/code/z_collision_check/func_8006110C.s new file mode 100644 index 0000000000..3db07bb224 --- /dev/null +++ b/asm/non_matchings/code/z_collision_check/func_8006110C.s @@ -0,0 +1,41 @@ +.text +glabel func_8006110C +/* AD82AC 8006110C 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* AD82B0 80061110 AFBF001C */ sw $ra, 0x1c($sp) +/* AD82B4 80061114 AFA40038 */ sw $a0, 0x38($sp) +/* AD82B8 80061118 AFA5003C */ sw $a1, 0x3c($sp) +/* AD82BC 8006111C 90CE002E */ lbu $t6, 0x2e($a2) +/* AD82C0 80061120 31CF0080 */ andi $t7, $t6, 0x80 +/* AD82C4 80061124 51E0001B */ beql $t7, $zero, .L80061194 +/* AD82C8 80061128 8FBF001C */ lw $ra, 0x1c($sp) +/* AD82CC 8006112C 8CC2003C */ lw $v0, 0x3c($a2) +/* AD82D0 80061130 50400018 */ beql $v0, $zero, .L80061194 +/* AD82D4 80061134 8FBF001C */ lw $ra, 0x1c($sp) +/* AD82D8 80061138 90580015 */ lbu $t8, 0x15($v0) +/* AD82DC 8006113C 27A40028 */ addiu $a0, $sp, 0x28 +/* AD82E0 80061140 24C50026 */ addiu $a1, $a2, 0x26 +/* AD82E4 80061144 33190040 */ andi $t9, $t8, 0x40 +/* AD82E8 80061148 57200012 */ bnezl $t9, .L80061194 +/* AD82EC 8006114C 8FBF001C */ lw $ra, 0x1c($sp) +/* AD82F0 80061150 0C01DF97 */ jal Math_Vec3s_ToVec3f +/* AD82F4 80061154 AFA60040 */ sw $a2, 0x40($sp) +/* AD82F8 80061158 8FA70040 */ lw $a3, 0x40($sp) +/* AD82FC 8006115C 27A90028 */ addiu $t1, $sp, 0x28 +/* AD8300 80061160 8FA40038 */ lw $a0, 0x38($sp) +/* AD8304 80061164 8CE50034 */ lw $a1, 0x34($a3) +/* AD8308 80061168 8CE6003C */ lw $a2, 0x3c($a3) +/* AD830C 8006116C 24E80018 */ addiu $t0, $a3, 0x18 +/* AD8310 80061170 AFA80010 */ sw $t0, 0x10($sp) +/* AD8314 80061174 0C017981 */ jal func_8005E604 +/* AD8318 80061178 AFA90014 */ sw $t1, 0x14($sp) +/* AD831C 8006117C 8FA70040 */ lw $a3, 0x40($sp) +/* AD8320 80061180 8CE2003C */ lw $v0, 0x3c($a3) +/* AD8324 80061184 904A0015 */ lbu $t2, 0x15($v0) +/* AD8328 80061188 354B0040 */ ori $t3, $t2, 0x40 +/* AD832C 8006118C A04B0015 */ sb $t3, 0x15($v0) +/* AD8330 80061190 8FBF001C */ lw $ra, 0x1c($sp) +.L80061194: +/* AD8334 80061194 27BD0038 */ addiu $sp, $sp, 0x38 +/* AD8338 80061198 03E00008 */ jr $ra +/* AD833C 8006119C 00000000 */ nop + diff --git a/include/functions.h b/include/functions.h index b993f375b7..7bb457dcda 100644 --- a/include/functions.h +++ b/include/functions.h @@ -1588,7 +1588,7 @@ void func_800CC8B4(Vec3f* a, Vec3f* b, Vec3f* c, float* nx, float* ny, float* nz // ? func_800CF7D0(?); // ? func_800CFC6C(?); // ? func_800CFC8C(?); -// ? func_800CFCAC(?); +s32 func_800CFCAC(PosRadius* a, PosRadius* b, f32* unk, f32* dist); // ? func_800CFD84(?); // ? func_800CFDA4(?); // ? func_800CFF14(?); diff --git a/include/z64actor.h b/include/z64actor.h index 4852755bb5..6acfd23abd 100644 --- a/include/z64actor.h +++ b/include/z64actor.h @@ -332,11 +332,15 @@ typedef struct { } ColliderJntSphDimUnk; //size = 0x08 typedef struct { - ColliderJntSphDimUnk unk_00; Vec3s pos; s16 radius; - float unk_10; - s8 unk_14; +} PosRadius; + +typedef struct { + /* 0x00 */ ColliderJntSphDimUnk unk_00; + /* 0x08 */ PosRadius posr; + /* 0x10 */ float unk_10; + /* 0x14 */ s8 unk_14; } ColliderJntSphItemDim; //size = 0x18 typedef struct { diff --git a/src/code/z_collision_check.c b/src/code/z_collision_check.c index d6bf7bf587..b3eebc60bc 100644 --- a/src/code/z_collision_check.c +++ b/src/code/z_collision_check.c @@ -1084,11 +1084,30 @@ s32 Actor_CollisionCheck_SetOT(GlobalContext* globalCtx, CollisionCheckContext* #pragma GLOBAL_ASM("asm/non_matchings/code/z_collision_check/func_8005DD5C.s") -#pragma GLOBAL_ASM("asm/non_matchings/code/z_collision_check/func_8005DF2C.s") +s32 func_8005DF2C(ColliderBody* body) { + if ((body->toucherFlags & 1) == 0) { + return 1; + } + return 0; +} -#pragma GLOBAL_ASM("asm/non_matchings/code/z_collision_check/func_8005DF50.s") +s32 func_8005DF50(ColliderBody* body) { + if ((body->bumperFlags & 1) == 0) { + return 1; + } + return 0; +} -#pragma GLOBAL_ASM("asm/non_matchings/code/z_collision_check/func_8005DF74.s") +s32 func_8005DF74(ColliderBody* left, ColliderBody* right) { + if ((left->toucher.flags & right->bumper.flags) == 0) { + return 1; + } + return 0; +} + +void func_8005DF9C(UNK_TYPE arg0, UNK_TYPE arg1, UNK_TYPE arg2) { + +} #pragma GLOBAL_ASM("asm/non_matchings/code/z_collision_check/func_8005DFAC.s") @@ -1100,8 +1119,71 @@ s32 Actor_CollisionCheck_SetOT(GlobalContext* globalCtx, CollisionCheckContext* #pragma GLOBAL_ASM("asm/non_matchings/code/z_collision_check/func_8005E800.s") +s32 func_8005E81C(GlobalContext* globalContext, + ColliderJntSph* left, ColliderJntSphItem* leftItem, Vec3f* leftv, + ColliderJntSph* right, ColliderJntSphItem* rightItem, Vec3f* rightv, Vec3f* unk); #pragma GLOBAL_ASM("asm/non_matchings/code/z_collision_check/func_8005E81C.s") +//Check ColliderJntSph to ColliderJntSph +void func_8005E9C0(GlobalContext* globalCtx, CollisionCheckContext* check, Collider* l, Collider* r) { + ColliderJntSph* left; + ColliderJntSph* right; + ColliderJntSphItem* lItem; + ColliderJntSphItem* rItem; + f32 sp8C; + f32 sp88; + f32 temp_f0; + Vec3f sp78; + Vec3f sp6C; + Vec3f sp60; + + left = (ColliderJntSph*)l; + right = (ColliderJntSph*)r; + if (left->count > 0) { + if (left->list != NULL) { + if (right->count > 0) { + if (right->list != NULL) { + for (lItem = left->list; lItem < left->list + left->count; lItem++) { + if (func_8005DF2C(&lItem->body) != 1) { + for (rItem = right->list; rItem < right->list + right->count; rItem++) { + if (func_8005DF50(&rItem->body) != 1) { + if (func_8005DF74(&lItem->body, &rItem->body) != 1) { + if (func_800CFCAC(&lItem->dim.posr, &rItem->dim.posr, &sp8C, &sp88) == 1) { + sp6C.x = lItem->dim.posr.pos.x; + sp6C.y = lItem->dim.posr.pos.y; + sp6C.z = lItem->dim.posr.pos.z; + sp60.x = rItem->dim.posr.pos.x; + sp60.y = rItem->dim.posr.pos.y; + sp60.z = rItem->dim.posr.pos.z; + if (!(fabsf(sp88) < 0.008f)) { + temp_f0 = rItem->dim.posr.radius / sp88; + sp78.x = (((sp6C.x - sp60.x) * temp_f0) + sp60.x); + sp78.y = (((sp6C.y - sp60.y) * temp_f0) + sp60.y); + sp78.z = (((sp6C.z - sp60.z) * temp_f0) + sp60.z); + } + else { + Math_Vec3f_Copy(&sp78, &sp6C); + } + func_8005E81C(globalCtx, left, lItem, &sp6C, right, rItem, &sp60, &sp78); + if ((right->base.maskB & 0x40) == 0) { + return; + } + } + } + } + } + } + } + } + } + } + } +} + +#pragma GLOBAL_ASM("asm/non_matchings/code/z_collision_check/func_8005EC6C.s") + +#pragma GLOBAL_ASM("asm/non_matchings/code/z_collision_check/func_8006110C.s") + extern void (*D_8011DF5C[])(GlobalContext*, CollisionCheckContext*, Collider*); void func_800611A0(GlobalContext* globalCtx, CollisionCheckContext* check) { Collider** col;