diff --git a/asm/non_matchings/unknown_005740/D_80019808.s b/asm/non_matchings/unknown_005740/D_80019808.s new file mode 100644 index 00000000..df92d4a8 --- /dev/null +++ b/asm/non_matchings/unknown_005740/D_80019808.s @@ -0,0 +1,1113 @@ +glabel D_80019808 +/* 01A408 80019808 27BDFF60 */ addiu $sp, $sp, -0xa0 +/* 01A40C 8001980C AFBF0034 */ sw $ra, 0x34($sp) +/* 01A410 80019810 AFB60030 */ sw $s6, 0x30($sp) +/* 01A414 80019814 AFB5002C */ sw $s5, 0x2c($sp) +/* 01A418 80019818 AFB40028 */ sw $s4, 0x28($sp) +/* 01A41C 8001981C AFB30024 */ sw $s3, 0x24($sp) +/* 01A420 80019820 AFB20020 */ sw $s2, 0x20($sp) +/* 01A424 80019824 AFB1001C */ sw $s1, 0x1c($sp) +/* 01A428 80019828 AFB00018 */ sw $s0, 0x18($sp) +/* 01A42C 8001982C 0C01AF6C */ jal func_8006BDB0 +/* 01A430 80019830 AFA400A0 */ sw $a0, 0xa0($sp) +/* 01A434 80019834 0C01BAA4 */ jal func_8006EA90 +/* 01A438 80019838 AFA20064 */ sw $v0, 0x64($sp) +/* 01A43C 8001983C 8FBF0064 */ lw $ra, 0x64($sp) +/* 01A440 80019840 A7A00088 */ sh $zero, 0x88($sp) +/* 01A444 80019844 A7A0008A */ sh $zero, 0x8a($sp) +/* 01A448 80019848 83E3004C */ lb $v1, 0x4c($ra) +/* 01A44C 8001984C 0040B025 */ move $s6, $v0 +/* 01A450 80019850 106001A2 */ beqz $v1, .L80019EDC +/* 01A454 80019854 00009825 */ move $s3, $zero +/* 01A458 80019858 24010003 */ li $at, 3 +/* 01A45C 8001985C 1061019F */ beq $v1, $at, .L80019EDC +/* 01A460 80019860 24010008 */ li $at, 8 +/* 01A464 80019864 1061019D */ beq $v1, $at, .L80019EDC +/* 01A468 80019868 306E0040 */ andi $t6, $v1, 0x40 +/* 01A46C 8001986C 11C003D0 */ beqz $t6, .L8001A7B0 +/* 01A470 80019870 24010042 */ li $at, 66 +/* 01A474 80019874 14610008 */ bne $v1, $at, .L80019898 +/* 01A478 80019878 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 +/* 01A47C 8001987C 256BAEE4 */ addiu $t3, %lo(D_8011AEE4) # addiu $t3, $t3, -0x511c +/* 01A480 80019880 8D640000 */ lw $a0, ($t3) +/* 01A484 80019884 AFBF0064 */ sw $ra, 0x64($sp) +/* 01A488 80019888 0C01144A */ jal func_80045128 +/* 01A48C 8001988C 00000000 */ nop +/* 01A490 80019890 8FBF0064 */ lw $ra, 0x64($sp) +/* 01A494 80019894 00000000 */ nop +.L80019898: +/* 01A498 80019898 3C0F8012 */ lui $t7, %hi(D_8011ADB4) # $t7, 0x8012 +/* 01A49C 8001989C 8DEFADB4 */ lw $t7, %lo(D_8011ADB4)($t7) +/* 01A4A0 800198A0 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 +/* 01A4A4 800198A4 15E003C2 */ bnez $t7, .L8001A7B0 +/* 01A4A8 800198A8 256BAEE4 */ addiu $t3, %lo(D_8011AEE4) # addiu $t3, $t3, -0x511c +/* 01A4AC 800198AC 3C128012 */ lui $s2, %hi(D_8011AEF0) # $s2, 0x8012 +/* 01A4B0 800198B0 2652AEF0 */ addiu $s2, %lo(D_8011AEF0) # addiu $s2, $s2, -0x5110 +/* 01A4B4 800198B4 8E470000 */ lw $a3, ($s2) +/* 01A4B8 800198B8 00008025 */ move $s0, $zero +/* 01A4BC 800198BC 18E00066 */ blez $a3, .L80019A58 +/* 01A4C0 800198C0 00005025 */ move $t2, $zero +/* 01A4C4 800198C4 3C118012 */ lui $s1, %hi(D_8011ADC0) # $s1, 0x8012 +/* 01A4C8 800198C8 2631ADC0 */ addiu $s1, %lo(D_8011ADC0) # addiu $s1, $s1, -0x5240 +/* 01A4CC 800198CC 27A5006C */ addiu $a1, $sp, 0x6c +/* 01A4D0 800198D0 2415FFFF */ li $s5, -1 +/* 01A4D4 800198D4 24140001 */ li $s4, 1 +/* 01A4D8 800198D8 24090040 */ li $t1, 64 +.L800198DC: +/* 01A4DC 800198DC 8D780000 */ lw $t8, ($t3) +/* 01A4E0 800198E0 00000000 */ nop +/* 01A4E4 800198E4 030AC821 */ addu $t9, $t8, $t2 +/* 01A4E8 800198E8 8F2E0000 */ lw $t6, ($t9) +/* 01A4EC 800198EC 00000000 */ nop +/* 01A4F0 800198F0 8DCF0064 */ lw $t7, 0x64($t6) +/* 01A4F4 800198F4 00000000 */ nop +/* 01A4F8 800198F8 ACAF0000 */ sw $t7, ($a1) +/* 01A4FC 800198FC 83F8004C */ lb $t8, 0x4c($ra) +/* 01A500 80019900 00000000 */ nop +/* 01A504 80019904 15380031 */ bne $t1, $t8, .L800199CC +/* 01A508 80019908 00000000 */ nop +/* 01A50C 8001990C 81F90185 */ lb $t9, 0x185($t7) +/* 01A510 80019910 00000000 */ nop +/* 01A514 80019914 1F20002D */ bgtz $t9, .L800199CC +/* 01A518 80019918 00000000 */ nop +/* 01A51C 8001991C 81EE01D8 */ lb $t6, 0x1d8($t7) +/* 01A520 80019920 00000000 */ nop +/* 01A524 80019924 15C00029 */ bnez $t6, .L800199CC +/* 01A528 80019928 00000000 */ nop +/* 01A52C 8001992C A1F401D8 */ sb $s4, 0x1d8($t7) +/* 01A530 80019930 8CAF0000 */ lw $t7, ($a1) +/* 01A534 80019934 00000000 */ nop +/* 01A538 80019938 A1E00173 */ sb $zero, 0x173($t7) +/* 01A53C 8001993C 8D780000 */ lw $t8, ($t3) +/* 01A540 80019940 00000000 */ nop +/* 01A544 80019944 030AC821 */ addu $t9, $t8, $t2 +/* 01A548 80019948 8F240000 */ lw $a0, ($t9) +/* 01A54C 8001994C AFBF0064 */ sw $ra, 0x64($sp) +/* 01A550 80019950 AFAA0044 */ sw $t2, 0x44($sp) +/* 01A554 80019954 0C001AB2 */ jal func_80006AC8 +/* 01A558 80019958 AFA5004C */ sw $a1, 0x4c($sp) +/* 01A55C 8001995C 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 +/* 01A560 80019960 256BAEE4 */ addiu $t3, %lo(D_8011AEE4) # addiu $t3, $t3, -0x511c +/* 01A564 80019964 8FAA0044 */ lw $t2, 0x44($sp) +/* 01A568 80019968 8D6E0000 */ lw $t6, ($t3) +/* 01A56C 8001996C 8FA5004C */ lw $a1, 0x4c($sp) +/* 01A570 80019970 01CA7821 */ addu $t7, $t6, $t2 +/* 01A574 80019974 8DE20000 */ lw $v0, ($t7) +/* 01A578 80019978 8FBF0064 */ lw $ra, 0x64($sp) +/* 01A57C 8001997C 84580006 */ lh $t8, 6($v0) +/* 01A580 80019980 24090040 */ li $t1, 64 +/* 01A584 80019984 37194000 */ ori $t9, $t8, 0x4000 +/* 01A588 80019988 A4590006 */ sh $t9, 6($v0) +/* 01A58C 8001998C 8D6E0000 */ lw $t6, ($t3) +/* 01A590 80019990 00000000 */ nop +/* 01A594 80019994 01CA7821 */ addu $t7, $t6, $t2 +/* 01A598 80019998 8DF80000 */ lw $t8, ($t7) +/* 01A59C 8001999C 240F0005 */ li $t7, 5 +/* 01A5A0 800199A0 8F19004C */ lw $t9, 0x4c($t8) +/* 01A5A4 800199A4 00000000 */ nop +/* 01A5A8 800199A8 A7200014 */ sh $zero, 0x14($t9) +/* 01A5AC 800199AC 8E2E0000 */ lw $t6, ($s1) +/* 01A5B0 800199B0 8CB90000 */ lw $t9, ($a1) +/* 01A5B4 800199B4 01EEC023 */ subu $t8, $t7, $t6 +/* 01A5B8 800199B8 A73801AC */ sh $t8, 0x1ac($t9) +/* 01A5BC 800199BC 8E2F0000 */ lw $t7, ($s1) +/* 01A5C0 800199C0 00000000 */ nop +/* 01A5C4 800199C4 25EE0001 */ addiu $t6, $t7, 1 +/* 01A5C8 800199C8 AE2E0000 */ sw $t6, ($s1) +.L800199CC: +/* 01A5CC 800199CC 8CA20000 */ lw $v0, ($a1) +/* 01A5D0 800199D0 26100001 */ addiu $s0, $s0, 1 +/* 01A5D4 800199D4 84580000 */ lh $t8, ($v0) +/* 01A5D8 800199D8 804301D8 */ lb $v1, 0x1d8($v0) +/* 01A5DC 800199DC 12B8000B */ beq $s5, $t8, .L80019A0C +/* 01A5E0 800199E0 00000000 */ nop +/* 01A5E4 800199E4 10600006 */ beqz $v1, .L80019A00 +/* 01A5E8 800199E8 87AE008A */ lh $t6, 0x8a($sp) +/* 01A5EC 800199EC 87B90088 */ lh $t9, 0x88($sp) +/* 01A5F0 800199F0 00000000 */ nop +/* 01A5F4 800199F4 272F0001 */ addiu $t7, $t9, 1 +/* 01A5F8 800199F8 A7AF0088 */ sh $t7, 0x88($sp) +/* 01A5FC 800199FC 87AE008A */ lh $t6, 0x8a($sp) +.L80019A00: +/* 01A600 80019A00 00000000 */ nop +/* 01A604 80019A04 25D80001 */ addiu $t8, $t6, 1 +/* 01A608 80019A08 A7B8008A */ sh $t8, 0x8a($sp) +.L80019A0C: +/* 01A60C 80019A0C 1060000D */ beqz $v1, .L80019A44 +/* 01A610 80019A10 00000000 */ nop +/* 01A614 80019A14 844E01AC */ lh $t6, 0x1ac($v0) +/* 01A618 80019A18 26730001 */ addiu $s3, $s3, 1 +/* 01A61C 80019A1C 0013CC00 */ sll $t9, $s3, 0x10 +/* 01A620 80019A20 15C00008 */ bnez $t6, .L80019A44 +/* 01A624 80019A24 00199C03 */ sra $s3, $t9, 0x10 +/* 01A628 80019A28 8E380000 */ lw $t8, ($s1) +/* 01A62C 80019A2C 00000000 */ nop +/* 01A630 80019A30 A45801AC */ sh $t8, 0x1ac($v0) +/* 01A634 80019A34 8E390000 */ lw $t9, ($s1) +/* 01A638 80019A38 00000000 */ nop +/* 01A63C 80019A3C 272F0001 */ addiu $t7, $t9, 1 +/* 01A640 80019A40 AE2F0000 */ sw $t7, ($s1) +.L80019A44: +/* 01A644 80019A44 8E470000 */ lw $a3, ($s2) +/* 01A648 80019A48 254A0004 */ addiu $t2, $t2, 4 +/* 01A64C 80019A4C 0207082A */ slt $at, $s0, $a3 +/* 01A650 80019A50 1420FFA2 */ bnez $at, .L800198DC +/* 01A654 80019A54 24A50004 */ addiu $a1, $a1, 4 +.L80019A58: +/* 01A658 80019A58 83EE004C */ lb $t6, 0x4c($ra) +/* 01A65C 80019A5C 24090040 */ li $t1, 64 +/* 01A660 80019A60 3C118012 */ lui $s1, %hi(D_8011ADC0) # $s1, 0x8012 +/* 01A664 80019A64 2631ADC0 */ addiu $s1, %lo(D_8011ADC0) # addiu $s1, $s1, -0x5240 +/* 01A668 80019A68 24140001 */ li $s4, 1 +/* 01A66C 80019A6C 112E0003 */ beq $t1, $t6, .L80019A7C +/* 01A670 80019A70 2415FFFF */ li $s5, -1 +/* 01A674 80019A74 1E600010 */ bgtz $s3, .L80019AB8 +/* 01A678 80019A78 00000000 */ nop +.L80019A7C: +/* 01A67C 80019A7C 87B8008A */ lh $t8, 0x8a($sp) +/* 01A680 80019A80 87B90088 */ lh $t9, 0x88($sp) +/* 01A684 80019A84 17140004 */ bne $t8, $s4, .L80019A98 +/* 01A688 80019A88 87AF008A */ lh $t7, 0x8a($sp) +/* 01A68C 80019A8C 1334000A */ beq $t9, $s4, .L80019AB8 +/* 01A690 80019A90 00000000 */ nop +/* 01A694 80019A94 87AF008A */ lh $t7, 0x8a($sp) +.L80019A98: +/* 01A698 80019A98 87AE0088 */ lh $t6, 0x88($sp) +/* 01A69C 80019A9C 29E10002 */ slti $at, $t7, 2 +/* 01A6A0 80019AA0 14200002 */ bnez $at, .L80019AAC +/* 01A6A4 80019AA4 01CF082A */ slt $at, $t6, $t7 +/* 01A6A8 80019AA8 10200003 */ beqz $at, .L80019AB8 +.L80019AAC: +/* 01A6AC 80019AAC 2A610003 */ slti $at, $s3, 3 +/* 01A6B0 80019AB0 1420033F */ bnez $at, .L8001A7B0 +/* 01A6B4 80019AB4 00000000 */ nop +.L80019AB8: +/* 01A6B8 80019AB8 18E00041 */ blez $a3, .L80019BC0 +/* 01A6BC 80019ABC 00008025 */ move $s0, $zero +/* 01A6C0 80019AC0 27A3005C */ addiu $v1, $sp, 0x5c +/* 01A6C4 80019AC4 00E32021 */ addu $a0, $a3, $v1 +/* 01A6C8 80019AC8 24070003 */ li $a3, 3 +/* 01A6CC 80019ACC 27A5006C */ addiu $a1, $sp, 0x6c +/* 01A6D0 80019AD0 240D000A */ li $t5, 10 +/* 01A6D4 80019AD4 24060042 */ li $a2, 66 +.L80019AD8: +/* 01A6D8 80019AD8 83F9004C */ lb $t9, 0x4c($ra) +/* 01A6DC 80019ADC 00000000 */ nop +/* 01A6E0 80019AE0 15390008 */ bne $t1, $t9, .L80019B04 +/* 01A6E4 80019AE4 00000000 */ nop +/* 01A6E8 80019AE8 8CAE0000 */ lw $t6, ($a1) +/* 01A6EC 80019AEC 00000000 */ nop +/* 01A6F0 80019AF0 81CF0185 */ lb $t7, 0x185($t6) +/* 01A6F4 80019AF4 00000000 */ nop +/* 01A6F8 80019AF8 01AFC023 */ subu $t8, $t5, $t7 +/* 01A6FC 80019AFC 10000020 */ b .L80019B80 +/* 01A700 80019B00 A0780000 */ sb $t8, ($v1) +.L80019B04: +/* 01A704 80019B04 8CA20000 */ lw $v0, ($a1) +/* 01A708 80019B08 00000000 */ nop +/* 01A70C 80019B0C 80590193 */ lb $t9, 0x193($v0) +/* 01A710 80019B10 00000000 */ nop +/* 01A714 80019B14 A0790000 */ sb $t9, ($v1) +/* 01A718 80019B18 83EE004C */ lb $t6, 0x4c($ra) +/* 01A71C 80019B1C 00000000 */ nop +/* 01A720 80019B20 14CE0017 */ bne $a2, $t6, .L80019B80 +/* 01A724 80019B24 00000000 */ nop +/* 01A728 80019B28 806F0000 */ lb $t7, ($v1) +/* 01A72C 80019B2C 00000000 */ nop +/* 01A730 80019B30 01E70019 */ multu $t7, $a3 +/* 01A734 80019B34 0000C012 */ mflo $t8 +/* 01A738 80019B38 A0780000 */ sb $t8, ($v1) +/* 01A73C 80019B3C 805901CF */ lb $t9, 0x1cf($v0) +/* 01A740 80019B40 00000000 */ nop +/* 01A744 80019B44 13200006 */ beqz $t9, .L80019B60 +/* 01A748 80019B48 00000000 */ nop +/* 01A74C 80019B4C 806E0000 */ lb $t6, ($v1) +/* 01A750 80019B50 00000000 */ nop +/* 01A754 80019B54 25CF0002 */ addiu $t7, $t6, 2 +/* 01A758 80019B58 10000009 */ b .L80019B80 +/* 01A75C 80019B5C A06F0000 */ sb $t7, ($v1) +.L80019B60: +/* 01A760 80019B60 8C580144 */ lw $t8, 0x144($v0) +/* 01A764 80019B64 00000000 */ nop +/* 01A768 80019B68 13000005 */ beqz $t8, .L80019B80 +/* 01A76C 80019B6C 00000000 */ nop +/* 01A770 80019B70 80790000 */ lb $t9, ($v1) +/* 01A774 80019B74 00000000 */ nop +/* 01A778 80019B78 272E0001 */ addiu $t6, $t9, 1 +/* 01A77C 80019B7C A06E0000 */ sb $t6, ($v1) +.L80019B80: +/* 01A780 80019B80 80620000 */ lb $v0, ($v1) +/* 01A784 80019B84 00000000 */ nop +/* 01A788 80019B88 2841000B */ slti $at, $v0, 0xb +/* 01A78C 80019B8C 14200004 */ bnez $at, .L80019BA0 +/* 01A790 80019B90 00000000 */ nop +/* 01A794 80019B94 A06D0000 */ sb $t5, ($v1) +/* 01A798 80019B98 80620000 */ lb $v0, ($v1) +/* 01A79C 80019B9C 00000000 */ nop +.L80019BA0: +/* 01A7A0 80019BA0 04410002 */ bgez $v0, .L80019BAC +/* 01A7A4 80019BA4 00000000 */ nop +/* 01A7A8 80019BA8 A0600000 */ sb $zero, ($v1) +.L80019BAC: +/* 01A7AC 80019BAC 24630001 */ addiu $v1, $v1, 1 +/* 01A7B0 80019BB0 0064082B */ sltu $at, $v1, $a0 +/* 01A7B4 80019BB4 1420FFC8 */ bnez $at, .L80019AD8 +/* 01A7B8 80019BB8 24A50004 */ addiu $a1, $a1, 4 +/* 01A7BC 80019BBC 00008025 */ move $s0, $zero +.L80019BC0: +/* 01A7C0 80019BC0 27A8006C */ addiu $t0, $sp, 0x6c +/* 01A7C4 80019BC4 27A6005C */ addiu $a2, $sp, 0x5c +.L80019BC8: +/* 01A7C8 80019BC8 8E470000 */ lw $a3, ($s2) +/* 01A7CC 80019BCC 00152400 */ sll $a0, $s5, 0x10 +/* 01A7D0 80019BD0 00151C00 */ sll $v1, $s5, 0x10 +/* 01A7D4 80019BD4 00047C03 */ sra $t7, $a0, 0x10 +/* 01A7D8 80019BD8 0003C403 */ sra $t8, $v1, 0x10 +/* 01A7DC 80019BDC 01E02025 */ move $a0, $t7 +/* 01A7E0 80019BE0 18E00018 */ blez $a3, .L80019C44 +/* 01A7E4 80019BE4 03001825 */ move $v1, $t8 +/* 01A7E8 80019BE8 27A5006C */ addiu $a1, $sp, 0x6c +.L80019BEC: +/* 01A7EC 80019BEC 8CB90000 */ lw $t9, ($a1) +/* 01A7F0 80019BF0 00D07821 */ addu $t7, $a2, $s0 +/* 01A7F4 80019BF4 832E01D8 */ lb $t6, 0x1d8($t9) +/* 01A7F8 80019BF8 00000000 */ nop +/* 01A7FC 80019BFC 15C0000C */ bnez $t6, .L80019C30 +/* 01A800 80019C00 00000000 */ nop +/* 01A804 80019C04 81E20000 */ lb $v0, ($t7) +/* 01A808 80019C08 00000000 */ nop +/* 01A80C 80019C0C 0043082A */ slt $at, $v0, $v1 +/* 01A810 80019C10 14200007 */ bnez $at, .L80019C30 +/* 01A814 80019C14 00000000 */ nop +/* 01A818 80019C18 00021C00 */ sll $v1, $v0, 0x10 +/* 01A81C 80019C1C 00102400 */ sll $a0, $s0, 0x10 +/* 01A820 80019C20 0003C403 */ sra $t8, $v1, 0x10 +/* 01A824 80019C24 0004CC03 */ sra $t9, $a0, 0x10 +/* 01A828 80019C28 03001825 */ move $v1, $t8 +/* 01A82C 80019C2C 03202025 */ move $a0, $t9 +.L80019C30: +/* 01A830 80019C30 26100001 */ addiu $s0, $s0, 1 +/* 01A834 80019C34 0207082A */ slt $at, $s0, $a3 +/* 01A838 80019C38 1420FFEC */ bnez $at, .L80019BEC +/* 01A83C 80019C3C 24A50004 */ addiu $a1, $a1, 4 +/* 01A840 80019C40 00008025 */ move $s0, $zero +.L80019C44: +/* 01A844 80019C44 10950016 */ beq $a0, $s5, .L80019CA0 +/* 01A848 80019C48 00000000 */ nop +/* 01A84C 80019C4C 83EE004C */ lb $t6, 0x4c($ra) +/* 01A850 80019C50 0004C880 */ sll $t9, $a0, 2 +/* 01A854 80019C54 152E0009 */ bne $t1, $t6, .L80019C7C +/* 01A858 80019C58 01191021 */ addu $v0, $t0, $t9 +/* 01A85C 80019C5C 00047880 */ sll $t7, $a0, 2 +/* 01A860 80019C60 8E380000 */ lw $t8, ($s1) +/* 01A864 80019C64 010F1021 */ addu $v0, $t0, $t7 +/* 01A868 80019C68 8C4F0000 */ lw $t7, ($v0) +/* 01A86C 80019C6C 24190005 */ li $t9, 5 +/* 01A870 80019C70 03387023 */ subu $t6, $t9, $t8 +/* 01A874 80019C74 10000005 */ b .L80019C8C +/* 01A878 80019C78 A5EE01AC */ sh $t6, 0x1ac($t7) +.L80019C7C: +/* 01A87C 80019C7C 8E380000 */ lw $t8, ($s1) +/* 01A880 80019C80 8C4E0000 */ lw $t6, ($v0) +/* 01A884 80019C84 00000000 */ nop +/* 01A888 80019C88 A5D801AC */ sh $t8, 0x1ac($t6) +.L80019C8C: +/* 01A88C 80019C8C 8E2F0000 */ lw $t7, ($s1) +/* 01A890 80019C90 8C580000 */ lw $t8, ($v0) +/* 01A894 80019C94 25F90001 */ addiu $t9, $t7, 1 +/* 01A898 80019C98 AE390000 */ sw $t9, ($s1) +/* 01A89C 80019C9C A31401D8 */ sb $s4, 0x1d8($t8) +.L80019CA0: +/* 01A8A0 80019CA0 1495FFC9 */ bne $a0, $s5, .L80019BC8 +/* 01A8A4 80019CA4 00000000 */ nop +/* 01A8A8 80019CA8 3C13800E */ lui $s3, %hi(D_800DC744) # $s3, 0x800e +/* 01A8AC 80019CAC 2673C744 */ addiu $s3, %lo(D_800DC744) # addiu $s3, $s3, -0x38bc +/* 01A8B0 80019CB0 0C0270B4 */ jal func_8009C2D0 +/* 01A8B4 80019CB4 A2600000 */ sb $zero, ($s3) +/* 01A8B8 80019CB8 14400024 */ bnez $v0, .L80019D4C +/* 01A8BC 80019CBC 00003025 */ move $a2, $zero +/* 01A8C0 80019CC0 8FAE006C */ lw $t6, 0x6c($sp) +/* 01A8C4 80019CC4 00000000 */ nop +/* 01A8C8 80019CC8 85CF01AC */ lh $t7, 0x1ac($t6) +/* 01A8CC 80019CCC 00000000 */ nop +/* 01A8D0 80019CD0 128F000B */ beq $s4, $t7, .L80019D00 +/* 01A8D4 80019CD4 00000000 */ nop +/* 01A8D8 80019CD8 0C027B20 */ jal func_8009EC80 +/* 01A8DC 80019CDC 00000000 */ nop +/* 01A8E0 80019CE0 1040001A */ beqz $v0, .L80019D4C +/* 01A8E4 80019CE4 00003025 */ move $a2, $zero +/* 01A8E8 80019CE8 8FB90070 */ lw $t9, 0x70($sp) +/* 01A8EC 80019CEC 00000000 */ nop +/* 01A8F0 80019CF0 873801AC */ lh $t8, 0x1ac($t9) +/* 01A8F4 80019CF4 00000000 */ nop +/* 01A8F8 80019CF8 16980014 */ bne $s4, $t8, .L80019D4C +/* 01A8FC 80019CFC 00003025 */ move $a2, $zero +.L80019D00: +/* 01A900 80019D00 92CF0049 */ lbu $t7, 0x49($s6) +/* 01A904 80019D04 8ECE0004 */ lw $t6, 4($s6) +/* 01A908 80019D08 000FC880 */ sll $t9, $t7, 2 +/* 01A90C 80019D0C 01D91021 */ addu $v0, $t6, $t9 +/* 01A910 80019D10 8C430000 */ lw $v1, ($v0) +/* 01A914 80019D14 00000000 */ nop +/* 01A918 80019D18 30780002 */ andi $t8, $v1, 2 +/* 01A91C 80019D1C 1700000A */ bnez $t8, .L80019D48 +/* 01A920 80019D20 346F0002 */ ori $t7, $v1, 2 +/* 01A924 80019D24 AC4F0000 */ sw $t7, ($v0) +/* 01A928 80019D28 92D00016 */ lbu $s0, 0x16($s6) +/* 01A92C 80019D2C 00000000 */ nop +/* 01A930 80019D30 26100001 */ addiu $s0, $s0, 1 +/* 01A934 80019D34 2A010005 */ slti $at, $s0, 5 +/* 01A938 80019D38 14200002 */ bnez $at, .L80019D44 +/* 01A93C 80019D3C 00000000 */ nop +/* 01A940 80019D40 24100004 */ li $s0, 4 +.L80019D44: +/* 01A944 80019D44 A2D00016 */ sb $s0, 0x16($s6) +.L80019D48: +/* 01A948 80019D48 00003025 */ move $a2, $zero +.L80019D4C: +/* 01A94C 80019D4C 02C01025 */ move $v0, $s6 +.L80019D50: +/* 01A950 80019D50 24C60001 */ addiu $a2, $a2, 1 +/* 01A954 80019D54 28C10008 */ slti $at, $a2, 8 +/* 01A958 80019D58 A055005A */ sb $s5, 0x5a($v0) +/* 01A95C 80019D5C 1420FFFC */ bnez $at, .L80019D50 +/* 01A960 80019D60 24420018 */ addiu $v0, $v0, 0x18 +/* 01A964 80019D64 8E4E0000 */ lw $t6, ($s2) +/* 01A968 80019D68 2405003E */ li $a1, 62 +/* 01A96C 80019D6C 19C00017 */ blez $t6, .L80019DCC +/* 01A970 80019D70 00003025 */ move $a2, $zero +/* 01A974 80019D74 02C01025 */ move $v0, $s6 +/* 01A978 80019D78 27A4006C */ addiu $a0, $sp, 0x6c +.L80019D7C: +/* 01A97C 80019D7C 8C830000 */ lw $v1, ($a0) +/* 01A980 80019D80 00000000 */ nop +/* 01A984 80019D84 84790000 */ lh $t9, ($v1) +/* 01A988 80019D88 00000000 */ nop +/* 01A98C 80019D8C 12B90006 */ beq $s5, $t9, .L80019DA8 +/* 01A990 80019D90 00000000 */ nop +/* 01A994 80019D94 847801AC */ lh $t8, 0x1ac($v1) +/* 01A998 80019D98 00000000 */ nop +/* 01A99C 80019D9C 16980002 */ bne $s4, $t8, .L80019DA8 +/* 01A9A0 80019DA0 00000000 */ nop +/* 01A9A4 80019DA4 2405003D */ li $a1, 61 +.L80019DA8: +/* 01A9A8 80019DA8 846F01AC */ lh $t7, 0x1ac($v1) +/* 01A9AC 80019DAC 24C60001 */ addiu $a2, $a2, 1 +/* 01A9B0 80019DB0 25EEFFFF */ addiu $t6, $t7, -1 +/* 01A9B4 80019DB4 A04E005A */ sb $t6, 0x5a($v0) +/* 01A9B8 80019DB8 8E590000 */ lw $t9, ($s2) +/* 01A9BC 80019DBC 24420018 */ addiu $v0, $v0, 0x18 +/* 01A9C0 80019DC0 00D9082A */ slt $at, $a2, $t9 +/* 01A9C4 80019DC4 1420FFED */ bnez $at, .L80019D7C +/* 01A9C8 80019DC8 24840004 */ addiu $a0, $a0, 4 +.L80019DCC: +/* 01A9CC 80019DCC 0C0002CD */ jal func_80000B34 +/* 01A9D0 80019DD0 30A400FF */ andi $a0, $a1, 0xff +/* 01A9D4 80019DD4 24050004 */ li $a1, 4 +/* 01A9D8 80019DD8 00001825 */ move $v1, $zero +/* 01A9DC 80019DDC 02C01025 */ move $v0, $s6 +/* 01A9E0 80019DE0 240400C0 */ li $a0, 192 +.L80019DE4: +/* 01A9E4 80019DE4 8058005A */ lb $t8, 0x5a($v0) +/* 01A9E8 80019DE8 24630018 */ addiu $v1, $v1, 0x18 +/* 01A9EC 80019DEC 16B80003 */ bne $s5, $t8, .L80019DFC +/* 01A9F0 80019DF0 00000000 */ nop +/* 01A9F4 80019DF4 A045005A */ sb $a1, 0x5a($v0) +/* 01A9F8 80019DF8 24A50001 */ addiu $a1, $a1, 1 +.L80019DFC: +/* 01A9FC 80019DFC 1464FFF9 */ bne $v1, $a0, .L80019DE4 +/* 01AA00 80019E00 24420018 */ addiu $v0, $v0, 0x18 +/* 01AA04 80019E04 0C027B20 */ jal func_8009EC80 +/* 01AA08 80019E08 A2600000 */ sb $zero, ($s3) +/* 01AA0C 80019E0C 10400008 */ beqz $v0, .L80019E30 +/* 01AA10 80019E10 2404FFFF */ li $a0, -1 +/* 01AA14 80019E14 82CF0072 */ lb $t7, 0x72($s6) +/* 01AA18 80019E18 82CE005A */ lb $t6, 0x5a($s6) +/* 01AA1C 80019E1C 00000000 */ nop +/* 01AA20 80019E20 01EE082A */ slt $at, $t7, $t6 +/* 01AA24 80019E24 10200002 */ beqz $at, .L80019E30 +/* 01AA28 80019E28 00000000 */ nop +/* 01AA2C 80019E2C A2740000 */ sb $s4, ($s3) +.L80019E30: +/* 01AA30 80019E30 1600001C */ bnez $s0, .L80019EA4 +/* 01AA34 80019E34 00002825 */ move $a1, $zero +/* 01AA38 80019E38 0C027B20 */ jal func_8009EC80 +/* 01AA3C 80019E3C 00000000 */ nop +/* 01AA40 80019E40 10400014 */ beqz $v0, .L80019E94 +/* 01AA44 80019E44 00002025 */ move $a0, $zero +/* 01AA48 80019E48 82790000 */ lb $t9, ($s3) +/* 01AA4C 80019E4C 3C0F800E */ lui $t7, %hi(D_800DC73C) # $t7, 0x800e +/* 01AA50 80019E50 1320000A */ beqz $t9, .L80019E7C +/* 01AA54 80019E54 00000000 */ nop +/* 01AA58 80019E58 0C01BCE6 */ jal func_8006F398 +/* 01AA5C 80019E5C A2600000 */ sb $zero, ($s3) +/* 01AA60 80019E60 3C18800E */ lui $t8, %hi(D_800DC73C) # $t8, 0x800e +/* 01AA64 80019E64 8318C73C */ lb $t8, %lo(D_800DC73C)($t8) +/* 01AA68 80019E68 3C01800E */ lui $at, %hi(D_800DC748) # $at, 0x800e +/* 01AA6C 80019E6C 13000009 */ beqz $t8, .L80019E94 +/* 01AA70 80019E70 00002025 */ move $a0, $zero +/* 01AA74 80019E74 10000006 */ b .L80019E90 +/* 01AA78 80019E78 A034C748 */ sb $s4, %lo(D_800DC748)($at) +.L80019E7C: +/* 01AA7C 80019E7C 81EFC73C */ lb $t7, %lo(D_800DC73C)($t7) +/* 01AA80 80019E80 3C01800E */ lui $at, %hi(D_800DC748) # $at, 0x800e +/* 01AA84 80019E84 11E00003 */ beqz $t7, .L80019E94 +/* 01AA88 80019E88 00002025 */ move $a0, $zero +/* 01AA8C 80019E8C A034C748 */ sb $s4, %lo(D_800DC748)($at) +.L80019E90: +/* 01AA90 80019E90 00002025 */ move $a0, $zero +.L80019E94: +/* 01AA94 80019E94 0C0251A2 */ jal func_80094688 +/* 01AA98 80019E98 2405001E */ li $a1, 30 +/* 01AA9C 80019E9C 1000000C */ b .L80019ED0 +/* 01AAA0 80019EA0 00000000 */ nop +.L80019EA4: +/* 01AAA4 80019EA4 00003025 */ move $a2, $zero +/* 01AAA8 80019EA8 0C01B06B */ jal func_8006C1AC +/* 01AAAC 80019EAC 00003825 */ move $a3, $zero +/* 01AAB0 80019EB0 92C70016 */ lbu $a3, 0x16($s6) +/* 01AAB4 80019EB4 2404002C */ li $a0, 44 +/* 01AAB8 80019EB8 00002825 */ move $a1, $zero +/* 01AABC 80019EBC 2406FFFF */ li $a2, -1 +/* 01AAC0 80019EC0 0C01B06B */ jal func_8006C1AC +/* 01AAC4 80019EC4 24E7FFFF */ addiu $a3, $a3, -1 +/* 01AAC8 80019EC8 0C006A35 */ jal func_8001A8D4 +/* 01AACC 80019ECC 02802025 */ move $a0, $s4 +.L80019ED0: +/* 01AAD0 80019ED0 3C018012 */ lui $at, %hi(D_8011ADB4) # $at, 0x8012 +/* 01AAD4 80019ED4 10000236 */ b .L8001A7B0 +/* 01AAD8 80019ED8 AC34ADB4 */ sw $s4, %lo(D_8011ADB4)($at) +.L80019EDC: +/* 01AADC 80019EDC 3C078012 */ lui $a3, %hi(D_8011AEF0) # $a3, 0x8012 +/* 01AAE0 80019EE0 3C128012 */ lui $s2, %hi(D_8011AEF0) # $s2, 0x8012 +/* 01AAE4 80019EE4 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 +/* 01AAE8 80019EE8 8CE7AEF0 */ lw $a3, %lo(D_8011AEF0)($a3) +/* 01AAEC 80019EEC 00008025 */ move $s0, $zero +/* 01AAF0 80019EF0 256BAEE4 */ addiu $t3, %lo(D_8011AEE4) # addiu $t3, $t3, -0x511c +/* 01AAF4 80019EF4 2652AEF0 */ addiu $s2, %lo(D_8011AEF0) # addiu $s2, $s2, -0x5110 +/* 01AAF8 80019EF8 00005025 */ move $t2, $zero +/* 01AAFC 80019EFC 240D000A */ li $t5, 10 +.L80019F00: +/* 01AB00 80019F00 8D690000 */ lw $t1, ($t3) +/* 01AB04 80019F04 24060001 */ li $a2, 1 +/* 01AB08 80019F08 012A7021 */ addu $t6, $t1, $t2 +/* 01AB0C 80019F0C 8DD90000 */ lw $t9, ($t6) +/* 01AB10 80019F10 00002825 */ move $a1, $zero +/* 01AB14 80019F14 8F280064 */ lw $t0, 0x64($t9) +/* 01AB18 80019F18 00000000 */ nop +/* 01AB1C 80019F1C 850C01AA */ lh $t4, 0x1aa($t0) +/* 01AB20 80019F20 00000000 */ nop +.L80019F24: +/* 01AB24 80019F24 10B00023 */ beq $a1, $s0, .L80019FB4 +/* 01AB28 80019F28 0005C080 */ sll $t8, $a1, 2 +/* 01AB2C 80019F2C 01387821 */ addu $t7, $t1, $t8 +/* 01AB30 80019F30 8DEE0000 */ lw $t6, ($t7) +/* 01AB34 80019F34 811901D8 */ lb $t9, 0x1d8($t0) +/* 01AB38 80019F38 8DC20064 */ lw $v0, 0x64($t6) +/* 01AB3C 80019F3C 17200007 */ bnez $t9, .L80019F5C +/* 01AB40 80019F40 00000000 */ nop +/* 01AB44 80019F44 805801D8 */ lb $t8, 0x1d8($v0) +/* 01AB48 80019F48 00000000 */ nop +/* 01AB4C 80019F4C 13000003 */ beqz $t8, .L80019F5C +/* 01AB50 80019F50 00000000 */ nop +/* 01AB54 80019F54 10000017 */ b .L80019FB4 +/* 01AB58 80019F58 24C60001 */ addiu $a2, $a2, 1 +.L80019F5C: +/* 01AB5C 80019F5C 85030190 */ lh $v1, 0x190($t0) +/* 01AB60 80019F60 84440190 */ lh $a0, 0x190($v0) +/* 01AB64 80019F64 00000000 */ nop +/* 01AB68 80019F68 0064082A */ slt $at, $v1, $a0 +/* 01AB6C 80019F6C 10200003 */ beqz $at, .L80019F7C +/* 01AB70 80019F70 00000000 */ nop +/* 01AB74 80019F74 1000000F */ b .L80019FB4 +/* 01AB78 80019F78 24C60001 */ addiu $a2, $a2, 1 +.L80019F7C: +/* 01AB7C 80019F7C 1483000D */ bne $a0, $v1, .L80019FB4 +/* 01AB80 80019F80 00000000 */ nop +/* 01AB84 80019F84 844301A8 */ lh $v1, 0x1a8($v0) +/* 01AB88 80019F88 850401A8 */ lh $a0, 0x1a8($t0) +/* 01AB8C 80019F8C 00000000 */ nop +/* 01AB90 80019F90 0064082A */ slt $at, $v1, $a0 +/* 01AB94 80019F94 10200002 */ beqz $at, .L80019FA0 +/* 01AB98 80019F98 00000000 */ nop +/* 01AB9C 80019F9C 24C60001 */ addiu $a2, $a2, 1 +.L80019FA0: +/* 01ABA0 80019FA0 14640004 */ bne $v1, $a0, .L80019FB4 +/* 01ABA4 80019FA4 0205082A */ slt $at, $s0, $a1 +/* 01ABA8 80019FA8 10200002 */ beqz $at, .L80019FB4 +/* 01ABAC 80019FAC 00000000 */ nop +/* 01ABB0 80019FB0 24C60001 */ addiu $a2, $a2, 1 +.L80019FB4: +/* 01ABB4 80019FB4 24A50001 */ addiu $a1, $a1, 1 +/* 01ABB8 80019FB8 00A7082A */ slt $at, $a1, $a3 +/* 01ABBC 80019FBC 1420FFD9 */ bnez $at, .L80019F24 +/* 01ABC0 80019FC0 00000000 */ nop +/* 01ABC4 80019FC4 A50601AA */ sh $a2, 0x1aa($t0) +/* 01ABC8 80019FC8 83EE004B */ lb $t6, 0x4b($ra) +/* 01ABCC 80019FCC 810F0193 */ lb $t7, 0x193($t0) +/* 01ABD0 80019FD0 00000000 */ nop +/* 01ABD4 80019FD4 01EE082A */ slt $at, $t7, $t6 +/* 01ABD8 80019FD8 10200018 */ beqz $at, .L8001A03C +/* 01ABDC 80019FDC 00000000 */ nop +/* 01ABE0 80019FE0 850201AA */ lh $v0, 0x1aa($t0) +/* 01ABE4 80019FE4 00000000 */ nop +/* 01ABE8 80019FE8 15820013 */ bne $t4, $v0, .L8001A038 +/* 01ABEC 80019FEC 00000000 */ nop +/* 01ABF0 80019FF0 850301B0 */ lh $v1, 0x1b0($t0) +/* 01ABF4 80019FF4 00000000 */ nop +/* 01ABF8 80019FF8 28610002 */ slti $at, $v1, 2 +/* 01ABFC 80019FFC 10200007 */ beqz $at, .L8001A01C +/* 01AC00 8001A000 00000000 */ nop +/* 01AC04 8001A004 811901D6 */ lb $t9, 0x1d6($t0) +/* 01AC08 8001A008 24010004 */ li $at, 4 +/* 01AC0C 8001A00C 1321000B */ beq $t9, $at, .L8001A03C +/* 01AC10 8001A010 24780001 */ addiu $t8, $v1, 1 +/* 01AC14 8001A014 10000009 */ b .L8001A03C +/* 01AC18 8001A018 A51801B0 */ sh $t8, 0x1b0($t0) +.L8001A01C: +/* 01AC1C 8001A01C 850F01AE */ lh $t7, 0x1ae($t0) +/* 01AC20 8001A020 00000000 */ nop +/* 01AC24 8001A024 11E20005 */ beq $t7, $v0, .L8001A03C +/* 01AC28 8001A028 00000000 */ nop +/* 01AC2C 8001A02C A50D01B2 */ sh $t5, 0x1b2($t0) +/* 01AC30 8001A030 10000002 */ b .L8001A03C +/* 01AC34 8001A034 A50201AE */ sh $v0, 0x1ae($t0) +.L8001A038: +/* 01AC38 8001A038 A50001B0 */ sh $zero, 0x1b0($t0) +.L8001A03C: +/* 01AC3C 8001A03C 8E470000 */ lw $a3, ($s2) +/* 01AC40 8001A040 26100001 */ addiu $s0, $s0, 1 +/* 01AC44 8001A044 0207082A */ slt $at, $s0, $a3 +/* 01AC48 8001A048 1420FFAD */ bnez $at, .L80019F00 +/* 01AC4C 8001A04C 254A0004 */ addiu $t2, $t2, 4 +/* 01AC50 8001A050 3C118012 */ lui $s1, %hi(D_8011ADC0) # $s1, 0x8012 +/* 01AC54 8001A054 2631ADC0 */ addiu $s1, %lo(D_8011ADC0) # addiu $s1, $s1, -0x5240 +/* 01AC58 8001A058 00005025 */ move $t2, $zero +/* 01AC5C 8001A05C 2415FFFF */ li $s5, -1 +/* 01AC60 8001A060 24140001 */ li $s4, 1 +.L8001A064: +/* 01AC64 8001A064 8D6E0000 */ lw $t6, ($t3) +/* 01AC68 8001A068 00000000 */ nop +/* 01AC6C 8001A06C 01CAC821 */ addu $t9, $t6, $t2 +/* 01AC70 8001A070 8F380000 */ lw $t8, ($t9) +/* 01AC74 8001A074 83EE004B */ lb $t6, 0x4b($ra) +/* 01AC78 8001A078 8F080064 */ lw $t0, 0x64($t8) +/* 01AC7C 8001A07C 00000000 */ nop +/* 01AC80 8001A080 810F0193 */ lb $t7, 0x193($t0) +/* 01AC84 8001A084 00000000 */ nop +/* 01AC88 8001A088 01EE082A */ slt $at, $t7, $t6 +/* 01AC8C 8001A08C 14200028 */ bnez $at, .L8001A130 +/* 01AC90 8001A090 00000000 */ nop +/* 01AC94 8001A094 811901D8 */ lb $t9, 0x1d8($t0) +/* 01AC98 8001A098 00000000 */ nop +/* 01AC9C 8001A09C 17200024 */ bnez $t9, .L8001A130 +/* 01ACA0 8001A0A0 00000000 */ nop +/* 01ACA4 8001A0A4 AFBF0064 */ sw $ra, 0x64($sp) +/* 01ACA8 8001A0A8 AFA80080 */ sw $t0, 0x80($sp) +/* 01ACAC 8001A0AC 0C01B683 */ jal func_8006DA0C +/* 01ACB0 8001A0B0 AFAA0044 */ sw $t2, 0x44($sp) +/* 01ACB4 8001A0B4 8FA80080 */ lw $t0, 0x80($sp) +/* 01ACB8 8001A0B8 8FAA0044 */ lw $t2, 0x44($sp) +/* 01ACBC 8001A0BC 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 +/* 01ACC0 8001A0C0 8FBF0064 */ lw $ra, 0x64($sp) +/* 01ACC4 8001A0C4 24010004 */ li $at, 4 +/* 01ACC8 8001A0C8 10410019 */ beq $v0, $at, .L8001A130 +/* 01ACCC 8001A0CC 256BAEE4 */ addiu $t3, %lo(D_8011AEE4) # addiu $t3, $t3, -0x511c +/* 01ACD0 8001A0D0 A11401D8 */ sb $s4, 0x1d8($t0) +/* 01ACD4 8001A0D4 8E380000 */ lw $t8, ($s1) +/* 01ACD8 8001A0D8 00000000 */ nop +/* 01ACDC 8001A0DC A51801AC */ sh $t8, 0x1ac($t0) +/* 01ACE0 8001A0E0 8E220000 */ lw $v0, ($s1) +/* 01ACE4 8001A0E4 00000000 */ nop +/* 01ACE8 8001A0E8 16820010 */ bne $s4, $v0, .L8001A12C +/* 01ACEC 8001A0EC 244E0001 */ addiu $t6, $v0, 1 +/* 01ACF0 8001A0F0 850F0000 */ lh $t7, ($t0) +/* 01ACF4 8001A0F4 2404023C */ li $a0, 572 +/* 01ACF8 8001A0F8 16AF000B */ bne $s5, $t7, .L8001A128 +/* 01ACFC 8001A0FC 00002825 */ move $a1, $zero +/* 01AD00 8001A100 AFBF0064 */ sw $ra, 0x64($sp) +/* 01AD04 8001A104 AFA80080 */ sw $t0, 0x80($sp) +/* 01AD08 8001A108 0C000741 */ jal func_80001D04 +/* 01AD0C 8001A10C AFAA0044 */ sw $t2, 0x44($sp) +/* 01AD10 8001A110 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 +/* 01AD14 8001A114 8FA80080 */ lw $t0, 0x80($sp) +/* 01AD18 8001A118 8FAA0044 */ lw $t2, 0x44($sp) +/* 01AD1C 8001A11C 8FBF0064 */ lw $ra, 0x64($sp) +/* 01AD20 8001A120 8E220000 */ lw $v0, ($s1) +/* 01AD24 8001A124 256BAEE4 */ addiu $t3, %lo(D_8011AEE4) # addiu $t3, $t3, -0x511c +.L8001A128: +/* 01AD28 8001A128 244E0001 */ addiu $t6, $v0, 1 +.L8001A12C: +/* 01AD2C 8001A12C AE2E0000 */ sw $t6, ($s1) +.L8001A130: +/* 01AD30 8001A130 8E470000 */ lw $a3, ($s2) +/* 01AD34 8001A134 85190000 */ lh $t9, ($t0) +/* 01AD38 8001A138 810201D8 */ lb $v0, 0x1d8($t0) +/* 01AD3C 8001A13C 12B9000C */ beq $s5, $t9, .L8001A170 +/* 01AD40 8001A140 00071880 */ sll $v1, $a3, 2 +/* 01AD44 8001A144 87B8008A */ lh $t8, 0x8a($sp) +/* 01AD48 8001A148 87AE0088 */ lh $t6, 0x88($sp) +/* 01AD4C 8001A14C 270F0001 */ addiu $t7, $t8, 1 +/* 01AD50 8001A150 1040000C */ beqz $v0, .L8001A184 +/* 01AD54 8001A154 A7AF008A */ sh $t7, 0x8a($sp) +/* 01AD58 8001A158 26730001 */ addiu $s3, $s3, 1 +/* 01AD5C 8001A15C 0013C400 */ sll $t8, $s3, 0x10 +/* 01AD60 8001A160 25D90001 */ addiu $t9, $t6, 1 +/* 01AD64 8001A164 A7B90088 */ sh $t9, 0x88($sp) +/* 01AD68 8001A168 10000006 */ b .L8001A184 +/* 01AD6C 8001A16C 00189C03 */ sra $s3, $t8, 0x10 +.L8001A170: +/* 01AD70 8001A170 10400004 */ beqz $v0, .L8001A184 +/* 01AD74 8001A174 00000000 */ nop +/* 01AD78 8001A178 26730001 */ addiu $s3, $s3, 1 +/* 01AD7C 8001A17C 00137400 */ sll $t6, $s3, 0x10 +/* 01AD80 8001A180 000E9C03 */ sra $s3, $t6, 0x10 +.L8001A184: +/* 01AD84 8001A184 254A0004 */ addiu $t2, $t2, 4 +/* 01AD88 8001A188 0143082A */ slt $at, $t2, $v1 +/* 01AD8C 8001A18C 1420FFB5 */ bnez $at, .L8001A064 +/* 01AD90 8001A190 00000000 */ nop +/* 01AD94 8001A194 3C098012 */ lui $t1, %hi(D_8011AEE8) # $t1, 0x8012 +/* 01AD98 8001A198 00008025 */ move $s0, $zero +/* 01AD9C 8001A19C 2529AEE8 */ addiu $t1, %lo(D_8011AEE8) # addiu $t1, $t1, -0x5118 +/* 01ADA0 8001A1A0 00005025 */ move $t2, $zero +.L8001A1A4: +/* 01ADA4 8001A1A4 8D380000 */ lw $t8, ($t1) +/* 01ADA8 8001A1A8 26100001 */ addiu $s0, $s0, 1 +/* 01ADAC 8001A1AC 030A7821 */ addu $t7, $t8, $t2 +/* 01ADB0 8001A1B0 ADE00000 */ sw $zero, ($t7) +/* 01ADB4 8001A1B4 8E4E0000 */ lw $t6, ($s2) +/* 01ADB8 8001A1B8 254A0004 */ addiu $t2, $t2, 4 +/* 01ADBC 8001A1BC 020E082A */ slt $at, $s0, $t6 +/* 01ADC0 8001A1C0 1420FFF8 */ bnez $at, .L8001A1A4 +/* 01ADC4 8001A1C4 00000000 */ nop +/* 01ADC8 8001A1C8 00008025 */ move $s0, $zero +/* 01ADCC 8001A1CC 00005025 */ move $t2, $zero +.L8001A1D0: +/* 01ADD0 8001A1D0 8D790000 */ lw $t9, ($t3) +/* 01ADD4 8001A1D4 00000000 */ nop +/* 01ADD8 8001A1D8 032AC021 */ addu $t8, $t9, $t2 +/* 01ADDC 8001A1DC 8F020000 */ lw $v0, ($t8) +/* 01ADE0 8001A1E0 00000000 */ nop +/* 01ADE4 8001A1E4 8C480064 */ lw $t0, 0x64($v0) +/* 01ADE8 8001A1E8 00000000 */ nop +/* 01ADEC 8001A1EC 810F01D8 */ lb $t7, 0x1d8($t0) +/* 01ADF0 8001A1F0 00000000 */ nop +/* 01ADF4 8001A1F4 11E00004 */ beqz $t7, .L8001A208 +/* 01ADF8 8001A1F8 00000000 */ nop +/* 01ADFC 8001A1FC 850601AC */ lh $a2, 0x1ac($t0) +/* 01AE00 8001A200 10000004 */ b .L8001A214 +/* 01AE04 8001A204 24C6FFFF */ addiu $a2, $a2, -1 +.L8001A208: +/* 01AE08 8001A208 850601AA */ lh $a2, 0x1aa($t0) +/* 01AE0C 8001A20C 00000000 */ nop +/* 01AE10 8001A210 24C6FFFF */ addiu $a2, $a2, -1 +.L8001A214: +/* 01AE14 8001A214 8D2E0000 */ lw $t6, ($t1) +/* 01AE18 8001A218 0006C880 */ sll $t9, $a2, 2 +/* 01AE1C 8001A21C 01D9C021 */ addu $t8, $t6, $t9 +/* 01AE20 8001A220 AF020000 */ sw $v0, ($t8) +/* 01AE24 8001A224 8E470000 */ lw $a3, ($s2) +/* 01AE28 8001A228 26100001 */ addiu $s0, $s0, 1 +/* 01AE2C 8001A22C 0207082A */ slt $at, $s0, $a3 +/* 01AE30 8001A230 1420FFE7 */ bnez $at, .L8001A1D0 +/* 01AE34 8001A234 254A0004 */ addiu $t2, $t2, 4 +/* 01AE38 8001A238 00008025 */ move $s0, $zero +/* 01AE3C 8001A23C 00002825 */ move $a1, $zero +.L8001A240: +/* 01AE40 8001A240 18E00016 */ blez $a3, .L8001A29C +/* 01AE44 8001A244 00002025 */ move $a0, $zero +/* 01AE48 8001A248 8D6F0000 */ lw $t7, ($t3) +/* 01AE4C 8001A24C 00107080 */ sll $t6, $s0, 2 +/* 01AE50 8001A250 01EEC821 */ addu $t9, $t7, $t6 +/* 01AE54 8001A254 8F220000 */ lw $v0, ($t9) +/* 01AE58 8001A258 8D230000 */ lw $v1, ($t1) +/* 01AE5C 8001A25C 00000000 */ nop +/* 01AE60 8001A260 0005C080 */ sll $t8, $a1, 2 +.L8001A264: +/* 01AE64 8001A264 00787821 */ addu $t7, $v1, $t8 +/* 01AE68 8001A268 8DEE0000 */ lw $t6, ($t7) +/* 01AE6C 8001A26C 00000000 */ nop +/* 01AE70 8001A270 15C20006 */ bne $t6, $v0, .L8001A28C +/* 01AE74 8001A274 24A50001 */ addiu $a1, $a1, 1 +/* 01AE78 8001A278 00142600 */ sll $a0, $s4, 0x18 +/* 01AE7C 8001A27C 0004CE03 */ sra $t9, $a0, 0x18 +/* 01AE80 8001A280 03202025 */ move $a0, $t9 +/* 01AE84 8001A284 00E02825 */ move $a1, $a3 +/* 01AE88 8001A288 24A50001 */ addiu $a1, $a1, 1 +.L8001A28C: +/* 01AE8C 8001A28C 00A7082A */ slt $at, $a1, $a3 +/* 01AE90 8001A290 1420FFF4 */ bnez $at, .L8001A264 +/* 01AE94 8001A294 0005C080 */ sll $t8, $a1, 2 +/* 01AE98 8001A298 00002825 */ move $a1, $zero +.L8001A29C: +/* 01AE9C 8001A29C 14800018 */ bnez $a0, .L8001A300 +/* 01AEA0 8001A2A0 00000000 */ nop +/* 01AEA4 8001A2A4 18E00016 */ blez $a3, .L8001A300 +/* 01AEA8 8001A2A8 00000000 */ nop +.L8001A2AC: +/* 01AEAC 8001A2AC 8D380000 */ lw $t8, ($t1) +/* 01AEB0 8001A2B0 00057880 */ sll $t7, $a1, 2 +/* 01AEB4 8001A2B4 030F1021 */ addu $v0, $t8, $t7 +/* 01AEB8 8001A2B8 8C4E0000 */ lw $t6, ($v0) +/* 01AEBC 8001A2BC 00000000 */ nop +/* 01AEC0 8001A2C0 15C0000B */ bnez $t6, .L8001A2F0 +/* 01AEC4 8001A2C4 24A50001 */ addiu $a1, $a1, 1 +/* 01AEC8 8001A2C8 8D790000 */ lw $t9, ($t3) +/* 01AECC 8001A2CC 0010C080 */ sll $t8, $s0, 2 +/* 01AED0 8001A2D0 03387821 */ addu $t7, $t9, $t8 +/* 01AED4 8001A2D4 8DEE0000 */ lw $t6, ($t7) +/* 01AED8 8001A2D8 00000000 */ nop +/* 01AEDC 8001A2DC AC4E0000 */ sw $t6, ($v0) +/* 01AEE0 8001A2E0 8E470000 */ lw $a3, ($s2) +/* 01AEE4 8001A2E4 00000000 */ nop +/* 01AEE8 8001A2E8 00E02825 */ move $a1, $a3 +/* 01AEEC 8001A2EC 24A50001 */ addiu $a1, $a1, 1 +.L8001A2F0: +/* 01AEF0 8001A2F0 00A7082A */ slt $at, $a1, $a3 +/* 01AEF4 8001A2F4 1420FFED */ bnez $at, .L8001A2AC +/* 01AEF8 8001A2F8 00000000 */ nop +/* 01AEFC 8001A2FC 00002825 */ move $a1, $zero +.L8001A300: +/* 01AF00 8001A300 26100001 */ addiu $s0, $s0, 1 +/* 01AF04 8001A304 0207082A */ slt $at, $s0, $a3 +/* 01AF08 8001A308 1420FFCD */ bnez $at, .L8001A240 +/* 01AF0C 8001A30C 00000000 */ nop +/* 01AF10 8001A310 00008025 */ move $s0, $zero +.L8001A314: +/* 01AF14 8001A314 02002025 */ move $a0, $s0 +/* 01AF18 8001A318 0C01A955 */ jal func_8006A554 +/* 01AF1C 8001A31C AFA50094 */ sw $a1, 0x94($sp) +/* 01AF20 8001A320 8FA50094 */ lw $a1, 0x94($sp) +/* 01AF24 8001A324 26100001 */ addiu $s0, $s0, 1 +/* 01AF28 8001A328 2A010004 */ slti $at, $s0, 4 +/* 01AF2C 8001A32C 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 +/* 01AF30 8001A330 256BAEE4 */ addiu $t3, %lo(D_8011AEE4) # addiu $t3, $t3, -0x511c +/* 01AF34 8001A334 1420FFF7 */ bnez $at, .L8001A314 +/* 01AF38 8001A338 00A22825 */ or $a1, $a1, $v0 +/* 01AF3C 8001A33C 3C198012 */ lui $t9, %hi(D_8011AEF6) # $t9, 0x8012 +/* 01AF40 8001A340 8339AEF6 */ lb $t9, %lo(D_8011AEF6)($t9) +/* 01AF44 8001A344 87B80088 */ lh $t8, 0x88($sp) +/* 01AF48 8001A348 13200007 */ beqz $t9, .L8001A368 +/* 01AF4C 8001A34C 3C0F8012 */ lui $t7, %hi(D_8011AD3C) # $t7, 0x8012 +/* 01AF50 8001A350 13000005 */ beqz $t8, .L8001A368 +/* 01AF54 8001A354 00000000 */ nop +/* 01AF58 8001A358 0C008B86 */ jal func_80022E18 +/* 01AF5C 8001A35C 00002025 */ move $a0, $zero +/* 01AF60 8001A360 10000114 */ b .L8001A7B4 +/* 01AF64 8001A364 8FBF0034 */ lw $ra, 0x34($sp) +.L8001A368: +/* 01AF68 8001A368 81EFAD3C */ lb $t7, %lo(D_8011AD3C)($t7) +/* 01AF6C 8001A36C 3C188012 */ lui $t8, %hi(D_8011ADB4) # $t8, 0x8012 +/* 01AF70 8001A370 11E00016 */ beqz $t7, .L8001A3CC +/* 01AF74 8001A374 00000000 */ nop +/* 01AF78 8001A378 12600014 */ beqz $s3, .L8001A3CC +/* 01AF7C 8001A37C 00000000 */ nop +/* 01AF80 8001A380 8D6E0000 */ lw $t6, ($t3) +/* 01AF84 8001A384 00000000 */ nop +/* 01AF88 8001A388 8DD90000 */ lw $t9, ($t6) +/* 01AF8C 8001A38C 00000000 */ nop +/* 01AF90 8001A390 8F280064 */ lw $t0, 0x64($t9) +/* 01AF94 8001A394 00000000 */ nop +/* 01AF98 8001A398 811801D8 */ lb $t8, 0x1d8($t0) +/* 01AF9C 8001A39C 00000000 */ nop +/* 01AFA0 8001A3A0 17000104 */ bnez $t8, .L8001A7B4 +/* 01AFA4 8001A3A4 8FBF0034 */ lw $ra, 0x34($sp) +/* 01AFA8 8001A3A8 A11401D8 */ sb $s4, 0x1d8($t0) +/* 01AFAC 8001A3AC 8E2F0000 */ lw $t7, ($s1) +/* 01AFB0 8001A3B0 00000000 */ nop +/* 01AFB4 8001A3B4 A50F01AC */ sh $t7, 0x1ac($t0) +/* 01AFB8 8001A3B8 8E2E0000 */ lw $t6, ($s1) +/* 01AFBC 8001A3BC 00000000 */ nop +/* 01AFC0 8001A3C0 25D90001 */ addiu $t9, $t6, 1 +/* 01AFC4 8001A3C4 100000FA */ b .L8001A7B0 +/* 01AFC8 8001A3C8 AE390000 */ sw $t9, ($s1) +.L8001A3CC: +/* 01AFCC 8001A3CC 8F18ADB4 */ lw $t8, %lo(D_8011ADB4)($t8) +/* 01AFD0 8001A3D0 00000000 */ nop +/* 01AFD4 8001A3D4 170000F7 */ bnez $t8, .L8001A7B4 +/* 01AFD8 8001A3D8 8FBF0034 */ lw $ra, 0x34($sp) +/* 01AFDC 8001A3DC 0C027B20 */ jal func_8009EC80 +/* 01AFE0 8001A3E0 A3A0005B */ sb $zero, 0x5b($sp) +/* 01AFE4 8001A3E4 3C098012 */ lui $t1, %hi(D_8011AEE8) # $t1, 0x8012 +/* 01AFE8 8001A3E8 10400010 */ beqz $v0, .L8001A42C +/* 01AFEC 8001A3EC 2529AEE8 */ addiu $t1, %lo(D_8011AEE8) # addiu $t1, $t1, -0x5118 +/* 01AFF0 8001A3F0 87AF0088 */ lh $t7, 0x88($sp) +/* 01AFF4 8001A3F4 00000000 */ nop +/* 01AFF8 8001A3F8 19E0000D */ blez $t7, .L8001A430 +/* 01AFFC 8001A3FC 87AE0088 */ lh $t6, 0x88($sp) +/* 01B000 8001A400 0C02658B */ jal func_8009962C +/* 01B004 8001A404 00000000 */ nop +/* 01B008 8001A408 3C098012 */ lui $t1, %hi(D_8011AEE8) # $t1, 0x8012 +/* 01B00C 8001A40C 14400007 */ bnez $v0, .L8001A42C +/* 01B010 8001A410 2529AEE8 */ addiu $t1, %lo(D_8011AEE8) # addiu $t1, $t1, -0x5118 +/* 01B014 8001A414 0C0069F6 */ jal func_8001A7D8 +/* 01B018 8001A418 02C02025 */ move $a0, $s6 +/* 01B01C 8001A41C 3C098012 */ lui $t1, %hi(D_8011AEE8) # $t1, 0x8012 +/* 01B020 8001A420 10400002 */ beqz $v0, .L8001A42C +/* 01B024 8001A424 2529AEE8 */ addiu $t1, %lo(D_8011AEE8) # addiu $t1, $t1, -0x5118 +/* 01B028 8001A428 A3B4005B */ sb $s4, 0x5b($sp) +.L8001A42C: +/* 01B02C 8001A42C 87AE0088 */ lh $t6, 0x88($sp) +.L8001A430: +/* 01B030 8001A430 87B9008A */ lh $t9, 0x8a($sp) +/* 01B034 8001A434 00000000 */ nop +/* 01B038 8001A438 11D9000D */ beq $t6, $t9, .L8001A470 +/* 01B03C 8001A43C 2B210002 */ slti $at, $t9, 2 +/* 01B040 8001A440 14200008 */ bnez $at, .L8001A464 +/* 01B044 8001A444 83AE005B */ lb $t6, 0x5b($sp) +/* 01B048 8001A448 8E580000 */ lw $t8, ($s2) +/* 01B04C 8001A44C 00000000 */ nop +/* 01B050 8001A450 270FFFFF */ addiu $t7, $t8, -1 +/* 01B054 8001A454 026F082A */ slt $at, $s3, $t7 +/* 01B058 8001A458 10200006 */ beqz $at, .L8001A474 +/* 01B05C 8001A45C 87B90088 */ lh $t9, 0x88($sp) +/* 01B060 8001A460 83AE005B */ lb $t6, 0x5b($sp) +.L8001A464: +/* 01B064 8001A464 00000000 */ nop +/* 01B068 8001A468 11C000D2 */ beqz $t6, .L8001A7B4 +/* 01B06C 8001A46C 8FBF0034 */ lw $ra, 0x34($sp) +.L8001A470: +/* 01B070 8001A470 87B90088 */ lh $t9, 0x88($sp) +.L8001A474: +/* 01B074 8001A474 87B8008A */ lh $t8, 0x8a($sp) +/* 01B078 8001A478 00000000 */ nop +/* 01B07C 8001A47C 13380029 */ beq $t9, $t8, .L8001A524 +/* 01B080 8001A480 00008025 */ move $s0, $zero +/* 01B084 8001A484 00005025 */ move $t2, $zero +.L8001A488: +/* 01B088 8001A488 8D2F0000 */ lw $t7, ($t1) +/* 01B08C 8001A48C 00000000 */ nop +/* 01B090 8001A490 01EA7021 */ addu $t6, $t7, $t2 +/* 01B094 8001A494 8DD90000 */ lw $t9, ($t6) +/* 01B098 8001A498 00000000 */ nop +/* 01B09C 8001A49C 8F280064 */ lw $t0, 0x64($t9) +/* 01B0A0 8001A4A0 00000000 */ nop +/* 01B0A4 8001A4A4 811801D8 */ lb $t8, 0x1d8($t0) +/* 01B0A8 8001A4A8 00000000 */ nop +/* 01B0AC 8001A4AC 17000018 */ bnez $t8, .L8001A510 +/* 01B0B0 8001A4B0 00000000 */ nop +/* 01B0B4 8001A4B4 85040000 */ lh $a0, ($t0) +/* 01B0B8 8001A4B8 00000000 */ nop +/* 01B0BC 8001A4BC 0480000C */ bltz $a0, .L8001A4F0 +/* 01B0C0 8001A4C0 00000000 */ nop +/* 01B0C4 8001A4C4 AFA80080 */ sw $t0, 0x80($sp) +/* 01B0C8 8001A4C8 0C01997A */ jal func_800665E8 +/* 01B0CC 8001A4CC AFAA0044 */ sw $t2, 0x44($sp) +/* 01B0D0 8001A4D0 0C01A73F */ jal func_80069CFC +/* 01B0D4 8001A4D4 00000000 */ nop +/* 01B0D8 8001A4D8 8FA80080 */ lw $t0, 0x80($sp) +/* 01B0DC 8001A4DC 3C098012 */ lui $t1, %hi(D_8011AEE8) # $t1, 0x8012 +/* 01B0E0 8001A4E0 8FAA0044 */ lw $t2, 0x44($sp) +/* 01B0E4 8001A4E4 240F0005 */ li $t7, 5 +/* 01B0E8 8001A4E8 2529AEE8 */ addiu $t1, %lo(D_8011AEE8) # addiu $t1, $t1, -0x5118 +/* 01B0EC 8001A4EC A44F0036 */ sh $t7, 0x36($v0) +.L8001A4F0: +/* 01B0F0 8001A4F0 A11401D8 */ sb $s4, 0x1d8($t0) +/* 01B0F4 8001A4F4 8E2E0000 */ lw $t6, ($s1) +/* 01B0F8 8001A4F8 00000000 */ nop +/* 01B0FC 8001A4FC A50E01AC */ sh $t6, 0x1ac($t0) +/* 01B100 8001A500 8E390000 */ lw $t9, ($s1) +/* 01B104 8001A504 00000000 */ nop +/* 01B108 8001A508 27380001 */ addiu $t8, $t9, 1 +/* 01B10C 8001A50C AE380000 */ sw $t8, ($s1) +.L8001A510: +/* 01B110 8001A510 8E4F0000 */ lw $t7, ($s2) +/* 01B114 8001A514 26100001 */ addiu $s0, $s0, 1 +/* 01B118 8001A518 020F082A */ slt $at, $s0, $t7 +/* 01B11C 8001A51C 1420FFDA */ bnez $at, .L8001A488 +/* 01B120 8001A520 254A0004 */ addiu $t2, $t2, 4 +.L8001A524: +/* 01B124 8001A524 3C03A460 */ lui $v1, (0xA4600010 >> 16) # lui $v1, 0xa460 +/* 01B128 8001A528 34630010 */ ori $v1, (0xA4600010 & 0xFFFF) # ori $v1, $v1, 0x10 +/* 01B12C 8001A52C 8C620000 */ lw $v0, ($v1) +/* 01B130 8001A530 00002025 */ move $a0, $zero +/* 01B134 8001A534 304E0003 */ andi $t6, $v0, 3 +/* 01B138 8001A538 11C00006 */ beqz $t6, .L8001A554 +/* 01B13C 8001A53C 3C18B000 */ lui $t8, %hi(D_B0000574) # $t8, 0xb000 +.L8001A540: +/* 01B140 8001A540 8C620000 */ lw $v0, ($v1) +/* 01B144 8001A544 00000000 */ nop +/* 01B148 8001A548 30590003 */ andi $t9, $v0, 3 +/* 01B14C 8001A54C 1720FFFC */ bnez $t9, .L8001A540 +/* 01B150 8001A550 00000000 */ nop +.L8001A554: +/* 01B154 8001A554 8F0F0574 */ lw $t7, %lo(D_B0000574)($t8) +/* 01B158 8001A558 24016C07 */ li $at, 27655 +/* 01B15C 8001A55C 31EEFFFF */ andi $t6, $t7, 0xffff +/* 01B160 8001A560 11C10004 */ beq $t6, $at, .L8001A574 +/* 01B164 8001A564 3C188012 */ lui $t8, %hi(D_8011AEF5) # $t8, 0x8012 +/* 01B168 8001A568 00142600 */ sll $a0, $s4, 0x18 +/* 01B16C 8001A56C 0004CE03 */ sra $t9, $a0, 0x18 +/* 01B170 8001A570 03202025 */ move $a0, $t9 +.L8001A574: +/* 01B174 8001A574 9318AEF5 */ lbu $t8, %lo(D_8011AEF5)($t8) +/* 01B178 8001A578 3C13800E */ lui $s3, %hi(D_800DC744) # $s3, 0x800e +/* 01B17C 8001A57C 17000016 */ bnez $t8, .L8001A5D8 +/* 01B180 8001A580 2673C744 */ addiu $s3, %lo(D_800DC744) # addiu $s3, $s3, -0x38bc +/* 01B184 8001A584 00008025 */ move $s0, $zero +/* 01B188 8001A588 00005025 */ move $t2, $zero +/* 01B18C 8001A58C 24020018 */ li $v0, 24 +.L8001A590: +/* 01B190 8001A590 8D2F0000 */ lw $t7, ($t1) +/* 01B194 8001A594 00000000 */ nop +/* 01B198 8001A598 01EA7021 */ addu $t6, $t7, $t2 +/* 01B19C 8001A59C 8DD90000 */ lw $t9, ($t6) +/* 01B1A0 8001A5A0 254A0004 */ addiu $t2, $t2, 4 +/* 01B1A4 8001A5A4 8F280064 */ lw $t0, 0x64($t9) +/* 01B1A8 8001A5A8 00000000 */ nop +/* 01B1AC 8001A5AC 81060002 */ lb $a2, 2($t0) +/* 01B1B0 8001A5B0 00000000 */ nop +/* 01B1B4 8001A5B4 00C20019 */ multu $a2, $v0 +/* 01B1B8 8001A5B8 0000C012 */ mflo $t8 +/* 01B1BC 8001A5BC 02D87821 */ addu $t7, $s6, $t8 +/* 01B1C0 8001A5C0 A1F0005A */ sb $s0, 0x5a($t7) +/* 01B1C4 8001A5C4 8E4E0000 */ lw $t6, ($s2) +/* 01B1C8 8001A5C8 26100001 */ addiu $s0, $s0, 1 +/* 01B1CC 8001A5CC 020E082A */ slt $at, $s0, $t6 +/* 01B1D0 8001A5D0 1420FFEF */ bnez $at, .L8001A590 +/* 01B1D4 8001A5D4 00000000 */ nop +.L8001A5D8: +/* 01B1D8 8001A5D8 A2600000 */ sb $zero, ($s3) +/* 01B1DC 8001A5DC 0C027B20 */ jal func_8009EC80 +/* 01B1E0 8001A5E0 A3A4005A */ sb $a0, 0x5a($sp) +/* 01B1E4 8001A5E4 3C098012 */ lui $t1, %hi(D_8011AEE8) # $t1, 0x8012 +/* 01B1E8 8001A5E8 10400008 */ beqz $v0, .L8001A60C +/* 01B1EC 8001A5EC 2529AEE8 */ addiu $t1, %lo(D_8011AEE8) # addiu $t1, $t1, -0x5118 +/* 01B1F0 8001A5F0 82D90072 */ lb $t9, 0x72($s6) +/* 01B1F4 8001A5F4 82D8005A */ lb $t8, 0x5a($s6) +/* 01B1F8 8001A5F8 00000000 */ nop +/* 01B1FC 8001A5FC 0338082A */ slt $at, $t9, $t8 +/* 01B200 8001A600 10200002 */ beqz $at, .L8001A60C +/* 01B204 8001A604 00000000 */ nop +/* 01B208 8001A608 A2740000 */ sb $s4, ($s3) +.L8001A60C: +/* 01B20C 8001A60C 8D2F0000 */ lw $t7, ($t1) +/* 01B210 8001A610 3C118012 */ lui $s1, %hi(D_8011ADC4) # $s1, 0x8012 +/* 01B214 8001A614 8DEE0000 */ lw $t6, ($t7) +/* 01B218 8001A618 2631ADC4 */ addiu $s1, %lo(D_8011ADC4) # addiu $s1, $s1, -0x523c +/* 01B21C 8001A61C 8DC80064 */ lw $t0, 0x64($t6) +/* 01B220 8001A620 A2200000 */ sb $zero, ($s1) +/* 01B224 8001A624 92D9004A */ lbu $t9, 0x4a($s6) +/* 01B228 8001A628 00000000 */ nop +/* 01B22C 8001A62C 12990006 */ beq $s4, $t9, .L8001A648 +/* 01B230 8001A630 00000000 */ nop +/* 01B234 8001A634 0C027B20 */ jal func_8009EC80 +/* 01B238 8001A638 AFA80080 */ sw $t0, 0x80($sp) +/* 01B23C 8001A63C 8FA80080 */ lw $t0, 0x80($sp) +/* 01B240 8001A640 1040000E */ beqz $v0, .L8001A67C +/* 01B244 8001A644 00000000 */ nop +.L8001A648: +/* 01B248 8001A648 85180000 */ lh $t8, ($t0) +/* 01B24C 8001A64C 00000000 */ nop +/* 01B250 8001A650 12B8000A */ beq $s5, $t8, .L8001A67C +/* 01B254 8001A654 00000000 */ nop +/* 01B258 8001A658 0C0270B4 */ jal func_8009C2D0 +/* 01B25C 8001A65C 00000000 */ nop +/* 01B260 8001A660 14400006 */ bnez $v0, .L8001A67C +/* 01B264 8001A664 00000000 */ nop +/* 01B268 8001A668 0C02658B */ jal func_8009962C +/* 01B26C 8001A66C 00000000 */ nop +/* 01B270 8001A670 14400002 */ bnez $v0, .L8001A67C +/* 01B274 8001A674 00000000 */ nop +/* 01B278 8001A678 A2340000 */ sb $s4, ($s1) +.L8001A67C: +/* 01B27C 8001A67C 822F0000 */ lb $t7, ($s1) +/* 01B280 8001A680 83AE005B */ lb $t6, 0x5b($sp) +/* 01B284 8001A684 11E00006 */ beqz $t7, .L8001A6A0 +/* 01B288 8001A688 00008025 */ move $s0, $zero +/* 01B28C 8001A68C 15C00005 */ bnez $t6, .L8001A6A4 +/* 01B290 8001A690 83B9005B */ lb $t9, 0x5b($sp) +/* 01B294 8001A694 0C0069F6 */ jal func_8001A7D8 +/* 01B298 8001A698 02C02025 */ move $a0, $s6 +/* 01B29C 8001A69C 00408025 */ move $s0, $v0 +.L8001A6A0: +/* 01B2A0 8001A6A0 83B9005B */ lb $t9, 0x5b($sp) +.L8001A6A4: +/* 01B2A4 8001A6A4 00000000 */ nop +/* 01B2A8 8001A6A8 13200004 */ beqz $t9, .L8001A6BC +/* 01B2AC 8001A6AC 83B8005A */ lb $t8, 0x5a($sp) +/* 01B2B0 8001A6B0 A2340000 */ sb $s4, ($s1) +/* 01B2B4 8001A6B4 02808025 */ move $s0, $s4 +/* 01B2B8 8001A6B8 83B8005A */ lb $t8, 0x5a($sp) +.L8001A6BC: +/* 01B2BC 8001A6BC 00000000 */ nop +/* 01B2C0 8001A6C0 13000003 */ beqz $t8, .L8001A6D0 +/* 01B2C4 8001A6C4 00000000 */ nop +/* 01B2C8 8001A6C8 00008025 */ move $s0, $zero +/* 01B2CC 8001A6CC A2200000 */ sb $zero, ($s1) +.L8001A6D0: +/* 01B2D0 8001A6D0 1600001C */ bnez $s0, .L8001A744 +/* 01B2D4 8001A6D4 00000000 */ nop +/* 01B2D8 8001A6D8 0C027B20 */ jal func_8009EC80 +/* 01B2DC 8001A6DC 00000000 */ nop +/* 01B2E0 8001A6E0 10400013 */ beqz $v0, .L8001A730 +/* 01B2E4 8001A6E4 00000000 */ nop +/* 01B2E8 8001A6E8 826F0000 */ lb $t7, ($s3) +/* 01B2EC 8001A6EC 3C19800E */ lui $t9, %hi(D_800DC73C) # $t9, 0x800e +/* 01B2F0 8001A6F0 11E0000A */ beqz $t7, .L8001A71C +/* 01B2F4 8001A6F4 00000000 */ nop +/* 01B2F8 8001A6F8 0C01BCE6 */ jal func_8006F398 +/* 01B2FC 8001A6FC A2600000 */ sb $zero, ($s3) +/* 01B300 8001A700 3C0E800E */ lui $t6, %hi(D_800DC73C) # $t6, 0x800e +/* 01B304 8001A704 81CEC73C */ lb $t6, %lo(D_800DC73C)($t6) +/* 01B308 8001A708 3C01800E */ lui $at, %hi(D_800DC748) # $at, 0x800e +/* 01B30C 8001A70C 11C00008 */ beqz $t6, .L8001A730 +/* 01B310 8001A710 00000000 */ nop +/* 01B314 8001A714 10000006 */ b .L8001A730 +/* 01B318 8001A718 A034C748 */ sb $s4, %lo(D_800DC748)($at) +.L8001A71C: +/* 01B31C 8001A71C 8339C73C */ lb $t9, %lo(D_800DC73C)($t9) +/* 01B320 8001A720 3C01800E */ lui $at, %hi(D_800DC748) # $at, 0x800e +/* 01B324 8001A724 13200002 */ beqz $t9, .L8001A730 +/* 01B328 8001A728 00000000 */ nop +/* 01B32C 8001A72C A034C748 */ sb $s4, %lo(D_800DC748)($at) +.L8001A730: +/* 01B330 8001A730 82240000 */ lb $a0, ($s1) +/* 01B334 8001A734 0C0251A2 */ jal func_80094688 +/* 01B338 8001A738 2405001E */ li $a1, 30 +/* 01B33C 8001A73C 10000015 */ b .L8001A794 +/* 01B340 8001A740 00000000 */ nop +.L8001A744: +/* 01B344 8001A744 92CF0048 */ lbu $t7, 0x48($s6) +/* 01B348 8001A748 8ED80000 */ lw $t8, ($s6) +/* 01B34C 8001A74C 000F7040 */ sll $t6, $t7, 1 +/* 01B350 8001A750 030E1021 */ addu $v0, $t8, $t6 +/* 01B354 8001A754 84590000 */ lh $t9, ($v0) +/* 01B358 8001A758 00000000 */ nop +/* 01B35C 8001A75C 272F0001 */ addiu $t7, $t9, 1 +/* 01B360 8001A760 A44F0000 */ sh $t7, ($v0) +/* 01B364 8001A764 92D80048 */ lbu $t8, 0x48($s6) +/* 01B368 8001A768 00000000 */ nop +/* 01B36C 8001A76C 13000007 */ beqz $t8, .L8001A78C +/* 01B370 8001A770 00000000 */ nop +/* 01B374 8001A774 8EC20000 */ lw $v0, ($s6) +/* 01B378 8001A778 00000000 */ nop +/* 01B37C 8001A77C 844E0000 */ lh $t6, ($v0) +/* 01B380 8001A780 00000000 */ nop +/* 01B384 8001A784 25D90001 */ addiu $t9, $t6, 1 +/* 01B388 8001A788 A4590000 */ sh $t9, ($v0) +.L8001A78C: +/* 01B38C 8001A78C 0C006A35 */ jal func_8001A8D4 +/* 01B390 8001A790 02802025 */ move $a0, $s4 +.L8001A794: +/* 01B394 8001A794 3C018012 */ lui $at, %hi(D_8011ADB4) # $at, 0x8012 +/* 01B398 8001A798 0C0270F2 */ jal func_8009C3C8 +/* 01B39C 8001A79C AC35ADB4 */ sw $s5, %lo(D_8011ADB4)($at) +/* 01B3A0 8001A7A0 14540004 */ bne $v0, $s4, .L8001A7B4 +/* 01B3A4 8001A7A4 8FBF0034 */ lw $ra, 0x34($sp) +/* 01B3A8 8001A7A8 0C006B99 */ jal func_8001AE64 +/* 01B3AC 8001A7AC 00000000 */ nop +.L8001A7B0: +/* 01B3B0 8001A7B0 8FBF0034 */ lw $ra, 0x34($sp) +.L8001A7B4: +/* 01B3B4 8001A7B4 8FB00018 */ lw $s0, 0x18($sp) +/* 01B3B8 8001A7B8 8FB1001C */ lw $s1, 0x1c($sp) +/* 01B3BC 8001A7BC 8FB20020 */ lw $s2, 0x20($sp) +/* 01B3C0 8001A7C0 8FB30024 */ lw $s3, 0x24($sp) +/* 01B3C4 8001A7C4 8FB40028 */ lw $s4, 0x28($sp) +/* 01B3C8 8001A7C8 8FB5002C */ lw $s5, 0x2c($sp) +/* 01B3CC 8001A7CC 8FB60030 */ lw $s6, 0x30($sp) +/* 01B3D0 8001A7D0 03E00008 */ jr $ra +/* 01B3D4 8001A7D4 27BD00A0 */ addiu $sp, $sp, 0xa0 + diff --git a/asm/non_matchings/unknown_005740/func_80004B40.s b/asm/non_matchings/unknown_005740/func_80004B40.s new file mode 100644 index 00000000..81262600 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80004B40.s @@ -0,0 +1,377 @@ +glabel func_80004B40 +/* 005740 80004B40 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 005744 80004B44 AFB30024 */ sw $s3, 0x24($sp) +/* 005748 80004B48 AFB00018 */ sw $s0, 0x18($sp) +/* 00574C 80004B4C 2881000B */ slti $at, $a0, 0xb +/* 005750 80004B50 00808025 */ move $s0, $a0 +/* 005754 80004B54 00A09825 */ move $s3, $a1 +/* 005758 80004B58 AFBF0034 */ sw $ra, 0x34($sp) +/* 00575C 80004B5C AFB60030 */ sw $s6, 0x30($sp) +/* 005760 80004B60 AFB5002C */ sw $s5, 0x2c($sp) +/* 005764 80004B64 AFB40028 */ sw $s4, 0x28($sp) +/* 005768 80004B68 AFB20020 */ sw $s2, 0x20($sp) +/* 00576C 80004B6C 14200002 */ bnez $at, .L80004B78 +/* 005770 80004B70 AFB1001C */ sw $s1, 0x1c($sp) +/* 005774 80004B74 2410000B */ li $s0, 11 +.L80004B78: +/* 005778 80004B78 3C0E800E */ lui $t6, %hi(D_800DC6D8) # $t6, 0x800e +/* 00577C 80004B7C 8DCEC6D8 */ lw $t6, %lo(D_800DC6D8)($t6) +/* 005780 80004B80 00000000 */ nop +/* 005784 80004B84 11C00009 */ beqz $t6, .L80004BAC +/* 005788 80004B88 3C028012 */ lui $v0, %hi(D_80119C30) # $v0, 0x8012 +/* 00578C 80004B8C 3C038012 */ lui $v1, %hi(D_80119C38) # $v1, 0x8012 +/* 005790 80004B90 24639C38 */ addiu $v1, %lo(D_80119C38) # addiu $v1, $v1, -0x63c8 +/* 005794 80004B94 24429C30 */ addiu $v0, %lo(D_80119C30) # addiu $v0, $v0, -0x63d0 +.L80004B98: +/* 005798 80004B98 24420004 */ addiu $v0, $v0, 4 +/* 00579C 80004B9C 1443FFFE */ bne $v0, $v1, .L80004B98 +/* 0057A0 80004BA0 AC40FFFC */ sw $zero, -4($v0) +/* 0057A4 80004BA4 3C01800E */ lui $at, %hi(D_800DC6D8) # $at, 0x800e +/* 0057A8 80004BA8 AC20C6D8 */ sw $zero, %lo(D_800DC6D8)($at) +.L80004BAC: +/* 0057AC 80004BAC 0C01DB16 */ jal func_80076C58 +/* 0057B0 80004BB0 24040026 */ li $a0, 38 +/* 0057B4 80004BB4 0013B080 */ sll $s6, $s3, 2 +/* 0057B8 80004BB8 02D3B021 */ addu $s6, $s6, $s3 +/* 0057BC 80004BBC 0016B040 */ sll $s6, $s6, 1 +/* 0057C0 80004BC0 02D0C021 */ addu $t8, $s6, $s0 +/* 0057C4 80004BC4 0018C880 */ sll $t9, $t8, 2 +/* 0057C8 80004BC8 0338C821 */ addu $t9, $t9, $t8 +/* 0057CC 80004BCC AFA2003C */ sw $v0, 0x3c($sp) +/* 0057D0 80004BD0 0019C880 */ sll $t9, $t9, 2 +/* 0057D4 80004BD4 8C4F001C */ lw $t7, 0x1c($v0) +/* 0057D8 80004BD8 3C1200FF */ lui $s2, %hi(D_00FF0018) # $s2, 0xff +/* 0057DC 80004BDC 0338C823 */ subu $t9, $t9, $t8 +/* 0057E0 80004BE0 3652FFFF */ ori $s2, (0x00FFFFFF & 0xFFFF) # ori $s2, $s2, 0xffff +/* 0057E4 80004BE4 0019C880 */ sll $t9, $t9, 2 +/* 0057E8 80004BE8 02402825 */ move $a1, $s2 +/* 0057EC 80004BEC 2404004C */ li $a0, 76 +/* 0057F0 80004BF0 0C01C327 */ jal func_80070C9C +/* 0057F4 80004BF4 01F98821 */ addu $s1, $t7, $t9 +/* 0057F8 80004BF8 0040A825 */ move $s5, $v0 +/* 0057FC 80004BFC 24040027 */ li $a0, 39 +/* 005800 80004C00 00402825 */ move $a1, $v0 +/* 005804 80004C04 02203025 */ move $a2, $s1 +/* 005808 80004C08 0C01DB9A */ jal func_80076E68 +/* 00580C 80004C0C 2407004C */ li $a3, 76 +/* 005810 80004C10 240400E0 */ li $a0, 224 +/* 005814 80004C14 0C01C327 */ jal func_80070C9C +/* 005818 80004C18 02402825 */ move $a1, $s2 +/* 00581C 80004C1C AFA20044 */ sw $v0, 0x44($sp) +/* 005820 80004C20 00401825 */ move $v1, $v0 +/* 005824 80004C24 00003825 */ move $a3, $zero +/* 005828 80004C28 240400E0 */ li $a0, 224 +.L80004C2C: +/* 00582C 80004C2C 24E70004 */ addiu $a3, $a3, 4 +/* 005830 80004C30 A0600001 */ sb $zero, 1($v1) +/* 005834 80004C34 A0600002 */ sb $zero, 2($v1) +/* 005838 80004C38 A0600003 */ sb $zero, 3($v1) +/* 00583C 80004C3C 24630004 */ addiu $v1, $v1, 4 +/* 005840 80004C40 14E4FFFA */ bne $a3, $a0, .L80004C2C +/* 005844 80004C44 A060FFFC */ sb $zero, -4($v1) +/* 005848 80004C48 92AE0036 */ lbu $t6, 0x36($s5) +/* 00584C 80004C4C 3C01800E */ lui $at, %hi(D_800E4BF0) # $at, 0x800e +/* 005850 80004C50 C4224BF0 */ lwc1 $f2, %lo(D_800E4BF0)($at) +/* 005854 80004C54 A04E0036 */ sb $t6, 0x36($v0) +/* 005858 80004C58 92B80037 */ lbu $t8, 0x37($s5) +/* 00585C 80004C5C 00008025 */ move $s0, $zero +/* 005860 80004C60 A0580037 */ sb $t8, 0x37($v0) +/* 005864 80004C64 92AF0038 */ lbu $t7, 0x38($s5) +/* 005868 80004C68 02A08825 */ move $s1, $s5 +/* 00586C 80004C6C A04F0038 */ sb $t7, 0x38($v0) +/* 005870 80004C70 92B90039 */ lbu $t9, 0x39($s5) +/* 005874 80004C74 02A05825 */ move $t3, $s5 +/* 005878 80004C78 A0590039 */ sb $t9, 0x39($v0) +/* 00587C 80004C7C 92AE003A */ lbu $t6, 0x3a($s5) +/* 005880 80004C80 02A06025 */ move $t4, $s5 +/* 005884 80004C84 A04E0064 */ sb $t6, 0x64($v0) +/* 005888 80004C88 86B80046 */ lh $t8, 0x46($s5) +/* 00588C 80004C8C 00406825 */ move $t5, $v0 +/* 005890 80004C90 44982000 */ mtc1 $t8, $f4 +/* 005894 80004C94 0040F825 */ move $ra, $v0 +/* 005898 80004C98 468021A0 */ cvt.s.w $f6, $f4 +/* 00589C 80004C9C 00404825 */ move $t1, $v0 +/* 0058A0 80004CA0 02A05025 */ move $t2, $s5 +/* 0058A4 80004CA4 46023203 */ div.s $f8, $f6, $f2 +/* 0058A8 80004CA8 00409025 */ move $s2, $v0 +/* 0058AC 80004CAC 02A09825 */ move $s3, $s5 +/* 0058B0 80004CB0 0040A025 */ move $s4, $v0 +/* 0058B4 80004CB4 24080005 */ li $t0, 5 +/* 0058B8 80004CB8 E44800C8 */ swc1 $f8, 0xc8($v0) +/* 0058BC 80004CBC 86AF003E */ lh $t7, 0x3e($s5) +/* 0058C0 80004CC0 00000000 */ nop +/* 0058C4 80004CC4 448F5000 */ mtc1 $t7, $f10 +/* 0058C8 80004CC8 00000000 */ nop +/* 0058CC 80004CCC 46805420 */ cvt.s.w $f16, $f10 +/* 0058D0 80004CD0 00000000 */ nop +/* 0058D4 80004CD4 46028483 */ div.s $f18, $f16, $f2 +/* 0058D8 80004CD8 E45200B0 */ swc1 $f18, 0xb0($v0) +/* 0058DC 80004CDC 86B90040 */ lh $t9, 0x40($s5) +/* 0058E0 80004CE0 00000000 */ nop +/* 0058E4 80004CE4 44992000 */ mtc1 $t9, $f4 +/* 0058E8 80004CE8 00000000 */ nop +/* 0058EC 80004CEC 468021A0 */ cvt.s.w $f6, $f4 +/* 0058F0 80004CF0 00000000 */ nop +/* 0058F4 80004CF4 46023203 */ div.s $f8, $f6, $f2 +/* 0058F8 80004CF8 E44800B4 */ swc1 $f8, 0xb4($v0) +/* 0058FC 80004CFC 86AE0042 */ lh $t6, 0x42($s5) +/* 005900 80004D00 00000000 */ nop +/* 005904 80004D04 448E5000 */ mtc1 $t6, $f10 +/* 005908 80004D08 00000000 */ nop +/* 00590C 80004D0C 46805420 */ cvt.s.w $f16, $f10 +/* 005910 80004D10 00000000 */ nop +/* 005914 80004D14 46028483 */ div.s $f18, $f16, $f2 +/* 005918 80004D18 E45200C0 */ swc1 $f18, 0xc0($v0) +/* 00591C 80004D1C 86B80044 */ lh $t8, 0x44($s5) +/* 005920 80004D20 00000000 */ nop +/* 005924 80004D24 44982000 */ mtc1 $t8, $f4 +/* 005928 80004D28 00000000 */ nop +/* 00592C 80004D2C 468021A0 */ cvt.s.w $f6, $f4 +/* 005930 80004D30 00000000 */ nop +/* 005934 80004D34 46023203 */ div.s $f8, $f6, $f2 +/* 005938 80004D38 E44800C4 */ swc1 $f8, 0xc4($v0) +/* 00593C 80004D3C 86AF003C */ lh $t7, 0x3c($s5) +/* 005940 80004D40 00000000 */ nop +/* 005944 80004D44 448F5000 */ mtc1 $t7, $f10 +/* 005948 80004D48 00000000 */ nop +/* 00594C 80004D4C 46805420 */ cvt.s.w $f16, $f10 +/* 005950 80004D50 44805000 */ mtc1 $zero, $f10 +/* 005954 80004D54 46028483 */ div.s $f18, $f16, $f2 +/* 005958 80004D58 E45200BC */ swc1 $f18, 0xbc($v0) +/* 00595C 80004D5C 92B9003B */ lbu $t9, 0x3b($s5) +/* 005960 80004D60 00000000 */ nop +/* 005964 80004D64 A05900B8 */ sb $t9, 0xb8($v0) +/* 005968 80004D68 86AE0048 */ lh $t6, 0x48($s5) +/* 00596C 80004D6C A04000D8 */ sb $zero, 0xd8($v0) +/* 005970 80004D70 448E2000 */ mtc1 $t6, $f4 +/* 005974 80004D74 00000000 */ nop +/* 005978 80004D78 468021A0 */ cvt.s.w $f6, $f4 +/* 00597C 80004D7C 00000000 */ nop +/* 005980 80004D80 46023203 */ div.s $f8, $f6, $f2 +/* 005984 80004D84 E44800CC */ swc1 $f8, 0xcc($v0) +.L80004D88: +/* 005988 80004D88 96380000 */ lhu $t8, ($s1) +/* 00598C 80004D8C 24070001 */ li $a3, 1 +/* 005990 80004D90 A6980000 */ sh $t8, ($s4) +/* 005994 80004D94 914F0004 */ lbu $t7, 4($t2) +/* 005998 80004D98 25630001 */ addiu $v1, $t3, 1 +/* 00599C 80004D9C A12F0004 */ sb $t7, 4($t1) +/* 0059A0 80004DA0 96790018 */ lhu $t9, 0x18($s3) +/* 0059A4 80004DA4 25850002 */ addiu $a1, $t4, 2 +/* 0059A8 80004DA8 A6590018 */ sh $t9, %lo(D_00FF0018)($s2) +/* 0059AC 80004DAC 914E000E */ lbu $t6, 0xe($t2) +/* 0059B0 80004DB0 25A40001 */ addiu $a0, $t5, 1 +/* 0059B4 80004DB4 A12E000E */ sb $t6, 0xe($t1) +/* 0059B8 80004DB8 9158002C */ lbu $t8, 0x2c($t2) +/* 0059BC 80004DBC 27E60002 */ addiu $a2, $ra, 2 +/* 0059C0 80004DC0 A138002C */ sb $t8, 0x2c($t1) +.L80004DC4: +/* 0059C4 80004DC4 906F0004 */ lbu $t7, 4($v1) +/* 0059C8 80004DC8 24E70002 */ addiu $a3, $a3, 2 +/* 0059CC 80004DCC A08F0004 */ sb $t7, 4($a0) +/* 0059D0 80004DD0 94B90018 */ lhu $t9, 0x18($a1) +/* 0059D4 80004DD4 24630002 */ addiu $v1, $v1, 2 +/* 0059D8 80004DD8 A4D90018 */ sh $t9, 0x18($a2) +/* 0059DC 80004DDC 906E000C */ lbu $t6, 0xc($v1) +/* 0059E0 80004DE0 24A50004 */ addiu $a1, $a1, 4 +/* 0059E4 80004DE4 A08E000E */ sb $t6, 0xe($a0) +/* 0059E8 80004DE8 9078002A */ lbu $t8, 0x2a($v1) +/* 0059EC 80004DEC 24840002 */ addiu $a0, $a0, 2 +/* 0059F0 80004DF0 A098002A */ sb $t8, 0x2a($a0) +/* 0059F4 80004DF4 906F0003 */ lbu $t7, 3($v1) +/* 0059F8 80004DF8 24C60004 */ addiu $a2, $a2, 4 +/* 0059FC 80004DFC A08F0003 */ sb $t7, 3($a0) +/* 005A00 80004E00 94B90016 */ lhu $t9, 0x16($a1) +/* 005A04 80004E04 00000000 */ nop +/* 005A08 80004E08 A4D90016 */ sh $t9, 0x16($a2) +/* 005A0C 80004E0C 906E000D */ lbu $t6, 0xd($v1) +/* 005A10 80004E10 00000000 */ nop +/* 005A14 80004E14 A08E000D */ sb $t6, 0xd($a0) +/* 005A18 80004E18 9078002B */ lbu $t8, 0x2b($v1) +/* 005A1C 80004E1C 14E8FFE9 */ bne $a3, $t0, .L80004DC4 +/* 005A20 80004E20 A098002B */ sb $t8, 0x2b($a0) +/* 005A24 80004E24 26100002 */ addiu $s0, $s0, 2 +/* 005A28 80004E28 2A010004 */ slti $at, $s0, 4 +/* 005A2C 80004E2C 26310002 */ addiu $s1, $s1, 2 +/* 005A30 80004E30 256B0005 */ addiu $t3, $t3, 5 +/* 005A34 80004E34 258C000A */ addiu $t4, $t4, 0xa +/* 005A38 80004E38 25AD0005 */ addiu $t5, $t5, 5 +/* 005A3C 80004E3C 27FF000A */ addiu $ra, $ra, 0xa +/* 005A40 80004E40 25290005 */ addiu $t1, $t1, 5 +/* 005A44 80004E44 254A0005 */ addiu $t2, $t2, 5 +/* 005A48 80004E48 2652000A */ addiu $s2, $s2, 0xa +/* 005A4C 80004E4C 2673000A */ addiu $s3, $s3, 0xa +/* 005A50 80004E50 1420FFCD */ bnez $at, .L80004D88 +/* 005A54 80004E54 26940002 */ addiu $s4, $s4, 2 +/* 005A58 80004E58 A0400074 */ sb $zero, 0x74($v0) +/* 005A5C 80004E5C E44A006C */ swc1 $f10, 0x6c($v0) +/* 005A60 80004E60 92AF004A */ lbu $t7, 0x4a($s5) +/* 005A64 80004E64 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 005A68 80004E68 448F8000 */ mtc1 $t7, $f16 +/* 005A6C 80004E6C 05E10004 */ bgez $t7, .L80004E80 +/* 005A70 80004E70 468084A0 */ cvt.s.w $f18, $f16 +/* 005A74 80004E74 44812000 */ mtc1 $at, $f4 +/* 005A78 80004E78 00000000 */ nop +/* 005A7C 80004E7C 46049480 */ add.s $f18, $f18, $f4 +.L80004E80: +/* 005A80 80004E80 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 005A84 80004E84 44813000 */ mtc1 $at, $f6 +/* 005A88 80004E88 00000000 */ nop +/* 005A8C 80004E8C 46069203 */ div.s $f8, $f18, $f6 +/* 005A90 80004E90 16C0002B */ bnez $s6, .L80004F40 +/* 005A94 80004E94 E44800D4 */ swc1 $f8, 0xd4($v0) +/* 005A98 80004E98 9059002C */ lbu $t9, 0x2c($v0) +/* 005A9C 80004E9C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 005AA0 80004EA0 44995000 */ mtc1 $t9, $f10 +/* 005AA4 80004EA4 07210004 */ bgez $t9, .L80004EB8 +/* 005AA8 80004EA8 46805420 */ cvt.s.w $f16, $f10 +/* 005AAC 80004EAC 44812000 */ mtc1 $at, $f4 +/* 005AB0 80004EB0 00000000 */ nop +/* 005AB4 80004EB4 46048400 */ add.s $f16, $f16, $f4 +.L80004EB8: +/* 005AB8 80004EB8 944E0018 */ lhu $t6, 0x18($v0) +/* 005ABC 80004EBC E4500054 */ swc1 $f16, 0x54($v0) +/* 005AC0 80004EC0 448E9000 */ mtc1 $t6, $f18 +/* 005AC4 80004EC4 05C10005 */ bgez $t6, .L80004EDC +/* 005AC8 80004EC8 468091A0 */ cvt.s.w $f6, $f18 +/* 005ACC 80004ECC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 005AD0 80004ED0 44814000 */ mtc1 $at, $f8 +/* 005AD4 80004ED4 00000000 */ nop +/* 005AD8 80004ED8 46083180 */ add.s $f6, $f6, $f8 +.L80004EDC: +/* 005ADC 80004EDC 00000000 */ nop +/* 005AE0 80004EE0 46023283 */ div.s $f10, $f6, $f2 +/* 005AE4 80004EE4 90580031 */ lbu $t8, 0x31($v0) +/* 005AE8 80004EE8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 005AEC 80004EEC 44982000 */ mtc1 $t8, $f4 +/* 005AF0 80004EF0 00000000 */ nop +/* 005AF4 80004EF4 46802420 */ cvt.s.w $f16, $f4 +/* 005AF8 80004EF8 07010004 */ bgez $t8, .L80004F0C +/* 005AFC 80004EFC E44A005C */ swc1 $f10, 0x5c($v0) +/* 005B00 80004F00 44819000 */ mtc1 $at, $f18 +/* 005B04 80004F04 00000000 */ nop +/* 005B08 80004F08 46128400 */ add.s $f16, $f16, $f18 +.L80004F0C: +/* 005B0C 80004F0C 944F0022 */ lhu $t7, 0x22($v0) +/* 005B10 80004F10 E4500058 */ swc1 $f16, 0x58($v0) +/* 005B14 80004F14 448F4000 */ mtc1 $t7, $f8 +/* 005B18 80004F18 05E10005 */ bgez $t7, .L80004F30 +/* 005B1C 80004F1C 468041A0 */ cvt.s.w $f6, $f8 +/* 005B20 80004F20 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 005B24 80004F24 44815000 */ mtc1 $at, $f10 +/* 005B28 80004F28 00000000 */ nop +/* 005B2C 80004F2C 460A3180 */ add.s $f6, $f6, $f10 +.L80004F30: +/* 005B30 80004F30 00000000 */ nop +/* 005B34 80004F34 46023103 */ div.s $f4, $f6, $f2 +/* 005B38 80004F38 10000055 */ b .L80005090 +/* 005B3C 80004F3C E4440060 */ swc1 $f4, 0x60($v0) +.L80004F40: +/* 005B40 80004F40 C44000D4 */ lwc1 $f0, 0xd4($v0) +/* 005B44 80004F44 24030001 */ li $v1, 1 +/* 005B48 80004F48 46020482 */ mul.s $f18, $f0, $f2 +/* 005B4C 80004F4C 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 005B50 80004F50 E440005C */ swc1 $f0, 0x5c($v0) +/* 005B54 80004F54 4459F800 */ cfc1 $t9, $31 +/* 005B58 80004F58 44C3F800 */ ctc1 $v1, $31 +/* 005B5C 80004F5C 00000000 */ nop +/* 005B60 80004F60 46009424 */ cvt.w.s $f16, $f18 +/* 005B64 80004F64 4443F800 */ cfc1 $v1, $31 +/* 005B68 80004F68 00000000 */ nop +/* 005B6C 80004F6C 30630078 */ andi $v1, $v1, 0x78 +/* 005B70 80004F70 10600012 */ beqz $v1, .L80004FBC +/* 005B74 80004F74 00000000 */ nop +/* 005B78 80004F78 44818000 */ mtc1 $at, $f16 +/* 005B7C 80004F7C 24030001 */ li $v1, 1 +/* 005B80 80004F80 46109401 */ sub.s $f16, $f18, $f16 +/* 005B84 80004F84 3C018000 */ lui $at, 0x8000 +/* 005B88 80004F88 44C3F800 */ ctc1 $v1, $31 +/* 005B8C 80004F8C 00000000 */ nop +/* 005B90 80004F90 46008424 */ cvt.w.s $f16, $f16 +/* 005B94 80004F94 4443F800 */ cfc1 $v1, $31 +/* 005B98 80004F98 00000000 */ nop +/* 005B9C 80004F9C 30630078 */ andi $v1, $v1, 0x78 +/* 005BA0 80004FA0 14600004 */ bnez $v1, .L80004FB4 +/* 005BA4 80004FA4 00000000 */ nop +/* 005BA8 80004FA8 44038000 */ mfc1 $v1, $f16 +/* 005BAC 80004FAC 10000007 */ b .L80004FCC +/* 005BB0 80004FB0 00611825 */ or $v1, $v1, $at +.L80004FB4: +/* 005BB4 80004FB4 10000005 */ b .L80004FCC +/* 005BB8 80004FB8 2403FFFF */ li $v1, -1 +.L80004FBC: +/* 005BBC 80004FBC 44038000 */ mfc1 $v1, $f16 +/* 005BC0 80004FC0 00000000 */ nop +/* 005BC4 80004FC4 0460FFFB */ bltz $v1, .L80004FB4 +/* 005BC8 80004FC8 00000000 */ nop +.L80004FCC: +/* 005BCC 80004FCC 94580018 */ lhu $t8, 0x18($v0) +/* 005BD0 80004FD0 3065FFFF */ andi $a1, $v1, 0xffff +/* 005BD4 80004FD4 44D9F800 */ ctc1 $t9, $31 +/* 005BD8 80004FD8 00B8082A */ slt $at, $a1, $t8 +/* 005BDC 80004FDC 1420000C */ bnez $at, .L80005010 +/* 005BE0 80004FE0 00002025 */ move $a0, $zero +.L80004FE4: +/* 005BE4 80004FE4 24840001 */ addiu $a0, $a0, 1 +/* 005BE8 80004FE8 308FFFFF */ andi $t7, $a0, 0xffff +/* 005BEC 80004FEC 000FC840 */ sll $t9, $t7, 1 +/* 005BF0 80004FF0 00597021 */ addu $t6, $v0, $t9 +/* 005BF4 80004FF4 95D80018 */ lhu $t8, 0x18($t6) +/* 005BF8 80004FF8 01E02025 */ move $a0, $t7 +/* 005BFC 80004FFC 00B8082A */ slt $at, $a1, $t8 +/* 005C00 80005000 14200003 */ bnez $at, .L80005010 +/* 005C04 80005004 29E10004 */ slti $at, $t7, 4 +/* 005C08 80005008 1420FFF6 */ bnez $at, .L80004FE4 +/* 005C0C 8000500C 00000000 */ nop +.L80005010: +/* 005C10 80005010 2484FFFF */ addiu $a0, $a0, -1 +/* 005C14 80005014 3083FFFF */ andi $v1, $a0, 0xffff +/* 005C18 80005018 0003C840 */ sll $t9, $v1, 1 +/* 005C1C 8000501C 00597021 */ addu $t6, $v0, $t9 +/* 005C20 80005020 95C60018 */ lhu $a2, 0x18($t6) +/* 005C24 80005024 00037840 */ sll $t7, $v1, 1 +/* 005C28 80005028 004FC821 */ addu $t9, $v0, $t7 +/* 005C2C 8000502C 972E001A */ lhu $t6, 0x1a($t9) +/* 005C30 80005030 00A6C023 */ subu $t8, $a1, $a2 +/* 005C34 80005034 44984000 */ mtc1 $t8, $f8 +/* 005C38 80005038 01C6C023 */ subu $t8, $t6, $a2 +/* 005C3C 8000503C 44983000 */ mtc1 $t8, $f6 +/* 005C40 80005040 468042A0 */ cvt.s.w $f10, $f8 +/* 005C44 80005044 0043C821 */ addu $t9, $v0, $v1 +/* 005C48 80005048 00437821 */ addu $t7, $v0, $v1 +/* 005C4C 8000504C 46803120 */ cvt.s.w $f4, $f6 +/* 005C50 80005050 91E7002C */ lbu $a3, 0x2c($t7) +/* 005C54 80005054 932E002D */ lbu $t6, 0x2d($t9) +/* 005C58 80005058 46045003 */ div.s $f0, $f10, $f4 +/* 005C5C 8000505C 01C7C023 */ subu $t8, $t6, $a3 +/* 005C60 80005060 44989000 */ mtc1 $t8, $f18 +/* 005C64 80005064 44873000 */ mtc1 $a3, $f6 +/* 005C68 80005068 46809420 */ cvt.s.w $f16, $f18 +/* 005C6C 8000506C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 005C70 80005070 46008202 */ mul.s $f8, $f16, $f0 +/* 005C74 80005074 04E10004 */ bgez $a3, .L80005088 +/* 005C78 80005078 468032A0 */ cvt.s.w $f10, $f6 +/* 005C7C 8000507C 44812000 */ mtc1 $at, $f4 +/* 005C80 80005080 00000000 */ nop +/* 005C84 80005084 46045280 */ add.s $f10, $f10, $f4 +.L80005088: +/* 005C88 80005088 460A4480 */ add.s $f18, $f8, $f10 +/* 005C8C 8000508C E4520054 */ swc1 $f18, 0x54($v0) +.L80005090: +/* 005C90 80005090 8FA4003C */ lw $a0, 0x3c($sp) +/* 005C94 80005094 0C01C450 */ jal func_80071140 +/* 005C98 80005098 00000000 */ nop +/* 005C9C 8000509C 0C01C450 */ jal func_80071140 +/* 005CA0 800050A0 02A02025 */ move $a0, $s5 +/* 005CA4 800050A4 8FBF0034 */ lw $ra, 0x34($sp) +/* 005CA8 800050A8 8FA20044 */ lw $v0, 0x44($sp) +/* 005CAC 800050AC 8FB00018 */ lw $s0, 0x18($sp) +/* 005CB0 800050B0 8FB1001C */ lw $s1, 0x1c($sp) +/* 005CB4 800050B4 8FB20020 */ lw $s2, 0x20($sp) +/* 005CB8 800050B8 8FB30024 */ lw $s3, 0x24($sp) +/* 005CBC 800050BC 8FB40028 */ lw $s4, 0x28($sp) +/* 005CC0 800050C0 8FB5002C */ lw $s5, 0x2c($sp) +/* 005CC4 800050C4 8FB60030 */ lw $s6, 0x30($sp) +/* 005CC8 800050C8 03E00008 */ jr $ra +/* 005CCC 800050CC 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/unknown_005740/func_800050D0.s b/asm/non_matchings/unknown_005740/func_800050D0.s new file mode 100644 index 00000000..74510cb2 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800050D0.s @@ -0,0 +1,106 @@ +glabel func_800050D0 +/* 005CD0 800050D0 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 005CD4 800050D4 3C0E800E */ lui $t6, %hi(D_800DC6D0) # $t6, 0x800e +/* 005CD8 800050D8 91CEC6D0 */ lbu $t6, %lo(D_800DC6D0)($t6) +/* 005CDC 800050DC AFB00018 */ sw $s0, 0x18($sp) +/* 005CE0 800050E0 00808025 */ move $s0, $a0 +/* 005CE4 800050E4 AFBF001C */ sw $ra, 0x1c($sp) +/* 005CE8 800050E8 AFA50024 */ sw $a1, 0x24($sp) +/* 005CEC 800050EC 11C00055 */ beqz $t6, .L80005244 +/* 005CF0 800050F0 AFA7002C */ sw $a3, 0x2c($sp) +/* 005CF4 800050F4 8C8F0064 */ lw $t7, 0x64($a0) +/* 005CF8 800050F8 3C028012 */ lui $v0, %hi(D_80119C3C) # $v0, 0x8012 +/* 005CFC 800050FC 24429C3C */ addiu $v0, %lo(D_80119C3C) # addiu $v0, $v0, -0x63c4 +/* 005D00 80005100 AC4F0000 */ sw $t7, ($v0) +/* 005D04 80005104 8DF90118 */ lw $t9, 0x118($t7) +/* 005D08 80005108 3C058012 */ lui $a1, %hi(D_80119C38) # $a1, 0x8012 +/* 005D0C 8000510C 24A59C38 */ addiu $a1, %lo(D_80119C38) # addiu $a1, $a1, -0x63c8 +/* 005D10 80005110 1320004C */ beqz $t9, .L80005244 +/* 005D14 80005114 ACB90000 */ sw $t9, ($a1) +/* 005D18 80005118 0C0044E7 */ jal func_8001139C +/* 005D1C 8000511C AFA60028 */ sw $a2, 0x28($sp) +/* 005D20 80005120 3C058012 */ lui $a1, %hi(D_80119C38) # $a1, 0x8012 +/* 005D24 80005124 8FA60028 */ lw $a2, 0x28($sp) +/* 005D28 80005128 10400014 */ beqz $v0, .L8000517C +/* 005D2C 8000512C 24A59C38 */ addiu $a1, %lo(D_80119C38) # addiu $a1, $a1, -0x63c8 +/* 005D30 80005130 3C098012 */ lui $t1, %hi(D_80119C3C) # $t1, 0x8012 +/* 005D34 80005134 8D299C3C */ lw $t1, %lo(D_80119C3C)($t1) +/* 005D38 80005138 2401FFFF */ li $at, -1 +/* 005D3C 8000513C 85240000 */ lh $a0, ($t1) +/* 005D40 80005140 00000000 */ nop +/* 005D44 80005144 1081000D */ beq $a0, $at, .L8000517C +/* 005D48 80005148 00000000 */ nop +/* 005D4C 8000514C 0C01A94A */ jal func_8006A528 +/* 005D50 80005150 00000000 */ nop +/* 005D54 80005154 3C0A8012 */ lui $t2, %hi(D_80119C3C) # $t2, 0x8012 +/* 005D58 80005158 8D4A9C3C */ lw $t2, %lo(D_80119C3C)($t2) +/* 005D5C 8000515C 00000000 */ nop +/* 005D60 80005160 85440000 */ lh $a0, ($t2) +/* 005D64 80005164 0C01A955 */ jal func_8006A554 +/* 005D68 80005168 AFA20028 */ sw $v0, 0x28($sp) +/* 005D6C 8000516C 3C058012 */ lui $a1, %hi(D_80119C38) # $a1, 0x8012 +/* 005D70 80005170 8FA60028 */ lw $a2, 0x28($sp) +/* 005D74 80005174 24A59C38 */ addiu $a1, %lo(D_80119C38) # addiu $a1, $a1, -0x63c8 +/* 005D78 80005178 AFA20024 */ sw $v0, 0x24($sp) +.L8000517C: +/* 005D7C 8000517C 8CA20000 */ lw $v0, ($a1) +/* 005D80 80005180 3C01C6FA */ li $at, 0xC6FA0000 # -32000.000000 +/* 005D84 80005184 944B0000 */ lhu $t3, ($v0) +/* 005D88 80005188 00000000 */ nop +/* 005D8C 8000518C 1560000A */ bnez $t3, .L800051B8 +/* 005D90 80005190 00000000 */ nop +/* 005D94 80005194 44810000 */ mtc1 $at, $f0 +/* 005D98 80005198 00000000 */ nop +/* 005D9C 8000519C E4400078 */ swc1 $f0, 0x78($v0) +/* 005DA0 800051A0 8CAC0000 */ lw $t4, ($a1) +/* 005DA4 800051A4 00000000 */ nop +/* 005DA8 800051A8 E580007C */ swc1 $f0, 0x7c($t4) +/* 005DAC 800051AC 8CAD0000 */ lw $t5, ($a1) +/* 005DB0 800051B0 10000024 */ b .L80005244 +/* 005DB4 800051B4 E5A00080 */ swc1 $f0, 0x80($t5) +.L800051B8: +/* 005DB8 800051B8 C604000C */ lwc1 $f4, 0xc($s0) +/* 005DBC 800051BC 3C188012 */ lui $t8, %hi(D_80119C3C) # $t8, 0x8012 +/* 005DC0 800051C0 E4440078 */ swc1 $f4, 0x78($v0) +/* 005DC4 800051C4 8CAE0000 */ lw $t6, ($a1) +/* 005DC8 800051C8 C6060010 */ lwc1 $f6, 0x10($s0) +/* 005DCC 800051CC 24010001 */ li $at, 1 +/* 005DD0 800051D0 E5C6007C */ swc1 $f6, 0x7c($t6) +/* 005DD4 800051D4 8CAF0000 */ lw $t7, ($a1) +/* 005DD8 800051D8 C6080014 */ lwc1 $f8, 0x14($s0) +/* 005DDC 800051DC 00000000 */ nop +/* 005DE0 800051E0 E5E80080 */ swc1 $f8, 0x80($t7) +/* 005DE4 800051E4 8F189C3C */ lw $t8, %lo(D_80119C3C)($t8) +/* 005DE8 800051E8 8FA7002C */ lw $a3, 0x2c($sp) +/* 005DEC 800051EC 830301D7 */ lb $v1, 0x1d7($t8) +/* 005DF0 800051F0 8FA50024 */ lw $a1, 0x24($sp) +/* 005DF4 800051F4 10610005 */ beq $v1, $at, .L8000520C +/* 005DF8 800051F8 24010002 */ li $at, 2 +/* 005DFC 800051FC 10610008 */ beq $v1, $at, .L80005220 +/* 005E00 80005200 8FA50024 */ lw $a1, 0x24($sp) +/* 005E04 80005204 1000000C */ b .L80005238 +/* 005E08 80005208 8FA50024 */ lw $a1, 0x24($sp) +.L8000520C: +/* 005E0C 8000520C 0C001742 */ jal func_80005D08 +/* 005E10 80005210 02002025 */ move $a0, $s0 +/* 005E14 80005214 1000000C */ b .L80005248 +/* 005E18 80005218 8FBF001C */ lw $ra, 0x1c($sp) +/* 005E1C 8000521C 8FA50024 */ lw $a1, 0x24($sp) +.L80005220: +/* 005E20 80005220 8FA7002C */ lw $a3, 0x2c($sp) +/* 005E24 80005224 0C0018FB */ jal func_800063EC +/* 005E28 80005228 02002025 */ move $a0, $s0 +/* 005E2C 8000522C 10000006 */ b .L80005248 +/* 005E30 80005230 8FBF001C */ lw $ra, 0x1c($sp) +/* 005E34 80005234 8FA50024 */ lw $a1, 0x24($sp) +.L80005238: +/* 005E38 80005238 8FA7002C */ lw $a3, 0x2c($sp) +/* 005E3C 8000523C 0C001495 */ jal func_80005254 +/* 005E40 80005240 02002025 */ move $a0, $s0 +.L80005244: +/* 005E44 80005244 8FBF001C */ lw $ra, 0x1c($sp) +.L80005248: +/* 005E48 80005248 8FB00018 */ lw $s0, 0x18($sp) +/* 005E4C 8000524C 03E00008 */ jr $ra +/* 005E50 80005250 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_005740/func_80005254.s b/asm/non_matchings/unknown_005740/func_80005254.s new file mode 100644 index 00000000..d221a88f --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80005254.s @@ -0,0 +1,738 @@ +glabel func_80005254 +/* 005E54 80005254 27BDFF60 */ addiu $sp, $sp, -0xa0 +/* 005E58 80005258 3C088012 */ lui $t0, %hi(D_80119C3C) # $t0, 0x8012 +/* 005E5C 8000525C 8D089C3C */ lw $t0, %lo(D_80119C3C)($t0) +/* 005E60 80005260 AFBF0034 */ sw $ra, 0x34($sp) +/* 005E64 80005264 AFB20030 */ sw $s2, 0x30($sp) +/* 005E68 80005268 AFB1002C */ sw $s1, 0x2c($sp) +/* 005E6C 8000526C AFB00028 */ sw $s0, 0x28($sp) +/* 005E70 80005270 E7B70020 */ swc1 $f23, 0x20($sp) +/* 005E74 80005274 E7B60024 */ swc1 $f22, 0x24($sp) +/* 005E78 80005278 E7B50018 */ swc1 $f21, 0x18($sp) +/* 005E7C 8000527C E7B4001C */ swc1 $f20, 0x1c($sp) +/* 005E80 80005280 AFA400A0 */ sw $a0, 0xa0($sp) +/* 005E84 80005284 AFA500A4 */ sw $a1, 0xa4($sp) +/* 005E88 80005288 AFA600A8 */ sw $a2, 0xa8($sp) +/* 005E8C 8000528C AFA700AC */ sw $a3, 0xac($sp) +/* 005E90 80005290 810E01FB */ lb $t6, 0x1fb($t0) +/* 005E94 80005294 4480B000 */ mtc1 $zero, $f22 +/* 005E98 80005298 11C00005 */ beqz $t6, .L800052B0 +/* 005E9C 8000529C 00004825 */ move $t1, $zero +/* 005EA0 800052A0 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 005EA4 800052A4 44810000 */ mtc1 $at, $f0 +/* 005EA8 800052A8 10000004 */ b .L800052BC +/* 005EAC 800052AC 4616003C */ c.lt.s $f0, $f22 +.L800052B0: +/* 005EB0 800052B0 C500002C */ lwc1 $f0, 0x2c($t0) +/* 005EB4 800052B4 00000000 */ nop +/* 005EB8 800052B8 4616003C */ c.lt.s $f0, $f22 +.L800052BC: +/* 005EBC 800052BC 3C014180 */ li $at, 0x41800000 # 16.000000 +/* 005EC0 800052C0 44812000 */ mtc1 $at, $f4 +/* 005EC4 800052C4 45000002 */ bc1f .L800052D0 +/* 005EC8 800052C8 3C078012 */ lui $a3, %hi(D_80119C38) # $a3, 0x8012 +/* 005ECC 800052CC 46000007 */ neg.s $f0, $f0 +.L800052D0: +/* 005ED0 800052D0 00000000 */ nop +/* 005ED4 800052D4 46040183 */ div.s $f6, $f0, $f4 +/* 005ED8 800052D8 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 005EDC 800052DC 44814000 */ mtc1 $at, $f8 +/* 005EE0 800052E0 8FB200A8 */ lw $s2, 0xa8($sp) +/* 005EE4 800052E4 00006025 */ move $t4, $zero +/* 005EE8 800052E8 32588000 */ andi $t8, $s2, 0x8000 +/* 005EEC 800052EC 03009025 */ move $s2, $t8 +/* 005EF0 800052F0 3C118012 */ lui $s1, %hi(D_80119C38) # $s1, 0x8012 +/* 005EF4 800052F4 46083282 */ mul.s $f10, $f6, $f8 +/* 005EF8 800052F8 444FF800 */ cfc1 $t7, $31 +/* 005EFC 800052FC 00000000 */ nop +/* 005F00 80005300 35E10003 */ ori $at, $t7, 3 +/* 005F04 80005304 38210002 */ xori $at, $at, 2 +/* 005F08 80005308 44C1F800 */ ctc1 $at, $31 +/* 005F0C 8000530C 00000000 */ nop +/* 005F10 80005310 46005124 */ cvt.w.s $f4, $f10 +/* 005F14 80005314 44022000 */ mfc1 $v0, $f4 +/* 005F18 80005318 44CFF800 */ ctc1 $t7, $31 +/* 005F1C 8000531C 24500005 */ addiu $s0, $v0, 5 +/* 005F20 80005320 2A010065 */ slti $at, $s0, 0x65 +/* 005F24 80005324 14200002 */ bnez $at, .L80005330 +/* 005F28 80005328 00000000 */ nop +/* 005F2C 8000532C 24100064 */ li $s0, 100 +.L80005330: +/* 005F30 80005330 3C01800E */ lui $at, %hi(D_800E4BFC) # $at, 0x800e +/* 005F34 80005334 C4354BF8 */ lwc1 $f21, %lo(D_800E4BF8)($at) +/* 005F38 80005338 C4344BFC */ lwc1 $f20, %lo(D_800E4BFC)($at) +/* 005F3C 8000533C 8CE79C38 */ lw $a3, %lo(D_80119C38)($a3) +/* 005F40 80005340 26319C38 */ addiu $s1, %lo(D_80119C38) # addiu $s1, $s1, -0x63c8 +.L80005344: +/* 005F44 80005344 00ECC821 */ addu $t9, $a3, $t4 +/* 005F48 80005348 972D0000 */ lhu $t5, ($t9) +/* 005F4C 8000534C 00097080 */ sll $t6, $t1, 2 +/* 005F50 80005350 11A001AE */ beqz $t5, .L80005A0C +/* 005F54 80005354 01C97021 */ addu $t6, $t6, $t1 +/* 005F58 80005358 00EE4021 */ addu $t0, $a3, $t6 +/* 005F5C 8000535C 910F000E */ lbu $t7, 0xe($t0) +/* 005F60 80005360 00001825 */ move $v1, $zero +/* 005F64 80005364 020F082A */ slt $at, $s0, $t7 +/* 005F68 80005368 14200008 */ bnez $at, .L8000538C +/* 005F6C 8000536C 00095080 */ sll $t2, $t1, 2 +/* 005F70 80005370 0009C080 */ sll $t8, $t1, 2 +/* 005F74 80005374 0309C021 */ addu $t8, $t8, $t1 +/* 005F78 80005378 00F83021 */ addu $a2, $a3, $t8 +/* 005F7C 8000537C 90D9000F */ lbu $t9, 0xf($a2) +/* 005F80 80005380 00000000 */ nop +/* 005F84 80005384 0330082A */ slt $at, $t9, $s0 +/* 005F88 80005388 10200010 */ beqz $at, .L800053CC +.L8000538C: +/* 005F8C 8000538C 00096880 */ sll $t5, $t1, 2 +/* 005F90 80005390 01A96821 */ addu $t5, $t5, $t1 +/* 005F94 80005394 00ED3021 */ addu $a2, $a3, $t5 +/* 005F98 80005398 00C31021 */ addu $v0, $a2, $v1 +.L8000539C: +/* 005F9C 8000539C 904E000F */ lbu $t6, 0xf($v0) +/* 005FA0 800053A0 24630001 */ addiu $v1, $v1, 1 +/* 005FA4 800053A4 020E082A */ slt $at, $s0, $t6 +/* 005FA8 800053A8 14200005 */ bnez $at, .L800053C0 +/* 005FAC 800053AC 24420001 */ addiu $v0, $v0, 1 +/* 005FB0 800053B0 904F000F */ lbu $t7, 0xf($v0) +/* 005FB4 800053B4 00000000 */ nop +/* 005FB8 800053B8 01F0082A */ slt $at, $t7, $s0 +/* 005FBC 800053BC 10200003 */ beqz $at, .L800053CC +.L800053C0: +/* 005FC0 800053C0 28610004 */ slti $at, $v1, 4 +/* 005FC4 800053C4 1420FFF5 */ bnez $at, .L8000539C +/* 005FC8 800053C8 00000000 */ nop +.L800053CC: +/* 005FCC 800053CC 01031021 */ addu $v0, $t0, $v1 +/* 005FD0 800053D0 9044000E */ lbu $a0, 0xe($v0) +/* 005FD4 800053D4 9059000F */ lbu $t9, 0xf($v0) +/* 005FD8 800053D8 0204C023 */ subu $t8, $s0, $a0 +/* 005FDC 800053DC 03246823 */ subu $t5, $t9, $a0 +/* 005FE0 800053E0 448D5000 */ mtc1 $t5, $f10 +/* 005FE4 800053E4 44983000 */ mtc1 $t8, $f6 +/* 005FE8 800053E8 46805120 */ cvt.s.w $f4, $f10 +/* 005FEC 800053EC 9045002C */ lbu $a1, 0x2c($v0) +/* 005FF0 800053F0 904E002D */ lbu $t6, 0x2d($v0) +/* 005FF4 800053F4 46803220 */ cvt.s.w $f8, $f6 +/* 005FF8 800053F8 01C57823 */ subu $t7, $t6, $a1 +/* 005FFC 800053FC 448F3000 */ mtc1 $t7, $f6 +/* 006000 80005400 46044383 */ div.s $f14, $f8, $f4 +/* 006004 80005404 468032A0 */ cvt.s.w $f10, $f6 +/* 006008 80005408 44852000 */ mtc1 $a1, $f4 +/* 00600C 8000540C 00001825 */ move $v1, $zero +/* 006010 80005410 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 006014 80005414 00C31021 */ addu $v0, $a2, $v1 +/* 006018 80005418 468021A0 */ cvt.s.w $f6, $f4 +/* 00601C 8000541C 460E5202 */ mul.s $f8, $f10, $f14 +/* 006020 80005420 04A10004 */ bgez $a1, .L80005434 +/* 006024 80005424 00000000 */ nop +/* 006028 80005428 44815000 */ mtc1 $at, $f10 +/* 00602C 8000542C 00000000 */ nop +/* 006030 80005430 460A3180 */ add.s $f6, $f6, $f10 +.L80005434: +/* 006034 80005434 46064100 */ add.s $f4, $f8, $f6 +/* 006038 80005438 240B0001 */ li $t3, 1 +/* 00603C 8000543C 4458F800 */ cfc1 $t8, $31 +/* 006040 80005440 44CBF800 */ ctc1 $t3, $31 +/* 006044 80005444 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 006048 80005448 460022A4 */ cvt.w.s $f10, $f4 +/* 00604C 8000544C 444BF800 */ cfc1 $t3, $31 +/* 006050 80005450 00000000 */ nop +/* 006054 80005454 316B0078 */ andi $t3, $t3, 0x78 +/* 006058 80005458 11600012 */ beqz $t3, .L800054A4 +/* 00605C 8000545C 00000000 */ nop +/* 006060 80005460 44815000 */ mtc1 $at, $f10 +/* 006064 80005464 240B0001 */ li $t3, 1 +/* 006068 80005468 460A2281 */ sub.s $f10, $f4, $f10 +/* 00606C 8000546C 3C018000 */ lui $at, 0x8000 +/* 006070 80005470 44CBF800 */ ctc1 $t3, $31 +/* 006074 80005474 00000000 */ nop +/* 006078 80005478 460052A4 */ cvt.w.s $f10, $f10 +/* 00607C 8000547C 444BF800 */ cfc1 $t3, $31 +/* 006080 80005480 00000000 */ nop +/* 006084 80005484 316B0078 */ andi $t3, $t3, 0x78 +/* 006088 80005488 15600004 */ bnez $t3, .L8000549C +/* 00608C 8000548C 00000000 */ nop +/* 006090 80005490 440B5000 */ mfc1 $t3, $f10 +/* 006094 80005494 10000007 */ b .L800054B4 +/* 006098 80005498 01615825 */ or $t3, $t3, $at +.L8000549C: +/* 00609C 8000549C 10000005 */ b .L800054B4 +/* 0060A0 800054A0 240BFFFF */ li $t3, -1 +.L800054A4: +/* 0060A4 800054A4 440B5000 */ mfc1 $t3, $f10 +/* 0060A8 800054A8 00000000 */ nop +/* 0060AC 800054AC 0560FFFB */ bltz $t3, .L8000549C +/* 0060B0 800054B0 00000000 */ nop +.L800054B4: +/* 0060B4 800054B4 910D0004 */ lbu $t5, 4($t0) +/* 0060B8 800054B8 44D8F800 */ ctc1 $t8, $31 +/* 0060BC 800054BC 317900FF */ andi $t9, $t3, 0xff +/* 0060C0 800054C0 020D082A */ slt $at, $s0, $t5 +/* 0060C4 800054C4 14200006 */ bnez $at, .L800054E0 +/* 0060C8 800054C8 03205825 */ move $t3, $t9 +/* 0060CC 800054CC 90CE0005 */ lbu $t6, 5($a2) +/* 0060D0 800054D0 00000000 */ nop +/* 0060D4 800054D4 01D0082A */ slt $at, $t6, $s0 +/* 0060D8 800054D8 1020000D */ beqz $at, .L80005510 +/* 0060DC 800054DC 00000000 */ nop +.L800054E0: +/* 0060E0 800054E0 904F0005 */ lbu $t7, 5($v0) +/* 0060E4 800054E4 24630001 */ addiu $v1, $v1, 1 +/* 0060E8 800054E8 020F082A */ slt $at, $s0, $t7 +/* 0060EC 800054EC 14200005 */ bnez $at, .L80005504 +/* 0060F0 800054F0 24420001 */ addiu $v0, $v0, 1 +/* 0060F4 800054F4 90580005 */ lbu $t8, 5($v0) +/* 0060F8 800054F8 00000000 */ nop +/* 0060FC 800054FC 0310082A */ slt $at, $t8, $s0 +/* 006100 80005500 10200003 */ beqz $at, .L80005510 +.L80005504: +/* 006104 80005504 28610004 */ slti $at, $v1, 4 +/* 006108 80005508 1420FFF5 */ bnez $at, .L800054E0 +/* 00610C 8000550C 00000000 */ nop +.L80005510: +/* 006110 80005510 00C31021 */ addu $v0, $a2, $v1 +/* 006114 80005514 90440004 */ lbu $a0, 4($v0) +/* 006118 80005518 00097880 */ sll $t7, $t1, 2 +/* 00611C 8000551C 904D0005 */ lbu $t5, 5($v0) +/* 006120 80005520 01E97821 */ addu $t7, $t7, $t1 +/* 006124 80005524 0204C823 */ subu $t9, $s0, $a0 +/* 006128 80005528 44994000 */ mtc1 $t9, $f8 +/* 00612C 8000552C 000F7840 */ sll $t7, $t7, 1 +/* 006130 80005530 00EFC021 */ addu $t8, $a3, $t7 +/* 006134 80005534 0003C840 */ sll $t9, $v1, 1 +/* 006138 80005538 01A47023 */ subu $t6, $t5, $a0 +/* 00613C 8000553C 03192821 */ addu $a1, $t8, $t9 +/* 006140 80005540 448E2000 */ mtc1 $t6, $f4 +/* 006144 80005544 94AD0018 */ lhu $t5, 0x18($a1) +/* 006148 80005548 468041A0 */ cvt.s.w $f6, $f8 +/* 00614C 8000554C 448D4000 */ mtc1 $t5, $f8 +/* 006150 80005550 3C01800E */ lui $at, %hi(D_800E4C00) # $at, 0x800e +/* 006154 80005554 468022A0 */ cvt.s.w $f10, $f4 +/* 006158 80005558 C4204C00 */ lwc1 $f0, %lo(D_800E4C00)($at) +/* 00615C 8000555C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 006160 80005560 460A3383 */ div.s $f14, $f6, $f10 +/* 006164 80005564 05A10004 */ bgez $t5, .L80005578 +/* 006168 80005568 46804120 */ cvt.s.w $f4, $f8 +/* 00616C 8000556C 44813000 */ mtc1 $at, $f6 +/* 006170 80005570 00000000 */ nop +/* 006174 80005574 46062100 */ add.s $f4, $f4, $f6 +.L80005578: +/* 006178 80005578 94AE001A */ lhu $t6, 0x1a($a1) +/* 00617C 8000557C 46002403 */ div.s $f16, $f4, $f0 +/* 006180 80005580 448E5000 */ mtc1 $t6, $f10 +/* 006184 80005584 05C10005 */ bgez $t6, .L8000559C +/* 006188 80005588 46805220 */ cvt.s.w $f8, $f10 +/* 00618C 8000558C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 006190 80005590 44813000 */ mtc1 $at, $f6 +/* 006194 80005594 00000000 */ nop +/* 006198 80005598 46064200 */ add.s $f8, $f8, $f6 +.L8000559C: +/* 00619C 8000559C 2A010033 */ slti $at, $s0, 0x33 +/* 0061A0 800055A0 14200036 */ bnez $at, .L8000567C +/* 0061A4 800055A4 46004483 */ div.s $f18, $f8, $f0 +/* 0061A8 800055A8 3C088012 */ lui $t0, %hi(D_80119C3C) # $t0, 0x8012 +/* 0061AC 800055AC 8D089C3C */ lw $t0, %lo(D_80119C3C)($t0) +/* 0061B0 800055B0 00000000 */ nop +/* 0061B4 800055B4 81020185 */ lb $v0, 0x185($t0) +/* 0061B8 800055B8 00000000 */ nop +/* 0061BC 800055BC 1040002F */ beqz $v0, .L8000567C +/* 0061C0 800055C0 2841000B */ slti $at, $v0, 0xb +/* 0061C4 800055C4 10200003 */ beqz $at, .L800055D4 +/* 0061C8 800055C8 2403000A */ li $v1, 10 +/* 0061CC 800055CC 10000001 */ b .L800055D4 +/* 0061D0 800055D0 00401825 */ move $v1, $v0 +.L800055D4: +/* 0061D4 800055D4 44835000 */ mtc1 $v1, $f10 +/* 0061D8 800055D8 3C01800E */ lui $at, %hi(D_800E4C0C) # $at, 0x800e +/* 0061DC 800055DC 468051A1 */ cvt.d.w $f6, $f10 +/* 0061E0 800055E0 C4254C08 */ lwc1 $f5, %lo(D_800E4C08)($at) +/* 0061E4 800055E4 C4244C0C */ lwc1 $f4, %lo(D_800E4C0C)($at) +/* 0061E8 800055E8 C4EC003C */ lwc1 $f12, 0x3c($a3) +/* 0061EC 800055EC 46262002 */ mul.d $f0, $f4, $f6 +/* 0061F0 800055F0 460060A1 */ cvt.d.s $f2, $f12 +/* 0061F4 800055F4 00037980 */ sll $t7, $v1, 6 +/* 0061F8 800055F8 4620103C */ c.lt.d $f2, $f0 +/* 0061FC 800055FC 00000000 */ nop +/* 006200 80005600 4500000E */ bc1f .L8000563C +/* 006204 80005604 00000000 */ nop +/* 006208 80005608 448F4000 */ mtc1 $t7, $f8 +/* 00620C 8000560C 3C088012 */ lui $t0, %hi(D_80119C3C) # $t0, 0x8012 +/* 006210 80005610 468042A1 */ cvt.d.w $f10, $f8 +/* 006214 80005614 00000000 */ nop +/* 006218 80005618 462A0103 */ div.d $f4, $f0, $f10 +/* 00621C 8000561C 46241180 */ add.d $f6, $f2, $f4 +/* 006220 80005620 46203220 */ cvt.s.d $f8, $f6 +/* 006224 80005624 E4E8003C */ swc1 $f8, 0x3c($a3) +/* 006228 80005628 8E270000 */ lw $a3, ($s1) +/* 00622C 8000562C 8D089C3C */ lw $t0, %lo(D_80119C3C)($t0) +/* 006230 80005630 C4EC003C */ lwc1 $f12, 0x3c($a3) +/* 006234 80005634 1000000D */ b .L8000566C +/* 006238 80005638 46109101 */ sub.s $f4, $f18, $f16 +.L8000563C: +/* 00623C 8000563C 4622003C */ c.lt.d $f0, $f2 +/* 006240 80005640 00000000 */ nop +/* 006244 80005644 45000008 */ bc1f .L80005668 +/* 006248 80005648 00000000 */ nop +/* 00624C 8000564C 462002A0 */ cvt.s.d $f10, $f0 +/* 006250 80005650 3C088012 */ lui $t0, %hi(D_80119C3C) # $t0, 0x8012 +/* 006254 80005654 E4EA003C */ swc1 $f10, 0x3c($a3) +/* 006258 80005658 8E270000 */ lw $a3, ($s1) +/* 00625C 8000565C 8D089C3C */ lw $t0, %lo(D_80119C3C)($t0) +/* 006260 80005660 C4EC003C */ lwc1 $f12, 0x3c($a3) +/* 006264 80005664 00000000 */ nop +.L80005668: +/* 006268 80005668 46109101 */ sub.s $f4, $f18, $f16 +.L8000566C: +/* 00626C 8000566C 460E2182 */ mul.s $f6, $f4, $f14 +/* 006270 80005670 46103200 */ add.s $f8, $f6, $f16 +/* 006274 80005674 10000012 */ b .L800056C0 +/* 006278 80005678 460C4080 */ add.s $f2, $f8, $f12 +.L8000567C: +/* 00627C 8000567C 3C01800E */ lui $at, %hi(D_800E4C14) # $at, 0x800e +/* 006280 80005680 C4EA003C */ lwc1 $f10, 0x3c($a3) +/* 006284 80005684 C4274C10 */ lwc1 $f7, %lo(D_800E4C10)($at) +/* 006288 80005688 C4264C14 */ lwc1 $f6, %lo(D_800E4C14)($at) +/* 00628C 8000568C 46005121 */ cvt.d.s $f4, $f10 +/* 006290 80005690 46262202 */ mul.d $f8, $f4, $f6 +/* 006294 80005694 46109101 */ sub.s $f4, $f18, $f16 +/* 006298 80005698 3C088012 */ lui $t0, %hi(D_80119C3C) # $t0, 0x8012 +/* 00629C 8000569C 462042A0 */ cvt.s.d $f10, $f8 +/* 0062A0 800056A0 460E2182 */ mul.s $f6, $f4, $f14 +/* 0062A4 800056A4 E4EA003C */ swc1 $f10, 0x3c($a3) +/* 0062A8 800056A8 8E270000 */ lw $a3, ($s1) +/* 0062AC 800056AC 8D089C3C */ lw $t0, %lo(D_80119C3C)($t0) +/* 0062B0 800056B0 46103200 */ add.s $f8, $f6, $f16 +/* 0062B4 800056B4 C4EA003C */ lwc1 $f10, 0x3c($a3) +/* 0062B8 800056B8 00000000 */ nop +/* 0062BC 800056BC 460A4080 */ add.s $f2, $f8, $f10 +.L800056C0: +/* 0062C0 800056C0 811801E6 */ lb $t8, 0x1e6($t0) +/* 0062C4 800056C4 3C014080 */ lui $at, 0x4080 +/* 0062C8 800056C8 13000010 */ beqz $t8, .L8000570C +/* 0062CC 800056CC 3C088012 */ lui $t0, %hi(D_80119C3C) # $t0, 0x8012 +/* 0062D0 800056D0 3C01800E */ li $at, 0x800E0000 # -0.000000 +/* 0062D4 800056D4 C4274C18 */ lwc1 $f7, %lo(D_800E4C18)($at) +/* 0062D8 800056D8 C4264C1C */ lwc1 $f6, %lo(D_800E4C1C)($at) +/* 0062DC 800056DC C4E40040 */ lwc1 $f4, 0x40($a3) +/* 0062E0 800056E0 3C014020 */ li $at, 0x40200000 # 2.500000 +/* 0062E4 800056E4 46002021 */ cvt.d.s $f0, $f4 +/* 0062E8 800056E8 44815800 */ mtc1 $at, $f11 +/* 0062EC 800056EC 44805000 */ mtc1 $zero, $f10 +/* 0062F0 800056F0 46203201 */ sub.d $f8, $f6, $f0 +/* 0062F4 800056F4 00000000 */ nop +/* 0062F8 800056F8 462A4103 */ div.d $f4, $f8, $f10 +/* 0062FC 800056FC 46240180 */ add.d $f6, $f0, $f4 +/* 006300 80005700 46203220 */ cvt.s.d $f8, $f6 +/* 006304 80005704 10000006 */ b .L80005720 +/* 006308 80005708 E4E80040 */ swc1 $f8, 0x40($a3) +.L8000570C: +/* 00630C 8000570C C4EA0040 */ lwc1 $f10, 0x40($a3) +/* 006310 80005710 44812000 */ mtc1 $at, $f4 +/* 006314 80005714 00000000 */ nop +/* 006318 80005718 46045183 */ div.s $f6, $f10, $f4 +/* 00631C 8000571C E4E60040 */ swc1 $f6, 0x40($a3) +.L80005720: +/* 006320 80005720 8E270000 */ lw $a3, ($s1) +/* 006324 80005724 8D089C3C */ lw $t0, %lo(D_80119C3C)($t0) +/* 006328 80005728 C4E80040 */ lwc1 $f8, 0x40($a3) +/* 00632C 8000572C 811901E2 */ lb $t9, 0x1e2($t0) +/* 006330 80005730 00EA1021 */ addu $v0, $a3, $t2 +/* 006334 80005734 1720000A */ bnez $t9, .L80005760 +/* 006338 80005738 46081080 */ add.s $f2, $f2, $f8 +/* 00633C 8000573C 850D0000 */ lh $t5, ($t0) +/* 006340 80005740 2401FFFF */ li $at, -1 +/* 006344 80005744 11A10006 */ beq $t5, $at, .L80005760 +/* 006348 80005748 3C01800E */ lui $at, %hi(D_800E4C24) # $at, 0x800e +/* 00634C 8000574C C4254C20 */ lwc1 $f5, %lo(D_800E4C20)($at) +/* 006350 80005750 C4244C24 */ lwc1 $f4, %lo(D_800E4C24)($at) +/* 006354 80005754 460012A1 */ cvt.d.s $f10, $f2 +/* 006358 80005758 46245180 */ add.d $f6, $f10, $f4 +/* 00635C 8000575C 462030A0 */ cvt.s.d $f2, $f6 +.L80005760: +/* 006360 80005760 C448005C */ lwc1 $f8, 0x5c($v0) +/* 006364 80005764 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 006368 80005768 44812000 */ mtc1 $at, $f4 +/* 00636C 8000576C 448B3000 */ mtc1 $t3, $f6 +/* 006370 80005770 46081281 */ sub.s $f10, $f2, $f8 +/* 006374 80005774 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 006378 80005778 46045303 */ div.s $f12, $f10, $f4 +/* 00637C 8000577C 05610004 */ bgez $t3, .L80005790 +/* 006380 80005780 46803220 */ cvt.s.w $f8, $f6 +/* 006384 80005784 44815000 */ mtc1 $at, $f10 +/* 006388 80005788 00000000 */ nop +/* 00638C 8000578C 460A4200 */ add.s $f8, $f8, $f10 +.L80005790: +/* 006390 80005790 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 006394 80005794 44815000 */ mtc1 $at, $f10 +/* 006398 80005798 C4440054 */ lwc1 $f4, 0x54($v0) +/* 00639C 8000579C 850E0000 */ lh $t6, ($t0) +/* 0063A0 800057A0 46044181 */ sub.s $f6, $f8, $f4 +/* 0063A4 800057A4 2401FFFF */ li $at, -1 +/* 0063A8 800057A8 11C10042 */ beq $t6, $at, .L800058B4 +/* 0063AC 800057AC 460A3383 */ div.s $f14, $f6, $f10 +/* 0063B0 800057B0 00002025 */ move $a0, $zero +/* 0063B4 800057B4 2405000A */ li $a1, 10 +/* 0063B8 800057B8 AFA9007C */ sw $t1, 0x7c($sp) +/* 0063BC 800057BC AFAA003C */ sw $t2, 0x3c($sp) +/* 0063C0 800057C0 AFAC005C */ sw $t4, 0x5c($sp) +/* 0063C4 800057C4 E7AC0074 */ swc1 $f12, 0x74($sp) +/* 0063C8 800057C8 0C01BE53 */ jal func_8006F94C +/* 0063CC 800057CC E7AE0078 */ swc1 $f14, 0x78($sp) +/* 0063D0 800057D0 8FA9007C */ lw $t1, 0x7c($sp) +/* 0063D4 800057D4 8FAA003C */ lw $t2, 0x3c($sp) +/* 0063D8 800057D8 8FAC005C */ lw $t4, 0x5c($sp) +/* 0063DC 800057DC C7AC0074 */ lwc1 $f12, 0x74($sp) +/* 0063E0 800057E0 C7AE0078 */ lwc1 $f14, 0x78($sp) +/* 0063E4 800057E4 28410007 */ slti $at, $v0, 7 +/* 0063E8 800057E8 1020001F */ beqz $at, .L80005868 +/* 0063EC 800057EC 00002025 */ move $a0, $zero +/* 0063F0 800057F0 2405000A */ li $a1, 10 +/* 0063F4 800057F4 AFA9007C */ sw $t1, 0x7c($sp) +/* 0063F8 800057F8 AFAA003C */ sw $t2, 0x3c($sp) +/* 0063FC 800057FC AFAC005C */ sw $t4, 0x5c($sp) +/* 006400 80005800 E7AC0074 */ swc1 $f12, 0x74($sp) +/* 006404 80005804 0C01BE53 */ jal func_8006F94C +/* 006408 80005808 E7AE0078 */ swc1 $f14, 0x78($sp) +/* 00640C 8000580C 8E270000 */ lw $a3, ($s1) +/* 006410 80005810 8FA9007C */ lw $t1, 0x7c($sp) +/* 006414 80005814 80EF0090 */ lb $t7, 0x90($a3) +/* 006418 80005818 8FAA003C */ lw $t2, 0x3c($sp) +/* 00641C 8000581C 01E2C021 */ addu $t8, $t7, $v0 +/* 006420 80005820 2719FFFB */ addiu $t9, $t8, -5 +/* 006424 80005824 8FAC005C */ lw $t4, 0x5c($sp) +/* 006428 80005828 C7AC0074 */ lwc1 $f12, 0x74($sp) +/* 00642C 8000582C C7AE0078 */ lwc1 $f14, 0x78($sp) +/* 006430 80005830 A0F90090 */ sb $t9, 0x90($a3) +/* 006434 80005834 8E270000 */ lw $a3, ($s1) +/* 006438 80005838 240D0005 */ li $t5, 5 +/* 00643C 8000583C 80E30090 */ lb $v1, 0x90($a3) +/* 006440 80005840 00000000 */ nop +/* 006444 80005844 28610006 */ slti $at, $v1, 6 +/* 006448 80005848 14200004 */ bnez $at, .L8000585C +/* 00644C 8000584C 2861FFFB */ slti $at, $v1, -5 +/* 006450 80005850 10000005 */ b .L80005868 +/* 006454 80005854 A0ED0090 */ sb $t5, 0x90($a3) +/* 006458 80005858 2861FFFB */ slti $at, $v1, -5 +.L8000585C: +/* 00645C 8000585C 10200002 */ beqz $at, .L80005868 +/* 006460 80005860 240EFFFB */ li $t6, -5 +/* 006464 80005864 A0EE0090 */ sb $t6, 0x90($a3) +.L80005868: +/* 006468 80005868 8E270000 */ lw $a3, ($s1) +/* 00646C 8000586C 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 006470 80005870 80EF0090 */ lb $t7, 0x90($a3) +/* 006474 80005874 44813000 */ mtc1 $at, $f6 +/* 006478 80005878 448F4000 */ mtc1 $t7, $f8 +/* 00647C 8000587C 3C01800E */ lui $at, %hi(D_800E4C2C) # $at, 0x800e +/* 006480 80005880 46804120 */ cvt.s.w $f4, $f8 +/* 006484 80005884 C42B4C28 */ lwc1 $f11, %lo(D_800E4C28)($at) +/* 006488 80005888 C42A4C2C */ lwc1 $f10, %lo(D_800E4C2C)($at) +/* 00648C 8000588C 46062003 */ div.s $f0, $f4, $f6 +/* 006490 80005890 3C0140A0 */ li $at, 0x40A00000 # 5.000000 +/* 006494 80005894 460061A1 */ cvt.d.s $f6, $f12 +/* 006498 80005898 46000221 */ cvt.d.s $f8, $f0 +/* 00649C 8000589C 46285102 */ mul.d $f4, $f10, $f8 +/* 0064A0 800058A0 44814000 */ mtc1 $at, $f8 +/* 0064A4 800058A4 46243280 */ add.d $f10, $f6, $f4 +/* 0064A8 800058A8 46004182 */ mul.s $f6, $f8, $f0 +/* 0064AC 800058AC 46205320 */ cvt.s.d $f12, $f10 +/* 0064B0 800058B0 46067380 */ add.s $f14, $f14, $f6 +.L800058B4: +/* 0064B4 800058B4 12400021 */ beqz $s2, .L8000593C +/* 0064B8 800058B8 00000000 */ nop +/* 0064BC 800058BC C4E40094 */ lwc1 $f4, 0x94($a3) +/* 0064C0 800058C0 8FB800AC */ lw $t8, 0xac($sp) +/* 0064C4 800058C4 46002021 */ cvt.d.s $f0, $f4 +/* 0064C8 800058C8 4634003C */ c.lt.d $f0, $f20 +/* 0064CC 800058CC 00000000 */ nop +/* 0064D0 800058D0 4500001A */ bc1f .L8000593C +/* 0064D4 800058D4 00000000 */ nop +/* 0064D8 800058D8 44985000 */ mtc1 $t8, $f10 +/* 0064DC 800058DC 3C01800E */ lui $at, %hi(D_800E4C34) # $at, 0x800e +/* 0064E0 800058E0 46805220 */ cvt.s.w $f8, $f10 +/* 0064E4 800058E4 C4254C30 */ lwc1 $f5, %lo(D_800E4C30)($at) +/* 0064E8 800058E8 C4244C34 */ lwc1 $f4, %lo(D_800E4C34)($at) +/* 0064EC 800058EC 460041A1 */ cvt.d.s $f6, $f8 +/* 0064F0 800058F0 46243282 */ mul.d $f10, $f6, $f4 +/* 0064F4 800058F4 3C01800E */ lui $at, %hi(D_800E4C38) # $at, 0x800e +/* 0064F8 800058F8 462A0200 */ add.d $f8, $f0, $f10 +/* 0064FC 800058FC 462041A0 */ cvt.s.d $f6, $f8 +/* 006500 80005900 E4E60094 */ swc1 $f6, 0x94($a3) +/* 006504 80005904 8E270000 */ lw $a3, ($s1) +/* 006508 80005908 00000000 */ nop +/* 00650C 8000590C C4E40094 */ lwc1 $f4, 0x94($a3) +/* 006510 80005910 00000000 */ nop +/* 006514 80005914 460022A1 */ cvt.d.s $f10, $f4 +/* 006518 80005918 462AA03C */ c.lt.d $f20, $f10 +/* 00651C 8000591C 00000000 */ nop +/* 006520 80005920 45000006 */ bc1f .L8000593C +/* 006524 80005924 00000000 */ nop +/* 006528 80005928 C4284C38 */ lwc1 $f8, %lo(D_800E4C38)($at) +/* 00652C 8000592C 00000000 */ nop +/* 006530 80005930 E4E80094 */ swc1 $f8, 0x94($a3) +/* 006534 80005934 8E270000 */ lw $a3, ($s1) +/* 006538 80005938 00000000 */ nop +.L8000593C: +/* 00653C 8000593C 1640001E */ bnez $s2, .L800059B8 +/* 006540 80005940 00EA1021 */ addu $v0, $a3, $t2 +/* 006544 80005944 C4E00094 */ lwc1 $f0, 0x94($a3) +/* 006548 80005948 8FB900AC */ lw $t9, 0xac($sp) +/* 00654C 8000594C 4600B03C */ c.lt.s $f22, $f0 +/* 006550 80005950 00000000 */ nop +/* 006554 80005954 45000018 */ bc1f .L800059B8 +/* 006558 80005958 00EA1021 */ addu $v0, $a3, $t2 +/* 00655C 8000595C 44993000 */ mtc1 $t9, $f6 +/* 006560 80005960 3C01800E */ lui $at, %hi(D_800E4C44) # $at, 0x800e +/* 006564 80005964 46803120 */ cvt.s.w $f4, $f6 +/* 006568 80005968 C4294C40 */ lwc1 $f9, %lo(D_800E4C40)($at) +/* 00656C 8000596C C4284C44 */ lwc1 $f8, %lo(D_800E4C44)($at) +/* 006570 80005970 460022A1 */ cvt.d.s $f10, $f4 +/* 006574 80005974 46285182 */ mul.d $f6, $f10, $f8 +/* 006578 80005978 46000121 */ cvt.d.s $f4, $f0 +/* 00657C 8000597C 46262281 */ sub.d $f10, $f4, $f6 +/* 006580 80005980 46205220 */ cvt.s.d $f8, $f10 +/* 006584 80005984 E4E80094 */ swc1 $f8, 0x94($a3) +/* 006588 80005988 8E270000 */ lw $a3, ($s1) +/* 00658C 8000598C 00000000 */ nop +/* 006590 80005990 C4E40094 */ lwc1 $f4, 0x94($a3) +/* 006594 80005994 00000000 */ nop +/* 006598 80005998 4616203C */ c.lt.s $f4, $f22 +/* 00659C 8000599C 00000000 */ nop +/* 0065A0 800059A0 45000005 */ bc1f .L800059B8 +/* 0065A4 800059A4 00EA1021 */ addu $v0, $a3, $t2 +/* 0065A8 800059A8 E4F60094 */ swc1 $f22, 0x94($a3) +/* 0065AC 800059AC 8E270000 */ lw $a3, ($s1) +/* 0065B0 800059B0 00000000 */ nop +/* 0065B4 800059B4 00EA1021 */ addu $v0, $a3, $t2 +.L800059B8: +/* 0065B8 800059B8 C446005C */ lwc1 $f6, 0x5c($v0) +/* 0065BC 800059BC 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 0065C0 800059C0 460C3280 */ add.s $f10, $f6, $f12 +/* 0065C4 800059C4 1240000B */ beqz $s2, .L800059F4 +/* 0065C8 800059C8 E44A005C */ swc1 $f10, 0x5c($v0) +/* 0065CC 800059CC 8E2D0000 */ lw $t5, ($s1) +/* 0065D0 800059D0 00000000 */ nop +/* 0065D4 800059D4 01AA1021 */ addu $v0, $t5, $t2 +/* 0065D8 800059D8 C4480054 */ lwc1 $f8, 0x54($v0) +/* 0065DC 800059DC 00000000 */ nop +/* 0065E0 800059E0 460E4100 */ add.s $f4, $f8, $f14 +/* 0065E4 800059E4 E4440054 */ swc1 $f4, 0x54($v0) +/* 0065E8 800059E8 8E270000 */ lw $a3, ($s1) +/* 0065EC 800059EC 10000008 */ b .L80005A10 +/* 0065F0 800059F0 25290001 */ addiu $t1, $t1, 1 +.L800059F4: +/* 0065F4 800059F4 8E2E0000 */ lw $t6, ($s1) +/* 0065F8 800059F8 44813000 */ mtc1 $at, $f6 +/* 0065FC 800059FC 01CA7821 */ addu $t7, $t6, $t2 +/* 006600 80005A00 E5E60054 */ swc1 $f6, 0x54($t7) +/* 006604 80005A04 8E270000 */ lw $a3, ($s1) +/* 006608 80005A08 00000000 */ nop +.L80005A0C: +/* 00660C 80005A0C 25290001 */ addiu $t1, $t1, 1 +.L80005A10: +/* 006610 80005A10 24010001 */ li $at, 1 +/* 006614 80005A14 1521FE4B */ bne $t1, $at, .L80005344 +/* 006618 80005A18 258C0002 */ addiu $t4, $t4, 2 +/* 00661C 80005A1C 3C088012 */ lui $t0, %hi(D_80119C3C) # $t0, 0x8012 +/* 006620 80005A20 8D089C3C */ lw $t0, %lo(D_80119C3C)($t0) +/* 006624 80005A24 00000000 */ nop +/* 006628 80005A28 8D180010 */ lw $t8, 0x10($t0) +/* 00662C 80005A2C 00000000 */ nop +/* 006630 80005A30 17000013 */ bnez $t8, .L80005A80 +/* 006634 80005A34 00000000 */ nop +/* 006638 80005A38 8D190014 */ lw $t9, 0x14($t0) +/* 00663C 80005A3C 8FAD00A8 */ lw $t5, 0xa8($sp) +/* 006640 80005A40 1720000F */ bnez $t9, .L80005A80 +/* 006644 80005A44 31AE4000 */ andi $t6, $t5, 0x4000 +/* 006648 80005A48 11C0000D */ beqz $t6, .L80005A80 +/* 00664C 80005A4C 3C01800E */ lui $at, %hi(D_800E4C4C) # $at, 0x800e +/* 006650 80005A50 C508002C */ lwc1 $f8, 0x2c($t0) +/* 006654 80005A54 C42B4C48 */ lwc1 $f11, %lo(D_800E4C48)($at) +/* 006658 80005A58 C42A4C4C */ lwc1 $f10, %lo(D_800E4C4C)($at) +/* 00665C 80005A5C 46004121 */ cvt.d.s $f4, $f8 +/* 006660 80005A60 4624503C */ c.lt.d $f10, $f4 +/* 006664 80005A64 00000000 */ nop +/* 006668 80005A68 45010005 */ bc1t .L80005A80 +/* 00666C 80005A6C 00000000 */ nop +/* 006670 80005A70 810F01D6 */ lb $t7, 0x1d6($t0) +/* 006674 80005A74 24010004 */ li $at, 4 +/* 006678 80005A78 15E10010 */ bne $t7, $at, .L80005ABC +/* 00667C 80005A7C 8FB900A4 */ lw $t9, 0xa4($sp) +.L80005A80: +/* 006680 80005A80 8CE400A8 */ lw $a0, 0xa8($a3) +/* 006684 80005A84 00000000 */ nop +/* 006688 80005A88 1080000C */ beqz $a0, .L80005ABC +/* 00668C 80005A8C 8FB900A4 */ lw $t9, 0xa4($sp) +/* 006690 80005A90 0C001223 */ jal func_8000488C +/* 006694 80005A94 00000000 */ nop +/* 006698 80005A98 8E380000 */ lw $t8, ($s1) +/* 00669C 80005A9C 00000000 */ nop +/* 0066A0 80005AA0 AF0000A8 */ sw $zero, 0xa8($t8) +/* 0066A4 80005AA4 8E270000 */ lw $a3, ($s1) +/* 0066A8 80005AA8 00000000 */ nop +/* 0066AC 80005AAC 8CE400A8 */ lw $a0, 0xa8($a3) +/* 0066B0 80005AB0 1000003B */ b .L80005BA0 +/* 0066B4 80005AB4 00000000 */ nop +/* 0066B8 80005AB8 8FB900A4 */ lw $t9, 0xa4($sp) +.L80005ABC: +/* 0066BC 80005ABC 8CE400A8 */ lw $a0, 0xa8($a3) +/* 0066C0 80005AC0 332D4000 */ andi $t5, $t9, 0x4000 +/* 0066C4 80005AC4 11A00036 */ beqz $t5, .L80005BA0 +/* 0066C8 80005AC8 00000000 */ nop +/* 0066CC 80005ACC 14800034 */ bnez $a0, .L80005BA0 +/* 0066D0 80005AD0 00000000 */ nop +/* 0066D4 80005AD4 850E0000 */ lh $t6, ($t0) +/* 0066D8 80005AD8 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 0066DC 80005ADC 05C00030 */ bltz $t6, .L80005BA0 +/* 0066E0 80005AE0 24E500A8 */ addiu $a1, $a3, 0xa8 +/* 0066E4 80005AE4 C500002C */ lwc1 $f0, 0x2c($t0) +/* 0066E8 80005AE8 44813000 */ mtc1 $at, $f6 +/* 0066EC 80005AEC 4616003C */ c.lt.s $f0, $f22 +/* 0066F0 80005AF0 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 0066F4 80005AF4 45000003 */ bc1f .L80005B04 +/* 0066F8 80005AF8 00000000 */ nop +/* 0066FC 80005AFC 10000002 */ b .L80005B08 +/* 006700 80005B00 46000507 */ neg.s $f20, $f0 +.L80005B04: +/* 006704 80005B04 46000506 */ mov.s $f20, $f0 +.L80005B08: +/* 006708 80005B08 4614303C */ c.lt.s $f6, $f20 +/* 00670C 80005B0C 00000000 */ nop +/* 006710 80005B10 45000003 */ bc1f .L80005B20 +/* 006714 80005B14 00000000 */ nop +/* 006718 80005B18 4481A000 */ mtc1 $at, $f20 +/* 00671C 80005B1C 00000000 */ nop +.L80005B20: +/* 006720 80005B20 0C0007C5 */ jal func_80001F14 +/* 006724 80005B24 24040019 */ li $a0, 25 +/* 006728 80005B28 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 00672C 80005B2C 44810800 */ mtc1 $at, $f1 +/* 006730 80005B30 44800000 */ mtc1 $zero, $f0 +/* 006734 80005B34 4600A221 */ cvt.d.s $f8, $f20 +/* 006738 80005B38 46204282 */ mul.d $f10, $f8, $f0 +/* 00673C 80005B3C 3C014028 */ li $at, 0x40280000 # 2.625000 +/* 006740 80005B40 44812800 */ mtc1 $at, $f5 +/* 006744 80005B44 44802000 */ mtc1 $zero, $f4 +/* 006748 80005B48 8E270000 */ lw $a3, ($s1) +/* 00674C 80005B4C 46245183 */ div.d $f6, $f10, $f4 +/* 006750 80005B50 46203200 */ add.d $f8, $f6, $f0 +/* 006754 80005B54 462042A0 */ cvt.s.d $f10, $f8 +/* 006758 80005B58 E7AA006C */ swc1 $f10, 0x6c($sp) +/* 00675C 80005B5C 8CE400A8 */ lw $a0, 0xa8($a3) +/* 006760 80005B60 8FA6006C */ lw $a2, 0x6c($sp) +/* 006764 80005B64 10800006 */ beqz $a0, .L80005B80 +/* 006768 80005B68 240F006E */ li $t7, 110 +/* 00676C 80005B6C 0C00127E */ jal func_800049F8 +/* 006770 80005B70 24050010 */ li $a1, 16 +/* 006774 80005B74 8E270000 */ lw $a3, ($s1) +/* 006778 80005B78 00000000 */ nop +/* 00677C 80005B7C 240F006E */ li $t7, 110 +.L80005B80: +/* 006780 80005B80 A4EF00AC */ sh $t7, 0xac($a3) +/* 006784 80005B84 8E380000 */ lw $t8, ($s1) +/* 006788 80005B88 00000000 */ nop +/* 00678C 80005B8C A30000D0 */ sb $zero, 0xd0($t8) +/* 006790 80005B90 8E270000 */ lw $a3, ($s1) +/* 006794 80005B94 00000000 */ nop +/* 006798 80005B98 8CE400A8 */ lw $a0, 0xa8($a3) +/* 00679C 80005B9C 00000000 */ nop +.L80005BA0: +/* 0067A0 80005BA0 10800029 */ beqz $a0, .L80005C48 +/* 0067A4 80005BA4 3C198012 */ lui $t9, %hi(D_80119C3C) # $t9, 0x8012 +/* 0067A8 80005BA8 8F399C3C */ lw $t9, %lo(D_80119C3C)($t9) +/* 0067AC 80005BAC 8FAF00AC */ lw $t7, 0xac($sp) +/* 0067B0 80005BB0 832D01E2 */ lb $t5, 0x1e2($t9) +/* 0067B4 80005BB4 00003025 */ move $a2, $zero +/* 0067B8 80005BB8 15A00006 */ bnez $t5, .L80005BD4 +/* 0067BC 80005BBC 24050008 */ li $a1, 8 +/* 0067C0 80005BC0 90EE00D0 */ lbu $t6, 0xd0($a3) +/* 0067C4 80005BC4 00000000 */ nop +/* 0067C8 80005BC8 01CFC021 */ addu $t8, $t6, $t7 +/* 0067CC 80005BCC 10000002 */ b .L80005BD8 +/* 0067D0 80005BD0 A0F800D0 */ sb $t8, 0xd0($a3) +.L80005BD4: +/* 0067D4 80005BD4 A0E000D0 */ sb $zero, 0xd0($a3) +.L80005BD8: +/* 0067D8 80005BD8 8E270000 */ lw $a3, ($s1) +/* 0067DC 80005BDC 00000000 */ nop +/* 0067E0 80005BE0 90F900D0 */ lbu $t9, 0xd0($a3) +/* 0067E4 80005BE4 00000000 */ nop +/* 0067E8 80005BE8 2B21000A */ slti $at, $t9, 0xa +/* 0067EC 80005BEC 14200007 */ bnez $at, .L80005C0C +/* 0067F0 80005BF0 00000000 */ nop +/* 0067F4 80005BF4 8CE400A8 */ lw $a0, 0xa8($a3) +/* 0067F8 80005BF8 0C00127E */ jal func_800049F8 +/* 0067FC 80005BFC 24050008 */ li $a1, 8 +/* 006800 80005C00 8E270000 */ lw $a3, ($s1) +/* 006804 80005C04 10000010 */ b .L80005C48 +/* 006808 80005C08 00000000 */ nop +.L80005C0C: +/* 00680C 80005C0C 94E600AC */ lhu $a2, 0xac($a3) +/* 006810 80005C10 8CE400A8 */ lw $a0, 0xa8($a3) +/* 006814 80005C14 00066A00 */ sll $t5, $a2, 8 +/* 006818 80005C18 0C00127E */ jal func_800049F8 +/* 00681C 80005C1C 01A03025 */ move $a2, $t5 +/* 006820 80005C20 8FAF00A0 */ lw $t7, 0xa0($sp) +/* 006824 80005C24 8E2E0000 */ lw $t6, ($s1) +/* 006828 80005C28 8DE5000C */ lw $a1, 0xc($t7) +/* 00682C 80005C2C 8DE60010 */ lw $a2, 0x10($t7) +/* 006830 80005C30 8DE70014 */ lw $a3, 0x14($t7) +/* 006834 80005C34 8DC400A8 */ lw $a0, 0xa8($t6) +/* 006838 80005C38 0C0026DF */ jal func_80009B7C +/* 00683C 80005C3C 00000000 */ nop +/* 006840 80005C40 8E270000 */ lw $a3, ($s1) +/* 006844 80005C44 00000000 */ nop +.L80005C48: +/* 006848 80005C48 12400025 */ beqz $s2, .L80005CE0 +/* 00684C 80005C4C A0F000A0 */ sb $s0, 0xa0($a3) +/* 006850 80005C50 8E270000 */ lw $a3, ($s1) +/* 006854 80005C54 4458F800 */ cfc1 $t8, $31 +/* 006858 80005C58 24190001 */ li $t9, 1 +/* 00685C 80005C5C 44D9F800 */ ctc1 $t9, $31 +/* 006860 80005C60 C4E40054 */ lwc1 $f4, 0x54($a3) +/* 006864 80005C64 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 006868 80005C68 460021A4 */ cvt.w.s $f6, $f4 +/* 00686C 80005C6C 4459F800 */ cfc1 $t9, $31 +/* 006870 80005C70 00000000 */ nop +/* 006874 80005C74 33390078 */ andi $t9, $t9, 0x78 +/* 006878 80005C78 13200012 */ beqz $t9, .L80005CC4 +/* 00687C 80005C7C 00000000 */ nop +/* 006880 80005C80 44813000 */ mtc1 $at, $f6 +/* 006884 80005C84 24190001 */ li $t9, 1 +/* 006888 80005C88 46062181 */ sub.s $f6, $f4, $f6 +/* 00688C 80005C8C 3C018000 */ lui $at, 0x8000 +/* 006890 80005C90 44D9F800 */ ctc1 $t9, $31 +/* 006894 80005C94 00000000 */ nop +/* 006898 80005C98 460031A4 */ cvt.w.s $f6, $f6 +/* 00689C 80005C9C 4459F800 */ cfc1 $t9, $31 +/* 0068A0 80005CA0 00000000 */ nop +/* 0068A4 80005CA4 33390078 */ andi $t9, $t9, 0x78 +/* 0068A8 80005CA8 17200004 */ bnez $t9, .L80005CBC +/* 0068AC 80005CAC 00000000 */ nop +/* 0068B0 80005CB0 44193000 */ mfc1 $t9, $f6 +/* 0068B4 80005CB4 10000007 */ b .L80005CD4 +/* 0068B8 80005CB8 0321C825 */ or $t9, $t9, $at +.L80005CBC: +/* 0068BC 80005CBC 10000005 */ b .L80005CD4 +/* 0068C0 80005CC0 2419FFFF */ li $t9, -1 +.L80005CC4: +/* 0068C4 80005CC4 44193000 */ mfc1 $t9, $f6 +/* 0068C8 80005CC8 00000000 */ nop +/* 0068CC 80005CCC 0720FFFB */ bltz $t9, .L80005CBC +/* 0068D0 80005CD0 00000000 */ nop +.L80005CD4: +/* 0068D4 80005CD4 44D8F800 */ ctc1 $t8, $31 +/* 0068D8 80005CD8 A0F90098 */ sb $t9, 0x98($a3) +/* 0068DC 80005CDC 00000000 */ nop +.L80005CE0: +/* 0068E0 80005CE0 8FBF0034 */ lw $ra, 0x34($sp) +/* 0068E4 80005CE4 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0068E8 80005CE8 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0068EC 80005CEC C7B70020 */ lwc1 $f23, 0x20($sp) +/* 0068F0 80005CF0 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 0068F4 80005CF4 8FB00028 */ lw $s0, 0x28($sp) +/* 0068F8 80005CF8 8FB1002C */ lw $s1, 0x2c($sp) +/* 0068FC 80005CFC 8FB20030 */ lw $s2, 0x30($sp) +/* 006900 80005D00 03E00008 */ jr $ra +/* 006904 80005D04 27BD00A0 */ addiu $sp, $sp, 0xa0 + diff --git a/asm/non_matchings/unknown_005740/func_80005D08.s b/asm/non_matchings/unknown_005740/func_80005D08.s new file mode 100644 index 00000000..65338fc4 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80005D08.s @@ -0,0 +1,477 @@ +glabel func_80005D08 +/* 006908 80005D08 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 00690C 80005D0C AFBF0014 */ sw $ra, 0x14($sp) +/* 006910 80005D10 AFA40038 */ sw $a0, 0x38($sp) +/* 006914 80005D14 AFA5003C */ sw $a1, 0x3c($sp) +/* 006918 80005D18 AFA60040 */ sw $a2, 0x40($sp) +/* 00691C 80005D1C 0C0044E7 */ jal func_8001139C +/* 006920 80005D20 AFA70044 */ sw $a3, 0x44($sp) +/* 006924 80005D24 8FA30038 */ lw $v1, 0x38($sp) +/* 006928 80005D28 1440000A */ bnez $v0, .L80005D54 +/* 00692C 80005D2C 00000000 */ nop +/* 006930 80005D30 C460001C */ lwc1 $f0, 0x1c($v1) +/* 006934 80005D34 C4620024 */ lwc1 $f2, 0x24($v1) +/* 006938 80005D38 46000102 */ mul.s $f4, $f0, $f0 +/* 00693C 80005D3C 00000000 */ nop +/* 006940 80005D40 46021182 */ mul.s $f6, $f2, $f2 +/* 006944 80005D44 0C0326B4 */ jal sqrtf +/* 006948 80005D48 46062300 */ add.s $f12, $f4, $f6 +/* 00694C 80005D4C 10000003 */ b .L80005D5C +/* 006950 80005D50 46000406 */ mov.s $f16, $f0 +.L80005D54: +/* 006954 80005D54 44808000 */ mtc1 $zero, $f16 +/* 006958 80005D58 00000000 */ nop +.L80005D5C: +/* 00695C 80005D5C 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 +/* 006960 80005D60 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 +/* 006964 80005D64 8D230000 */ lw $v1, ($t1) +/* 006968 80005D68 8FAE0040 */ lw $t6, 0x40($sp) +/* 00696C 80005D6C C46E00D4 */ lwc1 $f14, 0xd4($v1) +/* 006970 80005D70 31CF8000 */ andi $t7, $t6, 0x8000 +/* 006974 80005D74 11E00019 */ beqz $t7, .L80005DDC +/* 006978 80005D78 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012 +/* 00697C 80005D7C 8FB80044 */ lw $t8, 0x44($sp) +/* 006980 80005D80 C46800B0 */ lwc1 $f8, 0xb0($v1) +/* 006984 80005D84 44985000 */ mtc1 $t8, $f10 +/* 006988 80005D88 00000000 */ nop +/* 00698C 80005D8C 46805120 */ cvt.s.w $f4, $f10 +/* 006990 80005D90 C46A00A4 */ lwc1 $f10, 0xa4($v1) +/* 006994 80005D94 46044182 */ mul.s $f6, $f8, $f4 +/* 006998 80005D98 46065200 */ add.s $f8, $f10, $f6 +/* 00699C 80005D9C E46800A4 */ swc1 $f8, 0xa4($v1) +/* 0069A0 80005DA0 8D230000 */ lw $v1, ($t1) +/* 0069A4 80005DA4 00000000 */ nop +/* 0069A8 80005DA8 C46200C8 */ lwc1 $f2, 0xc8($v1) +/* 0069AC 80005DAC C46000A4 */ lwc1 $f0, 0xa4($v1) +/* 0069B0 80005DB0 00000000 */ nop +/* 0069B4 80005DB4 4600103C */ c.lt.s $f2, $f0 +/* 0069B8 80005DB8 00000000 */ nop +/* 0069BC 80005DBC 45000014 */ bc1f .L80005E10 +/* 0069C0 80005DC0 00000000 */ nop +/* 0069C4 80005DC4 E46200A4 */ swc1 $f2, 0xa4($v1) +/* 0069C8 80005DC8 8D230000 */ lw $v1, ($t1) +/* 0069CC 80005DCC 00000000 */ nop +/* 0069D0 80005DD0 C46000A4 */ lwc1 $f0, 0xa4($v1) +/* 0069D4 80005DD4 1000000F */ b .L80005E14 +/* 0069D8 80005DD8 44801000 */ mtc1 $zero, $f2 +.L80005DDC: +/* 0069DC 80005DDC 8FB90044 */ lw $t9, 0x44($sp) +/* 0069E0 80005DE0 C46400B4 */ lwc1 $f4, 0xb4($v1) +/* 0069E4 80005DE4 44995000 */ mtc1 $t9, $f10 +/* 0069E8 80005DE8 00000000 */ nop +/* 0069EC 80005DEC 468051A0 */ cvt.s.w $f6, $f10 +/* 0069F0 80005DF0 C46A00A4 */ lwc1 $f10, 0xa4($v1) +/* 0069F4 80005DF4 46062202 */ mul.s $f8, $f4, $f6 +/* 0069F8 80005DF8 46085101 */ sub.s $f4, $f10, $f8 +/* 0069FC 80005DFC E46400A4 */ swc1 $f4, 0xa4($v1) +/* 006A00 80005E00 8D230000 */ lw $v1, ($t1) +/* 006A04 80005E04 00000000 */ nop +/* 006A08 80005E08 C46000A4 */ lwc1 $f0, 0xa4($v1) +/* 006A0C 80005E0C 00000000 */ nop +.L80005E10: +/* 006A10 80005E10 44801000 */ mtc1 $zero, $f2 +.L80005E14: +/* 006A14 80005E14 00000000 */ nop +/* 006A18 80005E18 4602003C */ c.lt.s $f0, $f2 +/* 006A1C 80005E1C 00000000 */ nop +/* 006A20 80005E20 45000002 */ bc1f .L80005E2C +/* 006A24 80005E24 00000000 */ nop +/* 006A28 80005E28 E46200A4 */ swc1 $f2, 0xa4($v1) +.L80005E2C: +/* 006A2C 80005E2C 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0) +/* 006A30 80005E30 34018000 */ li $at, 32768 +/* 006A34 80005E34 848A0196 */ lh $t2, 0x196($a0) +/* 006A38 80005E38 848C01A0 */ lh $t4, 0x1a0($a0) +/* 006A3C 80005E3C 000A5823 */ negu $t3, $t2 +/* 006A40 80005E40 318DFFFF */ andi $t5, $t4, 0xffff +/* 006A44 80005E44 016D1023 */ subu $v0, $t3, $t5 +/* 006A48 80005E48 00411021 */ addu $v0, $v0, $at +/* 006A4C 80005E4C 34018001 */ li $at, 32769 +/* 006A50 80005E50 0041082A */ slt $at, $v0, $at +/* 006A54 80005E54 14200003 */ bnez $at, .L80005E64 +/* 006A58 80005E58 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 006A5C 80005E5C 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 006A60 80005E60 00411021 */ addu $v0, $v0, $at +.L80005E64: +/* 006A64 80005E64 28418000 */ slti $at, $v0, -0x8000 +/* 006A68 80005E68 10200002 */ beqz $at, .L80005E74 +/* 006A6C 80005E6C 3401FFFF */ li $at, 65535 +/* 006A70 80005E70 00411021 */ addu $v0, $v0, $at +.L80005E74: +/* 006A74 80005E74 00022400 */ sll $a0, $v0, 0x10 +/* 006A78 80005E78 00047403 */ sra $t6, $a0, 0x10 +/* 006A7C 80005E7C 01C02025 */ move $a0, $t6 +/* 006A80 80005E80 E7AE001C */ swc1 $f14, 0x1c($sp) +/* 006A84 80005E84 0C01C1F1 */ jal func_800707C4 +/* 006A88 80005E88 E7B00030 */ swc1 $f16, 0x30($sp) +/* 006A8C 80005E8C 44803000 */ mtc1 $zero, $f6 +/* 006A90 80005E90 C7AE001C */ lwc1 $f14, 0x1c($sp) +/* 006A94 80005E94 4606003C */ c.lt.s $f0, $f6 +/* 006A98 80005E98 C7B00030 */ lwc1 $f16, 0x30($sp) +/* 006A9C 80005E9C 45000002 */ bc1f .L80005EA8 +/* 006AA0 80005EA0 46000086 */ mov.s $f2, $f0 +/* 006AA4 80005EA4 46000087 */ neg.s $f2, $f0 +.L80005EA8: +/* 006AA8 80005EA8 E7A20024 */ swc1 $f2, 0x24($sp) +/* 006AAC 80005EAC E7AE001C */ swc1 $f14, 0x1c($sp) +/* 006AB0 80005EB0 0C019944 */ jal func_80066510 +/* 006AB4 80005EB4 E7B00030 */ swc1 $f16, 0x30($sp) +/* 006AB8 80005EB8 C7A20024 */ lwc1 $f2, 0x24($sp) +/* 006ABC 80005EBC C7AE001C */ lwc1 $f14, 0x1c($sp) +/* 006AC0 80005EC0 C7B00030 */ lwc1 $f16, 0x30($sp) +/* 006AC4 80005EC4 14400017 */ bnez $v0, .L80005F24 +/* 006AC8 80005EC8 00000000 */ nop +/* 006ACC 80005ECC E7A20024 */ swc1 $f2, 0x24($sp) +/* 006AD0 80005ED0 E7AE001C */ swc1 $f14, 0x1c($sp) +/* 006AD4 80005ED4 0C0044E7 */ jal func_8001139C +/* 006AD8 80005ED8 E7B00030 */ swc1 $f16, 0x30($sp) +/* 006ADC 80005EDC 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 +/* 006AE0 80005EE0 C7A20024 */ lwc1 $f2, 0x24($sp) +/* 006AE4 80005EE4 C7AE001C */ lwc1 $f14, 0x1c($sp) +/* 006AE8 80005EE8 C7B00030 */ lwc1 $f16, 0x30($sp) +/* 006AEC 80005EEC 1440000D */ bnez $v0, .L80005F24 +/* 006AF0 80005EF0 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 +/* 006AF4 80005EF4 8D2F0000 */ lw $t7, ($t1) +/* 006AF8 80005EF8 3C01402E */ li $at, 0x402E0000 # 2.718750 +/* 006AFC 80005EFC C5EA00BC */ lwc1 $f10, 0xbc($t7) +/* 006B00 80005F00 44815800 */ mtc1 $at, $f11 +/* 006B04 80005F04 46025202 */ mul.s $f8, $f10, $f2 +/* 006B08 80005F08 44805000 */ mtc1 $zero, $f10 +/* 006B0C 80005F0C 46104102 */ mul.s $f4, $f8, $f16 +/* 006B10 80005F10 460021A1 */ cvt.d.s $f6, $f4 +/* 006B14 80005F14 00000000 */ nop +/* 006B18 80005F18 462A3203 */ div.d $f8, $f6, $f10 +/* 006B1C 80005F1C 10000003 */ b .L80005F2C +/* 006B20 80005F20 462044A0 */ cvt.s.d $f18, $f8 +.L80005F24: +/* 006B24 80005F24 44809000 */ mtc1 $zero, $f18 +/* 006B28 80005F28 00000000 */ nop +.L80005F2C: +/* 006B2C 80005F2C E7AE001C */ swc1 $f14, 0x1c($sp) +/* 006B30 80005F30 E7B00030 */ swc1 $f16, 0x30($sp) +/* 006B34 80005F34 0C028064 */ jal func_800A0190 +/* 006B38 80005F38 E7B20020 */ swc1 $f18, 0x20($sp) +/* 006B3C 80005F3C 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 +/* 006B40 80005F40 C7AE001C */ lwc1 $f14, 0x1c($sp) +/* 006B44 80005F44 C7B00030 */ lwc1 $f16, 0x30($sp) +/* 006B48 80005F48 C7B20020 */ lwc1 $f18, 0x20($sp) +/* 006B4C 80005F4C 14400005 */ bnez $v0, .L80005F64 +/* 006B50 80005F50 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 +/* 006B54 80005F54 44802000 */ mtc1 $zero, $f4 +/* 006B58 80005F58 8D380000 */ lw $t8, ($t1) +/* 006B5C 80005F5C 00000000 */ nop +/* 006B60 80005F60 E70400A4 */ swc1 $f4, 0xa4($t8) +.L80005F64: +/* 006B64 80005F64 3C014024 */ li $at, 0x40240000 # 2.562500 +/* 006B68 80005F68 44811800 */ mtc1 $at, $f3 +/* 006B6C 80005F6C 44801000 */ mtc1 $zero, $f2 +/* 006B70 80005F70 46008021 */ cvt.d.s $f0, $f16 +/* 006B74 80005F74 4620103C */ c.lt.d $f2, $f0 +/* 006B78 80005F78 44805800 */ mtc1 $zero, $f11 +/* 006B7C 80005F7C 45000004 */ bc1f .L80005F90 +/* 006B80 80005F80 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012 +/* 006B84 80005F84 46220181 */ sub.d $f6, $f0, $f2 +/* 006B88 80005F88 10000003 */ b .L80005F98 +/* 006B8C 80005F8C 46203420 */ cvt.s.d $f16, $f6 +.L80005F90: +/* 006B90 80005F90 44808000 */ mtc1 $zero, $f16 +/* 006B94 80005F94 00000000 */ nop +.L80005F98: +/* 006B98 80005F98 44805000 */ mtc1 $zero, $f10 +/* 006B9C 80005F9C 46008221 */ cvt.d.s $f8, $f16 +/* 006BA0 80005FA0 46285032 */ c.eq.d $f10, $f8 +/* 006BA4 80005FA4 3C01800E */ lui $at, 0x800e +/* 006BA8 80005FA8 45010034 */ bc1t .L8000607C +/* 006BAC 80005FAC 00000000 */ nop +/* 006BB0 80005FB0 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0) +/* 006BB4 80005FB4 00000000 */ nop +/* 006BB8 80005FB8 80820185 */ lb $v0, 0x185($a0) +/* 006BBC 80005FBC 00000000 */ nop +/* 006BC0 80005FC0 1040002E */ beqz $v0, .L8000607C +/* 006BC4 80005FC4 00000000 */ nop +/* 006BC8 80005FC8 2841000B */ slti $at, $v0, 0xb +/* 006BCC 80005FCC 10200003 */ beqz $at, .L80005FDC +/* 006BD0 80005FD0 2405000A */ li $a1, 10 +/* 006BD4 80005FD4 10000001 */ b .L80005FDC +/* 006BD8 80005FD8 00402825 */ move $a1, $v0 +.L80005FDC: +/* 006BDC 80005FDC 44853000 */ mtc1 $a1, $f6 +/* 006BE0 80005FE0 3C01800E */ lui $at, %hi(D_800E4C5C) # $at, 0x800e +/* 006BE4 80005FE4 468032A1 */ cvt.d.w $f10, $f6 +/* 006BE8 80005FE8 C4254C50 */ lwc1 $f5, %lo(D_800E4C50)($at) +/* 006BEC 80005FEC C4244C54 */ lwc1 $f4, %lo(D_800E4C54)($at) +/* 006BF0 80005FF0 8D230000 */ lw $v1, ($t1) +/* 006BF4 80005FF4 462A2002 */ mul.d $f0, $f4, $f10 +/* 006BF8 80005FF8 C46C003C */ lwc1 $f12, 0x3c($v1) +/* 006BFC 80005FFC 0005C980 */ sll $t9, $a1, 6 +/* 006C00 80006000 460060A1 */ cvt.d.s $f2, $f12 +/* 006C04 80006004 4620103C */ c.lt.d $f2, $f0 +/* 006C08 80006008 00000000 */ nop +/* 006C0C 8000600C 4500000E */ bc1f .L80006048 +/* 006C10 80006010 00000000 */ nop +/* 006C14 80006014 44994000 */ mtc1 $t9, $f8 +/* 006C18 80006018 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012 +/* 006C1C 8000601C 468041A1 */ cvt.d.w $f6, $f8 +/* 006C20 80006020 00000000 */ nop +/* 006C24 80006024 46260103 */ div.d $f4, $f0, $f6 +/* 006C28 80006028 46241280 */ add.d $f10, $f2, $f4 +/* 006C2C 8000602C 46205220 */ cvt.s.d $f8, $f10 +/* 006C30 80006030 E468003C */ swc1 $f8, 0x3c($v1) +/* 006C34 80006034 8D230000 */ lw $v1, ($t1) +/* 006C38 80006038 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0) +/* 006C3C 8000603C C46C003C */ lwc1 $f12, 0x3c($v1) +/* 006C40 80006040 1000001C */ b .L800060B4 +/* 006C44 80006044 460C7380 */ add.s $f14, $f14, $f12 +.L80006048: +/* 006C48 80006048 4622003C */ c.lt.d $f0, $f2 +/* 006C4C 8000604C 00000000 */ nop +/* 006C50 80006050 45000008 */ bc1f .L80006074 +/* 006C54 80006054 00000000 */ nop +/* 006C58 80006058 462001A0 */ cvt.s.d $f6, $f0 +/* 006C5C 8000605C 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012 +/* 006C60 80006060 E466003C */ swc1 $f6, 0x3c($v1) +/* 006C64 80006064 8D230000 */ lw $v1, ($t1) +/* 006C68 80006068 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0) +/* 006C6C 8000606C C46C003C */ lwc1 $f12, 0x3c($v1) +/* 006C70 80006070 00000000 */ nop +.L80006074: +/* 006C74 80006074 1000000F */ b .L800060B4 +/* 006C78 80006078 460C7380 */ add.s $f14, $f14, $f12 +.L8000607C: +/* 006C7C 8000607C 8D230000 */ lw $v1, ($t1) +/* 006C80 80006080 C4294C58 */ lwc1 $f9, %lo(D_800E4C58)($at) +/* 006C84 80006084 C464003C */ lwc1 $f4, 0x3c($v1) +/* 006C88 80006088 C4284C5C */ lwc1 $f8, %lo(D_800E4C5C)($at) +/* 006C8C 8000608C 460022A1 */ cvt.d.s $f10, $f4 +/* 006C90 80006090 46285182 */ mul.d $f6, $f10, $f8 +/* 006C94 80006094 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012 +/* 006C98 80006098 46203120 */ cvt.s.d $f4, $f6 +/* 006C9C 8000609C E464003C */ swc1 $f4, 0x3c($v1) +/* 006CA0 800060A0 8D230000 */ lw $v1, ($t1) +/* 006CA4 800060A4 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0) +/* 006CA8 800060A8 C46A003C */ lwc1 $f10, 0x3c($v1) +/* 006CAC 800060AC 00000000 */ nop +/* 006CB0 800060B0 460A7380 */ add.s $f14, $f14, $f10 +.L800060B4: +/* 006CB4 800060B4 C46800CC */ lwc1 $f8, 0xcc($v1) +/* 006CB8 800060B8 C46A00A4 */ lwc1 $f10, 0xa4($v1) +/* 006CBC 800060BC 46088182 */ mul.s $f6, $f16, $f8 +/* 006CC0 800060C0 848A0000 */ lh $t2, ($a0) +/* 006CC4 800060C4 2401FFFF */ li $at, -1 +/* 006CC8 800060C8 46123100 */ add.s $f4, $f6, $f18 +/* 006CCC 800060CC 460A2200 */ add.s $f8, $f4, $f10 +/* 006CD0 800060D0 11410016 */ beq $t2, $at, .L8000612C +/* 006CD4 800060D4 46087380 */ add.s $f14, $f14, $f8 +/* 006CD8 800060D8 808C01E2 */ lb $t4, 0x1e2($a0) +/* 006CDC 800060DC 00000000 */ nop +/* 006CE0 800060E0 15800012 */ bnez $t4, .L8000612C +/* 006CE4 800060E4 00000000 */ nop +/* 006CE8 800060E8 808B01E5 */ lb $t3, 0x1e5($a0) +/* 006CEC 800060EC 00000000 */ nop +/* 006CF0 800060F0 29610004 */ slti $at, $t3, 4 +/* 006CF4 800060F4 1020000D */ beqz $at, .L8000612C +/* 006CF8 800060F8 00000000 */ nop +/* 006CFC 800060FC 0C0044E7 */ jal func_8001139C +/* 006D00 80006100 E7AE001C */ swc1 $f14, 0x1c($sp) +/* 006D04 80006104 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 +/* 006D08 80006108 C7AE001C */ lwc1 $f14, 0x1c($sp) +/* 006D0C 8000610C 14400007 */ bnez $v0, .L8000612C +/* 006D10 80006110 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 +/* 006D14 80006114 3C01800E */ lui $at, %hi(D_800E4C64) # $at, 0x800e +/* 006D18 80006118 C4254C60 */ lwc1 $f5, %lo(D_800E4C60)($at) +/* 006D1C 8000611C C4244C64 */ lwc1 $f4, %lo(D_800E4C64)($at) +/* 006D20 80006120 460071A1 */ cvt.d.s $f6, $f14 +/* 006D24 80006124 46243280 */ add.d $f10, $f6, $f4 +/* 006D28 80006128 462053A0 */ cvt.s.d $f14, $f10 +.L8000612C: +/* 006D2C 8000612C 8D230000 */ lw $v1, ($t1) +/* 006D30 80006130 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 006D34 80006134 C460005C */ lwc1 $f0, 0x5c($v1) +/* 006D38 80006138 44811000 */ mtc1 $at, $f2 +/* 006D3C 8000613C 46007201 */ sub.s $f8, $f14, $f0 +/* 006D40 80006140 3C01800E */ lui $at, %hi(D_800E4C68) # $at, 0x800e +/* 006D44 80006144 46024183 */ div.s $f6, $f8, $f2 +/* 006D48 80006148 46060100 */ add.s $f4, $f0, $f6 +/* 006D4C 8000614C E464005C */ swc1 $f4, 0x5c($v1) +/* 006D50 80006150 8D230000 */ lw $v1, ($t1) +/* 006D54 80006154 C42A4C6C */ lwc1 $f10, %lo(D_800E4C6C)($at) +/* 006D58 80006158 C460005C */ lwc1 $f0, 0x5c($v1) +/* 006D5C 8000615C C42B4C68 */ lwc1 $f11, %lo(D_800E4C68)($at) +/* 006D60 80006160 46000221 */ cvt.d.s $f8, $f0 +/* 006D64 80006164 4628503C */ c.lt.d $f10, $f8 +/* 006D68 80006168 3C01800E */ lui $at, %hi(D_800E4C70) # $at, 0x800e +/* 006D6C 8000616C 45000008 */ bc1f .L80006190 +/* 006D70 80006170 00000000 */ nop +/* 006D74 80006174 C4264C70 */ lwc1 $f6, %lo(D_800E4C70)($at) +/* 006D78 80006178 00000000 */ nop +/* 006D7C 8000617C E466005C */ swc1 $f6, 0x5c($v1) +/* 006D80 80006180 8D230000 */ lw $v1, ($t1) +/* 006D84 80006184 00000000 */ nop +/* 006D88 80006188 C460005C */ lwc1 $f0, 0x5c($v1) +/* 006D8C 8000618C 00000000 */ nop +.L80006190: +/* 006D90 80006190 3C01800E */ lui $at, %hi(D_800E4C74) # $at, 0x800e +/* 006D94 80006194 C4244C74 */ lwc1 $f4, %lo(D_800E4C74)($at) +/* 006D98 80006198 24050001 */ li $a1, 1 +/* 006D9C 8000619C 46040282 */ mul.s $f10, $f0, $f4 +/* 006DA0 800061A0 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 006DA4 800061A4 444DF800 */ cfc1 $t5, $31 +/* 006DA8 800061A8 44C5F800 */ ctc1 $a1, $31 +/* 006DAC 800061AC 00000000 */ nop +/* 006DB0 800061B0 46005224 */ cvt.w.s $f8, $f10 +/* 006DB4 800061B4 4445F800 */ cfc1 $a1, $31 +/* 006DB8 800061B8 00000000 */ nop +/* 006DBC 800061BC 30A50078 */ andi $a1, $a1, 0x78 +/* 006DC0 800061C0 10A00012 */ beqz $a1, .L8000620C +/* 006DC4 800061C4 00000000 */ nop +/* 006DC8 800061C8 44814000 */ mtc1 $at, $f8 +/* 006DCC 800061CC 24050001 */ li $a1, 1 +/* 006DD0 800061D0 46085201 */ sub.s $f8, $f10, $f8 +/* 006DD4 800061D4 3C018000 */ lui $at, 0x8000 +/* 006DD8 800061D8 44C5F800 */ ctc1 $a1, $31 +/* 006DDC 800061DC 00000000 */ nop +/* 006DE0 800061E0 46004224 */ cvt.w.s $f8, $f8 +/* 006DE4 800061E4 4445F800 */ cfc1 $a1, $31 +/* 006DE8 800061E8 00000000 */ nop +/* 006DEC 800061EC 30A50078 */ andi $a1, $a1, 0x78 +/* 006DF0 800061F0 14A00004 */ bnez $a1, .L80006204 +/* 006DF4 800061F4 00000000 */ nop +/* 006DF8 800061F8 44054000 */ mfc1 $a1, $f8 +/* 006DFC 800061FC 10000007 */ b .L8000621C +/* 006E00 80006200 00A12825 */ or $a1, $a1, $at +.L80006204: +/* 006E04 80006204 10000005 */ b .L8000621C +/* 006E08 80006208 2405FFFF */ li $a1, -1 +.L8000620C: +/* 006E0C 8000620C 44054000 */ mfc1 $a1, $f8 +/* 006E10 80006210 00000000 */ nop +/* 006E14 80006214 04A0FFFB */ bltz $a1, .L80006204 +/* 006E18 80006218 00000000 */ nop +.L8000621C: +/* 006E1C 8000621C 946F0018 */ lhu $t7, 0x18($v1) +/* 006E20 80006220 30A4FFFF */ andi $a0, $a1, 0xffff +/* 006E24 80006224 44CDF800 */ ctc1 $t5, $31 +/* 006E28 80006228 008F082A */ slt $at, $a0, $t7 +/* 006E2C 8000622C 1420000C */ bnez $at, .L80006260 +/* 006E30 80006230 00001025 */ move $v0, $zero +.L80006234: +/* 006E34 80006234 24420001 */ addiu $v0, $v0, 1 +/* 006E38 80006238 305800FF */ andi $t8, $v0, 0xff +/* 006E3C 8000623C 0018C840 */ sll $t9, $t8, 1 +/* 006E40 80006240 00795021 */ addu $t2, $v1, $t9 +/* 006E44 80006244 954C0018 */ lhu $t4, 0x18($t2) +/* 006E48 80006248 03001025 */ move $v0, $t8 +/* 006E4C 8000624C 008C082A */ slt $at, $a0, $t4 +/* 006E50 80006250 14200003 */ bnez $at, .L80006260 +/* 006E54 80006254 2B010004 */ slti $at, $t8, 4 +/* 006E58 80006258 1420FFF6 */ bnez $at, .L80006234 +/* 006E5C 8000625C 00000000 */ nop +.L80006260: +/* 006E60 80006260 24010004 */ li $at, 4 +/* 006E64 80006264 14410005 */ bne $v0, $at, .L8000627C +/* 006E68 80006268 00402825 */ move $a1, $v0 +/* 006E6C 8000626C 00625821 */ addu $t3, $v1, $v0 +/* 006E70 80006270 9168002C */ lbu $t0, 0x2c($t3) +/* 006E74 80006274 10000045 */ b .L8000638C +/* 006E78 80006278 44882000 */ mtc1 $t0, $f4 +.L8000627C: +/* 006E7C 8000627C 10A00004 */ beqz $a1, .L80006290 +/* 006E80 80006280 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 006E84 80006284 2442FFFF */ addiu $v0, $v0, -1 +/* 006E88 80006288 304500FF */ andi $a1, $v0, 0xff +/* 006E8C 8000628C 00A01025 */ move $v0, $a1 +.L80006290: +/* 006E90 80006290 00027040 */ sll $t6, $v0, 1 +/* 006E94 80006294 006E7821 */ addu $t7, $v1, $t6 +/* 006E98 80006298 0005C840 */ sll $t9, $a1, 1 +/* 006E9C 8000629C 95E60018 */ lhu $a2, 0x18($t7) +/* 006EA0 800062A0 00795021 */ addu $t2, $v1, $t9 +/* 006EA4 800062A4 954C001A */ lhu $t4, 0x1a($t2) +/* 006EA8 800062A8 0086C023 */ subu $t8, $a0, $a2 +/* 006EAC 800062AC 01865823 */ subu $t3, $t4, $a2 +/* 006EB0 800062B0 448B5000 */ mtc1 $t3, $f10 +/* 006EB4 800062B4 44983000 */ mtc1 $t8, $f6 +/* 006EB8 800062B8 46805220 */ cvt.s.w $f8, $f10 +/* 006EBC 800062BC 00657021 */ addu $t6, $v1, $a1 +/* 006EC0 800062C0 00626821 */ addu $t5, $v1, $v0 +/* 006EC4 800062C4 46803120 */ cvt.s.w $f4, $f6 +/* 006EC8 800062C8 91A7002C */ lbu $a3, 0x2c($t5) +/* 006ECC 800062CC 91CF002D */ lbu $t7, 0x2d($t6) +/* 006ED0 800062D0 46082003 */ div.s $f0, $f4, $f8 +/* 006ED4 800062D4 01E7C023 */ subu $t8, $t7, $a3 +/* 006ED8 800062D8 44983000 */ mtc1 $t8, $f6 +/* 006EDC 800062DC 44874000 */ mtc1 $a3, $f8 +/* 006EE0 800062E0 468032A0 */ cvt.s.w $f10, $f6 +/* 006EE4 800062E4 46005102 */ mul.s $f4, $f10, $f0 +/* 006EE8 800062E8 04E10004 */ bgez $a3, .L800062FC +/* 006EEC 800062EC 468041A0 */ cvt.s.w $f6, $f8 +/* 006EF0 800062F0 44815000 */ mtc1 $at, $f10 +/* 006EF4 800062F4 00000000 */ nop +/* 006EF8 800062F8 460A3180 */ add.s $f6, $f6, $f10 +.L800062FC: +/* 006EFC 800062FC 46062200 */ add.s $f8, $f4, $f6 +/* 006F00 80006300 24080001 */ li $t0, 1 +/* 006F04 80006304 4459F800 */ cfc1 $t9, $31 +/* 006F08 80006308 44C8F800 */ ctc1 $t0, $31 +/* 006F0C 8000630C 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 006F10 80006310 460042A4 */ cvt.w.s $f10, $f8 +/* 006F14 80006314 4448F800 */ cfc1 $t0, $31 +/* 006F18 80006318 00000000 */ nop +/* 006F1C 8000631C 31080078 */ andi $t0, $t0, 0x78 +/* 006F20 80006320 11000012 */ beqz $t0, .L8000636C +/* 006F24 80006324 00000000 */ nop +/* 006F28 80006328 44815000 */ mtc1 $at, $f10 +/* 006F2C 8000632C 24080001 */ li $t0, 1 +/* 006F30 80006330 460A4281 */ sub.s $f10, $f8, $f10 +/* 006F34 80006334 3C018000 */ lui $at, 0x8000 +/* 006F38 80006338 44C8F800 */ ctc1 $t0, $31 +/* 006F3C 8000633C 00000000 */ nop +/* 006F40 80006340 460052A4 */ cvt.w.s $f10, $f10 +/* 006F44 80006344 4448F800 */ cfc1 $t0, $31 +/* 006F48 80006348 00000000 */ nop +/* 006F4C 8000634C 31080078 */ andi $t0, $t0, 0x78 +/* 006F50 80006350 15000004 */ bnez $t0, .L80006364 +/* 006F54 80006354 00000000 */ nop +/* 006F58 80006358 44085000 */ mfc1 $t0, $f10 +/* 006F5C 8000635C 10000007 */ b .L8000637C +/* 006F60 80006360 01014025 */ or $t0, $t0, $at +.L80006364: +/* 006F64 80006364 10000005 */ b .L8000637C +/* 006F68 80006368 2408FFFF */ li $t0, -1 +.L8000636C: +/* 006F6C 8000636C 44085000 */ mfc1 $t0, $f10 +/* 006F70 80006370 00000000 */ nop +/* 006F74 80006374 0500FFFB */ bltz $t0, .L80006364 +/* 006F78 80006378 00000000 */ nop +.L8000637C: +/* 006F7C 8000637C 44D9F800 */ ctc1 $t9, $31 +/* 006F80 80006380 310A00FF */ andi $t2, $t0, 0xff +/* 006F84 80006384 01404025 */ move $t0, $t2 +/* 006F88 80006388 44882000 */ mtc1 $t0, $f4 +.L8000638C: +/* 006F8C 8000638C C4600054 */ lwc1 $f0, 0x54($v1) +/* 006F90 80006390 05010005 */ bgez $t0, .L800063A8 +/* 006F94 80006394 468021A0 */ cvt.s.w $f6, $f4 +/* 006F98 80006398 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 006F9C 8000639C 44814000 */ mtc1 $at, $f8 +/* 006FA0 800063A0 00000000 */ nop +/* 006FA4 800063A4 46083180 */ add.s $f6, $f6, $f8 +.L800063A8: +/* 006FA8 800063A8 46003281 */ sub.s $f10, $f6, $f0 +/* 006FAC 800063AC 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 006FB0 800063B0 46025103 */ div.s $f4, $f10, $f2 +/* 006FB4 800063B4 44813000 */ mtc1 $at, $f6 +/* 006FB8 800063B8 44805000 */ mtc1 $zero, $f10 +/* 006FBC 800063BC 46040200 */ add.s $f8, $f0, $f4 +/* 006FC0 800063C0 E4680054 */ swc1 $f8, 0x54($v1) +/* 006FC4 800063C4 8D2C0000 */ lw $t4, ($t1) +/* 006FC8 800063C8 00000000 */ nop +/* 006FCC 800063CC E5860060 */ swc1 $f6, 0x60($t4) +/* 006FD0 800063D0 8D2B0000 */ lw $t3, ($t1) +/* 006FD4 800063D4 00000000 */ nop +/* 006FD8 800063D8 E56A0058 */ swc1 $f10, 0x58($t3) +/* 006FDC 800063DC 8FBF0014 */ lw $ra, 0x14($sp) +/* 006FE0 800063E0 27BD0038 */ addiu $sp, $sp, 0x38 +/* 006FE4 800063E4 03E00008 */ jr $ra +/* 006FE8 800063E8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800063EC.s b/asm/non_matchings/unknown_005740/func_800063EC.s new file mode 100644 index 00000000..bb854574 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800063EC.s @@ -0,0 +1,475 @@ +glabel func_800063EC +/* 006FEC 800063EC 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 006FF0 800063F0 AFBF0014 */ sw $ra, 0x14($sp) +/* 006FF4 800063F4 AFA40030 */ sw $a0, 0x30($sp) +/* 006FF8 800063F8 AFA50034 */ sw $a1, 0x34($sp) +/* 006FFC 800063FC AFA60038 */ sw $a2, 0x38($sp) +/* 007000 80006400 0C0044E7 */ jal func_8001139C +/* 007004 80006404 AFA7003C */ sw $a3, 0x3c($sp) +/* 007008 80006408 1440000F */ bnez $v0, .L80006448 +/* 00700C 8000640C 00000000 */ nop +/* 007010 80006410 8FA20030 */ lw $v0, 0x30($sp) +/* 007014 80006414 00000000 */ nop +/* 007018 80006418 C440001C */ lwc1 $f0, 0x1c($v0) +/* 00701C 8000641C C4420024 */ lwc1 $f2, 0x24($v0) +/* 007020 80006420 46000102 */ mul.s $f4, $f0, $f0 +/* 007024 80006424 C44E0020 */ lwc1 $f14, 0x20($v0) +/* 007028 80006428 46021182 */ mul.s $f6, $f2, $f2 +/* 00702C 8000642C 00000000 */ nop +/* 007030 80006430 460E7282 */ mul.s $f10, $f14, $f14 +/* 007034 80006434 46062200 */ add.s $f8, $f4, $f6 +/* 007038 80006438 0C0326B4 */ jal sqrtf +/* 00703C 8000643C 460A4300 */ add.s $f12, $f8, $f10 +/* 007040 80006440 10000003 */ b .L80006450 +/* 007044 80006444 46000486 */ mov.s $f18, $f0 +.L80006448: +/* 007048 80006448 44809000 */ mtc1 $zero, $f18 +/* 00704C 8000644C 00000000 */ nop +.L80006450: +/* 007050 80006450 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 007054 80006454 44812000 */ mtc1 $at, $f4 +/* 007058 80006458 00000000 */ nop +/* 00705C 8000645C 4604903C */ c.lt.s $f18, $f4 +/* 007060 80006460 00000000 */ nop +/* 007064 80006464 45000014 */ bc1f .L800064B8 +/* 007068 80006468 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 +/* 00706C 8000646C 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 +/* 007070 80006470 8D230000 */ lw $v1, ($t1) +/* 007074 80006474 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 007078 80006478 906E0037 */ lbu $t6, 0x37($v1) +/* 00707C 8000647C C4600054 */ lwc1 $f0, 0x54($v1) +/* 007080 80006480 448E3000 */ mtc1 $t6, $f6 +/* 007084 80006484 05C10004 */ bgez $t6, .L80006498 +/* 007088 80006488 46803220 */ cvt.s.w $f8, $f6 +/* 00708C 8000648C 44815000 */ mtc1 $at, $f10 +/* 007090 80006490 00000000 */ nop +/* 007094 80006494 460A4200 */ add.s $f8, $f8, $f10 +.L80006498: +/* 007098 80006498 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 00709C 8000649C 44813000 */ mtc1 $at, $f6 +/* 0070A0 800064A0 46004101 */ sub.s $f4, $f8, $f0 +/* 0070A4 800064A4 00000000 */ nop +/* 0070A8 800064A8 46062283 */ div.s $f10, $f4, $f6 +/* 0070AC 800064AC 460A0200 */ add.s $f8, $f0, $f10 +/* 0070B0 800064B0 10000092 */ b .L800066FC +/* 0070B4 800064B4 E4680054 */ swc1 $f8, 0x54($v1) +.L800064B8: +/* 0070B8 800064B8 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 +/* 0070BC 800064BC 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 +/* 0070C0 800064C0 8D230000 */ lw $v1, ($t1) +/* 0070C4 800064C4 3C01800E */ lui $at, %hi(D_800E4C78) # $at, 0x800e +/* 0070C8 800064C8 C4264C78 */ lwc1 $f6, %lo(D_800E4C78)($at) +/* 0070CC 800064CC C464005C */ lwc1 $f4, 0x5c($v1) +/* 0070D0 800064D0 24050001 */ li $a1, 1 +/* 0070D4 800064D4 46062282 */ mul.s $f10, $f4, $f6 +/* 0070D8 800064D8 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 0070DC 800064DC 444FF800 */ cfc1 $t7, $31 +/* 0070E0 800064E0 44C5F800 */ ctc1 $a1, $31 +/* 0070E4 800064E4 00000000 */ nop +/* 0070E8 800064E8 46005224 */ cvt.w.s $f8, $f10 +/* 0070EC 800064EC 4445F800 */ cfc1 $a1, $31 +/* 0070F0 800064F0 00000000 */ nop +/* 0070F4 800064F4 30A50078 */ andi $a1, $a1, 0x78 +/* 0070F8 800064F8 10A00012 */ beqz $a1, .L80006544 +/* 0070FC 800064FC 00000000 */ nop +/* 007100 80006500 44814000 */ mtc1 $at, $f8 +/* 007104 80006504 24050001 */ li $a1, 1 +/* 007108 80006508 46085201 */ sub.s $f8, $f10, $f8 +/* 00710C 8000650C 3C018000 */ lui $at, 0x8000 +/* 007110 80006510 44C5F800 */ ctc1 $a1, $31 +/* 007114 80006514 00000000 */ nop +/* 007118 80006518 46004224 */ cvt.w.s $f8, $f8 +/* 00711C 8000651C 4445F800 */ cfc1 $a1, $31 +/* 007120 80006520 00000000 */ nop +/* 007124 80006524 30A50078 */ andi $a1, $a1, 0x78 +/* 007128 80006528 14A00004 */ bnez $a1, .L8000653C +/* 00712C 8000652C 00000000 */ nop +/* 007130 80006530 44054000 */ mfc1 $a1, $f8 +/* 007134 80006534 10000007 */ b .L80006554 +/* 007138 80006538 00A12825 */ or $a1, $a1, $at +.L8000653C: +/* 00713C 8000653C 10000005 */ b .L80006554 +/* 007140 80006540 2405FFFF */ li $a1, -1 +.L80006544: +/* 007144 80006544 44054000 */ mfc1 $a1, $f8 +/* 007148 80006548 00000000 */ nop +/* 00714C 8000654C 04A0FFFB */ bltz $a1, .L8000653C +/* 007150 80006550 00000000 */ nop +.L80006554: +/* 007154 80006554 94790018 */ lhu $t9, 0x18($v1) +/* 007158 80006558 30A4FFFF */ andi $a0, $a1, 0xffff +/* 00715C 8000655C 44CFF800 */ ctc1 $t7, $31 +/* 007160 80006560 0099082A */ slt $at, $a0, $t9 +/* 007164 80006564 1420000C */ bnez $at, .L80006598 +/* 007168 80006568 00001025 */ move $v0, $zero +.L8000656C: +/* 00716C 8000656C 24420001 */ addiu $v0, $v0, 1 +/* 007170 80006570 304A00FF */ andi $t2, $v0, 0xff +/* 007174 80006574 000A5840 */ sll $t3, $t2, 1 +/* 007178 80006578 006B6021 */ addu $t4, $v1, $t3 +/* 00717C 8000657C 958D0018 */ lhu $t5, 0x18($t4) +/* 007180 80006580 01401025 */ move $v0, $t2 +/* 007184 80006584 008D082A */ slt $at, $a0, $t5 +/* 007188 80006588 14200003 */ bnez $at, .L80006598 +/* 00718C 8000658C 29410004 */ slti $at, $t2, 4 +/* 007190 80006590 1420FFF6 */ bnez $at, .L8000656C +/* 007194 80006594 00000000 */ nop +.L80006598: +/* 007198 80006598 24010004 */ li $at, 4 +/* 00719C 8000659C 14410005 */ bne $v0, $at, .L800065B4 +/* 0071A0 800065A0 00402825 */ move $a1, $v0 +/* 0071A4 800065A4 00627021 */ addu $t6, $v1, $v0 +/* 0071A8 800065A8 91C8002C */ lbu $t0, 0x2c($t6) +/* 0071AC 800065AC 10000045 */ b .L800066C4 +/* 0071B0 800065B0 44883000 */ mtc1 $t0, $f6 +.L800065B4: +/* 0071B4 800065B4 10A00004 */ beqz $a1, .L800065C8 +/* 0071B8 800065B8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0071BC 800065BC 2442FFFF */ addiu $v0, $v0, -1 +/* 0071C0 800065C0 304500FF */ andi $a1, $v0, 0xff +/* 0071C4 800065C4 00A01025 */ move $v0, $a1 +.L800065C8: +/* 0071C8 800065C8 0002C040 */ sll $t8, $v0, 1 +/* 0071CC 800065CC 0078C821 */ addu $t9, $v1, $t8 +/* 0071D0 800065D0 00055840 */ sll $t3, $a1, 1 +/* 0071D4 800065D4 97260018 */ lhu $a2, 0x18($t9) +/* 0071D8 800065D8 006B6021 */ addu $t4, $v1, $t3 +/* 0071DC 800065DC 958D001A */ lhu $t5, 0x1a($t4) +/* 0071E0 800065E0 00865023 */ subu $t2, $a0, $a2 +/* 0071E4 800065E4 01A67023 */ subu $t6, $t5, $a2 +/* 0071E8 800065E8 448E5000 */ mtc1 $t6, $f10 +/* 0071EC 800065EC 448A2000 */ mtc1 $t2, $f4 +/* 0071F0 800065F0 46805220 */ cvt.s.w $f8, $f10 +/* 0071F4 800065F4 0065C021 */ addu $t8, $v1, $a1 +/* 0071F8 800065F8 00627821 */ addu $t7, $v1, $v0 +/* 0071FC 800065FC 468021A0 */ cvt.s.w $f6, $f4 +/* 007200 80006600 91E7002C */ lbu $a3, 0x2c($t7) +/* 007204 80006604 9319002D */ lbu $t9, 0x2d($t8) +/* 007208 80006608 46083003 */ div.s $f0, $f6, $f8 +/* 00720C 8000660C 03275023 */ subu $t2, $t9, $a3 +/* 007210 80006610 448A2000 */ mtc1 $t2, $f4 +/* 007214 80006614 44874000 */ mtc1 $a3, $f8 +/* 007218 80006618 468022A0 */ cvt.s.w $f10, $f4 +/* 00721C 8000661C 46005182 */ mul.s $f6, $f10, $f0 +/* 007220 80006620 04E10004 */ bgez $a3, .L80006634 +/* 007224 80006624 46804120 */ cvt.s.w $f4, $f8 +/* 007228 80006628 44815000 */ mtc1 $at, $f10 +/* 00722C 8000662C 00000000 */ nop +/* 007230 80006630 460A2100 */ add.s $f4, $f4, $f10 +.L80006634: +/* 007234 80006634 46043200 */ add.s $f8, $f6, $f4 +/* 007238 80006638 24080001 */ li $t0, 1 +/* 00723C 8000663C 444BF800 */ cfc1 $t3, $31 +/* 007240 80006640 44C8F800 */ ctc1 $t0, $31 +/* 007244 80006644 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 007248 80006648 460042A4 */ cvt.w.s $f10, $f8 +/* 00724C 8000664C 4448F800 */ cfc1 $t0, $31 +/* 007250 80006650 00000000 */ nop +/* 007254 80006654 31080078 */ andi $t0, $t0, 0x78 +/* 007258 80006658 11000012 */ beqz $t0, .L800066A4 +/* 00725C 8000665C 00000000 */ nop +/* 007260 80006660 44815000 */ mtc1 $at, $f10 +/* 007264 80006664 24080001 */ li $t0, 1 +/* 007268 80006668 460A4281 */ sub.s $f10, $f8, $f10 +/* 00726C 8000666C 3C018000 */ lui $at, 0x8000 +/* 007270 80006670 44C8F800 */ ctc1 $t0, $31 +/* 007274 80006674 00000000 */ nop +/* 007278 80006678 460052A4 */ cvt.w.s $f10, $f10 +/* 00727C 8000667C 4448F800 */ cfc1 $t0, $31 +/* 007280 80006680 00000000 */ nop +/* 007284 80006684 31080078 */ andi $t0, $t0, 0x78 +/* 007288 80006688 15000004 */ bnez $t0, .L8000669C +/* 00728C 8000668C 00000000 */ nop +/* 007290 80006690 44085000 */ mfc1 $t0, $f10 +/* 007294 80006694 10000007 */ b .L800066B4 +/* 007298 80006698 01014025 */ or $t0, $t0, $at +.L8000669C: +/* 00729C 8000669C 10000005 */ b .L800066B4 +/* 0072A0 800066A0 2408FFFF */ li $t0, -1 +.L800066A4: +/* 0072A4 800066A4 44085000 */ mfc1 $t0, $f10 +/* 0072A8 800066A8 00000000 */ nop +/* 0072AC 800066AC 0500FFFB */ bltz $t0, .L8000669C +/* 0072B0 800066B0 00000000 */ nop +.L800066B4: +/* 0072B4 800066B4 44CBF800 */ ctc1 $t3, $31 +/* 0072B8 800066B8 310C00FF */ andi $t4, $t0, 0xff +/* 0072BC 800066BC 01804025 */ move $t0, $t4 +/* 0072C0 800066C0 44883000 */ mtc1 $t0, $f6 +.L800066C4: +/* 0072C4 800066C4 C4600054 */ lwc1 $f0, 0x54($v1) +/* 0072C8 800066C8 05010005 */ bgez $t0, .L800066E0 +/* 0072CC 800066CC 46803120 */ cvt.s.w $f4, $f6 +/* 0072D0 800066D0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0072D4 800066D4 44814000 */ mtc1 $at, $f8 +/* 0072D8 800066D8 00000000 */ nop +/* 0072DC 800066DC 46082100 */ add.s $f4, $f4, $f8 +.L800066E0: +/* 0072E0 800066E0 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 0072E4 800066E4 44813000 */ mtc1 $at, $f6 +/* 0072E8 800066E8 46002281 */ sub.s $f10, $f4, $f0 +/* 0072EC 800066EC 00000000 */ nop +/* 0072F0 800066F0 46065203 */ div.s $f8, $f10, $f6 +/* 0072F4 800066F4 46080100 */ add.s $f4, $f0, $f8 +/* 0072F8 800066F8 E4640054 */ swc1 $f4, 0x54($v1) +.L800066FC: +/* 0072FC 800066FC 8D230000 */ lw $v1, ($t1) +/* 007300 80006700 8FAD0038 */ lw $t5, 0x38($sp) +/* 007304 80006704 C46E00D4 */ lwc1 $f14, 0xd4($v1) +/* 007308 80006708 31AE8000 */ andi $t6, $t5, 0x8000 +/* 00730C 8000670C 11C0001A */ beqz $t6, .L80006778 +/* 007310 80006710 8FB8003C */ lw $t8, 0x3c($sp) +/* 007314 80006714 8FAF003C */ lw $t7, 0x3c($sp) +/* 007318 80006718 C46A00B0 */ lwc1 $f10, 0xb0($v1) +/* 00731C 8000671C 448F3000 */ mtc1 $t7, $f6 +/* 007320 80006720 00000000 */ nop +/* 007324 80006724 46803220 */ cvt.s.w $f8, $f6 +/* 007328 80006728 C46600A4 */ lwc1 $f6, 0xa4($v1) +/* 00732C 8000672C 46085102 */ mul.s $f4, $f10, $f8 +/* 007330 80006730 46043280 */ add.s $f10, $f6, $f4 +/* 007334 80006734 E46A00A4 */ swc1 $f10, 0xa4($v1) +/* 007338 80006738 8D230000 */ lw $v1, ($t1) +/* 00733C 8000673C 00000000 */ nop +/* 007340 80006740 C46200C8 */ lwc1 $f2, 0xc8($v1) +/* 007344 80006744 C46000A4 */ lwc1 $f0, 0xa4($v1) +/* 007348 80006748 00000000 */ nop +/* 00734C 8000674C 4600103C */ c.lt.s $f2, $f0 +/* 007350 80006750 00000000 */ nop +/* 007354 80006754 45000014 */ bc1f .L800067A8 +/* 007358 80006758 00000000 */ nop +/* 00735C 8000675C E46200A4 */ swc1 $f2, 0xa4($v1) +/* 007360 80006760 8D230000 */ lw $v1, ($t1) +/* 007364 80006764 00000000 */ nop +/* 007368 80006768 C46000A4 */ lwc1 $f0, 0xa4($v1) +/* 00736C 8000676C 1000000F */ b .L800067AC +/* 007370 80006770 44801000 */ mtc1 $zero, $f2 +/* 007374 80006774 8FB8003C */ lw $t8, 0x3c($sp) +.L80006778: +/* 007378 80006778 C46800B4 */ lwc1 $f8, 0xb4($v1) +/* 00737C 8000677C 44983000 */ mtc1 $t8, $f6 +/* 007380 80006780 00000000 */ nop +/* 007384 80006784 46803120 */ cvt.s.w $f4, $f6 +/* 007388 80006788 C46600A4 */ lwc1 $f6, 0xa4($v1) +/* 00738C 8000678C 46044282 */ mul.s $f10, $f8, $f4 +/* 007390 80006790 460A3201 */ sub.s $f8, $f6, $f10 +/* 007394 80006794 E46800A4 */ swc1 $f8, 0xa4($v1) +/* 007398 80006798 8D230000 */ lw $v1, ($t1) +/* 00739C 8000679C 00000000 */ nop +/* 0073A0 800067A0 C46000A4 */ lwc1 $f0, 0xa4($v1) +/* 0073A4 800067A4 00000000 */ nop +.L800067A8: +/* 0073A8 800067A8 44801000 */ mtc1 $zero, $f2 +.L800067AC: +/* 0073AC 800067AC 00000000 */ nop +/* 0073B0 800067B0 4602003C */ c.lt.s $f0, $f2 +/* 0073B4 800067B4 00000000 */ nop +/* 0073B8 800067B8 45000002 */ bc1f .L800067C4 +/* 0073BC 800067BC 00000000 */ nop +/* 0073C0 800067C0 E46200A4 */ swc1 $f2, 0xa4($v1) +.L800067C4: +/* 0073C4 800067C4 E7AE0018 */ swc1 $f14, 0x18($sp) +/* 0073C8 800067C8 0C028064 */ jal func_800A0190 +/* 0073CC 800067CC E7B2002C */ swc1 $f18, 0x2c($sp) +/* 0073D0 800067D0 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 +/* 0073D4 800067D4 C7AE0018 */ lwc1 $f14, 0x18($sp) +/* 0073D8 800067D8 C7B2002C */ lwc1 $f18, 0x2c($sp) +/* 0073DC 800067DC 14400005 */ bnez $v0, .L800067F4 +/* 0073E0 800067E0 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 +/* 0073E4 800067E4 44802000 */ mtc1 $zero, $f4 +/* 0073E8 800067E8 8D390000 */ lw $t9, ($t1) +/* 0073EC 800067EC 00000000 */ nop +/* 0073F0 800067F0 E72400A4 */ swc1 $f4, 0xa4($t9) +.L800067F4: +/* 0073F4 800067F4 8D2A0000 */ lw $t2, ($t1) +/* 0073F8 800067F8 8FAB0030 */ lw $t3, 0x30($sp) +/* 0073FC 800067FC C54600A4 */ lwc1 $f6, 0xa4($t2) +/* 007400 80006800 85640002 */ lh $a0, 2($t3) +/* 007404 80006804 46067380 */ add.s $f14, $f14, $f6 +/* 007408 80006808 E7B2002C */ swc1 $f18, 0x2c($sp) +/* 00740C 8000680C 0C01C1F1 */ jal func_800707C4 +/* 007410 80006810 E7AE0018 */ swc1 $f14, 0x18($sp) +/* 007414 80006814 8FAC0030 */ lw $t4, 0x30($sp) +/* 007418 80006818 E7A00028 */ swc1 $f0, 0x28($sp) +/* 00741C 8000681C 85840004 */ lh $a0, 4($t4) +/* 007420 80006820 0C01C1F1 */ jal func_800707C4 +/* 007424 80006824 00000000 */ nop +/* 007428 80006828 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 +/* 00742C 8000682C 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 +/* 007430 80006830 8D230000 */ lw $v1, ($t1) +/* 007434 80006834 C7A80028 */ lwc1 $f8, 0x28($sp) +/* 007438 80006838 C46A00C4 */ lwc1 $f10, 0xc4($v1) +/* 00743C 8000683C C46400C0 */ lwc1 $f4, 0xc0($v1) +/* 007440 80006840 46085302 */ mul.s $f12, $f10, $f8 +/* 007444 80006844 44803000 */ mtc1 $zero, $f6 +/* 007448 80006848 C7B2002C */ lwc1 $f18, 0x2c($sp) +/* 00744C 8000684C 3C014024 */ li $at, 0x40240000 # 2.562500 +/* 007450 80006850 46002082 */ mul.s $f2, $f4, $f0 +/* 007454 80006854 C7AE0018 */ lwc1 $f14, 0x18($sp) +/* 007458 80006858 44818800 */ mtc1 $at, $f17 +/* 00745C 8000685C 44808000 */ mtc1 $zero, $f16 +/* 007460 80006860 4606103C */ c.lt.s $f2, $f6 +/* 007464 80006864 3C0D8012 */ lui $t5, %hi(D_80119C3C) # $t5, 0x8012 +/* 007468 80006868 45000002 */ bc1f .L80006874 +/* 00746C 8000686C 46009021 */ cvt.d.s $f0, $f18 +/* 007470 80006870 46001087 */ neg.s $f2, $f2 +.L80006874: +/* 007474 80006874 4620803C */ c.lt.d $f16, $f0 +/* 007478 80006878 46026280 */ add.s $f10, $f12, $f2 +/* 00747C 8000687C 45000004 */ bc1f .L80006890 +/* 007480 80006880 460A7380 */ add.s $f14, $f14, $f10 +/* 007484 80006884 46300201 */ sub.d $f8, $f0, $f16 +/* 007488 80006888 10000003 */ b .L80006898 +/* 00748C 8000688C 462044A0 */ cvt.s.d $f18, $f8 +.L80006890: +/* 007490 80006890 44809000 */ mtc1 $zero, $f18 +/* 007494 80006894 00000000 */ nop +.L80006898: +/* 007498 80006898 C46400CC */ lwc1 $f4, 0xcc($v1) +/* 00749C 8000689C 44805800 */ mtc1 $zero, $f11 +/* 0074A0 800068A0 44805000 */ mtc1 $zero, $f10 +/* 0074A4 800068A4 46049182 */ mul.s $f6, $f18, $f4 +/* 0074A8 800068A8 46009221 */ cvt.d.s $f8, $f18 +/* 0074AC 800068AC 46285032 */ c.eq.d $f10, $f8 +/* 0074B0 800068B0 3C01800E */ lui $at, 0x800e +/* 0074B4 800068B4 45010032 */ bc1t .L80006980 +/* 0074B8 800068B8 46067380 */ add.s $f14, $f14, $f6 +/* 0074BC 800068BC 8DAD9C3C */ lw $t5, %lo(D_80119C3C)($t5) +/* 0074C0 800068C0 00000000 */ nop +/* 0074C4 800068C4 81A20185 */ lb $v0, 0x185($t5) +/* 0074C8 800068C8 00000000 */ nop +/* 0074CC 800068CC 1040002C */ beqz $v0, .L80006980 +/* 0074D0 800068D0 00000000 */ nop +/* 0074D4 800068D4 2841000B */ slti $at, $v0, 0xb +/* 0074D8 800068D8 10200003 */ beqz $at, .L800068E8 +/* 0074DC 800068DC 2404000A */ li $a0, 10 +/* 0074E0 800068E0 10000001 */ b .L800068E8 +/* 0074E4 800068E4 00402025 */ move $a0, $v0 +.L800068E8: +/* 0074E8 800068E8 44843000 */ mtc1 $a0, $f6 +/* 0074EC 800068EC 3C01800E */ lui $at, %hi(D_800E4C8C) # $at, 0x800e +/* 0074F0 800068F0 468032A1 */ cvt.d.w $f10, $f6 +/* 0074F4 800068F4 C4254C80 */ lwc1 $f5, %lo(D_800E4C80)($at) +/* 0074F8 800068F8 C4244C84 */ lwc1 $f4, %lo(D_800E4C84)($at) +/* 0074FC 800068FC C46C003C */ lwc1 $f12, 0x3c($v1) +/* 007500 80006900 462A2002 */ mul.d $f0, $f4, $f10 +/* 007504 80006904 460060A1 */ cvt.d.s $f2, $f12 +/* 007508 80006908 00047180 */ sll $t6, $a0, 6 +/* 00750C 8000690C 4620103C */ c.lt.d $f2, $f0 +/* 007510 80006910 00000000 */ nop +/* 007514 80006914 4500000E */ bc1f .L80006950 +/* 007518 80006918 00000000 */ nop +/* 00751C 8000691C 448E4000 */ mtc1 $t6, $f8 +/* 007520 80006920 00000000 */ nop +/* 007524 80006924 468041A1 */ cvt.d.w $f6, $f8 +/* 007528 80006928 00000000 */ nop +/* 00752C 8000692C 46260103 */ div.d $f4, $f0, $f6 +/* 007530 80006930 46241280 */ add.d $f10, $f2, $f4 +/* 007534 80006934 46205220 */ cvt.s.d $f8, $f10 +/* 007538 80006938 E468003C */ swc1 $f8, 0x3c($v1) +/* 00753C 8000693C 8D230000 */ lw $v1, ($t1) +/* 007540 80006940 00000000 */ nop +/* 007544 80006944 C46C003C */ lwc1 $f12, 0x3c($v1) +/* 007548 80006948 10000019 */ b .L800069B0 +/* 00754C 8000694C 460C7380 */ add.s $f14, $f14, $f12 +.L80006950: +/* 007550 80006950 4622003C */ c.lt.d $f0, $f2 +/* 007554 80006954 00000000 */ nop +/* 007558 80006958 45000007 */ bc1f .L80006978 +/* 00755C 8000695C 00000000 */ nop +/* 007560 80006960 462001A0 */ cvt.s.d $f6, $f0 +/* 007564 80006964 E466003C */ swc1 $f6, 0x3c($v1) +/* 007568 80006968 8D230000 */ lw $v1, ($t1) +/* 00756C 8000696C 00000000 */ nop +/* 007570 80006970 C46C003C */ lwc1 $f12, 0x3c($v1) +/* 007574 80006974 00000000 */ nop +.L80006978: +/* 007578 80006978 1000000D */ b .L800069B0 +/* 00757C 8000697C 460C7380 */ add.s $f14, $f14, $f12 +.L80006980: +/* 007580 80006980 C464003C */ lwc1 $f4, 0x3c($v1) +/* 007584 80006984 C4294C88 */ lwc1 $f9, %lo(D_800E4C88)($at) +/* 007588 80006988 C4284C8C */ lwc1 $f8, %lo(D_800E4C8C)($at) +/* 00758C 8000698C 460022A1 */ cvt.d.s $f10, $f4 +/* 007590 80006990 46285182 */ mul.d $f6, $f10, $f8 +/* 007594 80006994 46203120 */ cvt.s.d $f4, $f6 +/* 007598 80006998 E464003C */ swc1 $f4, 0x3c($v1) +/* 00759C 8000699C 8D230000 */ lw $v1, ($t1) +/* 0075A0 800069A0 00000000 */ nop +/* 0075A4 800069A4 C46A003C */ lwc1 $f10, 0x3c($v1) +/* 0075A8 800069A8 00000000 */ nop +/* 0075AC 800069AC 460A7380 */ add.s $f14, $f14, $f10 +.L800069B0: +/* 0075B0 800069B0 C460005C */ lwc1 $f0, 0x5c($v1) +/* 0075B4 800069B4 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 0075B8 800069B8 44813000 */ mtc1 $at, $f6 +/* 0075BC 800069BC 46007201 */ sub.s $f8, $f14, $f0 +/* 0075C0 800069C0 3C01800E */ lui $at, %hi(D_800E4C90) # $at, 0x800e +/* 0075C4 800069C4 46064103 */ div.s $f4, $f8, $f6 +/* 0075C8 800069C8 46040280 */ add.s $f10, $f0, $f4 +/* 0075CC 800069CC E46A005C */ swc1 $f10, 0x5c($v1) +/* 0075D0 800069D0 8D230000 */ lw $v1, ($t1) +/* 0075D4 800069D4 C4284C94 */ lwc1 $f8, %lo(D_800E4C94)($at) +/* 0075D8 800069D8 C466005C */ lwc1 $f6, 0x5c($v1) +/* 0075DC 800069DC C4294C90 */ lwc1 $f9, %lo(D_800E4C90)($at) +/* 0075E0 800069E0 46003121 */ cvt.d.s $f4, $f6 +/* 0075E4 800069E4 4624403C */ c.lt.d $f8, $f4 +/* 0075E8 800069E8 3C01800E */ lui $at, %hi(D_800E4C98) # $at, 0x800e +/* 0075EC 800069EC 45000006 */ bc1f .L80006A08 +/* 0075F0 800069F0 00000000 */ nop +/* 0075F4 800069F4 C42A4C98 */ lwc1 $f10, %lo(D_800E4C98)($at) +/* 0075F8 800069F8 00000000 */ nop +/* 0075FC 800069FC E46A005C */ swc1 $f10, 0x5c($v1) +/* 007600 80006A00 8D230000 */ lw $v1, ($t1) +/* 007604 80006A04 00000000 */ nop +.L80006A08: +/* 007608 80006A08 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 00760C 80006A0C 44813000 */ mtc1 $at, $f6 +/* 007610 80006A10 44804000 */ mtc1 $zero, $f8 +/* 007614 80006A14 E4660060 */ swc1 $f6, 0x60($v1) +/* 007618 80006A18 8D2F0000 */ lw $t7, ($t1) +/* 00761C 80006A1C 3C028012 */ lui $v0, %hi(D_80119C3C) # $v0, 0x8012 +/* 007620 80006A20 E5E80058 */ swc1 $f8, 0x58($t7) +/* 007624 80006A24 8C429C3C */ lw $v0, %lo(D_80119C3C)($v0) +/* 007628 80006A28 2401FFFF */ li $at, -1 +/* 00762C 80006A2C 84580000 */ lh $t8, ($v0) +/* 007630 80006A30 00000000 */ nop +/* 007634 80006A34 13010011 */ beq $t8, $at, .L80006A7C +/* 007638 80006A38 00000000 */ nop +/* 00763C 80006A3C 805901DB */ lb $t9, 0x1db($v0) +/* 007640 80006A40 00000000 */ nop +/* 007644 80006A44 1320000D */ beqz $t9, .L80006A7C +/* 007648 80006A48 00000000 */ nop +/* 00764C 80006A4C 8D230000 */ lw $v1, ($t1) +/* 007650 80006A50 240B0001 */ li $t3, 1 +/* 007654 80006A54 906A00D8 */ lbu $t2, 0xd8($v1) +/* 007658 80006A58 2404013D */ li $a0, 317 +/* 00765C 80006A5C 15400007 */ bnez $t2, .L80006A7C +/* 007660 80006A60 00000000 */ nop +/* 007664 80006A64 A06B00D8 */ sb $t3, 0xd8($v1) +/* 007668 80006A68 8D250000 */ lw $a1, ($t1) +/* 00766C 80006A6C 0C000741 */ jal func_80001D04 +/* 007670 80006A70 24A500DC */ addiu $a1, $a1, 0xdc +/* 007674 80006A74 10000011 */ b .L80006ABC +/* 007678 80006A78 8FBF0014 */ lw $ra, 0x14($sp) +.L80006A7C: +/* 00767C 80006A7C 804C01DB */ lb $t4, 0x1db($v0) +/* 007680 80006A80 00000000 */ nop +/* 007684 80006A84 1580000D */ bnez $t4, .L80006ABC +/* 007688 80006A88 8FBF0014 */ lw $ra, 0x14($sp) +/* 00768C 80006A8C 8D2D0000 */ lw $t5, ($t1) +/* 007690 80006A90 00000000 */ nop +/* 007694 80006A94 A1A000D8 */ sb $zero, 0xd8($t5) +/* 007698 80006A98 8D2E0000 */ lw $t6, ($t1) +/* 00769C 80006A9C 00000000 */ nop +/* 0076A0 80006AA0 8DC400DC */ lw $a0, 0xdc($t6) +/* 0076A4 80006AA4 00000000 */ nop +/* 0076A8 80006AA8 10800004 */ beqz $a0, .L80006ABC +/* 0076AC 80006AAC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0076B0 80006AB0 0C001223 */ jal func_8000488C +/* 0076B4 80006AB4 00000000 */ nop +/* 0076B8 80006AB8 8FBF0014 */ lw $ra, 0x14($sp) +.L80006ABC: +/* 0076BC 80006ABC 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0076C0 80006AC0 03E00008 */ jr $ra +/* 0076C4 80006AC4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80006AC8.s b/asm/non_matchings/unknown_005740/func_80006AC8.s new file mode 100644 index 00000000..82c142a5 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80006AC8.s @@ -0,0 +1,86 @@ +glabel func_80006AC8 +/* 0076C8 80006AC8 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0076CC 80006ACC AFBF0024 */ sw $ra, 0x24($sp) +/* 0076D0 80006AD0 AFB20020 */ sw $s2, 0x20($sp) +/* 0076D4 80006AD4 AFB1001C */ sw $s1, 0x1c($sp) +/* 0076D8 80006AD8 AFB00018 */ sw $s0, 0x18($sp) +/* 0076DC 80006ADC AFA40028 */ sw $a0, 0x28($sp) +/* 0076E0 80006AE0 8C8F0064 */ lw $t7, 0x64($a0) +/* 0076E4 80006AE4 3C128012 */ lui $s2, %hi(D_80119C38) # $s2, 0x8012 +/* 0076E8 80006AE8 8DE50118 */ lw $a1, 0x118($t7) +/* 0076EC 80006AEC 26529C38 */ addiu $s2, %lo(D_80119C38) # addiu $s2, $s2, -0x63c8 +/* 0076F0 80006AF0 10A0003C */ beqz $a1, .L80006BE4 +/* 0076F4 80006AF4 AE450000 */ sw $a1, ($s2) +/* 0076F8 80006AF8 00008025 */ move $s0, $zero +/* 0076FC 80006AFC 24110008 */ li $s1, 8 +/* 007700 80006B00 00B0C821 */ addu $t9, $a1, $s0 +.L80006B04: +/* 007704 80006B04 8F240048 */ lw $a0, 0x48($t9) +/* 007708 80006B08 00000000 */ nop +/* 00770C 80006B0C 10800009 */ beqz $a0, .L80006B34 +/* 007710 80006B10 00000000 */ nop +/* 007714 80006B14 0C001223 */ jal func_8000488C +/* 007718 80006B18 00000000 */ nop +/* 00771C 80006B1C 8E480000 */ lw $t0, ($s2) +/* 007720 80006B20 00000000 */ nop +/* 007724 80006B24 01104821 */ addu $t1, $t0, $s0 +/* 007728 80006B28 AD200048 */ sw $zero, 0x48($t1) +/* 00772C 80006B2C 8E450000 */ lw $a1, ($s2) +/* 007730 80006B30 00000000 */ nop +.L80006B34: +/* 007734 80006B34 26100004 */ addiu $s0, $s0, 4 +/* 007738 80006B38 1611FFF2 */ bne $s0, $s1, .L80006B04 +/* 00773C 80006B3C 00B0C821 */ addu $t9, $a1, $s0 +/* 007740 80006B40 8CA40050 */ lw $a0, 0x50($a1) +/* 007744 80006B44 00000000 */ nop +/* 007748 80006B48 10800008 */ beqz $a0, .L80006B6C +/* 00774C 80006B4C 00000000 */ nop +/* 007750 80006B50 0C001223 */ jal func_8000488C +/* 007754 80006B54 00000000 */ nop +/* 007758 80006B58 8E4A0000 */ lw $t2, ($s2) +/* 00775C 80006B5C 00000000 */ nop +/* 007760 80006B60 AD400050 */ sw $zero, 0x50($t2) +/* 007764 80006B64 8E450000 */ lw $a1, ($s2) +/* 007768 80006B68 00000000 */ nop +.L80006B6C: +/* 00776C 80006B6C 8CA400A8 */ lw $a0, 0xa8($a1) +/* 007770 80006B70 00000000 */ nop +/* 007774 80006B74 10800008 */ beqz $a0, .L80006B98 +/* 007778 80006B78 00000000 */ nop +/* 00777C 80006B7C 0C001223 */ jal func_8000488C +/* 007780 80006B80 00000000 */ nop +/* 007784 80006B84 8E4B0000 */ lw $t3, ($s2) +/* 007788 80006B88 00000000 */ nop +/* 00778C 80006B8C AD6000A8 */ sw $zero, 0xa8($t3) +/* 007790 80006B90 8E450000 */ lw $a1, ($s2) +/* 007794 80006B94 00000000 */ nop +.L80006B98: +/* 007798 80006B98 3C028012 */ lui $v0, %hi(D_80119C30) # $v0, 0x8012 +/* 00779C 80006B9C 3C038012 */ lui $v1, %hi(D_80119C38) # $v1, 0x8012 +/* 0077A0 80006BA0 24639C38 */ addiu $v1, %lo(D_80119C38) # addiu $v1, $v1, -0x63c8 +/* 0077A4 80006BA4 24429C30 */ addiu $v0, %lo(D_80119C30) # addiu $v0, $v0, -0x63d0 +.L80006BA8: +/* 0077A8 80006BA8 8C4C0000 */ lw $t4, ($v0) +/* 0077AC 80006BAC 00000000 */ nop +/* 0077B0 80006BB0 14AC0002 */ bne $a1, $t4, .L80006BBC +/* 0077B4 80006BB4 00000000 */ nop +/* 0077B8 80006BB8 AC400000 */ sw $zero, ($v0) +.L80006BBC: +/* 0077BC 80006BBC 24420004 */ addiu $v0, $v0, 4 +/* 0077C0 80006BC0 1443FFF9 */ bne $v0, $v1, .L80006BA8 +/* 0077C4 80006BC4 00000000 */ nop +/* 0077C8 80006BC8 0C01C450 */ jal func_80071140 +/* 0077CC 80006BCC 00A02025 */ move $a0, $a1 +/* 0077D0 80006BD0 8FAD0028 */ lw $t5, 0x28($sp) +/* 0077D4 80006BD4 00000000 */ nop +/* 0077D8 80006BD8 8DAE0064 */ lw $t6, 0x64($t5) +/* 0077DC 80006BDC 00000000 */ nop +/* 0077E0 80006BE0 ADC00118 */ sw $zero, 0x118($t6) +.L80006BE4: +/* 0077E4 80006BE4 8FBF0024 */ lw $ra, 0x24($sp) +/* 0077E8 80006BE8 8FB00018 */ lw $s0, 0x18($sp) +/* 0077EC 80006BEC 8FB1001C */ lw $s1, 0x1c($sp) +/* 0077F0 80006BF0 8FB20020 */ lw $s2, 0x20($sp) +/* 0077F4 80006BF4 03E00008 */ jr $ra +/* 0077F8 80006BF8 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_005740/func_80006BFC.s b/asm/non_matchings/unknown_005740/func_80006BFC.s new file mode 100644 index 00000000..0cdd629a --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80006BFC.s @@ -0,0 +1,259 @@ +glabel func_80006BFC +/* 0077FC 80006BFC 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 007800 80006C00 AFBF0014 */ sw $ra, 0x14($sp) +/* 007804 80006C04 AFA70054 */ sw $a3, 0x54($sp) +/* 007808 80006C08 8CC20064 */ lw $v0, 0x64($a2) +/* 00780C 80006C0C 8C830064 */ lw $v1, 0x64($a0) +/* 007810 80006C10 8C4E0118 */ lw $t6, 0x118($v0) +/* 007814 80006C14 3C018012 */ lui $at, %hi(D_80119C38) # $at, 0x8012 +/* 007818 80006C18 3C0F8012 */ lui $t7, %hi(D_80119C38) # $t7, 0x8012 +/* 00781C 80006C1C AC2E9C38 */ sw $t6, %lo(D_80119C38)($at) +/* 007820 80006C20 8DEF9C38 */ lw $t7, %lo(D_80119C38)($t7) +/* 007824 80006C24 00000000 */ nop +/* 007828 80006C28 11E000E4 */ beqz $t7, .L80006FBC +/* 00782C 80006C2C 8FBF0014 */ lw $ra, 0x14($sp) +/* 007830 80006C30 10A0000E */ beqz $a1, .L80006C6C +/* 007834 80006C34 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 007838 80006C38 84780000 */ lh $t8, ($v1) +/* 00783C 80006C3C 44814000 */ mtc1 $at, $f8 +/* 007840 80006C40 0018C900 */ sll $t9, $t8, 4 +/* 007844 80006C44 0338C821 */ addu $t9, $t9, $t8 +/* 007848 80006C48 0019C880 */ sll $t9, $t9, 2 +/* 00784C 80006C4C 00B91021 */ addu $v0, $a1, $t9 +/* 007850 80006C50 C4440010 */ lwc1 $f4, 0x10($v0) +/* 007854 80006C54 C452000C */ lwc1 $f18, 0xc($v0) +/* 007858 80006C58 E7A40038 */ swc1 $f4, 0x38($sp) +/* 00785C 80006C5C C4460014 */ lwc1 $f6, 0x14($v0) +/* 007860 80006C60 E7A8001C */ swc1 $f8, 0x1c($sp) +/* 007864 80006C64 10000047 */ b .L80006D84 +/* 007868 80006C68 E7A60034 */ swc1 $f6, 0x34($sp) +.L80006C6C: +/* 00786C 80006C6C C48A0010 */ lwc1 $f10, 0x10($a0) +/* 007870 80006C70 C492000C */ lwc1 $f18, 0xc($a0) +/* 007874 80006C74 E7AA0038 */ swc1 $f10, 0x38($sp) +/* 007878 80006C78 C4840014 */ lwc1 $f4, 0x14($a0) +/* 00787C 80006C7C 24010001 */ li $at, 1 +/* 007880 80006C80 E7A40034 */ swc1 $f4, 0x34($sp) +/* 007884 80006C84 806201D6 */ lb $v0, 0x1d6($v1) +/* 007888 80006C88 00000000 */ nop +/* 00788C 80006C8C 10400005 */ beqz $v0, .L80006CA4 +/* 007890 80006C90 00000000 */ nop +/* 007894 80006C94 1041000E */ beq $v0, $at, .L80006CD0 +/* 007898 80006C98 00000000 */ nop +/* 00789C 80006C9C 1000001B */ b .L80006D0C +/* 0078A0 80006CA0 C480001C */ lwc1 $f0, 0x1c($a0) +.L80006CA4: +/* 0078A4 80006CA4 C460002C */ lwc1 $f0, 0x2c($v1) +/* 0078A8 80006CA8 44803000 */ mtc1 $zero, $f6 +/* 0078AC 80006CAC 00000000 */ nop +/* 0078B0 80006CB0 4600303E */ c.le.s $f6, $f0 +/* 0078B4 80006CB4 00000000 */ nop +/* 0078B8 80006CB8 45000003 */ bc1f .L80006CC8 +/* 0078BC 80006CBC 00000000 */ nop +/* 0078C0 80006CC0 10000021 */ b .L80006D48 +/* 0078C4 80006CC4 46000086 */ mov.s $f2, $f0 +.L80006CC8: +/* 0078C8 80006CC8 1000001F */ b .L80006D48 +/* 0078CC 80006CCC 46000087 */ neg.s $f2, $f0 +.L80006CD0: +/* 0078D0 80006CD0 C480001C */ lwc1 $f0, 0x1c($a0) +/* 0078D4 80006CD4 C4820024 */ lwc1 $f2, 0x24($a0) +/* 0078D8 80006CD8 46000202 */ mul.s $f8, $f0, $f0 +/* 0078DC 80006CDC E7B2003C */ swc1 $f18, 0x3c($sp) +/* 0078E0 80006CE0 AFA60050 */ sw $a2, 0x50($sp) +/* 0078E4 80006CE4 AFA30044 */ sw $v1, 0x44($sp) +/* 0078E8 80006CE8 46021282 */ mul.s $f10, $f2, $f2 +/* 0078EC 80006CEC 0C0326B4 */ jal sqrtf +/* 0078F0 80006CF0 460A4300 */ add.s $f12, $f8, $f10 +/* 0078F4 80006CF4 8FA30044 */ lw $v1, 0x44($sp) +/* 0078F8 80006CF8 8FA60050 */ lw $a2, 0x50($sp) +/* 0078FC 80006CFC C7B2003C */ lwc1 $f18, 0x3c($sp) +/* 007900 80006D00 10000011 */ b .L80006D48 +/* 007904 80006D04 46000086 */ mov.s $f2, $f0 +/* 007908 80006D08 C480001C */ lwc1 $f0, 0x1c($a0) +.L80006D0C: +/* 00790C 80006D0C C4820024 */ lwc1 $f2, 0x24($a0) +/* 007910 80006D10 46000102 */ mul.s $f4, $f0, $f0 +/* 007914 80006D14 C48E0020 */ lwc1 $f14, 0x20($a0) +/* 007918 80006D18 E7B2003C */ swc1 $f18, 0x3c($sp) +/* 00791C 80006D1C AFA60050 */ sw $a2, 0x50($sp) +/* 007920 80006D20 46021182 */ mul.s $f6, $f2, $f2 +/* 007924 80006D24 AFA30044 */ sw $v1, 0x44($sp) +/* 007928 80006D28 460E7282 */ mul.s $f10, $f14, $f14 +/* 00792C 80006D2C 46062200 */ add.s $f8, $f4, $f6 +/* 007930 80006D30 0C0326B4 */ jal sqrtf +/* 007934 80006D34 460A4300 */ add.s $f12, $f8, $f10 +/* 007938 80006D38 8FA30044 */ lw $v1, 0x44($sp) +/* 00793C 80006D3C 8FA60050 */ lw $a2, 0x50($sp) +/* 007940 80006D40 C7B2003C */ lwc1 $f18, 0x3c($sp) +/* 007944 80006D44 46000086 */ mov.s $f2, $f0 +.L80006D48: +/* 007948 80006D48 3C014170 */ li $at, 0x41700000 # 15.000000 +/* 00794C 80006D4C 44818000 */ mtc1 $at, $f16 +/* 007950 80006D50 00000000 */ nop +/* 007954 80006D54 4602803C */ c.lt.s $f16, $f2 +/* 007958 80006D58 00000000 */ nop +/* 00795C 80006D5C 45000003 */ bc1f .L80006D6C +/* 007960 80006D60 00000000 */ nop +/* 007964 80006D64 46008086 */ mov.s $f2, $f16 +/* 007968 80006D68 00000000 */ nop +.L80006D6C: +/* 00796C 80006D6C 46101183 */ div.s $f6, $f2, $f16 +/* 007970 80006D70 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 007974 80006D74 44812000 */ mtc1 $at, $f4 +/* 007978 80006D78 00000000 */ nop +/* 00797C 80006D7C 46062201 */ sub.s $f8, $f4, $f6 +/* 007980 80006D80 E7A8001C */ swc1 $f8, 0x1c($sp) +.L80006D84: +/* 007984 80006D84 C4CA000C */ lwc1 $f10, 0xc($a2) +/* 007988 80006D88 C4C40010 */ lwc1 $f4, 0x10($a2) +/* 00798C 80006D8C C7A60038 */ lwc1 $f6, 0x38($sp) +/* 007990 80006D90 46125001 */ sub.s $f0, $f10, $f18 +/* 007994 80006D94 C7AA0034 */ lwc1 $f10, 0x34($sp) +/* 007998 80006D98 46062081 */ sub.s $f2, $f4, $f6 +/* 00799C 80006D9C C4C80014 */ lwc1 $f8, 0x14($a2) +/* 0079A0 80006DA0 46000102 */ mul.s $f4, $f0, $f0 +/* 0079A4 80006DA4 460A4381 */ sub.s $f14, $f8, $f10 +/* 0079A8 80006DA8 AFA30044 */ sw $v1, 0x44($sp) +/* 0079AC 80006DAC 46021182 */ mul.s $f6, $f2, $f2 +/* 0079B0 80006DB0 00000000 */ nop +/* 0079B4 80006DB4 460E7282 */ mul.s $f10, $f14, $f14 +/* 0079B8 80006DB8 46062200 */ add.s $f8, $f4, $f6 +/* 0079BC 80006DBC 0C0326B4 */ jal sqrtf +/* 0079C0 80006DC0 460A4300 */ add.s $f12, $f8, $f10 +/* 0079C4 80006DC4 8FA30044 */ lw $v1, 0x44($sp) +/* 0079C8 80006DC8 E7A00020 */ swc1 $f0, 0x20($sp) +/* 0079CC 80006DCC 84680000 */ lh $t0, ($v1) +/* 0079D0 80006DD0 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012 +/* 0079D4 80006DD4 8C429C38 */ lw $v0, %lo(D_80119C38)($v0) +/* 0079D8 80006DD8 8FAB0054 */ lw $t3, 0x54($sp) +/* 0079DC 80006DDC 00084880 */ sll $t1, $t0, 2 +/* 0079E0 80006DE0 448B4000 */ mtc1 $t3, $f8 +/* 0079E4 80006DE4 00495021 */ addu $t2, $v0, $t1 +/* 0079E8 80006DE8 C544006C */ lwc1 $f4, 0x6c($t2) +/* 0079EC 80006DEC 468042A0 */ cvt.s.w $f10, $f8 +/* 0079F0 80006DF0 3C014170 */ li $at, 0x41700000 # 15.000000 +/* 0079F4 80006DF4 44818000 */ mtc1 $at, $f16 +/* 0079F8 80006DF8 46002181 */ sub.s $f6, $f4, $f0 +/* 0079FC 80006DFC 3C01C170 */ li $at, 0xC1700000 # -15.000000 +/* 007A00 80006E00 460A3083 */ div.s $f2, $f6, $f10 +/* 007A04 80006E04 4602803C */ c.lt.s $f16, $f2 +/* 007A08 80006E08 00000000 */ nop +/* 007A0C 80006E0C 45000003 */ bc1f .L80006E1C +/* 007A10 80006E10 00000000 */ nop +/* 007A14 80006E14 10000008 */ b .L80006E38 +/* 007A18 80006E18 46008086 */ mov.s $f2, $f16 +.L80006E1C: +/* 007A1C 80006E1C 44810000 */ mtc1 $at, $f0 +/* 007A20 80006E20 00000000 */ nop +/* 007A24 80006E24 4600103C */ c.lt.s $f2, $f0 +/* 007A28 80006E28 00000000 */ nop +/* 007A2C 80006E2C 45000002 */ bc1f .L80006E38 +/* 007A30 80006E30 00000000 */ nop +/* 007A34 80006E34 46000086 */ mov.s $f2, $f0 +.L80006E38: +/* 007A38 80006E38 C44C005C */ lwc1 $f12, 0x5c($v0) +/* 007A3C 80006E3C E7A20024 */ swc1 $f2, 0x24($sp) +/* 007A40 80006E40 0C001FE9 */ jal func_80007FA4 +/* 007A44 80006E44 AFA30044 */ sw $v1, 0x44($sp) +/* 007A48 80006E48 3C01428C */ li $at, 0x428C0000 # 70.000000 +/* 007A4C 80006E4C 44816000 */ mtc1 $at, $f12 +/* 007A50 80006E50 C7A20024 */ lwc1 $f2, 0x24($sp) +/* 007A54 80006E54 3C01800E */ lui $at, %hi(D_800E4CA4) # $at, 0x800e +/* 007A58 80006E58 46026100 */ add.s $f4, $f12, $f2 +/* 007A5C 80006E5C C4254CA0 */ lwc1 $f5, %lo(D_800E4CA0)($at) +/* 007A60 80006E60 46026201 */ sub.s $f8, $f12, $f2 +/* 007A64 80006E64 00000000 */ nop +/* 007A68 80006E68 46082183 */ div.s $f6, $f4, $f8 +/* 007A6C 80006E6C C4244CA4 */ lwc1 $f4, %lo(D_800E4CA4)($at) +/* 007A70 80006E70 460002A1 */ cvt.d.s $f10, $f0 +/* 007A74 80006E74 46245202 */ mul.d $f8, $f10, $f4 +/* 007A78 80006E78 444CF800 */ cfc1 $t4, $31 +/* 007A7C 80006E7C 00000000 */ nop +/* 007A80 80006E80 35810003 */ ori $at, $t4, 3 +/* 007A84 80006E84 38210002 */ xori $at, $at, 2 +/* 007A88 80006E88 44C1F800 */ ctc1 $at, $31 +/* 007A8C 80006E8C 00000000 */ nop +/* 007A90 80006E90 462042A4 */ cvt.w.d $f10, $f8 +/* 007A94 80006E94 440D5000 */ mfc1 $t5, $f10 +/* 007A98 80006E98 44CCF800 */ ctc1 $t4, $31 +/* 007A9C 80006E9C 448D2000 */ mtc1 $t5, $f4 +/* 007AA0 80006EA0 00000000 */ nop +/* 007AA4 80006EA4 46802220 */ cvt.s.w $f8, $f4 +/* 007AA8 80006EA8 46083282 */ mul.s $f10, $f6, $f8 +/* 007AAC 80006EAC 444EF800 */ cfc1 $t6, $31 +/* 007AB0 80006EB0 00000000 */ nop +/* 007AB4 80006EB4 35C10003 */ ori $at, $t6, 3 +/* 007AB8 80006EB8 38210002 */ xori $at, $at, 2 +/* 007ABC 80006EBC 44C1F800 */ ctc1 $at, $31 +/* 007AC0 80006EC0 00000000 */ nop +/* 007AC4 80006EC4 46005124 */ cvt.w.s $f4, $f10 +/* 007AC8 80006EC8 44042000 */ mfc1 $a0, $f4 +/* 007ACC 80006ECC 44CEF800 */ ctc1 $t6, $31 +/* 007AD0 80006ED0 0C032678 */ jal func_800C99E0 +/* 007AD4 80006ED4 00000000 */ nop +/* 007AD8 80006ED8 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012 +/* 007ADC 80006EDC 8C429C38 */ lw $v0, %lo(D_80119C38)($v0) +/* 007AE0 80006EE0 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 007AE4 80006EE4 C446005C */ lwc1 $f6, 0x5c($v0) +/* 007AE8 80006EE8 C4420068 */ lwc1 $f2, 0x68($v0) +/* 007AEC 80006EEC 46060201 */ sub.s $f8, $f0, $f6 +/* 007AF0 80006EF0 44812000 */ mtc1 $at, $f4 +/* 007AF4 80006EF4 46024281 */ sub.s $f10, $f8, $f2 +/* 007AF8 80006EF8 8FA30044 */ lw $v1, 0x44($sp) +/* 007AFC 80006EFC 46045183 */ div.s $f6, $f10, $f4 +/* 007B00 80006F00 3C01800E */ lui $at, %hi(D_800E4CA8) # $at, 0x800e +/* 007B04 80006F04 46061200 */ add.s $f8, $f2, $f6 +/* 007B08 80006F08 E4480068 */ swc1 $f8, 0x68($v0) +/* 007B0C 80006F0C 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012 +/* 007B10 80006F10 8C429C38 */ lw $v0, %lo(D_80119C38)($v0) +/* 007B14 80006F14 C7A4001C */ lwc1 $f4, 0x1c($sp) +/* 007B18 80006F18 C44A0068 */ lwc1 $f10, 0x68($v0) +/* 007B1C 80006F1C 00000000 */ nop +/* 007B20 80006F20 46045182 */ mul.s $f6, $f10, $f4 +/* 007B24 80006F24 E4460068 */ swc1 $f6, 0x68($v0) +/* 007B28 80006F28 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012 +/* 007B2C 80006F2C 8C429C38 */ lw $v0, %lo(D_80119C38)($v0) +/* 007B30 80006F30 C42A4CAC */ lwc1 $f10, %lo(D_800E4CAC)($at) +/* 007B34 80006F34 C4480068 */ lwc1 $f8, 0x68($v0) +/* 007B38 80006F38 C42B4CA8 */ lwc1 $f11, %lo(D_800E4CA8)($at) +/* 007B3C 80006F3C 46004321 */ cvt.d.s $f12, $f8 +/* 007B40 80006F40 462C503C */ c.lt.d $f10, $f12 +/* 007B44 80006F44 3C01800E */ lui $at, 0x800e +/* 007B48 80006F48 45000009 */ bc1f .L80006F70 +/* 007B4C 80006F4C 00000000 */ nop +/* 007B50 80006F50 3C01800E */ lui $at, %hi(D_800E4CBC) # $at, 0x800e +/* 007B54 80006F54 C4244CB0 */ lwc1 $f4, %lo(D_800E4CB0)($at) +/* 007B58 80006F58 00000000 */ nop +/* 007B5C 80006F5C E4440068 */ swc1 $f4, 0x68($v0) +/* 007B60 80006F60 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012 +/* 007B64 80006F64 8C429C38 */ lw $v0, %lo(D_80119C38)($v0) +/* 007B68 80006F68 1000000F */ b .L80006FA8 +/* 007B6C 80006F6C 846F0000 */ lh $t7, ($v1) +.L80006F70: +/* 007B70 80006F70 C4274CB8 */ lwc1 $f7, %lo(D_800E4CB8)($at) +/* 007B74 80006F74 C4264CBC */ lwc1 $f6, %lo(D_800E4CBC)($at) +/* 007B78 80006F78 3C01800E */ lui $at, %hi(D_800E4CC0) # $at, 0x800e +/* 007B7C 80006F7C 4626603C */ c.lt.d $f12, $f6 +/* 007B80 80006F80 00000000 */ nop +/* 007B84 80006F84 45000007 */ bc1f .L80006FA4 +/* 007B88 80006F88 00000000 */ nop +/* 007B8C 80006F8C C4284CC0 */ lwc1 $f8, %lo(D_800E4CC0)($at) +/* 007B90 80006F90 00000000 */ nop +/* 007B94 80006F94 E4480068 */ swc1 $f8, 0x68($v0) +/* 007B98 80006F98 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012 +/* 007B9C 80006F9C 8C429C38 */ lw $v0, %lo(D_80119C38)($v0) +/* 007BA0 80006FA0 00000000 */ nop +.L80006FA4: +/* 007BA4 80006FA4 846F0000 */ lh $t7, ($v1) +.L80006FA8: +/* 007BA8 80006FA8 C7AA0020 */ lwc1 $f10, 0x20($sp) +/* 007BAC 80006FAC 000FC080 */ sll $t8, $t7, 2 +/* 007BB0 80006FB0 0058C821 */ addu $t9, $v0, $t8 +/* 007BB4 80006FB4 E72A006C */ swc1 $f10, 0x6c($t9) +/* 007BB8 80006FB8 8FBF0014 */ lw $ra, 0x14($sp) +.L80006FBC: +/* 007BBC 80006FBC 27BD0048 */ addiu $sp, $sp, 0x48 +/* 007BC0 80006FC0 03E00008 */ jr $ra +/* 007BC4 80006FC4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80006FC8.s b/asm/non_matchings/unknown_005740/func_80006FC8.s new file mode 100644 index 00000000..a92ab216 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80006FC8.s @@ -0,0 +1,1100 @@ +glabel func_80006FC8 +/* 007BC8 80006FC8 27BDFF38 */ addiu $sp, $sp, -0xc8 +/* 007BCC 80006FCC AFB70064 */ sw $s7, 0x64($sp) +/* 007BD0 80006FD0 30EE00FF */ andi $t6, $a3, 0xff +/* 007BD4 80006FD4 00C0B825 */ move $s7, $a2 +/* 007BD8 80006FD8 AFBF006C */ sw $ra, 0x6c($sp) +/* 007BDC 80006FDC AFBE0068 */ sw $fp, 0x68($sp) +/* 007BE0 80006FE0 AFB60060 */ sw $s6, 0x60($sp) +/* 007BE4 80006FE4 AFB5005C */ sw $s5, 0x5c($sp) +/* 007BE8 80006FE8 AFB40058 */ sw $s4, 0x58($sp) +/* 007BEC 80006FEC AFB30054 */ sw $s3, 0x54($sp) +/* 007BF0 80006FF0 AFB20050 */ sw $s2, 0x50($sp) +/* 007BF4 80006FF4 AFB1004C */ sw $s1, 0x4c($sp) +/* 007BF8 80006FF8 AFB00048 */ sw $s0, 0x48($sp) +/* 007BFC 80006FFC E7BF0040 */ swc1 $f31, 0x40($sp) +/* 007C00 80007000 E7BE0044 */ swc1 $f30, 0x44($sp) +/* 007C04 80007004 E7BD0038 */ swc1 $f29, 0x38($sp) +/* 007C08 80007008 E7BC003C */ swc1 $f28, 0x3c($sp) +/* 007C0C 8000700C E7BB0030 */ swc1 $f27, 0x30($sp) +/* 007C10 80007010 E7BA0034 */ swc1 $f26, 0x34($sp) +/* 007C14 80007014 E7B90028 */ swc1 $f25, 0x28($sp) +/* 007C18 80007018 E7B8002C */ swc1 $f24, 0x2c($sp) +/* 007C1C 8000701C E7B70020 */ swc1 $f23, 0x20($sp) +/* 007C20 80007020 E7B60024 */ swc1 $f22, 0x24($sp) +/* 007C24 80007024 E7B50018 */ swc1 $f21, 0x18($sp) +/* 007C28 80007028 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 007C2C 8000702C AFA400C8 */ sw $a0, 0xc8($sp) +/* 007C30 80007030 AFA500CC */ sw $a1, 0xcc($sp) +/* 007C34 80007034 AFA700D4 */ sw $a3, 0xd4($sp) +/* 007C38 80007038 AFAE007C */ sw $t6, 0x7c($sp) +/* 007C3C 8000703C 19C001C4 */ blez $t6, .L80007750 +/* 007C40 80007040 AFA000AC */ sw $zero, 0xac($sp) +/* 007C44 80007044 3C01800E */ lui $at, %hi(D_800E4CC4) # $at, 0x800e +/* 007C48 80007048 C43E4CC4 */ lwc1 $f30, %lo(D_800E4CC4)($at) +/* 007C4C 8000704C 3C01800E */ lui $at, %hi(D_800E4CCC) # $at, 0x800e +/* 007C50 80007050 3C148012 */ lui $s4, %hi(D_80119C38) # $s4, 0x8012 +/* 007C54 80007054 C43D4CC8 */ lwc1 $f29, %lo(D_800E4CC8)($at) +/* 007C58 80007058 C43C4CCC */ lwc1 $f28, %lo(D_800E4CCC)($at) +/* 007C5C 8000705C 4480C800 */ mtc1 $zero, $f25 +/* 007C60 80007060 4480C000 */ mtc1 $zero, $f24 +/* 007C64 80007064 8FBE00D8 */ lw $fp, 0xd8($sp) +/* 007C68 80007068 26949C38 */ addiu $s4, %lo(D_80119C38) # addiu $s4, $s4, -0x63c8 +/* 007C6C 8000706C 0080B025 */ move $s6, $a0 +.L80007070: +/* 007C70 80007070 8ED80000 */ lw $t8, ($s6) +/* 007C74 80007074 00000000 */ nop +/* 007C78 80007078 8F110064 */ lw $s1, 0x64($t8) +/* 007C7C 8000707C 00000000 */ nop +/* 007C80 80007080 12200004 */ beqz $s1, .L80007094 +/* 007C84 80007084 00000000 */ nop +/* 007C88 80007088 8E390118 */ lw $t9, 0x118($s1) +/* 007C8C 8000708C 10000002 */ b .L80007098 +/* 007C90 80007090 AE990000 */ sw $t9, ($s4) +.L80007094: +/* 007C94 80007094 AE800000 */ sw $zero, ($s4) +.L80007098: +/* 007C98 80007098 8E900000 */ lw $s0, ($s4) +/* 007C9C 8000709C 00000000 */ nop +/* 007CA0 800070A0 120001A6 */ beqz $s0, .L8000773C +/* 007CA4 800070A4 8FB900AC */ lw $t9, 0xac($sp) +/* 007CA8 800070A8 96080000 */ lhu $t0, ($s0) +/* 007CAC 800070AC 00000000 */ nop +/* 007CB0 800070B0 110001A2 */ beqz $t0, .L8000773C +/* 007CB4 800070B4 8FB900AC */ lw $t9, 0xac($sp) +/* 007CB8 800070B8 822901D8 */ lb $t1, 0x1d8($s1) +/* 007CBC 800070BC 0000A825 */ move $s5, $zero +/* 007CC0 800070C0 15200006 */ bnez $t1, .L800070DC +/* 007CC4 800070C4 8FAA00AC */ lw $t2, 0xac($sp) +/* 007CC8 800070C8 0C019944 */ jal func_80066510 +/* 007CCC 800070CC 00000000 */ nop +/* 007CD0 800070D0 10400047 */ beqz $v0, .L800071F0 +/* 007CD4 800070D4 3C013F80 */ lui $at, 0x3f80 +/* 007CD8 800070D8 8FAA00AC */ lw $t2, 0xac($sp) +.L800070DC: +/* 007CDC 800070DC 8EC60000 */ lw $a2, ($s6) +/* 007CE0 800070E0 000A5900 */ sll $t3, $t2, 4 +/* 007CE4 800070E4 016A5821 */ addu $t3, $t3, $t2 +/* 007CE8 800070E8 000B5880 */ sll $t3, $t3, 2 +/* 007CEC 800070EC 02EB1821 */ addu $v1, $s7, $t3 +/* 007CF0 800070F0 C466000C */ lwc1 $f6, 0xc($v1) +/* 007CF4 800070F4 C46A0010 */ lwc1 $f10, 0x10($v1) +/* 007CF8 800070F8 C4720014 */ lwc1 $f18, 0x14($v1) +/* 007CFC 800070FC C4C4000C */ lwc1 $f4, 0xc($a2) +/* 007D00 80007100 C4C80010 */ lwc1 $f8, 0x10($a2) +/* 007D04 80007104 C4D00014 */ lwc1 $f16, 0x14($a2) +/* 007D08 80007108 460A4001 */ sub.s $f0, $f8, $f10 +/* 007D0C 8000710C AFA30070 */ sw $v1, 0x70($sp) +/* 007D10 80007110 E7A000C0 */ swc1 $f0, 0xc0($sp) +/* 007D14 80007114 02E02825 */ move $a1, $s7 +/* 007D18 80007118 03C03825 */ move $a3, $fp +/* 007D1C 8000711C 00C02025 */ move $a0, $a2 +/* 007D20 80007120 46062501 */ sub.s $f20, $f4, $f6 +/* 007D24 80007124 0C001AFF */ jal func_80006BFC +/* 007D28 80007128 46128581 */ sub.s $f22, $f16, $f18 +/* 007D2C 8000712C 4614A102 */ mul.s $f4, $f20, $f20 +/* 007D30 80007130 C7A000C0 */ lwc1 $f0, 0xc0($sp) +/* 007D34 80007134 00000000 */ nop +/* 007D38 80007138 46000182 */ mul.s $f6, $f0, $f0 +/* 007D3C 8000713C 00000000 */ nop +/* 007D40 80007140 4616B282 */ mul.s $f10, $f22, $f22 +/* 007D44 80007144 46062200 */ add.s $f8, $f4, $f6 +/* 007D48 80007148 0C0326B4 */ jal sqrtf +/* 007D4C 8000714C 460A4300 */ add.s $f12, $f8, $f10 +/* 007D50 80007150 8E8C0000 */ lw $t4, ($s4) +/* 007D54 80007154 8FA30070 */ lw $v1, 0x70($sp) +/* 007D58 80007158 E5800084 */ swc1 $f0, 0x84($t4) +/* 007D5C 8000715C 8E900000 */ lw $s0, ($s4) +/* 007D60 80007160 3C01800E */ li $at, 0x800E0000 # -0.000000 +/* 007D64 80007164 C4304CD0 */ lwc1 $f16, %lo(D_800E4CD0)($at) +/* 007D68 80007168 C6020084 */ lwc1 $f2, 0x84($s0) +/* 007D6C 8000716C 00000000 */ nop +/* 007D70 80007170 4610103C */ c.lt.s $f2, $f16 +/* 007D74 80007174 00000000 */ nop +/* 007D78 80007178 45000011 */ bc1f .L800071C0 +/* 007D7C 8000717C 00000000 */ nop +/* 007D80 80007180 46021482 */ mul.s $f18, $f2, $f2 +/* 007D84 80007184 84660000 */ lh $a2, ($v1) +/* 007D88 80007188 4600A306 */ mov.s $f12, $f20 +/* 007D8C 8000718C 4612F101 */ sub.s $f4, $f30, $f18 +/* 007D90 80007190 00000000 */ nop +/* 007D94 80007194 461E2683 */ div.s $f26, $f4, $f30 +/* 007D98 80007198 4600B386 */ mov.s $f14, $f22 +/* 007D9C 8000719C 461AD682 */ mul.s $f26, $f26, $f26 +/* 007DA0 800071A0 0C002430 */ jal func_800090C0 +/* 007DA4 800071A4 00000000 */ nop +/* 007DA8 800071A8 8E8D0000 */ lw $t5, ($s4) +/* 007DAC 800071AC 00000000 */ nop +/* 007DB0 800071B0 A1A20091 */ sb $v0, 0x91($t5) +/* 007DB4 800071B4 8E900000 */ lw $s0, ($s4) +/* 007DB8 800071B8 10000004 */ b .L800071CC +/* 007DBC 800071BC 822E01D8 */ lb $t6, 0x1d8($s1) +.L800071C0: +/* 007DC0 800071C0 4480D000 */ mtc1 $zero, $f26 +/* 007DC4 800071C4 00000000 */ nop +/* 007DC8 800071C8 822E01D8 */ lb $t6, 0x1d8($s1) +.L800071CC: +/* 007DCC 800071CC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 007DD0 800071D0 15C00010 */ bnez $t6, .L80007214 +/* 007DD4 800071D4 00000000 */ nop +/* 007DD8 800071D8 44814800 */ mtc1 $at, $f9 +/* 007DDC 800071DC 44804000 */ mtc1 $zero, $f8 +/* 007DE0 800071E0 4600D1A1 */ cvt.d.s $f6, $f26 +/* 007DE4 800071E4 46283282 */ mul.d $f10, $f6, $f8 +/* 007DE8 800071E8 1000000A */ b .L80007214 +/* 007DEC 800071EC 462056A0 */ cvt.s.d $f26, $f10 +.L800071F0: +/* 007DF0 800071F0 8E980000 */ lw $t8, ($s4) +/* 007DF4 800071F4 240F0040 */ li $t7, 64 +/* 007DF8 800071F8 A30F0091 */ sb $t7, 0x91($t8) +/* 007DFC 800071FC 8E990000 */ lw $t9, ($s4) +/* 007E00 80007200 44808000 */ mtc1 $zero, $f16 +/* 007E04 80007204 4481D000 */ mtc1 $at, $f26 +/* 007E08 80007208 E7300068 */ swc1 $f16, 0x68($t9) +/* 007E0C 8000720C 8E900000 */ lw $s0, ($s4) +/* 007E10 80007210 00000000 */ nop +.L80007214: +/* 007E14 80007214 920200A0 */ lbu $v0, 0xa0($s0) +/* 007E18 80007218 00000000 */ nop +/* 007E1C 8000721C 28410046 */ slti $at, $v0, 0x46 +/* 007E20 80007220 1020009D */ beqz $at, .L80007498 +/* 007E24 80007224 00000000 */ nop +/* 007E28 80007228 92040036 */ lbu $a0, 0x36($s0) +/* 007E2C 8000722C 8FA8007C */ lw $t0, 0x7c($sp) +/* 007E30 80007230 10800099 */ beqz $a0, .L80007498 +/* 007E34 80007234 29010003 */ slti $at, $t0, 3 +/* 007E38 80007238 10200097 */ beqz $at, .L80007498 +/* 007E3C 8000723C 00000000 */ nop +/* 007E40 80007240 4600D4A1 */ cvt.d.s $f18, $f26 +/* 007E44 80007244 4632C032 */ c.eq.d $f24, $f18 +/* 007E48 80007248 00000000 */ nop +/* 007E4C 8000724C 45010092 */ bc1t .L80007498 +/* 007E50 80007250 00000000 */ nop +/* 007E54 80007254 92090044 */ lbu $t1, 0x44($s0) +/* 007E58 80007258 00000000 */ nop +/* 007E5C 8000725C 312A0001 */ andi $t2, $t1, 1 +/* 007E60 80007260 1540008D */ bnez $t2, .L80007498 +/* 007E64 80007264 00000000 */ nop +/* 007E68 80007268 44822000 */ mtc1 $v0, $f4 +/* 007E6C 8000726C 04410005 */ bgez $v0, .L80007284 +/* 007E70 80007270 468021A0 */ cvt.s.w $f6, $f4 +/* 007E74 80007274 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 007E78 80007278 44814000 */ mtc1 $at, $f8 +/* 007E7C 8000727C 00000000 */ nop +/* 007E80 80007280 46083180 */ add.s $f6, $f6, $f8 +.L80007284: +/* 007E84 80007284 920B0037 */ lbu $t3, 0x37($s0) +/* 007E88 80007288 3C01428C */ li $at, 0x428C0000 # 70.000000 +/* 007E8C 8000728C 44815000 */ mtc1 $at, $f10 +/* 007E90 80007290 448B8000 */ mtc1 $t3, $f16 +/* 007E94 80007294 460A3503 */ div.s $f20, $f6, $f10 +/* 007E98 80007298 05610005 */ bgez $t3, .L800072B0 +/* 007E9C 8000729C 46808020 */ cvt.s.w $f0, $f16 +/* 007EA0 800072A0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 007EA4 800072A4 44819000 */ mtc1 $at, $f18 +/* 007EA8 800072A8 00000000 */ nop +/* 007EAC 800072AC 46120000 */ add.s $f0, $f0, $f18 +.L800072B0: +/* 007EB0 800072B0 46140102 */ mul.s $f4, $f0, $f20 +/* 007EB4 800072B4 24120001 */ li $s2, 1 +/* 007EB8 800072B8 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 007EBC 800072BC 46040201 */ sub.s $f8, $f0, $f4 +/* 007EC0 800072C0 461A4182 */ mul.s $f6, $f8, $f26 +/* 007EC4 800072C4 444CF800 */ cfc1 $t4, $31 +/* 007EC8 800072C8 44D2F800 */ ctc1 $s2, $31 +/* 007ECC 800072CC 00000000 */ nop +/* 007ED0 800072D0 460032A4 */ cvt.w.s $f10, $f6 +/* 007ED4 800072D4 4452F800 */ cfc1 $s2, $31 +/* 007ED8 800072D8 00000000 */ nop +/* 007EDC 800072DC 32520078 */ andi $s2, $s2, 0x78 +/* 007EE0 800072E0 12400012 */ beqz $s2, .L8000732C +/* 007EE4 800072E4 00000000 */ nop +/* 007EE8 800072E8 44815000 */ mtc1 $at, $f10 +/* 007EEC 800072EC 24120001 */ li $s2, 1 +/* 007EF0 800072F0 460A3281 */ sub.s $f10, $f6, $f10 +/* 007EF4 800072F4 3C018000 */ lui $at, 0x8000 +/* 007EF8 800072F8 44D2F800 */ ctc1 $s2, $31 +/* 007EFC 800072FC 00000000 */ nop +/* 007F00 80007300 460052A4 */ cvt.w.s $f10, $f10 +/* 007F04 80007304 4452F800 */ cfc1 $s2, $31 +/* 007F08 80007308 00000000 */ nop +/* 007F0C 8000730C 32520078 */ andi $s2, $s2, 0x78 +/* 007F10 80007310 16400004 */ bnez $s2, .L80007324 +/* 007F14 80007314 00000000 */ nop +/* 007F18 80007318 44125000 */ mfc1 $s2, $f10 +/* 007F1C 8000731C 10000007 */ b .L8000733C +/* 007F20 80007320 02419025 */ or $s2, $s2, $at +.L80007324: +/* 007F24 80007324 10000005 */ b .L8000733C +/* 007F28 80007328 2412FFFF */ li $s2, -1 +.L8000732C: +/* 007F2C 8000732C 44125000 */ mfc1 $s2, $f10 +/* 007F30 80007330 00000000 */ nop +/* 007F34 80007334 0640FFFB */ bltz $s2, .L80007324 +/* 007F38 80007338 00000000 */ nop +.L8000733C: +/* 007F3C 8000733C 325300FF */ andi $s3, $s2, 0xff +/* 007F40 80007340 44CCF800 */ ctc1 $t4, $31 +/* 007F44 80007344 2A610010 */ slti $at, $s3, 0x10 +/* 007F48 80007348 14200047 */ bnez $at, .L80007468 +/* 007F4C 8000734C 00000000 */ nop +/* 007F50 80007350 8E0E0050 */ lw $t6, 0x50($s0) +/* 007F54 80007354 00000000 */ nop +/* 007F58 80007358 15C00005 */ bnez $t6, .L80007370 +/* 007F5C 8000735C 00000000 */ nop +/* 007F60 80007360 0C0007C5 */ jal func_80001F14 +/* 007F64 80007364 26050050 */ addiu $a1, $s0, 0x50 +/* 007F68 80007368 8E900000 */ lw $s0, ($s4) +/* 007F6C 8000736C 00000000 */ nop +.L80007370: +/* 007F70 80007370 920F0038 */ lbu $t7, 0x38($s0) +/* 007F74 80007374 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 007F78 80007378 448F8000 */ mtc1 $t7, $f16 +/* 007F7C 8000737C 05E10004 */ bgez $t7, .L80007390 +/* 007F80 80007380 468084A0 */ cvt.s.w $f18, $f16 +/* 007F84 80007384 44812000 */ mtc1 $at, $f4 +/* 007F88 80007388 00000000 */ nop +/* 007F8C 8000738C 46049480 */ add.s $f18, $f18, $f4 +.L80007390: +/* 007F90 80007390 92180039 */ lbu $t8, 0x39($s0) +/* 007F94 80007394 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 007F98 80007398 44814000 */ mtc1 $at, $f8 +/* 007F9C 8000739C 44983000 */ mtc1 $t8, $f6 +/* 007FA0 800073A0 46089003 */ div.s $f0, $f18, $f8 +/* 007FA4 800073A4 07010005 */ bgez $t8, .L800073BC +/* 007FA8 800073A8 468032A0 */ cvt.s.w $f10, $f6 +/* 007FAC 800073AC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 007FB0 800073B0 44818000 */ mtc1 $at, $f16 +/* 007FB4 800073B4 00000000 */ nop +/* 007FB8 800073B8 46105280 */ add.s $f10, $f10, $f16 +.L800073BC: +/* 007FBC 800073BC 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 007FC0 800073C0 44812000 */ mtc1 $at, $f4 +/* 007FC4 800073C4 00000000 */ nop +/* 007FC8 800073C8 46045483 */ div.s $f18, $f10, $f4 +/* 007FCC 800073CC 46009201 */ sub.s $f8, $f18, $f0 +/* 007FD0 800073D0 46144182 */ mul.s $f6, $f8, $f20 +/* 007FD4 800073D4 46060400 */ add.s $f16, $f0, $f6 +/* 007FD8 800073D8 E7B0008C */ swc1 $f16, 0x8c($sp) +/* 007FDC 800073DC 8E040050 */ lw $a0, 0x50($s0) +/* 007FE0 800073E0 00000000 */ nop +/* 007FE4 800073E4 10800037 */ beqz $a0, .L800074C4 +/* 007FE8 800073E8 00000000 */ nop +/* 007FEC 800073EC 8ED00000 */ lw $s0, ($s6) +/* 007FF0 800073F0 00000000 */ nop +/* 007FF4 800073F4 8E05000C */ lw $a1, 0xc($s0) +/* 007FF8 800073F8 8E060010 */ lw $a2, 0x10($s0) +/* 007FFC 800073FC 8E070014 */ lw $a3, 0x14($s0) +/* 008000 80007400 0C0026DF */ jal func_80009B7C +/* 008004 80007404 00000000 */ nop +/* 008008 80007408 8E990000 */ lw $t9, ($s4) +/* 00800C 8000740C 24050008 */ li $a1, 8 +/* 008010 80007410 8F240050 */ lw $a0, 0x50($t9) +/* 008014 80007414 0C00127E */ jal func_800049F8 +/* 008018 80007418 00133200 */ sll $a2, $s3, 8 +/* 00801C 8000741C 8E880000 */ lw $t0, ($s4) +/* 008020 80007420 8FA6008C */ lw $a2, 0x8c($sp) +/* 008024 80007424 8D040050 */ lw $a0, 0x50($t0) +/* 008028 80007428 0C00127E */ jal func_800049F8 +/* 00802C 8000742C 24050010 */ li $a1, 16 +/* 008030 80007430 8E890000 */ lw $t1, ($s4) +/* 008034 80007434 24050050 */ li $a1, 80 +/* 008038 80007438 8D240050 */ lw $a0, 0x50($t1) +/* 00803C 8000743C 0C001181 */ jal func_80004604 +/* 008040 80007440 00000000 */ nop +/* 008044 80007444 8E900000 */ lw $s0, ($s4) +/* 008048 80007448 24050004 */ li $a1, 4 +/* 00804C 8000744C 8E040050 */ lw $a0, 0x50($s0) +/* 008050 80007450 92060091 */ lbu $a2, 0x91($s0) +/* 008054 80007454 0C00127E */ jal func_800049F8 +/* 008058 80007458 00000000 */ nop +/* 00805C 8000745C 8E900000 */ lw $s0, ($s4) +/* 008060 80007460 10000019 */ b .L800074C8 +/* 008064 80007464 960C0000 */ lhu $t4, ($s0) +.L80007468: +/* 008068 80007468 8E040050 */ lw $a0, 0x50($s0) +/* 00806C 8000746C 00000000 */ nop +/* 008070 80007470 10800014 */ beqz $a0, .L800074C4 +/* 008074 80007474 00000000 */ nop +/* 008078 80007478 0C001223 */ jal func_8000488C +/* 00807C 8000747C 00000000 */ nop +/* 008080 80007480 8E8A0000 */ lw $t2, ($s4) +/* 008084 80007484 00000000 */ nop +/* 008088 80007488 AD400050 */ sw $zero, 0x50($t2) +/* 00808C 8000748C 8E900000 */ lw $s0, ($s4) +/* 008090 80007490 1000000D */ b .L800074C8 +/* 008094 80007494 960C0000 */ lhu $t4, ($s0) +.L80007498: +/* 008098 80007498 8E040050 */ lw $a0, 0x50($s0) +/* 00809C 8000749C 00000000 */ nop +/* 0080A0 800074A0 10800008 */ beqz $a0, .L800074C4 +/* 0080A4 800074A4 00000000 */ nop +/* 0080A8 800074A8 0C001223 */ jal func_8000488C +/* 0080AC 800074AC 00000000 */ nop +/* 0080B0 800074B0 8E8B0000 */ lw $t3, ($s4) +/* 0080B4 800074B4 00000000 */ nop +/* 0080B8 800074B8 AD600050 */ sw $zero, 0x50($t3) +/* 0080BC 800074BC 8E900000 */ lw $s0, ($s4) +/* 0080C0 800074C0 00000000 */ nop +.L800074C4: +/* 0080C4 800074C4 960C0000 */ lhu $t4, ($s0) +.L800074C8: +/* 0080C8 800074C8 00000000 */ nop +/* 0080CC 800074CC 1180009B */ beqz $t4, .L8000773C +/* 0080D0 800074D0 8FB900AC */ lw $t9, 0xac($sp) +/* 0080D4 800074D4 4600D521 */ cvt.d.s $f20, $f26 +/* 0080D8 800074D8 4634C032 */ c.eq.d $f24, $f20 +/* 0080DC 800074DC 00158880 */ sll $s1, $s5, 2 +/* 0080E0 800074E0 45010095 */ bc1t .L80007738 +/* 0080E4 800074E4 02111021 */ addu $v0, $s0, $s1 +.L800074E8: +/* 0080E8 800074E8 C44A0054 */ lwc1 $f10, 0x54($v0) +/* 0080EC 800074EC 24120001 */ li $s2, 1 +/* 0080F0 800074F0 461A5102 */ mul.s $f4, $f10, $f26 +/* 0080F4 800074F4 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 0080F8 800074F8 444DF800 */ cfc1 $t5, $31 +/* 0080FC 800074FC 44D2F800 */ ctc1 $s2, $31 +/* 008100 80007500 00000000 */ nop +/* 008104 80007504 460024A4 */ cvt.w.s $f18, $f4 +/* 008108 80007508 4452F800 */ cfc1 $s2, $31 +/* 00810C 8000750C 00000000 */ nop +/* 008110 80007510 32520078 */ andi $s2, $s2, 0x78 +/* 008114 80007514 12400012 */ beqz $s2, .L80007560 +/* 008118 80007518 00000000 */ nop +/* 00811C 8000751C 44819000 */ mtc1 $at, $f18 +/* 008120 80007520 24120001 */ li $s2, 1 +/* 008124 80007524 46122481 */ sub.s $f18, $f4, $f18 +/* 008128 80007528 3C018000 */ lui $at, 0x8000 +/* 00812C 8000752C 44D2F800 */ ctc1 $s2, $31 +/* 008130 80007530 00000000 */ nop +/* 008134 80007534 460094A4 */ cvt.w.s $f18, $f18 +/* 008138 80007538 4452F800 */ cfc1 $s2, $31 +/* 00813C 8000753C 00000000 */ nop +/* 008140 80007540 32520078 */ andi $s2, $s2, 0x78 +/* 008144 80007544 16400004 */ bnez $s2, .L80007558 +/* 008148 80007548 00000000 */ nop +/* 00814C 8000754C 44129000 */ mfc1 $s2, $f18 +/* 008150 80007550 10000007 */ b .L80007570 +/* 008154 80007554 02419025 */ or $s2, $s2, $at +.L80007558: +/* 008158 80007558 10000005 */ b .L80007570 +/* 00815C 8000755C 2412FFFF */ li $s2, -1 +.L80007560: +/* 008160 80007560 44129000 */ mfc1 $s2, $f18 +/* 008164 80007564 00000000 */ nop +/* 008168 80007568 0640FFFB */ bltz $s2, .L80007558 +/* 00816C 8000756C 00000000 */ nop +.L80007570: +/* 008170 80007570 44CDF800 */ ctc1 $t5, $31 +/* 008174 80007574 C448005C */ lwc1 $f8, 0x5c($v0) +/* 008178 80007578 C606003C */ lwc1 $f6, 0x3c($s0) +/* 00817C 8000757C C60A0094 */ lwc1 $f10, 0x94($s0) +/* 008180 80007580 46064400 */ add.s $f16, $f8, $f6 +/* 008184 80007584 C6120068 */ lwc1 $f18, 0x68($s0) +/* 008188 80007588 460A8100 */ add.s $f4, $f16, $f10 +/* 00818C 8000758C 324E00FF */ andi $t6, $s2, 0xff +/* 008190 80007590 46122200 */ add.s $f8, $f4, $f18 +/* 008194 80007594 01C09025 */ move $s2, $t6 +/* 008198 80007598 460041A1 */ cvt.d.s $f6, $f8 +/* 00819C 8000759C 463C303C */ c.lt.d $f6, $f28 +/* 0081A0 800075A0 E7A8008C */ swc1 $f8, 0x8c($sp) +/* 0081A4 800075A4 45000004 */ bc1f .L800075B8 +/* 0081A8 800075A8 3C01800E */ lui $at, %hi(D_800E4CD4) # $at, 0x800e +/* 0081AC 800075AC C4304CD4 */ lwc1 $f16, %lo(D_800E4CD4)($at) +/* 0081B0 800075B0 00000000 */ nop +/* 0081B4 800075B4 E7B0008C */ swc1 $f16, 0x8c($sp) +.L800075B8: +/* 0081B8 800075B8 16A0000F */ bnez $s5, .L800075F8 +/* 0081BC 800075BC 00000000 */ nop +/* 0081C0 800075C0 920F0044 */ lbu $t7, 0x44($s0) +/* 0081C4 800075C4 00000000 */ nop +/* 0081C8 800075C8 31F80001 */ andi $t8, $t7, 1 +/* 0081CC 800075CC 1300000A */ beqz $t8, .L800075F8 +/* 0081D0 800075D0 00000000 */ nop +/* 0081D4 800075D4 8E040048 */ lw $a0, 0x48($s0) +/* 0081D8 800075D8 00000000 */ nop +/* 0081DC 800075DC 10800047 */ beqz $a0, .L800076FC +/* 0081E0 800075E0 00000000 */ nop +/* 0081E4 800075E4 0C001223 */ jal func_8000488C +/* 0081E8 800075E8 00000000 */ nop +/* 0081EC 800075EC 8E990000 */ lw $t9, ($s4) +/* 0081F0 800075F0 10000042 */ b .L800076FC +/* 0081F4 800075F4 AF200048 */ sw $zero, 0x48($t9) +.L800075F8: +/* 0081F8 800075F8 8C440048 */ lw $a0, 0x48($v0) +/* 0081FC 800075FC 00000000 */ nop +/* 008200 80007600 1080000A */ beqz $a0, .L8000762C +/* 008204 80007604 00000000 */ nop +/* 008208 80007608 16400008 */ bnez $s2, .L8000762C +/* 00820C 8000760C 00000000 */ nop +/* 008210 80007610 0C001223 */ jal func_8000488C +/* 008214 80007614 00000000 */ nop +/* 008218 80007618 8E880000 */ lw $t0, ($s4) +/* 00821C 8000761C 00000000 */ nop +/* 008220 80007620 01114821 */ addu $t1, $t0, $s1 +/* 008224 80007624 10000035 */ b .L800076FC +/* 008228 80007628 AD200048 */ sw $zero, 0x48($t1) +.L8000762C: +/* 00822C 8000762C 1480000A */ bnez $a0, .L80007658 +/* 008230 80007630 00155040 */ sll $t2, $s5, 1 +/* 008234 80007634 020A5821 */ addu $t3, $s0, $t2 +/* 008238 80007638 95640000 */ lhu $a0, ($t3) +/* 00823C 8000763C 0C0007C5 */ jal func_80001F14 +/* 008240 80007640 24450048 */ addiu $a1, $v0, 0x48 +/* 008244 80007644 8E8C0000 */ lw $t4, ($s4) +/* 008248 80007648 00000000 */ nop +/* 00824C 8000764C 01916821 */ addu $t5, $t4, $s1 +/* 008250 80007650 8DA40048 */ lw $a0, 0x48($t5) +/* 008254 80007654 00000000 */ nop +.L80007658: +/* 008258 80007658 10800028 */ beqz $a0, .L800076FC +/* 00825C 8000765C 00000000 */ nop +/* 008260 80007660 8ED00000 */ lw $s0, ($s6) +/* 008264 80007664 02409825 */ move $s3, $s2 +/* 008268 80007668 8E05000C */ lw $a1, 0xc($s0) +/* 00826C 8000766C 8E060010 */ lw $a2, 0x10($s0) +/* 008270 80007670 8E070014 */ lw $a3, 0x14($s0) +/* 008274 80007674 0C0026DF */ jal func_80009B7C +/* 008278 80007678 00000000 */ nop +/* 00827C 8000767C 8E8E0000 */ lw $t6, ($s4) +/* 008280 80007680 24050008 */ li $a1, 8 +/* 008284 80007684 01D17821 */ addu $t7, $t6, $s1 +/* 008288 80007688 8DE40048 */ lw $a0, 0x48($t7) +/* 00828C 8000768C 0C00127E */ jal func_800049F8 +/* 008290 80007690 00133200 */ sll $a2, $s3, 8 +/* 008294 80007694 8E980000 */ lw $t8, ($s4) +/* 008298 80007698 8FA6008C */ lw $a2, 0x8c($sp) +/* 00829C 8000769C 0311C821 */ addu $t9, $t8, $s1 +/* 0082A0 800076A0 8F240048 */ lw $a0, 0x48($t9) +/* 0082A4 800076A4 0C00127E */ jal func_800049F8 +/* 0082A8 800076A8 24050010 */ li $a1, 16 +/* 0082AC 800076AC 8E880000 */ lw $t0, ($s4) +/* 0082B0 800076B0 24050050 */ li $a1, 80 +/* 0082B4 800076B4 01114821 */ addu $t1, $t0, $s1 +/* 0082B8 800076B8 8D240048 */ lw $a0, 0x48($t1) +/* 0082BC 800076BC 0C001181 */ jal func_80004604 +/* 0082C0 800076C0 00000000 */ nop +/* 0082C4 800076C4 8FAA007C */ lw $t2, 0x7c($sp) +/* 0082C8 800076C8 24010001 */ li $at, 1 +/* 0082CC 800076CC 11410004 */ beq $t2, $at, .L800076E0 +/* 0082D0 800076D0 00000000 */ nop +/* 0082D4 800076D4 8E8C0000 */ lw $t4, ($s4) +/* 0082D8 800076D8 240B0040 */ li $t3, 64 +/* 0082DC 800076DC A18B0091 */ sb $t3, 0x91($t4) +.L800076E0: +/* 0082E0 800076E0 8E900000 */ lw $s0, ($s4) +/* 0082E4 800076E4 24050004 */ li $a1, 4 +/* 0082E8 800076E8 02116821 */ addu $t5, $s0, $s1 +/* 0082EC 800076EC 8DA40048 */ lw $a0, 0x48($t5) +/* 0082F0 800076F0 92060091 */ lbu $a2, 0x91($s0) +/* 0082F4 800076F4 0C00127E */ jal func_800049F8 +/* 0082F8 800076F8 00000000 */ nop +.L800076FC: +/* 0082FC 800076FC 26B50001 */ addiu $s5, $s5, 1 +/* 008300 80007700 2AA10002 */ slti $at, $s5, 2 +/* 008304 80007704 1020000C */ beqz $at, .L80007738 +/* 008308 80007708 26310004 */ addiu $s1, $s1, 4 +/* 00830C 8000770C 8E900000 */ lw $s0, ($s4) +/* 008310 80007710 00157040 */ sll $t6, $s5, 1 +/* 008314 80007714 020E7821 */ addu $t7, $s0, $t6 +/* 008318 80007718 95F80000 */ lhu $t8, ($t7) +/* 00831C 8000771C 00000000 */ nop +/* 008320 80007720 13000006 */ beqz $t8, .L8000773C +/* 008324 80007724 8FB900AC */ lw $t9, 0xac($sp) +/* 008328 80007728 4634C032 */ c.eq.d $f24, $f20 +/* 00832C 8000772C 00000000 */ nop +/* 008330 80007730 4500FF6D */ bc1f .L800074E8 +/* 008334 80007734 02111021 */ addu $v0, $s0, $s1 +.L80007738: +/* 008338 80007738 8FB900AC */ lw $t9, 0xac($sp) +.L8000773C: +/* 00833C 8000773C 8FA9007C */ lw $t1, 0x7c($sp) +/* 008340 80007740 27280001 */ addiu $t0, $t9, 1 +/* 008344 80007744 AFA800AC */ sw $t0, 0xac($sp) +/* 008348 80007748 1509FE49 */ bne $t0, $t1, .L80007070 +/* 00834C 8000774C 26D60004 */ addiu $s6, $s6, 4 +.L80007750: +/* 008350 80007750 3C01800E */ lui $at, %hi(D_800E4CDC) # $at, 0x800e +/* 008354 80007754 C43D4CD8 */ lwc1 $f29, %lo(D_800E4CD8)($at) +/* 008358 80007758 C43C4CDC */ lwc1 $f28, %lo(D_800E4CDC)($at) +/* 00835C 8000775C 8FAA007C */ lw $t2, 0x7c($sp) +/* 008360 80007760 3C01800E */ lui $at, %hi(D_800E4CE0) # $at, 0x800e +/* 008364 80007764 C43E4CE0 */ lwc1 $f30, %lo(D_800E4CE0)($at) +/* 008368 80007768 3C148012 */ lui $s4, %hi(D_80119C38) # $s4, 0x8012 +/* 00836C 8000776C 8FBE00D8 */ lw $fp, 0xd8($sp) +/* 008370 80007770 29410003 */ slti $at, $t2, 3 +/* 008374 80007774 102001E8 */ beqz $at, .L80007F18 +/* 008378 80007778 26949C38 */ addiu $s4, %lo(D_80119C38) # addiu $s4, $s4, -0x63c8 +/* 00837C 8000777C 8FAC00CC */ lw $t4, 0xcc($sp) +/* 008380 80007780 0140A825 */ move $s5, $t2 +/* 008384 80007784 014C082A */ slt $at, $t2, $t4 +/* 008388 80007788 1020004D */ beqz $at, .L800078C0 +/* 00838C 8000778C AFA000AC */ sw $zero, 0xac($sp) +/* 008390 80007790 018A1823 */ subu $v1, $t4, $t2 +/* 008394 80007794 306D0003 */ andi $t5, $v1, 3 +/* 008398 80007798 11A00015 */ beqz $t5, .L800077F0 +/* 00839C 8000779C 01AA1021 */ addu $v0, $t5, $t2 +/* 0083A0 800077A0 8FAE00C8 */ lw $t6, 0xc8($sp) +/* 0083A4 800077A4 000A7880 */ sll $t7, $t2, 2 +/* 0083A8 800077A8 01CF9021 */ addu $s2, $t6, $t7 +.L800077AC: +/* 0083AC 800077AC 8E580000 */ lw $t8, ($s2) +/* 0083B0 800077B0 26B50001 */ addiu $s5, $s5, 1 +/* 0083B4 800077B4 8F110064 */ lw $s1, 0x64($t8) +/* 0083B8 800077B8 00000000 */ nop +/* 0083BC 800077BC 12200006 */ beqz $s1, .L800077D8 +/* 0083C0 800077C0 00000000 */ nop +/* 0083C4 800077C4 8E390118 */ lw $t9, 0x118($s1) +/* 0083C8 800077C8 00000000 */ nop +/* 0083CC 800077CC 13200002 */ beqz $t9, .L800077D8 +/* 0083D0 800077D0 AE990000 */ sw $t9, ($s4) +/* 0083D4 800077D4 A3200088 */ sb $zero, 0x88($t9) +.L800077D8: +/* 0083D8 800077D8 1455FFF4 */ bne $v0, $s5, .L800077AC +/* 0083DC 800077DC 26520004 */ addiu $s2, $s2, 4 +/* 0083E0 800077E0 8FA300CC */ lw $v1, 0xcc($sp) +/* 0083E4 800077E4 00000000 */ nop +/* 0083E8 800077E8 12A30036 */ beq $s5, $v1, .L800078C4 +/* 0083EC 800077EC 8FAA007C */ lw $t2, 0x7c($sp) +.L800077F0: +/* 0083F0 800077F0 8FA300CC */ lw $v1, 0xcc($sp) +/* 0083F4 800077F4 8FA800C8 */ lw $t0, 0xc8($sp) +/* 0083F8 800077F8 00154880 */ sll $t1, $s5, 2 +/* 0083FC 800077FC 00035080 */ sll $t2, $v1, 2 +/* 008400 80007800 01481021 */ addu $v0, $t2, $t0 +/* 008404 80007804 01099021 */ addu $s2, $t0, $t1 +.L80007808: +/* 008408 80007808 8E4C0000 */ lw $t4, ($s2) +/* 00840C 8000780C 00000000 */ nop +/* 008410 80007810 8D910064 */ lw $s1, 0x64($t4) +/* 008414 80007814 00000000 */ nop +/* 008418 80007818 12200006 */ beqz $s1, .L80007834 +/* 00841C 8000781C 00000000 */ nop +/* 008420 80007820 8E2D0118 */ lw $t5, 0x118($s1) +/* 008424 80007824 00000000 */ nop +/* 008428 80007828 11A00002 */ beqz $t5, .L80007834 +/* 00842C 8000782C AE8D0000 */ sw $t5, ($s4) +/* 008430 80007830 A1A00088 */ sb $zero, 0x88($t5) +.L80007834: +/* 008434 80007834 8E4B0004 */ lw $t3, 4($s2) +/* 008438 80007838 00000000 */ nop +/* 00843C 8000783C 8D710064 */ lw $s1, 0x64($t3) +/* 008440 80007840 00000000 */ nop +/* 008444 80007844 12200006 */ beqz $s1, .L80007860 +/* 008448 80007848 00000000 */ nop +/* 00844C 8000784C 8E2E0118 */ lw $t6, 0x118($s1) +/* 008450 80007850 00000000 */ nop +/* 008454 80007854 11C00002 */ beqz $t6, .L80007860 +/* 008458 80007858 AE8E0000 */ sw $t6, ($s4) +/* 00845C 8000785C A1C00088 */ sb $zero, 0x88($t6) +.L80007860: +/* 008460 80007860 8E4F0008 */ lw $t7, 8($s2) +/* 008464 80007864 00000000 */ nop +/* 008468 80007868 8DF10064 */ lw $s1, 0x64($t7) +/* 00846C 8000786C 00000000 */ nop +/* 008470 80007870 12200006 */ beqz $s1, .L8000788C +/* 008474 80007874 00000000 */ nop +/* 008478 80007878 8E380118 */ lw $t8, 0x118($s1) +/* 00847C 8000787C 00000000 */ nop +/* 008480 80007880 13000002 */ beqz $t8, .L8000788C +/* 008484 80007884 AE980000 */ sw $t8, ($s4) +/* 008488 80007888 A3000088 */ sb $zero, 0x88($t8) +.L8000788C: +/* 00848C 8000788C 8E59000C */ lw $t9, 0xc($s2) +/* 008490 80007890 26520010 */ addiu $s2, $s2, 0x10 +/* 008494 80007894 8F310064 */ lw $s1, 0x64($t9) +/* 008498 80007898 00000000 */ nop +/* 00849C 8000789C 12200006 */ beqz $s1, .L800078B8 +/* 0084A0 800078A0 00000000 */ nop +/* 0084A4 800078A4 8E290118 */ lw $t1, 0x118($s1) +/* 0084A8 800078A8 00000000 */ nop +/* 0084AC 800078AC 11200002 */ beqz $t1, .L800078B8 +/* 0084B0 800078B0 AE890000 */ sw $t1, ($s4) +/* 0084B4 800078B4 A1200088 */ sb $zero, 0x88($t1) +.L800078B8: +/* 0084B8 800078B8 1642FFD3 */ bne $s2, $v0, .L80007808 +/* 0084BC 800078BC 00000000 */ nop +.L800078C0: +/* 0084C0 800078C0 8FAA007C */ lw $t2, 0x7c($sp) +.L800078C4: +/* 0084C4 800078C4 8FB600C8 */ lw $s6, 0xc8($sp) +/* 0084C8 800078C8 194000D7 */ blez $t2, .L80007C28 +/* 0084CC 800078CC 3C01800E */ lui $at, %hi(D_800E4CEC) # $at, 0x800e +/* 0084D0 800078D0 C4394CE8 */ lwc1 $f25, %lo(D_800E4CE8)($at) +/* 0084D4 800078D4 C4384CEC */ lwc1 $f24, %lo(D_800E4CEC)($at) +/* 0084D8 800078D8 00000000 */ nop +.L800078DC: +/* 0084DC 800078DC 8EC80000 */ lw $t0, ($s6) +/* 0084E0 800078E0 8FAC007C */ lw $t4, 0x7c($sp) +/* 0084E4 800078E4 8FAD00CC */ lw $t5, 0xcc($sp) +/* 0084E8 800078E8 8D110064 */ lw $s1, 0x64($t0) +/* 0084EC 800078EC 018D082A */ slt $at, $t4, $t5 +/* 0084F0 800078F0 102000C7 */ beqz $at, .L80007C10 +/* 0084F4 800078F4 0180A825 */ move $s5, $t4 +/* 0084F8 800078F8 8FAB00C8 */ lw $t3, 0xc8($sp) +/* 0084FC 800078FC 000C7080 */ sll $t6, $t4, 2 +/* 008500 80007900 016E9021 */ addu $s2, $t3, $t6 +.L80007904: +/* 008504 80007904 8E4F0000 */ lw $t7, ($s2) +/* 008508 80007908 00000000 */ nop +/* 00850C 8000790C 8DE20064 */ lw $v0, 0x64($t7) +/* 008510 80007910 00000000 */ nop +/* 008514 80007914 104000BB */ beqz $v0, .L80007C04 +/* 008518 80007918 8FAA00CC */ lw $t2, 0xcc($sp) +/* 00851C 8000791C 8C580118 */ lw $t8, 0x118($v0) +/* 008520 80007920 00000000 */ nop +/* 008524 80007924 130000B6 */ beqz $t8, .L80007C00 +/* 008528 80007928 AE980000 */ sw $t8, ($s4) +/* 00852C 8000792C 822901D8 */ lb $t1, 0x1d8($s1) +/* 008530 80007930 8FAA00AC */ lw $t2, 0xac($sp) +/* 008534 80007934 1120000F */ beqz $t1, .L80007974 +/* 008538 80007938 000A4100 */ sll $t0, $t2, 4 +/* 00853C 8000793C 010A4021 */ addu $t0, $t0, $t2 +/* 008540 80007940 8E420000 */ lw $v0, ($s2) +/* 008544 80007944 00084080 */ sll $t0, $t0, 2 +/* 008548 80007948 02E81821 */ addu $v1, $s7, $t0 +/* 00854C 8000794C C464000C */ lwc1 $f4, 0xc($v1) +/* 008550 80007950 C4680010 */ lwc1 $f8, 0x10($v1) +/* 008554 80007954 C4700014 */ lwc1 $f16, 0x14($v1) +/* 008558 80007958 C44A000C */ lwc1 $f10, 0xc($v0) +/* 00855C 8000795C C4520010 */ lwc1 $f18, 0x10($v0) +/* 008560 80007960 C4460014 */ lwc1 $f6, 0x14($v0) +/* 008564 80007964 46045501 */ sub.s $f20, $f10, $f4 +/* 008568 80007968 46089001 */ sub.s $f0, $f18, $f8 +/* 00856C 8000796C 1000000C */ b .L800079A0 +/* 008570 80007970 46103581 */ sub.s $f22, $f6, $f16 +.L80007974: +/* 008574 80007974 8E420000 */ lw $v0, ($s2) +/* 008578 80007978 8ED00000 */ lw $s0, ($s6) +/* 00857C 8000797C C44A000C */ lwc1 $f10, 0xc($v0) +/* 008580 80007980 C4520010 */ lwc1 $f18, 0x10($v0) +/* 008584 80007984 C4460014 */ lwc1 $f6, 0x14($v0) +/* 008588 80007988 C604000C */ lwc1 $f4, 0xc($s0) +/* 00858C 8000798C C6080010 */ lwc1 $f8, 0x10($s0) +/* 008590 80007990 C6100014 */ lwc1 $f16, 0x14($s0) +/* 008594 80007994 46045501 */ sub.s $f20, $f10, $f4 +/* 008598 80007998 46089001 */ sub.s $f0, $f18, $f8 +/* 00859C 8000799C 46103581 */ sub.s $f22, $f6, $f16 +.L800079A0: +/* 0085A0 800079A0 4614A282 */ mul.s $f10, $f20, $f20 +/* 0085A4 800079A4 00000000 */ nop +/* 0085A8 800079A8 46000102 */ mul.s $f4, $f0, $f0 +/* 0085AC 800079AC 00000000 */ nop +/* 0085B0 800079B0 4616B202 */ mul.s $f8, $f22, $f22 +/* 0085B4 800079B4 46045480 */ add.s $f18, $f10, $f4 +/* 0085B8 800079B8 0C0326B4 */ jal sqrtf +/* 0085BC 800079BC 46089300 */ add.s $f12, $f18, $f8 +/* 0085C0 800079C0 8E8C0000 */ lw $t4, ($s4) +/* 0085C4 800079C4 3C01800E */ lui $at, %hi(D_800E4CF0) # $at, 0x800e +/* 0085C8 800079C8 E5800084 */ swc1 $f0, 0x84($t4) +/* 0085CC 800079CC 8E900000 */ lw $s0, ($s4) +/* 0085D0 800079D0 C4264CF0 */ lwc1 $f6, %lo(D_800E4CF0)($at) +/* 0085D4 800079D4 C6020084 */ lwc1 $f2, 0x84($s0) +/* 0085D8 800079D8 00000000 */ nop +/* 0085DC 800079DC 4606103C */ c.lt.s $f2, $f6 +/* 0085E0 800079E0 00000000 */ nop +/* 0085E4 800079E4 45000087 */ bc1f .L80007C04 +/* 0085E8 800079E8 8FAA00CC */ lw $t2, 0xcc($sp) +/* 0085EC 800079EC 46021402 */ mul.s $f16, $f2, $f2 +/* 0085F0 800079F0 C6040054 */ lwc1 $f4, 0x54($s0) +/* 0085F4 800079F4 24020001 */ li $v0, 1 +/* 0085F8 800079F8 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 0085FC 800079FC 4610F281 */ sub.s $f10, $f30, $f16 +/* 008600 80007A00 00000000 */ nop +/* 008604 80007A04 461E5683 */ div.s $f26, $f10, $f30 +/* 008608 80007A08 461A2482 */ mul.s $f18, $f4, $f26 +/* 00860C 80007A0C 444DF800 */ cfc1 $t5, $31 +/* 008610 80007A10 44C2F800 */ ctc1 $v0, $31 +/* 008614 80007A14 00000000 */ nop +/* 008618 80007A18 46009224 */ cvt.w.s $f8, $f18 +/* 00861C 80007A1C 4442F800 */ cfc1 $v0, $31 +/* 008620 80007A20 00000000 */ nop +/* 008624 80007A24 30420078 */ andi $v0, $v0, 0x78 +/* 008628 80007A28 10400012 */ beqz $v0, .L80007A74 +/* 00862C 80007A2C 00000000 */ nop +/* 008630 80007A30 44814000 */ mtc1 $at, $f8 +/* 008634 80007A34 24020001 */ li $v0, 1 +/* 008638 80007A38 46089201 */ sub.s $f8, $f18, $f8 +/* 00863C 80007A3C 3C018000 */ lui $at, 0x8000 +/* 008640 80007A40 44C2F800 */ ctc1 $v0, $31 +/* 008644 80007A44 00000000 */ nop +/* 008648 80007A48 46004224 */ cvt.w.s $f8, $f8 +/* 00864C 80007A4C 4442F800 */ cfc1 $v0, $31 +/* 008650 80007A50 00000000 */ nop +/* 008654 80007A54 30420078 */ andi $v0, $v0, 0x78 +/* 008658 80007A58 14400004 */ bnez $v0, .L80007A6C +/* 00865C 80007A5C 00000000 */ nop +/* 008660 80007A60 44024000 */ mfc1 $v0, $f8 +/* 008664 80007A64 10000007 */ b .L80007A84 +/* 008668 80007A68 00411025 */ or $v0, $v0, $at +.L80007A6C: +/* 00866C 80007A6C 10000005 */ b .L80007A84 +/* 008670 80007A70 2402FFFF */ li $v0, -1 +.L80007A74: +/* 008674 80007A74 44024000 */ mfc1 $v0, $f8 +/* 008678 80007A78 00000000 */ nop +/* 00867C 80007A7C 0440FFFB */ bltz $v0, .L80007A6C +/* 008680 80007A80 00000000 */ nop +.L80007A84: +/* 008684 80007A84 304B00FF */ andi $t3, $v0, 0xff +/* 008688 80007A88 44CDF800 */ ctc1 $t5, $31 +/* 00868C 80007A8C 29610080 */ slti $at, $t3, 0x80 +/* 008690 80007A90 14200002 */ bnez $at, .L80007A9C +/* 008694 80007A94 01601025 */ move $v0, $t3 +/* 008698 80007A98 2402007F */ li $v0, 127 +.L80007A9C: +/* 00869C 80007A9C 44823000 */ mtc1 $v0, $f6 +/* 0086A0 80007AA0 04410006 */ bgez $v0, .L80007ABC +/* 0086A4 80007AA4 46803421 */ cvt.d.w $f16, $f6 +/* 0086A8 80007AA8 3C0141F0 */ li $at, 0x41F00000 # 30.000000 +/* 0086AC 80007AAC 44815800 */ mtc1 $at, $f11 +/* 0086B0 80007AB0 44805000 */ mtc1 $zero, $f10 +/* 0086B4 80007AB4 00000000 */ nop +/* 0086B8 80007AB8 462A8400 */ add.d $f16, $f16, $f10 +.L80007ABC: +/* 0086BC 80007ABC 46388102 */ mul.d $f4, $f16, $f24 +/* 0086C0 80007AC0 24020001 */ li $v0, 1 +/* 0086C4 80007AC4 3C0141E0 */ li $at, 0x41E00000 # 28.000000 +/* 0086C8 80007AC8 444EF800 */ cfc1 $t6, $31 +/* 0086CC 80007ACC 44C2F800 */ ctc1 $v0, $31 +/* 0086D0 80007AD0 00000000 */ nop +/* 0086D4 80007AD4 462024A4 */ cvt.w.d $f18, $f4 +/* 0086D8 80007AD8 4442F800 */ cfc1 $v0, $31 +/* 0086DC 80007ADC 00000000 */ nop +/* 0086E0 80007AE0 30420078 */ andi $v0, $v0, 0x78 +/* 0086E4 80007AE4 10400013 */ beqz $v0, .L80007B34 +/* 0086E8 80007AE8 00000000 */ nop +/* 0086EC 80007AEC 44819800 */ mtc1 $at, $f19 +/* 0086F0 80007AF0 44809000 */ mtc1 $zero, $f18 +/* 0086F4 80007AF4 24020001 */ li $v0, 1 +/* 0086F8 80007AF8 46322481 */ sub.d $f18, $f4, $f18 +/* 0086FC 80007AFC 3C018000 */ lui $at, 0x8000 +/* 008700 80007B00 44C2F800 */ ctc1 $v0, $31 +/* 008704 80007B04 00000000 */ nop +/* 008708 80007B08 462094A4 */ cvt.w.d $f18, $f18 +/* 00870C 80007B0C 4442F800 */ cfc1 $v0, $31 +/* 008710 80007B10 00000000 */ nop +/* 008714 80007B14 30420078 */ andi $v0, $v0, 0x78 +/* 008718 80007B18 14400004 */ bnez $v0, .L80007B2C +/* 00871C 80007B1C 00000000 */ nop +/* 008720 80007B20 44029000 */ mfc1 $v0, $f18 +/* 008724 80007B24 10000007 */ b .L80007B44 +/* 008728 80007B28 00411025 */ or $v0, $v0, $at +.L80007B2C: +/* 00872C 80007B2C 10000005 */ b .L80007B44 +/* 008730 80007B30 2402FFFF */ li $v0, -1 +.L80007B34: +/* 008734 80007B34 44029000 */ mfc1 $v0, $f18 +/* 008738 80007B38 00000000 */ nop +/* 00873C 80007B3C 0440FFFB */ bltz $v0, .L80007B2C +/* 008740 80007B40 00000000 */ nop +.L80007B44: +/* 008744 80007B44 92180088 */ lbu $t8, 0x88($s0) +/* 008748 80007B48 304F00FF */ andi $t7, $v0, 0xff +/* 00874C 80007B4C 44CEF800 */ ctc1 $t6, $31 +/* 008750 80007B50 030F082A */ slt $at, $t8, $t7 +/* 008754 80007B54 1020002B */ beqz $at, .L80007C04 +/* 008758 80007B58 8FAA00CC */ lw $t2, 0xcc($sp) +/* 00875C 80007B5C A20F0088 */ sb $t7, 0x88($s0) +/* 008760 80007B60 86E60000 */ lh $a2, ($s7) +/* 008764 80007B64 4600A306 */ mov.s $f12, $f20 +/* 008768 80007B68 0C002430 */ jal func_800090C0 +/* 00876C 80007B6C 4600B386 */ mov.s $f14, $f22 +/* 008770 80007B70 8E990000 */ lw $t9, ($s4) +/* 008774 80007B74 03C03825 */ move $a3, $fp +/* 008778 80007B78 A3220091 */ sb $v0, 0x91($t9) +/* 00877C 80007B7C 822901D8 */ lb $t1, 0x1d8($s1) +/* 008780 80007B80 00002825 */ move $a1, $zero +/* 008784 80007B84 11200007 */ beqz $t1, .L80007BA4 +/* 008788 80007B88 00000000 */ nop +/* 00878C 80007B8C 8EC40000 */ lw $a0, ($s6) +/* 008790 80007B90 8E460000 */ lw $a2, ($s2) +/* 008794 80007B94 0C001AFF */ jal func_80006BFC +/* 008798 80007B98 02E02825 */ move $a1, $s7 +/* 00879C 80007B9C 10000006 */ b .L80007BB8 +/* 0087A0 80007BA0 8E900000 */ lw $s0, ($s4) +.L80007BA4: +/* 0087A4 80007BA4 8EC40000 */ lw $a0, ($s6) +/* 0087A8 80007BA8 8E460000 */ lw $a2, ($s2) +/* 0087AC 80007BAC 0C001AFF */ jal func_80006BFC +/* 0087B0 80007BB0 03C03825 */ move $a3, $fp +/* 0087B4 80007BB4 8E900000 */ lw $s0, ($s4) +.L80007BB8: +/* 0087B8 80007BB8 3C01800E */ lui $at, %hi(D_800E4CF4) # $at, 0x800e +/* 0087BC 80007BBC C608005C */ lwc1 $f8, 0x5c($s0) +/* 0087C0 80007BC0 C6060068 */ lwc1 $f6, 0x68($s0) +/* 0087C4 80007BC4 00000000 */ nop +/* 0087C8 80007BC8 46064280 */ add.s $f10, $f8, $f6 +/* 0087CC 80007BCC E60A008C */ swc1 $f10, 0x8c($s0) +/* 0087D0 80007BD0 8E900000 */ lw $s0, ($s4) +/* 0087D4 80007BD4 00000000 */ nop +/* 0087D8 80007BD8 C610008C */ lwc1 $f16, 0x8c($s0) +/* 0087DC 80007BDC 00000000 */ nop +/* 0087E0 80007BE0 46008121 */ cvt.d.s $f4, $f16 +/* 0087E4 80007BE4 463C203C */ c.lt.d $f4, $f28 +/* 0087E8 80007BE8 00000000 */ nop +/* 0087EC 80007BEC 45000005 */ bc1f .L80007C04 +/* 0087F0 80007BF0 8FAA00CC */ lw $t2, 0xcc($sp) +/* 0087F4 80007BF4 C4324CF4 */ lwc1 $f18, %lo(D_800E4CF4)($at) +/* 0087F8 80007BF8 00000000 */ nop +/* 0087FC 80007BFC E612008C */ swc1 $f18, 0x8c($s0) +.L80007C00: +/* 008800 80007C00 8FAA00CC */ lw $t2, 0xcc($sp) +.L80007C04: +/* 008804 80007C04 26B50001 */ addiu $s5, $s5, 1 +/* 008808 80007C08 16AAFF3E */ bne $s5, $t2, .L80007904 +/* 00880C 80007C0C 26520004 */ addiu $s2, $s2, 4 +.L80007C10: +/* 008810 80007C10 8FA800AC */ lw $t0, 0xac($sp) +/* 008814 80007C14 8FAD007C */ lw $t5, 0x7c($sp) +/* 008818 80007C18 250C0001 */ addiu $t4, $t0, 1 +/* 00881C 80007C1C AFAC00AC */ sw $t4, 0xac($sp) +/* 008820 80007C20 158DFF2E */ bne $t4, $t5, .L800078DC +/* 008824 80007C24 26D60004 */ addiu $s6, $s6, 4 +.L80007C28: +/* 008828 80007C28 3C138012 */ lui $s3, %hi(D_80119C30) # $s3, 0x8012 +/* 00882C 80007C2C 3C108012 */ lui $s0, %hi(D_80119C38) # $s0, 0x8012 +/* 008830 80007C30 26109C38 */ addiu $s0, %lo(D_80119C38) # addiu $s0, $s0, -0x63c8 +/* 008834 80007C34 26739C30 */ addiu $s3, %lo(D_80119C30) # addiu $s3, $s3, -0x63d0 +.L80007C38: +/* 008838 80007C38 8E620000 */ lw $v0, ($s3) +/* 00883C 80007C3C 00000000 */ nop +/* 008840 80007C40 10400013 */ beqz $v0, .L80007C90 +/* 008844 80007C44 00000000 */ nop +/* 008848 80007C48 8C440048 */ lw $a0, 0x48($v0) +/* 00884C 80007C4C 00000000 */ nop +/* 008850 80007C50 1080000F */ beqz $a0, .L80007C90 +/* 008854 80007C54 00000000 */ nop +/* 008858 80007C58 904B0088 */ lbu $t3, 0x88($v0) +/* 00885C 80007C5C 00000000 */ nop +/* 008860 80007C60 29610008 */ slti $at, $t3, 8 +/* 008864 80007C64 1020000A */ beqz $at, .L80007C90 +/* 008868 80007C68 00000000 */ nop +/* 00886C 80007C6C 0C001223 */ jal func_8000488C +/* 008870 80007C70 00000000 */ nop +/* 008874 80007C74 8E6E0000 */ lw $t6, ($s3) +/* 008878 80007C78 00000000 */ nop +/* 00887C 80007C7C ADC00048 */ sw $zero, 0x48($t6) +/* 008880 80007C80 8E6F0000 */ lw $t7, ($s3) +/* 008884 80007C84 00000000 */ nop +/* 008888 80007C88 A1E00074 */ sb $zero, 0x74($t7) +/* 00888C 80007C8C AE600000 */ sw $zero, ($s3) +.L80007C90: +/* 008890 80007C90 26730004 */ addiu $s3, $s3, 4 +/* 008894 80007C94 1670FFE8 */ bne $s3, $s0, .L80007C38 +/* 008898 80007C98 00000000 */ nop +/* 00889C 80007C9C 3C07800E */ lui $a3, %hi(D_800DC6D4) # $a3, 0x800e +/* 0088A0 80007CA0 24E7C6D4 */ addiu $a3, %lo(D_800DC6D4) # addiu $a3, $a3, -0x392c +/* 0088A4 80007CA4 8CE20000 */ lw $v0, ($a3) +/* 0088A8 80007CA8 24170002 */ li $s7, 2 +/* 0088AC 80007CAC 03C2082A */ slt $at, $fp, $v0 +/* 0088B0 80007CB0 10200003 */ beqz $at, .L80007CC0 +/* 0088B4 80007CB4 005EC023 */ subu $t8, $v0, $fp +/* 0088B8 80007CB8 10000002 */ b .L80007CC4 +/* 0088BC 80007CBC ACF80000 */ sw $t8, ($a3) +.L80007CC0: +/* 0088C0 80007CC0 ACE00000 */ sw $zero, ($a3) +.L80007CC4: +/* 0088C4 80007CC4 8FB900CC */ lw $t9, 0xcc($sp) +/* 0088C8 80007CC8 8FB200C8 */ lw $s2, 0xc8($sp) +/* 0088CC 80007CCC 2B210002 */ slti $at, $t9, 2 +/* 0088D0 80007CD0 14200054 */ bnez $at, .L80007E24 +/* 0088D4 80007CD4 24150001 */ li $s5, 1 +/* 0088D8 80007CD8 26520004 */ addiu $s2, $s2, 4 +/* 0088DC 80007CDC 241EFFFF */ li $fp, -1 +/* 0088E0 80007CE0 24160002 */ li $s6, 2 +.L80007CE4: +/* 0088E4 80007CE4 8E490000 */ lw $t1, ($s2) +/* 0088E8 80007CE8 00000000 */ nop +/* 0088EC 80007CEC 8D220064 */ lw $v0, 0x64($t1) +/* 0088F0 80007CF0 00000000 */ nop +/* 0088F4 80007CF4 10400048 */ beqz $v0, .L80007E18 +/* 0088F8 80007CF8 8FAC00CC */ lw $t4, 0xcc($sp) +/* 0088FC 80007CFC 8C4A0118 */ lw $t2, 0x118($v0) +/* 008900 80007D00 00000000 */ nop +/* 008904 80007D04 AE8A0000 */ sw $t2, ($s4) +/* 008908 80007D08 11400042 */ beqz $t2, .L80007E14 +/* 00890C 80007D0C 01408025 */ move $s0, $t2 +/* 008910 80007D10 91480074 */ lbu $t0, 0x74($t2) +/* 008914 80007D14 00000000 */ nop +/* 008918 80007D18 1500003F */ bnez $t0, .L80007E18 +/* 00891C 80007D1C 8FAC00CC */ lw $t4, 0xcc($sp) +/* 008920 80007D20 954C0000 */ lhu $t4, ($t2) +/* 008924 80007D24 24060014 */ li $a2, 20 +/* 008928 80007D28 1180003A */ beqz $t4, .L80007E14 +/* 00892C 80007D2C 03C02025 */ move $a0, $fp +/* 008930 80007D30 3C138012 */ lui $s3, %hi(D_80119C30) # $s3, 0x8012 +/* 008934 80007D34 91450088 */ lbu $a1, 0x88($t2) +/* 008938 80007D38 26739C30 */ addiu $s3, %lo(D_80119C30) # addiu $s3, $s3, -0x63d0 +/* 00893C 80007D3C 00001825 */ move $v1, $zero +.L80007D40: +/* 008940 80007D40 8E710000 */ lw $s1, ($s3) +/* 008944 80007D44 28A10009 */ slti $at, $a1, 9 +/* 008948 80007D48 1220000E */ beqz $s1, .L80007D84 +/* 00894C 80007D4C 00000000 */ nop +/* 008950 80007D50 922D0088 */ lbu $t5, 0x88($s1) +/* 008954 80007D54 00000000 */ nop +/* 008958 80007D58 00AD1023 */ subu $v0, $a1, $t5 +/* 00895C 80007D5C 00C2082A */ slt $at, $a2, $v0 +/* 008960 80007D60 1020000B */ beqz $at, .L80007D90 +/* 008964 80007D64 00000000 */ nop +/* 008968 80007D68 8CEB0000 */ lw $t3, ($a3) +/* 00896C 80007D6C 00000000 */ nop +/* 008970 80007D70 15600007 */ bnez $t3, .L80007D90 +/* 008974 80007D74 00000000 */ nop +/* 008978 80007D78 00602025 */ move $a0, $v1 +/* 00897C 80007D7C 10000004 */ b .L80007D90 +/* 008980 80007D80 00403025 */ move $a2, $v0 +.L80007D84: +/* 008984 80007D84 14200002 */ bnez $at, .L80007D90 +/* 008988 80007D88 00000000 */ nop +/* 00898C 80007D8C 00602025 */ move $a0, $v1 +.L80007D90: +/* 008990 80007D90 24630001 */ addiu $v1, $v1, 1 +/* 008994 80007D94 1476FFEA */ bne $v1, $s6, .L80007D40 +/* 008998 80007D98 26730004 */ addiu $s3, $s3, 4 +/* 00899C 80007D9C 109E001D */ beq $a0, $fp, .L80007E14 +/* 0089A0 80007DA0 00047080 */ sll $t6, $a0, 2 +/* 0089A4 80007DA4 3C0F8012 */ lui $t7, %hi(D_80119C30) # $t7, 0x8012 +/* 0089A8 80007DA8 25EF9C30 */ addiu $t7, %lo(D_80119C30) # addiu $t7, $t7, -0x63d0 +/* 0089AC 80007DAC A2170074 */ sb $s7, 0x74($s0) +/* 0089B0 80007DB0 01CF8821 */ addu $s1, $t6, $t7 +/* 0089B4 80007DB4 8E220000 */ lw $v0, ($s1) +/* 0089B8 80007DB8 00000000 */ nop +/* 0089BC 80007DBC 10400012 */ beqz $v0, .L80007E08 +/* 0089C0 80007DC0 00000000 */ nop +/* 0089C4 80007DC4 8C440048 */ lw $a0, 0x48($v0) +/* 0089C8 80007DC8 00000000 */ nop +/* 0089CC 80007DCC 1080000C */ beqz $a0, .L80007E00 +/* 0089D0 80007DD0 240A003C */ li $t2, 60 +/* 0089D4 80007DD4 0C001223 */ jal func_8000488C +/* 0089D8 80007DD8 00000000 */ nop +/* 0089DC 80007DDC 8E380000 */ lw $t8, ($s1) +/* 0089E0 80007DE0 24190001 */ li $t9, 1 +/* 0089E4 80007DE4 AF000048 */ sw $zero, 0x48($t8) +/* 0089E8 80007DE8 8E890000 */ lw $t1, ($s4) +/* 0089EC 80007DEC 3C07800E */ lui $a3, %hi(D_800DC6D4) # $a3, 0x800e +/* 0089F0 80007DF0 A1390074 */ sb $t9, 0x74($t1) +/* 0089F4 80007DF4 8E220000 */ lw $v0, ($s1) +/* 0089F8 80007DF8 24E7C6D4 */ addiu $a3, %lo(D_800DC6D4) # addiu $a3, $a3, -0x392c +/* 0089FC 80007DFC 240A003C */ li $t2, 60 +.L80007E00: +/* 008A00 80007E00 ACEA0000 */ sw $t2, ($a3) +/* 008A04 80007E04 A0400074 */ sb $zero, 0x74($v0) +.L80007E08: +/* 008A08 80007E08 8E880000 */ lw $t0, ($s4) +/* 008A0C 80007E0C 00000000 */ nop +/* 008A10 80007E10 AE280000 */ sw $t0, ($s1) +.L80007E14: +/* 008A14 80007E14 8FAC00CC */ lw $t4, 0xcc($sp) +.L80007E18: +/* 008A18 80007E18 26B50001 */ addiu $s5, $s5, 1 +/* 008A1C 80007E1C 16ACFFB1 */ bne $s5, $t4, .L80007CE4 +/* 008A20 80007E20 26520004 */ addiu $s2, $s2, 4 +.L80007E24: +/* 008A24 80007E24 0C0044E7 */ jal func_8001139C +/* 008A28 80007E28 24170002 */ li $s7, 2 +/* 008A2C 80007E2C 1C40003A */ bgtz $v0, .L80007F18 +/* 008A30 80007E30 3C138012 */ lui $s3, %hi(D_80119C30) # $s3, 0x8012 +/* 008A34 80007E34 3C108012 */ lui $s0, %hi(D_80119C38) # $s0, 0x8012 +/* 008A38 80007E38 26109C38 */ addiu $s0, %lo(D_80119C38) # addiu $s0, $s0, -0x63c8 +/* 008A3C 80007E3C 26739C30 */ addiu $s3, %lo(D_80119C30) # addiu $s3, $s3, -0x63d0 +.L80007E40: +/* 008A40 80007E40 8E710000 */ lw $s1, ($s3) +/* 008A44 80007E44 00000000 */ nop +/* 008A48 80007E48 12200030 */ beqz $s1, .L80007F0C +/* 008A4C 80007E4C 00000000 */ nop +/* 008A50 80007E50 96260000 */ lhu $a2, ($s1) +/* 008A54 80007E54 00000000 */ nop +/* 008A58 80007E58 10C0002C */ beqz $a2, .L80007F0C +/* 008A5C 80007E5C 00000000 */ nop +/* 008A60 80007E60 922D0074 */ lbu $t5, 0x74($s1) +/* 008A64 80007E64 24010001 */ li $at, 1 +/* 008A68 80007E68 15A10003 */ bne $t5, $at, .L80007E78 +/* 008A6C 80007E6C 00000000 */ nop +/* 008A70 80007E70 10000026 */ b .L80007F0C +/* 008A74 80007E74 A2370074 */ sb $s7, 0x74($s1) +.L80007E78: +/* 008A78 80007E78 8E240048 */ lw $a0, 0x48($s1) +/* 008A7C 80007E7C 26250048 */ addiu $a1, $s1, 0x48 +/* 008A80 80007E80 14800005 */ bnez $a0, .L80007E98 +/* 008A84 80007E84 00000000 */ nop +/* 008A88 80007E88 0C0007C5 */ jal func_80001F14 +/* 008A8C 80007E8C 30C4FFFF */ andi $a0, $a2, 0xffff +/* 008A90 80007E90 8E240048 */ lw $a0, 0x48($s1) +/* 008A94 80007E94 00000000 */ nop +.L80007E98: +/* 008A98 80007E98 1080001C */ beqz $a0, .L80007F0C +/* 008A9C 80007E9C 00000000 */ nop +/* 008AA0 80007EA0 8E250078 */ lw $a1, 0x78($s1) +/* 008AA4 80007EA4 8E26007C */ lw $a2, 0x7c($s1) +/* 008AA8 80007EA8 8E270080 */ lw $a3, 0x80($s1) +/* 008AAC 80007EAC 0C0026DF */ jal func_80009B7C +/* 008AB0 80007EB0 00000000 */ nop +/* 008AB4 80007EB4 92260088 */ lbu $a2, 0x88($s1) +/* 008AB8 80007EB8 8E240048 */ lw $a0, 0x48($s1) +/* 008ABC 80007EBC 00065A00 */ sll $t3, $a2, 8 +/* 008AC0 80007EC0 01603025 */ move $a2, $t3 +/* 008AC4 80007EC4 0C00127E */ jal func_800049F8 +/* 008AC8 80007EC8 24050008 */ li $a1, 8 +/* 008ACC 80007ECC 8E240048 */ lw $a0, 0x48($s1) +/* 008AD0 80007ED0 8E26008C */ lw $a2, 0x8c($s1) +/* 008AD4 80007ED4 0C00127E */ jal func_800049F8 +/* 008AD8 80007ED8 24050010 */ li $a1, 16 +/* 008ADC 80007EDC 8FAE007C */ lw $t6, 0x7c($sp) +/* 008AE0 80007EE0 24010001 */ li $at, 1 +/* 008AE4 80007EE4 11C10002 */ beq $t6, $at, .L80007EF0 +/* 008AE8 80007EE8 240F0040 */ li $t7, 64 +/* 008AEC 80007EEC A22F0091 */ sb $t7, 0x91($s1) +.L80007EF0: +/* 008AF0 80007EF0 8E240048 */ lw $a0, 0x48($s1) +/* 008AF4 80007EF4 92260091 */ lbu $a2, 0x91($s1) +/* 008AF8 80007EF8 0C00127E */ jal func_800049F8 +/* 008AFC 80007EFC 24050004 */ li $a1, 4 +/* 008B00 80007F00 8E240048 */ lw $a0, 0x48($s1) +/* 008B04 80007F04 0C001181 */ jal func_80004604 +/* 008B08 80007F08 24050046 */ li $a1, 70 +.L80007F0C: +/* 008B0C 80007F0C 26730004 */ addiu $s3, $s3, 4 +/* 008B10 80007F10 1670FFCB */ bne $s3, $s0, .L80007E40 +/* 008B14 80007F14 00000000 */ nop +.L80007F18: +/* 008B18 80007F18 8FBF006C */ lw $ra, 0x6c($sp) +/* 008B1C 80007F1C C7B50018 */ lwc1 $f21, 0x18($sp) +/* 008B20 80007F20 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 008B24 80007F24 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 008B28 80007F28 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 008B2C 80007F2C C7B90028 */ lwc1 $f25, 0x28($sp) +/* 008B30 80007F30 C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 008B34 80007F34 C7BB0030 */ lwc1 $f27, 0x30($sp) +/* 008B38 80007F38 C7BA0034 */ lwc1 $f26, 0x34($sp) +/* 008B3C 80007F3C C7BD0038 */ lwc1 $f29, 0x38($sp) +/* 008B40 80007F40 C7BC003C */ lwc1 $f28, 0x3c($sp) +/* 008B44 80007F44 C7BF0040 */ lwc1 $f31, 0x40($sp) +/* 008B48 80007F48 C7BE0044 */ lwc1 $f30, 0x44($sp) +/* 008B4C 80007F4C 8FB00048 */ lw $s0, 0x48($sp) +/* 008B50 80007F50 8FB1004C */ lw $s1, 0x4c($sp) +/* 008B54 80007F54 8FB20050 */ lw $s2, 0x50($sp) +/* 008B58 80007F58 8FB30054 */ lw $s3, 0x54($sp) +/* 008B5C 80007F5C 8FB40058 */ lw $s4, 0x58($sp) +/* 008B60 80007F60 8FB5005C */ lw $s5, 0x5c($sp) +/* 008B64 80007F64 8FB60060 */ lw $s6, 0x60($sp) +/* 008B68 80007F68 8FB70064 */ lw $s7, 0x64($sp) +/* 008B6C 80007F6C 8FBE0068 */ lw $fp, 0x68($sp) +/* 008B70 80007F70 03E00008 */ jr $ra +/* 008B74 80007F74 27BD00C8 */ addiu $sp, $sp, 0xc8 + +/* 008B78 80007F78 240E0001 */ li $t6, 1 +/* 008B7C 80007F7C 3C01800E */ lui $at, 0x800e +/* 008B80 80007F80 03E00008 */ jr $ra +/* 008B84 80007F84 A02EC6D0 */ sb $t6, -0x3930($at) + +/* 008B88 80007F88 3C01800E */ lui $at, 0x800e +/* 008B8C 80007F8C 03E00008 */ jr $ra +/* 008B90 80007F90 A020C6D0 */ sb $zero, -0x3930($at) + +/* 008B94 80007F94 3C02800E */ lui $v0, %hi(D_800DC6D0) # $v0, 0x800e +/* 008B98 80007F98 9042C6D0 */ lbu $v0, %lo(D_800DC6D0)($v0) +/* 008B9C 80007F9C 03E00008 */ jr $ra +/* 008BA0 80007FA0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80007FA4.s b/asm/non_matchings/unknown_005740/func_80007FA4.s new file mode 100644 index 00000000..0424bf4f --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80007FA4.s @@ -0,0 +1,43 @@ +glabel func_80007FA4 +/* 008BA4 80007FA4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 008BA8 80007FA8 44818000 */ mtc1 $at, $f16 +/* 008BAC 80007FAC 3C01800E */ lui $at, %hi(D_800E4CFC) # $at, 0x800e +/* 008BB0 80007FB0 46106101 */ sub.s $f4, $f12, $f16 +/* 008BB4 80007FB4 C4334CF8 */ lwc1 $f19, %lo(D_800E4CF8)($at) +/* 008BB8 80007FB8 460C8180 */ add.s $f6, $f16, $f12 +/* 008BBC 80007FBC C4324CFC */ lwc1 $f18, %lo(D_800E4CFC)($at) +/* 008BC0 80007FC0 46062303 */ div.s $f12, $f4, $f6 +/* 008BC4 80007FC4 3C01BF80 */ li $at, 0xBF800000 # -1.000000 +/* 008BC8 80007FC8 44801000 */ mtc1 $zero, $f2 +/* 008BCC 80007FCC 44814000 */ mtc1 $at, $f8 +/* 008BD0 80007FD0 24020001 */ li $v0, 1 +/* 008BD4 80007FD4 46081281 */ sub.s $f10, $f2, $f8 +/* 008BD8 80007FD8 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 008BDC 80007FDC 46005121 */ cvt.d.s $f4, $f10 +/* 008BE0 80007FE0 4624903C */ c.lt.d $f18, $f4 +/* 008BE4 80007FE4 00000000 */ nop +/* 008BE8 80007FE8 45000010 */ bc1f .L8000802C +/* 008BEC 80007FEC 46006386 */ mov.s $f14, $f12 +/* 008BF0 80007FF0 460C6402 */ mul.s $f16, $f12, $f12 +/* 008BF4 80007FF4 00000000 */ nop +.L80007FF8: +/* 008BF8 80007FF8 44823000 */ mtc1 $v0, $f6 +/* 008BFC 80007FFC 46001006 */ mov.s $f0, $f2 +/* 008C00 80008000 46803220 */ cvt.s.w $f8, $f6 +/* 008C04 80008004 24420002 */ addiu $v0, $v0, 2 +/* 008C08 80008008 46087283 */ div.s $f10, $f14, $f8 +/* 008C0C 8000800C 46107382 */ mul.s $f14, $f14, $f16 +/* 008C10 80008010 460A1080 */ add.s $f2, $f2, $f10 +/* 008C14 80008014 46001101 */ sub.s $f4, $f2, $f0 +/* 008C18 80008018 460021A1 */ cvt.d.s $f6, $f4 +/* 008C1C 8000801C 4626903C */ c.lt.d $f18, $f6 +/* 008C20 80008020 00000000 */ nop +/* 008C24 80008024 4501FFF4 */ bc1t .L80007FF8 +/* 008C28 80008028 00000000 */ nop +.L8000802C: +/* 008C2C 8000802C 44814000 */ mtc1 $at, $f8 +/* 008C30 80008030 00000000 */ nop +/* 008C34 80008034 46081002 */ mul.s $f0, $f2, $f8 +/* 008C38 80008038 03E00008 */ jr $ra +/* 008C3C 8000803C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80008040.s b/asm/non_matchings/unknown_005740/func_80008040.s new file mode 100644 index 00000000..0fa50579 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80008040.s @@ -0,0 +1,68 @@ +glabel func_80008040 +/* 008C40 80008040 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 008C44 80008044 AFBF0014 */ sw $ra, 0x14($sp) +/* 008C48 80008048 3C048012 */ lui $a0, %hi(D_80119C40) # $a0, 0x8012 +/* 008C4C 8000804C 24849C40 */ addiu $a0, %lo(D_80119C40) # addiu $a0, $a0, -0x63c0 +/* 008C50 80008050 00002825 */ move $a1, $zero +/* 008C54 80008054 0C00084A */ jal func_80002128 +/* 008C58 80008058 00003025 */ move $a2, $zero +/* 008C5C 8000805C 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff +/* 008C60 80008060 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 008C64 80008064 0C01C327 */ jal func_80070C9C +/* 008C68 80008068 240405A0 */ li $a0, 1440 +/* 008C6C 8000806C 3C068012 */ lui $a2, %hi(D_80119C48) # $a2, 0x8012 +/* 008C70 80008070 24C69C48 */ addiu $a2, %lo(D_80119C48) # addiu $a2, $a2, -0x63b8 +/* 008C74 80008074 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff +/* 008C78 80008078 ACC20000 */ sw $v0, ($a2) +/* 008C7C 8000807C 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 008C80 80008080 0C01C327 */ jal func_80070C9C +/* 008C84 80008084 240400A0 */ li $a0, 160 +/* 008C88 80008088 3C018012 */ lui $at, %hi(D_80119C50) # $at, 0x8012 +/* 008C8C 8000808C 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff +/* 008C90 80008090 AC229C50 */ sw $v0, %lo(D_80119C50)($at) +/* 008C94 80008094 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff +/* 008C98 80008098 0C01C327 */ jal func_80070C9C +/* 008C9C 8000809C 240400A0 */ li $a0, 160 +/* 008CA0 800080A0 3C018012 */ lui $at, %hi(D_80119C44) # $at, 0x8012 +/* 008CA4 800080A4 AC229C44 */ sw $v0, %lo(D_80119C44)($at) +/* 008CA8 800080A8 3C068012 */ lui $a2, %hi(D_80119C48) # $a2, 0x8012 +/* 008CAC 800080AC 3C01800E */ lui $at, %hi(D_800DC6E0) # $at, 0x800e +/* 008CB0 800080B0 3C028012 */ lui $v0, %hi(D_8011A6D8) # $v0, 0x8012 +/* 008CB4 800080B4 3C038012 */ lui $v1, %hi(D_80119C58) # $v1, 0x8012 +/* 008CB8 800080B8 24C69C48 */ addiu $a2, %lo(D_80119C48) # addiu $a2, $a2, -0x63b8 +/* 008CBC 800080BC A420C6E0 */ sh $zero, %lo(D_800DC6E0)($at) +/* 008CC0 800080C0 24639C58 */ addiu $v1, %lo(D_80119C58) # addiu $v1, $v1, -0x63a8 +/* 008CC4 800080C4 2442A6D8 */ addiu $v0, %lo(D_8011A6D8) # addiu $v0, $v0, -0x5928 +.L800080C8: +/* 008CC8 800080C8 24630180 */ addiu $v1, $v1, 0x180 +/* 008CCC 800080CC 0062082B */ sltu $at, $v1, $v0 +/* 008CD0 800080D0 1420FFFD */ bnez $at, .L800080C8 +/* 008CD4 800080D4 AC60FFF8 */ sw $zero, -8($v1) +/* 008CD8 800080D8 00001025 */ move $v0, $zero +/* 008CDC 800080DC 240305A0 */ li $v1, 1440 +.L800080E0: +/* 008CE0 800080E0 8CCE0000 */ lw $t6, ($a2) +/* 008CE4 800080E4 00000000 */ nop +/* 008CE8 800080E8 01C27821 */ addu $t7, $t6, $v0 +/* 008CEC 800080EC ADE00018 */ sw $zero, 0x18($t7) +/* 008CF0 800080F0 8CD80000 */ lw $t8, ($a2) +/* 008CF4 800080F4 00000000 */ nop +/* 008CF8 800080F8 0302C821 */ addu $t9, $t8, $v0 +/* 008CFC 800080FC AF20003C */ sw $zero, 0x3c($t9) +/* 008D00 80008100 8CC80000 */ lw $t0, ($a2) +/* 008D04 80008104 00000000 */ nop +/* 008D08 80008108 01024821 */ addu $t1, $t0, $v0 +/* 008D0C 8000810C AD200060 */ sw $zero, 0x60($t1) +/* 008D10 80008110 8CCA0000 */ lw $t2, ($a2) +/* 008D14 80008114 00000000 */ nop +/* 008D18 80008118 01425821 */ addu $t3, $t2, $v0 +/* 008D1C 8000811C 24420090 */ addiu $v0, $v0, 0x90 +/* 008D20 80008120 1443FFEF */ bne $v0, $v1, .L800080E0 +/* 008D24 80008124 AD600084 */ sw $zero, 0x84($t3) +/* 008D28 80008128 0C00205D */ jal func_80008174 +/* 008D2C 8000812C 00000000 */ nop +/* 008D30 80008130 8FBF0014 */ lw $ra, 0x14($sp) +/* 008D34 80008134 27BD0018 */ addiu $sp, $sp, 0x18 +/* 008D38 80008138 03E00008 */ jr $ra +/* 008D3C 8000813C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80008140.s b/asm/non_matchings/unknown_005740/func_80008140.s new file mode 100644 index 00000000..751cca37 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80008140.s @@ -0,0 +1,12 @@ +glabel func_80008140 +/* 008D40 80008140 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 008D44 80008144 AFBF0014 */ sw $ra, 0x14($sp) +/* 008D48 80008148 0C000638 */ jal func_800018E0 +/* 008D4C 8000814C 00000000 */ nop +/* 008D50 80008150 8FBF0014 */ lw $ra, 0x14($sp) +/* 008D54 80008154 240E0001 */ li $t6, 1 +/* 008D58 80008158 3C018012 */ lui $at, %hi(D_8011AC18) # $at, 0x8012 +/* 008D5C 8000815C A02EAC18 */ sb $t6, %lo(D_8011AC18)($at) +/* 008D60 80008160 03E00008 */ jr $ra +/* 008D64 80008164 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_005740/func_80008168.s b/asm/non_matchings/unknown_005740/func_80008168.s new file mode 100644 index 00000000..76bdc7b1 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80008168.s @@ -0,0 +1,5 @@ +glabel func_80008168 +/* 008D68 80008168 3C018012 */ lui $at, 0x8012 +/* 008D6C 8000816C 03E00008 */ jr $ra +/* 008D70 80008170 A020AC18 */ sb $zero, -0x53e8($at) + diff --git a/asm/non_matchings/unknown_005740/func_80008174.s b/asm/non_matchings/unknown_005740/func_80008174.s new file mode 100644 index 00000000..65187b3d --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80008174.s @@ -0,0 +1,191 @@ +glabel func_80008174 +/* 008D74 80008174 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 008D78 80008178 3C038012 */ lui $v1, %hi(D_80119C4C) # $v1, 0x8012 +/* 008D7C 8000817C 3C048012 */ lui $a0, %hi(D_80119C48) # $a0, 0x8012 +/* 008D80 80008180 300200FF */ andi $v0, $zero, 0xff +/* 008D84 80008184 24639C4C */ addiu $v1, %lo(D_80119C4C) # addiu $v1, $v1, -0x63b4 +/* 008D88 80008188 8C849C48 */ lw $a0, %lo(D_80119C48)($a0) +/* 008D8C 8000818C 28410028 */ slti $at, $v0, 0x28 +/* 008D90 80008190 AFBF003C */ sw $ra, 0x3c($sp) +/* 008D94 80008194 AFB60038 */ sw $s6, 0x38($sp) +/* 008D98 80008198 AFB50034 */ sw $s5, 0x34($sp) +/* 008D9C 8000819C AFB40030 */ sw $s4, 0x30($sp) +/* 008DA0 800081A0 AFB3002C */ sw $s3, 0x2c($sp) +/* 008DA4 800081A4 AFB20028 */ sw $s2, 0x28($sp) +/* 008DA8 800081A8 AFB10024 */ sw $s1, 0x24($sp) +/* 008DAC 800081AC AFB00020 */ sw $s0, 0x20($sp) +/* 008DB0 800081B0 E7B50018 */ swc1 $f21, 0x18($sp) +/* 008DB4 800081B4 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 008DB8 800081B8 1020000E */ beqz $at, .L800081F4 +/* 008DBC 800081BC A0600000 */ sb $zero, ($v1) +/* 008DC0 800081C0 3C058012 */ lui $a1, %hi(D_80119C50) # $a1, 0x8012 +/* 008DC4 800081C4 24A59C50 */ addiu $a1, %lo(D_80119C50) # addiu $a1, $a1, -0x63b0 +.L800081C8: +/* 008DC8 800081C8 8CAE0000 */ lw $t6, ($a1) +/* 008DCC 800081CC 00027880 */ sll $t7, $v0, 2 +/* 008DD0 800081D0 01CFC021 */ addu $t8, $t6, $t7 +/* 008DD4 800081D4 AF040000 */ sw $a0, ($t8) +/* 008DD8 800081D8 90790000 */ lbu $t9, ($v1) +/* 008DDC 800081DC 24840024 */ addiu $a0, $a0, 0x24 +/* 008DE0 800081E0 27290001 */ addiu $t1, $t9, 1 +/* 008DE4 800081E4 312200FF */ andi $v0, $t1, 0xff +/* 008DE8 800081E8 28410028 */ slti $at, $v0, 0x28 +/* 008DEC 800081EC 1420FFF6 */ bnez $at, .L800081C8 +/* 008DF0 800081F0 A0690000 */ sb $t1, ($v1) +.L800081F4: +/* 008DF4 800081F4 3C14800E */ lui $s4, %hi(D_800DC6E0) # $s4, 0x800e +/* 008DF8 800081F8 2694C6E0 */ addiu $s4, %lo(D_800DC6E0) # addiu $s4, $s4, -0x3920 +/* 008DFC 800081FC 968B0000 */ lhu $t3, ($s4) +/* 008E00 80008200 244AFFFF */ addiu $t2, $v0, -1 +/* 008E04 80008204 A06A0000 */ sb $t2, ($v1) +/* 008E08 80008208 19600014 */ blez $t3, .L8000825C +/* 008E0C 8000820C 00008825 */ move $s1, $zero +/* 008E10 80008210 3C128012 */ lui $s2, %hi(D_80119C44) # $s2, 0x8012 +/* 008E14 80008214 26529C44 */ addiu $s2, %lo(D_80119C44) # addiu $s2, $s2, -0x63bc +/* 008E18 80008218 00008025 */ move $s0, $zero +.L8000821C: +/* 008E1C 8000821C 8E4C0000 */ lw $t4, ($s2) +/* 008E20 80008220 00000000 */ nop +/* 008E24 80008224 01906821 */ addu $t5, $t4, $s0 +/* 008E28 80008228 8DA20000 */ lw $v0, ($t5) +/* 008E2C 8000822C 00000000 */ nop +/* 008E30 80008230 8C440018 */ lw $a0, 0x18($v0) +/* 008E34 80008234 A0400012 */ sb $zero, 0x12($v0) +/* 008E38 80008238 10800003 */ beqz $a0, .L80008248 +/* 008E3C 8000823C 00000000 */ nop +/* 008E40 80008240 0C001223 */ jal func_8000488C +/* 008E44 80008244 00000000 */ nop +.L80008248: +/* 008E48 80008248 968E0000 */ lhu $t6, ($s4) +/* 008E4C 8000824C 26310001 */ addiu $s1, $s1, 1 +/* 008E50 80008250 022E082A */ slt $at, $s1, $t6 +/* 008E54 80008254 1420FFF1 */ bnez $at, .L8000821C +/* 008E58 80008258 26100004 */ addiu $s0, $s0, 4 +.L8000825C: +/* 008E5C 8000825C A6800000 */ sh $zero, ($s4) +/* 008E60 80008260 3C01800E */ lui $at, %hi(D_800E4F10) # $at, 0x800e +/* 008E64 80008264 3C118012 */ lui $s1, %hi(D_80119C58) # $s1, 0x8012 +/* 008E68 80008268 3C128012 */ lui $s2, %hi(D_80119C5C) # $s2, 0x8012 +/* 008E6C 8000826C 3C138012 */ lui $s3, %hi(D_80119C60) # $s3, 0x8012 +/* 008E70 80008270 3C158012 */ lui $s5, %hi(D_8011A6E0) # $s5, 0x8012 +/* 008E74 80008274 C4344F10 */ lwc1 $f20, %lo(D_800E4F10)($at) +/* 008E78 80008278 26B5A6E0 */ addiu $s5, %lo(D_8011A6E0) # addiu $s5, $s5, -0x5920 +/* 008E7C 8000827C 26739C60 */ addiu $s3, %lo(D_80119C60) # addiu $s3, $s3, -0x63a0 +/* 008E80 80008280 26529C5C */ addiu $s2, %lo(D_80119C5C) # addiu $s2, $s2, -0x63a4 +/* 008E84 80008284 26319C58 */ addiu $s1, %lo(D_80119C58) # addiu $s1, $s1, -0x63a8 +/* 008E88 80008288 2414FFFF */ li $s4, -1 +/* 008E8C 8000828C 24160001 */ li $s6, 1 +/* 008E90 80008290 2410001E */ li $s0, 30 +.L80008294: +/* 008E94 80008294 8E240178 */ lw $a0, 0x178($s1) +/* 008E98 80008298 AE20016C */ sw $zero, 0x16c($s1) +/* 008E9C 8000829C 1080000E */ beqz $a0, .L800082D8 +/* 008EA0 800082A0 00000000 */ nop +/* 008EA4 800082A4 92220000 */ lbu $v0, ($s1) +/* 008EA8 800082A8 00000000 */ nop +/* 008EAC 800082AC 14400005 */ bnez $v0, .L800082C4 +/* 008EB0 800082B0 00000000 */ nop +/* 008EB4 800082B4 0C001223 */ jal func_8000488C +/* 008EB8 800082B8 00000000 */ nop +/* 008EBC 800082BC 10000006 */ b .L800082D8 +/* 008EC0 800082C0 AE200178 */ sw $zero, 0x178($s1) +.L800082C4: +/* 008EC4 800082C4 16C20003 */ bne $s6, $v0, .L800082D4 +/* 008EC8 800082C8 00000000 */ nop +/* 008ECC 800082CC 0C000638 */ jal func_800018E0 +/* 008ED0 800082D0 00000000 */ nop +.L800082D4: +/* 008ED4 800082D4 AE200178 */ sw $zero, 0x178($s1) +.L800082D8: +/* 008ED8 800082D8 A234017C */ sb $s4, 0x17c($s1) +/* 008EDC 800082DC E6540000 */ swc1 $f20, ($s2) +/* 008EE0 800082E0 02601025 */ move $v0, $s3 +/* 008EE4 800082E4 E6740000 */ swc1 $f20, ($s3) +/* 008EE8 800082E8 E4540010 */ swc1 $f20, 0x10($v0) +/* 008EEC 800082EC E454000C */ swc1 $f20, 0xc($v0) +/* 008EF0 800082F0 E4540008 */ swc1 $f20, 8($v0) +/* 008EF4 800082F4 E4540004 */ swc1 $f20, 4($v0) +/* 008EF8 800082F8 24420014 */ addiu $v0, $v0, 0x14 +/* 008EFC 800082FC 24030002 */ li $v1, 2 +.L80008300: +/* 008F00 80008300 24630004 */ addiu $v1, $v1, 4 +/* 008F04 80008304 E454000C */ swc1 $f20, 0xc($v0) +/* 008F08 80008308 E4540010 */ swc1 $f20, 0x10($v0) +/* 008F0C 8000830C E4540014 */ swc1 $f20, 0x14($v0) +/* 008F10 80008310 E4540018 */ swc1 $f20, 0x18($v0) +/* 008F14 80008314 E454001C */ swc1 $f20, 0x1c($v0) +/* 008F18 80008318 E4540020 */ swc1 $f20, 0x20($v0) +/* 008F1C 8000831C E4540024 */ swc1 $f20, 0x24($v0) +/* 008F20 80008320 E4540028 */ swc1 $f20, 0x28($v0) +/* 008F24 80008324 E454002C */ swc1 $f20, 0x2c($v0) +/* 008F28 80008328 24420030 */ addiu $v0, $v0, 0x30 +/* 008F2C 8000832C E454FFD0 */ swc1 $f20, -0x30($v0) +/* 008F30 80008330 E454FFD4 */ swc1 $f20, -0x2c($v0) +/* 008F34 80008334 1470FFF2 */ bne $v1, $s0, .L80008300 +/* 008F38 80008338 E454FFD8 */ swc1 $f20, -0x28($v0) +/* 008F3C 8000833C 26730180 */ addiu $s3, $s3, 0x180 +/* 008F40 80008340 0275082B */ sltu $at, $s3, $s5 +/* 008F44 80008344 26310180 */ addiu $s1, $s1, 0x180 +/* 008F48 80008348 1420FFD2 */ bnez $at, .L80008294 +/* 008F4C 8000834C 26520180 */ addiu $s2, $s2, 0x180 +/* 008F50 80008350 3C058012 */ lui $a1, %hi(D_8011A6D8) # $a1, 0x8012 +/* 008F54 80008354 3C068012 */ lui $a2, %hi(D_8011A6DC) # $a2, 0x8012 +/* 008F58 80008358 3C078012 */ lui $a3, %hi(D_8011A6E0) # $a3, 0x8012 +/* 008F5C 8000835C 3C088012 */ lui $t0, %hi(D_8011AC20) # $t0, 0x8012 +/* 008F60 80008360 44800000 */ mtc1 $zero, $f0 +/* 008F64 80008364 2508AC20 */ addiu $t0, %lo(D_8011AC20) # addiu $t0, $t0, -0x53e0 +/* 008F68 80008368 24E7A6E0 */ addiu $a3, %lo(D_8011A6E0) # addiu $a3, $a3, -0x5920 +/* 008F6C 8000836C 24C6A6DC */ addiu $a2, %lo(D_8011A6DC) # addiu $a2, $a2, -0x5924 +/* 008F70 80008370 24A5A6D8 */ addiu $a1, %lo(D_8011A6D8) # addiu $a1, $a1, -0x5928 +/* 008F74 80008374 2404000F */ li $a0, 15 +.L80008378: +/* 008F78 80008378 A0B400B8 */ sb $s4, 0xb8($a1) +/* 008F7C 8000837C A0A00000 */ sb $zero, ($a1) +/* 008F80 80008380 E4A000BC */ swc1 $f0, 0xbc($a1) +/* 008F84 80008384 E4D40000 */ swc1 $f20, ($a2) +/* 008F88 80008388 00E01025 */ move $v0, $a3 +/* 008F8C 8000838C E4F40000 */ swc1 $f20, ($a3) +/* 008F90 80008390 E454001C */ swc1 $f20, 0x1c($v0) +/* 008F94 80008394 E4540018 */ swc1 $f20, 0x18($v0) +/* 008F98 80008398 E4540014 */ swc1 $f20, 0x14($v0) +/* 008F9C 8000839C E4540010 */ swc1 $f20, 0x10($v0) +/* 008FA0 800083A0 E454000C */ swc1 $f20, 0xc($v0) +/* 008FA4 800083A4 E4540008 */ swc1 $f20, 8($v0) +/* 008FA8 800083A8 E4540004 */ swc1 $f20, 4($v0) +/* 008FAC 800083AC 24420020 */ addiu $v0, $v0, 0x20 +/* 008FB0 800083B0 24030003 */ li $v1, 3 +.L800083B4: +/* 008FB4 800083B4 24630004 */ addiu $v1, $v1, 4 +/* 008FB8 800083B8 E454000C */ swc1 $f20, 0xc($v0) +/* 008FBC 800083BC E4540010 */ swc1 $f20, 0x10($v0) +/* 008FC0 800083C0 E4540014 */ swc1 $f20, 0x14($v0) +/* 008FC4 800083C4 E4540018 */ swc1 $f20, 0x18($v0) +/* 008FC8 800083C8 E454001C */ swc1 $f20, 0x1c($v0) +/* 008FCC 800083CC E4540020 */ swc1 $f20, 0x20($v0) +/* 008FD0 800083D0 E4540024 */ swc1 $f20, 0x24($v0) +/* 008FD4 800083D4 E4540028 */ swc1 $f20, 0x28($v0) +/* 008FD8 800083D8 E454002C */ swc1 $f20, 0x2c($v0) +/* 008FDC 800083DC 24420030 */ addiu $v0, $v0, 0x30 +/* 008FE0 800083E0 E454FFD0 */ swc1 $f20, -0x30($v0) +/* 008FE4 800083E4 E454FFD4 */ swc1 $f20, -0x2c($v0) +/* 008FE8 800083E8 1464FFF2 */ bne $v1, $a0, .L800083B4 +/* 008FEC 800083EC E454FFD8 */ swc1 $f20, -0x28($v0) +/* 008FF0 800083F0 24E700C0 */ addiu $a3, $a3, 0xc0 +/* 008FF4 800083F4 24A500C0 */ addiu $a1, $a1, 0xc0 +/* 008FF8 800083F8 14E8FFDF */ bne $a3, $t0, .L80008378 +/* 008FFC 800083FC 24C600C0 */ addiu $a2, $a2, 0xc0 +/* 009000 80008400 8FBF003C */ lw $ra, 0x3c($sp) +/* 009004 80008404 3C018012 */ lui $at, %hi(D_8011AC18) # $at, 0x8012 +/* 009008 80008408 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 00900C 8000840C C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 009010 80008410 8FB00020 */ lw $s0, 0x20($sp) +/* 009014 80008414 8FB10024 */ lw $s1, 0x24($sp) +/* 009018 80008418 8FB20028 */ lw $s2, 0x28($sp) +/* 00901C 8000841C 8FB3002C */ lw $s3, 0x2c($sp) +/* 009020 80008420 8FB40030 */ lw $s4, 0x30($sp) +/* 009024 80008424 8FB50034 */ lw $s5, 0x34($sp) +/* 009028 80008428 8FB60038 */ lw $s6, 0x38($sp) +/* 00902C 8000842C A020AC18 */ sb $zero, %lo(D_8011AC18)($at) +/* 009030 80008430 03E00008 */ jr $ra +/* 009034 80008434 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_005740/func_80008438.s b/asm/non_matchings/unknown_005740/func_80008438.s new file mode 100644 index 00000000..c68772ba --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80008438.s @@ -0,0 +1,861 @@ +glabel func_80008438 +/* 009038 80008438 27BDFD98 */ addiu $sp, $sp, -0x268 +/* 00903C 8000843C AFBF006C */ sw $ra, 0x6c($sp) +/* 009040 80008440 AFBE0068 */ sw $fp, 0x68($sp) +/* 009044 80008444 AFB70064 */ sw $s7, 0x64($sp) +/* 009048 80008448 AFB60060 */ sw $s6, 0x60($sp) +/* 00904C 8000844C AFB5005C */ sw $s5, 0x5c($sp) +/* 009050 80008450 AFB40058 */ sw $s4, 0x58($sp) +/* 009054 80008454 AFB30054 */ sw $s3, 0x54($sp) +/* 009058 80008458 AFB20050 */ sw $s2, 0x50($sp) +/* 00905C 8000845C AFB1004C */ sw $s1, 0x4c($sp) +/* 009060 80008460 AFB00048 */ sw $s0, 0x48($sp) +/* 009064 80008464 E7BB0040 */ swc1 $f27, 0x40($sp) +/* 009068 80008468 E7BA0044 */ swc1 $f26, 0x44($sp) +/* 00906C 8000846C E7B90038 */ swc1 $f25, 0x38($sp) +/* 009070 80008470 E7B8003C */ swc1 $f24, 0x3c($sp) +/* 009074 80008474 E7B70030 */ swc1 $f23, 0x30($sp) +/* 009078 80008478 E7B60034 */ swc1 $f22, 0x34($sp) +/* 00907C 8000847C E7B50028 */ swc1 $f21, 0x28($sp) +/* 009080 80008480 E7B4002C */ swc1 $f20, 0x2c($sp) +/* 009084 80008484 AFA40268 */ sw $a0, 0x268($sp) +/* 009088 80008488 AFA5026C */ sw $a1, 0x26c($sp) +/* 00908C 8000848C AFA60270 */ sw $a2, 0x270($sp) +/* 009090 80008490 0C019884 */ jal func_80066210 +/* 009094 80008494 AFA0024C */ sw $zero, 0x24c($sp) +/* 009098 80008498 0C01994B */ jal func_8006652C +/* 00909C 8000849C 00402025 */ move $a0, $v0 +/* 0090A0 800084A0 0C01A75F */ jal func_80069D7C +/* 0090A4 800084A4 AFA200B0 */ sw $v0, 0xb0($sp) +/* 0090A8 800084A8 3C15800E */ lui $s5, %hi(D_800DC6E0) # $s5, 0x800e +/* 0090AC 800084AC 26B5C6E0 */ addiu $s5, %lo(D_800DC6E0) # addiu $s5, $s5, -0x3920 +/* 0090B0 800084B0 96AE0000 */ lhu $t6, ($s5) +/* 0090B4 800084B4 AFA200AC */ sw $v0, 0xac($sp) +/* 0090B8 800084B8 19C00187 */ blez $t6, .L80008AD8 +/* 0090BC 800084BC AFA00260 */ sw $zero, 0x260($sp) +/* 0090C0 800084C0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0090C4 800084C4 3C168012 */ lui $s6, %hi(D_80119C44) # $s6, 0x8012 +/* 0090C8 800084C8 4481D000 */ mtc1 $at, $f26 +/* 0090CC 800084CC 26D69C44 */ addiu $s6, %lo(D_80119C44) # addiu $s6, $s6, -0x63bc +/* 0090D0 800084D0 0000A025 */ move $s4, $zero +/* 0090D4 800084D4 27B700A8 */ addiu $s7, $sp, 0xa8 +/* 0090D8 800084D8 24120001 */ li $s2, 1 +.L800084DC: +/* 0090DC 800084DC 8ECF0000 */ lw $t7, ($s6) +/* 0090E0 800084E0 8FA900B0 */ lw $t1, 0xb0($sp) +/* 0090E4 800084E4 01F4C021 */ addu $t8, $t7, $s4 +/* 0090E8 800084E8 8F110000 */ lw $s1, ($t8) +/* 0090EC 800084EC AFA00254 */ sw $zero, 0x254($sp) +/* 0090F0 800084F0 92390011 */ lbu $t9, 0x11($s1) +/* 0090F4 800084F4 8FAB00B0 */ lw $t3, 0xb0($sp) +/* 0090F8 800084F8 33280002 */ andi $t0, $t9, 2 +/* 0090FC 800084FC 1100006F */ beqz $t0, .L800086BC +/* 009100 80008500 24010001 */ li $at, 1 +/* 009104 80008504 1521016D */ bne $t1, $at, .L80008ABC +/* 009108 80008508 8FA80260 */ lw $t0, 0x260($sp) +/* 00910C 8000850C 8FAA00AC */ lw $t2, 0xac($sp) +/* 009110 80008510 C6240000 */ lwc1 $f4, ($s1) +/* 009114 80008514 C546000C */ lwc1 $f6, 0xc($t2) +/* 009118 80008518 C6280004 */ lwc1 $f8, 4($s1) +/* 00911C 8000851C 46062501 */ sub.s $f20, $f4, $f6 +/* 009120 80008520 C54A0010 */ lwc1 $f10, 0x10($t2) +/* 009124 80008524 4614A102 */ mul.s $f4, $f20, $f20 +/* 009128 80008528 460A4001 */ sub.s $f0, $f8, $f10 +/* 00912C 8000852C C6300008 */ lwc1 $f16, 8($s1) +/* 009130 80008530 C5520014 */ lwc1 $f18, 0x14($t2) +/* 009134 80008534 46000182 */ mul.s $f6, $f0, $f0 +/* 009138 80008538 46128581 */ sub.s $f22, $f16, $f18 +/* 00913C 8000853C 4616B282 */ mul.s $f10, $f22, $f22 +/* 009140 80008540 46062200 */ add.s $f8, $f4, $f6 +/* 009144 80008544 0C0326B4 */ jal sqrtf +/* 009148 80008548 460A4300 */ add.s $f12, $f8, $f10 +/* 00914C 8000854C 444BF800 */ cfc1 $t3, $31 +/* 009150 80008550 8E240014 */ lw $a0, 0x14($s1) +/* 009154 80008554 35610003 */ ori $at, $t3, 3 +/* 009158 80008558 38210002 */ xori $at, $at, 2 +/* 00915C 8000855C 44C1F800 */ ctc1 $at, $31 +/* 009160 80008560 00000000 */ nop +/* 009164 80008564 46000424 */ cvt.w.s $f16, $f0 +/* 009168 80008568 44038000 */ mfc1 $v1, $f16 +/* 00916C 8000856C 44CBF800 */ ctc1 $t3, $31 +/* 009170 80008570 0064082A */ slt $at, $v1, $a0 +/* 009174 80008574 10200049 */ beqz $at, .L8000869C +/* 009178 80008578 0083082A */ slt $at, $a0, $v1 +/* 00917C 8000857C 922C0012 */ lbu $t4, 0x12($s1) +/* 009180 80008580 00000000 */ nop +/* 009184 80008584 15800045 */ bnez $t4, .L8000869C +/* 009188 80008588 0083082A */ slt $at, $a0, $v1 +/* 00918C 8000858C 8E240018 */ lw $a0, 0x18($s1) +/* 009190 80008590 00000000 */ nop +/* 009194 80008594 1480000F */ bnez $a0, .L800085D4 +/* 009198 80008598 00000000 */ nop +/* 00919C 8000859C 922D0022 */ lbu $t5, 0x22($s1) +/* 0091A0 800085A0 00000000 */ nop +/* 0091A4 800085A4 11A00006 */ beqz $t5, .L800085C0 +/* 0091A8 800085A8 00000000 */ nop +/* 0091AC 800085AC 922E0011 */ lbu $t6, 0x11($s1) +/* 0091B0 800085B0 00000000 */ nop +/* 0091B4 800085B4 31CF0004 */ andi $t7, $t6, 4 +/* 0091B8 800085B8 15E00006 */ bnez $t7, .L800085D4 +/* 0091BC 800085BC 00000000 */ nop +.L800085C0: +/* 0091C0 800085C0 9624000C */ lhu $a0, 0xc($s1) +/* 0091C4 800085C4 0C0007C5 */ jal func_80001F14 +/* 0091C8 800085C8 26250018 */ addiu $a1, $s1, 0x18 +/* 0091CC 800085CC 8E240018 */ lw $a0, 0x18($s1) +/* 0091D0 800085D0 A2320022 */ sb $s2, 0x22($s1) +.L800085D4: +/* 0091D4 800085D4 1080002E */ beqz $a0, .L80008690 +/* 0091D8 800085D8 00000000 */ nop +/* 0091DC 800085DC 9238000F */ lbu $t8, 0xf($s1) +/* 0091E0 800085E0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0091E4 800085E4 44989000 */ mtc1 $t8, $f18 +/* 0091E8 800085E8 07010004 */ bgez $t8, .L800085FC +/* 0091EC 800085EC 46809120 */ cvt.s.w $f4, $f18 +/* 0091F0 800085F0 44813000 */ mtc1 $at, $f6 +/* 0091F4 800085F4 00000000 */ nop +/* 0091F8 800085F8 46062100 */ add.s $f4, $f4, $f6 +.L800085FC: +/* 0091FC 800085FC 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 009200 80008600 44814000 */ mtc1 $at, $f8 +/* 009204 80008604 24050008 */ li $a1, 8 +/* 009208 80008608 46082283 */ div.s $f10, $f4, $f8 +/* 00920C 8000860C E7AA00A8 */ swc1 $f10, 0xa8($sp) +/* 009210 80008610 9226000E */ lbu $a2, 0xe($s1) +/* 009214 80008614 8E240018 */ lw $a0, 0x18($s1) +/* 009218 80008618 0006CA00 */ sll $t9, $a2, 8 +/* 00921C 8000861C 0C00127E */ jal func_800049F8 +/* 009220 80008620 03203025 */ move $a2, $t9 +/* 009224 80008624 8E240018 */ lw $a0, 0x18($s1) +/* 009228 80008628 8EE60000 */ lw $a2, ($s7) +/* 00922C 8000862C 0C00127E */ jal func_800049F8 +/* 009230 80008630 24050010 */ li $a1, 16 +/* 009234 80008634 8FA800AC */ lw $t0, 0xac($sp) +/* 009238 80008638 4600A306 */ mov.s $f12, $f20 +/* 00923C 8000863C 85060000 */ lh $a2, ($t0) +/* 009240 80008640 0C002430 */ jal func_800090C0 +/* 009244 80008644 4600B386 */ mov.s $f14, $f22 +/* 009248 80008648 8FA900B0 */ lw $t1, 0xb0($sp) +/* 00924C 8000864C 24010001 */ li $at, 1 +/* 009250 80008650 11210002 */ beq $t1, $at, .L8000865C +/* 009254 80008654 00403025 */ move $a2, $v0 +/* 009258 80008658 24060040 */ li $a2, 64 +.L8000865C: +/* 00925C 8000865C 8E240018 */ lw $a0, 0x18($s1) +/* 009260 80008660 0C00127E */ jal func_800049F8 +/* 009264 80008664 24050004 */ li $a1, 4 +/* 009268 80008668 8E240018 */ lw $a0, 0x18($s1) +/* 00926C 8000866C 8E250000 */ lw $a1, ($s1) +/* 009270 80008670 8E260004 */ lw $a2, 4($s1) +/* 009274 80008674 8E270008 */ lw $a3, 8($s1) +/* 009278 80008678 0C0026DF */ jal func_80009B7C +/* 00927C 8000867C 00000000 */ nop +/* 009280 80008680 8E240018 */ lw $a0, 0x18($s1) +/* 009284 80008684 92250021 */ lbu $a1, 0x21($s1) +/* 009288 80008688 0C001181 */ jal func_80004604 +/* 00928C 8000868C 00000000 */ nop +.L80008690: +/* 009290 80008690 10000109 */ b .L80008AB8 +/* 009294 80008694 A2320012 */ sb $s2, 0x12($s1) +/* 009298 80008698 0083082A */ slt $at, $a0, $v1 +.L8000869C: +/* 00929C 8000869C 10200107 */ beqz $at, .L80008ABC +/* 0092A0 800086A0 8FA80260 */ lw $t0, 0x260($sp) +/* 0092A4 800086A4 922A0012 */ lbu $t2, 0x12($s1) +/* 0092A8 800086A8 00000000 */ nop +/* 0092AC 800086AC 11400103 */ beqz $t2, .L80008ABC +/* 0092B0 800086B0 8FA80260 */ lw $t0, 0x260($sp) +/* 0092B4 800086B4 10000100 */ b .L80008AB8 +/* 0092B8 800086B8 A2200012 */ sb $zero, 0x12($s1) +.L800086BC: +/* 0092BC 800086BC 19600063 */ blez $t3, .L8000884C +/* 0092C0 800086C0 0000F025 */ move $fp, $zero +/* 0092C4 800086C4 8FB300AC */ lw $s3, 0xac($sp) +/* 0092C8 800086C8 00000000 */ nop +.L800086CC: +/* 0092CC 800086CC C6300000 */ lwc1 $f16, ($s1) +/* 0092D0 800086D0 C672000C */ lwc1 $f18, 0xc($s3) +/* 0092D4 800086D4 C6260004 */ lwc1 $f6, 4($s1) +/* 0092D8 800086D8 46128501 */ sub.s $f20, $f16, $f18 +/* 0092DC 800086DC C6640010 */ lwc1 $f4, 0x10($s3) +/* 0092E0 800086E0 4614A402 */ mul.s $f16, $f20, $f20 +/* 0092E4 800086E4 46043001 */ sub.s $f0, $f6, $f4 +/* 0092E8 800086E8 C6280008 */ lwc1 $f8, 8($s1) +/* 0092EC 800086EC C66A0014 */ lwc1 $f10, 0x14($s3) +/* 0092F0 800086F0 46000482 */ mul.s $f18, $f0, $f0 +/* 0092F4 800086F4 460A4581 */ sub.s $f22, $f8, $f10 +/* 0092F8 800086F8 4616B102 */ mul.s $f4, $f22, $f22 +/* 0092FC 800086FC 46128180 */ add.s $f6, $f16, $f18 +/* 009300 80008700 0C0326B4 */ jal sqrtf +/* 009304 80008704 46043300 */ add.s $f12, $f6, $f4 +/* 009308 80008708 444CF800 */ cfc1 $t4, $31 +/* 00930C 8000870C 8E240014 */ lw $a0, 0x14($s1) +/* 009310 80008710 35810003 */ ori $at, $t4, 3 +/* 009314 80008714 38210002 */ xori $at, $at, 2 +/* 009318 80008718 44C1F800 */ ctc1 $at, $31 +/* 00931C 8000871C 8FA90254 */ lw $t1, 0x254($sp) +/* 009320 80008720 46000224 */ cvt.w.s $f8, $f0 +/* 009324 80008724 44034000 */ mfc1 $v1, $f8 +/* 009328 80008728 44CCF800 */ ctc1 $t4, $31 +/* 00932C 8000872C 0064082A */ slt $at, $v1, $a0 +/* 009330 80008730 10200043 */ beqz $at, .L80008840 +/* 009334 80008734 8FAA00B0 */ lw $t2, 0xb0($sp) +/* 009338 80008738 922D0020 */ lbu $t5, 0x20($s1) +/* 00933C 8000873C 0083C023 */ subu $t8, $a0, $v1 +/* 009340 80008740 15A0001B */ bnez $t5, .L800087B0 +/* 009344 80008744 00000000 */ nop +/* 009348 80008748 44835000 */ mtc1 $v1, $f10 +/* 00934C 8000874C 44849000 */ mtc1 $a0, $f18 +/* 009350 80008750 46805420 */ cvt.s.w $f16, $f10 +/* 009354 80008754 922E000E */ lbu $t6, 0xe($s1) +/* 009358 80008758 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 00935C 8000875C 468091A0 */ cvt.s.w $f6, $f18 +/* 009360 80008760 448E5000 */ mtc1 $t6, $f10 +/* 009364 80008764 46068103 */ div.s $f4, $f16, $f6 +/* 009368 80008768 468054A0 */ cvt.s.w $f18, $f10 +/* 00936C 8000876C 05C10004 */ bgez $t6, .L80008780 +/* 009370 80008770 4604D201 */ sub.s $f8, $f26, $f4 +/* 009374 80008774 44818000 */ mtc1 $at, $f16 +/* 009378 80008778 00000000 */ nop +/* 00937C 8000877C 46109480 */ add.s $f18, $f18, $f16 +.L80008780: +/* 009380 80008780 46124182 */ mul.s $f6, $f8, $f18 +/* 009384 80008784 444FF800 */ cfc1 $t7, $31 +/* 009388 80008788 00000000 */ nop +/* 00938C 8000878C 35E10003 */ ori $at, $t7, 3 +/* 009390 80008790 38210002 */ xori $at, $at, 2 +/* 009394 80008794 44C1F800 */ ctc1 $at, $31 +/* 009398 80008798 00000000 */ nop +/* 00939C 8000879C 46003124 */ cvt.w.s $f4, $f6 +/* 0093A0 800087A0 44022000 */ mfc1 $v0, $f4 +/* 0093A4 800087A4 44CFF800 */ ctc1 $t7, $31 +/* 0093A8 800087A8 1000001C */ b .L8000881C +/* 0093AC 800087AC 0122082A */ slt $at, $t1, $v0 +.L800087B0: +/* 0093B0 800087B0 44985000 */ mtc1 $t8, $f10 +/* 0093B4 800087B4 44844000 */ mtc1 $a0, $f8 +/* 0093B8 800087B8 46805420 */ cvt.s.w $f16, $f10 +/* 0093BC 800087BC 9239000E */ lbu $t9, 0xe($s1) +/* 0093C0 800087C0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0093C4 800087C4 468044A0 */ cvt.s.w $f18, $f8 +/* 0093C8 800087C8 44992000 */ mtc1 $t9, $f4 +/* 0093CC 800087CC 46128003 */ div.s $f0, $f16, $f18 +/* 0093D0 800087D0 468022A0 */ cvt.s.w $f10, $f4 +/* 0093D4 800087D4 46000182 */ mul.s $f6, $f0, $f0 +/* 0093D8 800087D8 07210004 */ bgez $t9, .L800087EC +/* 0093DC 800087DC 00000000 */ nop +/* 0093E0 800087E0 44814000 */ mtc1 $at, $f8 +/* 0093E4 800087E4 00000000 */ nop +/* 0093E8 800087E8 46085280 */ add.s $f10, $f10, $f8 +.L800087EC: +/* 0093EC 800087EC 460A3402 */ mul.s $f16, $f6, $f10 +/* 0093F0 800087F0 4448F800 */ cfc1 $t0, $31 +/* 0093F4 800087F4 00000000 */ nop +/* 0093F8 800087F8 35010003 */ ori $at, $t0, 3 +/* 0093FC 800087FC 38210002 */ xori $at, $at, 2 +/* 009400 80008800 44C1F800 */ ctc1 $at, $31 +/* 009404 80008804 00000000 */ nop +/* 009408 80008808 460084A4 */ cvt.w.s $f18, $f16 +/* 00940C 8000880C 44C8F800 */ ctc1 $t0, $31 +/* 009410 80008810 44029000 */ mfc1 $v0, $f18 +/* 009414 80008814 00000000 */ nop +/* 009418 80008818 0122082A */ slt $at, $t1, $v0 +.L8000881C: +/* 00941C 8000881C 10200008 */ beqz $at, .L80008840 +/* 009420 80008820 8FAA00B0 */ lw $t2, 0xb0($sp) +/* 009424 80008824 AFA20254 */ sw $v0, 0x254($sp) +/* 009428 80008828 86660000 */ lh $a2, ($s3) +/* 00942C 8000882C 4600A306 */ mov.s $f12, $f20 +/* 009430 80008830 0C002430 */ jal func_800090C0 +/* 009434 80008834 4600B386 */ mov.s $f14, $f22 +/* 009438 80008838 AFA20250 */ sw $v0, 0x250($sp) +/* 00943C 8000883C 8FAA00B0 */ lw $t2, 0xb0($sp) +.L80008840: +/* 009440 80008840 27DE0001 */ addiu $fp, $fp, 1 +/* 009444 80008844 17CAFFA1 */ bne $fp, $t2, .L800086CC +/* 009448 80008848 26730044 */ addiu $s3, $s3, 0x44 +.L8000884C: +/* 00944C 8000884C 92220010 */ lbu $v0, 0x10($s1) +/* 009450 80008850 8FAB0254 */ lw $t3, 0x254($sp) +/* 009454 80008854 8FAC00B0 */ lw $t4, 0xb0($sp) +/* 009458 80008858 0162082A */ slt $at, $t3, $v0 +/* 00945C 8000885C 10200033 */ beqz $at, .L8000892C +/* 009460 80008860 3C01800E */ lui $at, %hi(D_800E4F14) # $at, 0x800e +/* 009464 80008864 C4384F14 */ lwc1 $f24, %lo(D_800E4F14)($at) +/* 009468 80008868 1980002F */ blez $t4, .L80008928 +/* 00946C 8000886C 0000F025 */ move $fp, $zero +/* 009470 80008870 8FB300AC */ lw $s3, 0xac($sp) +/* 009474 80008874 00000000 */ nop +.L80008878: +/* 009478 80008878 C6240000 */ lwc1 $f4, ($s1) +/* 00947C 8000887C C668000C */ lwc1 $f8, 0xc($s3) +/* 009480 80008880 C6260004 */ lwc1 $f6, 4($s1) +/* 009484 80008884 46082501 */ sub.s $f20, $f4, $f8 +/* 009488 80008888 C66A0010 */ lwc1 $f10, 0x10($s3) +/* 00948C 8000888C 4614A102 */ mul.s $f4, $f20, $f20 +/* 009490 80008890 460A3001 */ sub.s $f0, $f6, $f10 +/* 009494 80008894 C6300008 */ lwc1 $f16, 8($s1) +/* 009498 80008898 C6720014 */ lwc1 $f18, 0x14($s3) +/* 00949C 8000889C 46000202 */ mul.s $f8, $f0, $f0 +/* 0094A0 800088A0 46128581 */ sub.s $f22, $f16, $f18 +/* 0094A4 800088A4 4616B282 */ mul.s $f10, $f22, $f22 +/* 0094A8 800088A8 46082180 */ add.s $f6, $f4, $f8 +/* 0094AC 800088AC 0C0326B4 */ jal sqrtf +/* 0094B0 800088B0 460A3300 */ add.s $f12, $f6, $f10 +/* 0094B4 800088B4 444DF800 */ cfc1 $t5, $31 +/* 0094B8 800088B8 00000000 */ nop +/* 0094BC 800088BC 35A10003 */ ori $at, $t5, 3 +/* 0094C0 800088C0 38210002 */ xori $at, $at, 2 +/* 0094C4 800088C4 44C1F800 */ ctc1 $at, $31 +/* 0094C8 800088C8 00000000 */ nop +/* 0094CC 800088CC 46000424 */ cvt.w.s $f16, $f0 +/* 0094D0 800088D0 44108000 */ mfc1 $s0, $f16 +/* 0094D4 800088D4 44CDF800 */ ctc1 $t5, $31 +/* 0094D8 800088D8 44909000 */ mtc1 $s0, $f18 +/* 0094DC 800088DC 00000000 */ nop +/* 0094E0 800088E0 46809120 */ cvt.s.w $f4, $f18 +/* 0094E4 800088E4 4618203C */ c.lt.s $f4, $f24 +/* 0094E8 800088E8 00000000 */ nop +/* 0094EC 800088EC 45000009 */ bc1f .L80008914 +/* 0094F0 800088F0 8FAE00B0 */ lw $t6, 0xb0($sp) +/* 0094F4 800088F4 86660000 */ lh $a2, ($s3) +/* 0094F8 800088F8 4600A306 */ mov.s $f12, $f20 +/* 0094FC 800088FC 0C002430 */ jal func_800090C0 +/* 009500 80008900 4600B386 */ mov.s $f14, $f22 +/* 009504 80008904 44904000 */ mtc1 $s0, $f8 +/* 009508 80008908 AFA20250 */ sw $v0, 0x250($sp) +/* 00950C 8000890C 46804620 */ cvt.s.w $f24, $f8 +/* 009510 80008910 8FAE00B0 */ lw $t6, 0xb0($sp) +.L80008914: +/* 009514 80008914 27DE0001 */ addiu $fp, $fp, 1 +/* 009518 80008918 17CEFFD7 */ bne $fp, $t6, .L80008878 +/* 00951C 8000891C 26730044 */ addiu $s3, $s3, 0x44 +/* 009520 80008920 92220010 */ lbu $v0, 0x10($s1) +/* 009524 80008924 00000000 */ nop +.L80008928: +/* 009528 80008928 AFA20254 */ sw $v0, 0x254($sp) +.L8000892C: +/* 00952C 8000892C 8FAF0254 */ lw $t7, 0x254($sp) +/* 009530 80008930 00000000 */ nop +/* 009534 80008934 29E1000B */ slti $at, $t7, 0xb +/* 009538 80008938 14200044 */ bnez $at, .L80008A4C +/* 00953C 8000893C 00000000 */ nop +/* 009540 80008940 8E240018 */ lw $a0, 0x18($s1) +/* 009544 80008944 00000000 */ nop +/* 009548 80008948 1480000F */ bnez $a0, .L80008988 +/* 00954C 8000894C 00000000 */ nop +/* 009550 80008950 92380022 */ lbu $t8, 0x22($s1) +/* 009554 80008954 00000000 */ nop +/* 009558 80008958 13000006 */ beqz $t8, .L80008974 +/* 00955C 8000895C 00000000 */ nop +/* 009560 80008960 92390011 */ lbu $t9, 0x11($s1) +/* 009564 80008964 00000000 */ nop +/* 009568 80008968 33280004 */ andi $t0, $t9, 4 +/* 00956C 8000896C 15000006 */ bnez $t0, .L80008988 +/* 009570 80008970 00000000 */ nop +.L80008974: +/* 009574 80008974 9624000C */ lhu $a0, 0xc($s1) +/* 009578 80008978 0C0007C5 */ jal func_80001F14 +/* 00957C 8000897C 26250018 */ addiu $a1, $s1, 0x18 +/* 009580 80008980 8E240018 */ lw $a0, 0x18($s1) +/* 009584 80008984 A2320022 */ sb $s2, 0x22($s1) +.L80008988: +/* 009588 80008988 1080002B */ beqz $a0, .L80008A38 +/* 00958C 8000898C 00000000 */ nop +/* 009590 80008990 9229000F */ lbu $t1, 0xf($s1) +/* 009594 80008994 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 009598 80008998 44893000 */ mtc1 $t1, $f6 +/* 00959C 8000899C 05210004 */ bgez $t1, .L800089B0 +/* 0095A0 800089A0 468032A0 */ cvt.s.w $f10, $f6 +/* 0095A4 800089A4 44818000 */ mtc1 $at, $f16 +/* 0095A8 800089A8 00000000 */ nop +/* 0095AC 800089AC 46105280 */ add.s $f10, $f10, $f16 +.L800089B0: +/* 0095B0 800089B0 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 0095B4 800089B4 44819000 */ mtc1 $at, $f18 +/* 0095B8 800089B8 8FA60254 */ lw $a2, 0x254($sp) +/* 0095BC 800089BC 46125103 */ div.s $f4, $f10, $f18 +/* 0095C0 800089C0 00065200 */ sll $t2, $a2, 8 +/* 0095C4 800089C4 01403025 */ move $a2, $t2 +/* 0095C8 800089C8 24050008 */ li $a1, 8 +/* 0095CC 800089CC E7A40098 */ swc1 $f4, 0x98($sp) +/* 0095D0 800089D0 8E240018 */ lw $a0, 0x18($s1) +/* 0095D4 800089D4 0C00127E */ jal func_800049F8 +/* 0095D8 800089D8 00000000 */ nop +/* 0095DC 800089DC 8E240018 */ lw $a0, 0x18($s1) +/* 0095E0 800089E0 8FA60098 */ lw $a2, 0x98($sp) +/* 0095E4 800089E4 0C00127E */ jal func_800049F8 +/* 0095E8 800089E8 24050010 */ li $a1, 16 +/* 0095EC 800089EC 8FAB00B0 */ lw $t3, 0xb0($sp) +/* 0095F0 800089F0 24010001 */ li $at, 1 +/* 0095F4 800089F4 11610002 */ beq $t3, $at, .L80008A00 +/* 0095F8 800089F8 240C0040 */ li $t4, 64 +/* 0095FC 800089FC AFAC0250 */ sw $t4, 0x250($sp) +.L80008A00: +/* 009600 80008A00 8E240018 */ lw $a0, 0x18($s1) +/* 009604 80008A04 8FA60250 */ lw $a2, 0x250($sp) +/* 009608 80008A08 0C00127E */ jal func_800049F8 +/* 00960C 80008A0C 24050004 */ li $a1, 4 +/* 009610 80008A10 8E240018 */ lw $a0, 0x18($s1) +/* 009614 80008A14 92250021 */ lbu $a1, 0x21($s1) +/* 009618 80008A18 0C001181 */ jal func_80004604 +/* 00961C 80008A1C 00000000 */ nop +/* 009620 80008A20 8E240018 */ lw $a0, 0x18($s1) +/* 009624 80008A24 8E250000 */ lw $a1, ($s1) +/* 009628 80008A28 8E260004 */ lw $a2, 4($s1) +/* 00962C 80008A2C 8E270008 */ lw $a3, 8($s1) +/* 009630 80008A30 0C0026DF */ jal func_80009B7C +/* 009634 80008A34 00000000 */ nop +.L80008A38: +/* 009638 80008A38 92220011 */ lbu $v0, 0x11($s1) +/* 00963C 80008A3C 00000000 */ nop +/* 009640 80008A40 304D0004 */ andi $t5, $v0, 4 +/* 009644 80008A44 10000010 */ b .L80008A88 +/* 009648 80008A48 01A01025 */ move $v0, $t5 +.L80008A4C: +/* 00964C 80008A4C 8E240018 */ lw $a0, 0x18($s1) +/* 009650 80008A50 00000000 */ nop +/* 009654 80008A54 10800008 */ beqz $a0, .L80008A78 +/* 009658 80008A58 00000000 */ nop +/* 00965C 80008A5C 0C001223 */ jal func_8000488C +/* 009660 80008A60 00000000 */ nop +/* 009664 80008A64 92220011 */ lbu $v0, 0x11($s1) +/* 009668 80008A68 00000000 */ nop +/* 00966C 80008A6C 304E0004 */ andi $t6, $v0, 4 +/* 009670 80008A70 10000005 */ b .L80008A88 +/* 009674 80008A74 01C01025 */ move $v0, $t6 +.L80008A78: +/* 009678 80008A78 92220011 */ lbu $v0, 0x11($s1) +/* 00967C 80008A7C A2320022 */ sb $s2, 0x22($s1) +/* 009680 80008A80 304F0004 */ andi $t7, $v0, 4 +/* 009684 80008A84 01E01025 */ move $v0, $t7 +.L80008A88: +/* 009688 80008A88 1040000C */ beqz $v0, .L80008ABC +/* 00968C 80008A8C 8FA80260 */ lw $t0, 0x260($sp) +/* 009690 80008A90 92380022 */ lbu $t8, 0x22($s1) +/* 009694 80008A94 00000000 */ nop +/* 009698 80008A98 13000008 */ beqz $t8, .L80008ABC +/* 00969C 80008A9C 8FA80260 */ lw $t0, 0x260($sp) +/* 0096A0 80008AA0 8E390018 */ lw $t9, 0x18($s1) +/* 0096A4 80008AA4 8FA40260 */ lw $a0, 0x260($sp) +/* 0096A8 80008AA8 17200004 */ bnez $t9, .L80008ABC +/* 0096AC 80008AAC 8FA80260 */ lw $t0, 0x260($sp) +/* 0096B0 80008AB0 0C0028BA */ jal func_8000A2E8 +/* 0096B4 80008AB4 00000000 */ nop +.L80008AB8: +/* 0096B8 80008AB8 8FA80260 */ lw $t0, 0x260($sp) +.L80008ABC: +/* 0096BC 80008ABC 96AA0000 */ lhu $t2, ($s5) +/* 0096C0 80008AC0 25090001 */ addiu $t1, $t0, 1 +/* 0096C4 80008AC4 012A082A */ slt $at, $t1, $t2 +/* 0096C8 80008AC8 AFA90260 */ sw $t1, 0x260($sp) +/* 0096CC 80008ACC 1420FE83 */ bnez $at, .L800084DC +/* 0096D0 80008AD0 26940004 */ addiu $s4, $s4, 4 +/* 0096D4 80008AD4 AFA00260 */ sw $zero, 0x260($sp) +.L80008AD8: +/* 0096D8 80008AD8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0096DC 80008ADC 4481D000 */ mtc1 $at, $f26 +/* 0096E0 80008AE0 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 0096E4 80008AE4 4481B000 */ mtc1 $at, $f22 +/* 0096E8 80008AE8 3C0143C8 */ li $at, 0x43C80000 # 400.000000 +/* 0096EC 80008AEC 3C028012 */ lui $v0, %hi(D_80119C58) # $v0, 0x8012 +/* 0096F0 80008AF0 4481A000 */ mtc1 $at, $f20 +/* 0096F4 80008AF4 24429C58 */ addiu $v0, %lo(D_80119C58) # addiu $v0, $v0, -0x63a8 +.L80008AF8: +/* 0096F8 80008AF8 8C4B016C */ lw $t3, 0x16c($v0) +/* 0096FC 80008AFC 0040B825 */ move $s7, $v0 +/* 009700 80008B00 11600130 */ beqz $t3, .L80008FC4 +/* 009704 80008B04 AFA20088 */ sw $v0, 0x88($sp) +/* 009708 80008B08 93A40263 */ lbu $a0, 0x263($sp) +/* 00970C 80008B0C 0C00267B */ jal func_800099EC +/* 009710 80008B10 AFA20088 */ sw $v0, 0x88($sp) +/* 009714 80008B14 1040012C */ beqz $v0, .L80008FC8 +/* 009718 80008B18 8FAB0260 */ lw $t3, 0x260($sp) +/* 00971C 80008B1C 8FAC00B0 */ lw $t4, 0xb0($sp) +/* 009720 80008B20 AFA00254 */ sw $zero, 0x254($sp) +/* 009724 80008B24 198000C7 */ blez $t4, .L80008E44 +/* 009728 80008B28 0000F025 */ move $fp, $zero +/* 00972C 80008B2C 8FA20088 */ lw $v0, 0x88($sp) +/* 009730 80008B30 00000000 */ nop +/* 009734 80008B34 244D0004 */ addiu $t5, $v0, 4 +/* 009738 80008B38 AFAD0070 */ sw $t5, 0x70($sp) +/* 00973C 80008B3C 8FA20088 */ lw $v0, 0x88($sp) +.L80008B40: +/* 009740 80008B40 8FB40070 */ lw $s4, 0x70($sp) +/* 009744 80008B44 8C430170 */ lw $v1, 0x170($v0) +/* 009748 80008B48 804E017C */ lb $t6, 0x17c($v0) +/* 00974C 80008B4C 0000A825 */ move $s5, $zero +/* 009750 80008B50 00009025 */ move $s2, $zero +/* 009754 80008B54 19C0002D */ blez $t6, .L80008C0C +/* 009758 80008B58 0060B025 */ move $s6, $v1 +/* 00975C 80008B5C 001EC100 */ sll $t8, $fp, 4 +/* 009760 80008B60 8FAF00AC */ lw $t7, 0xac($sp) +/* 009764 80008B64 031EC021 */ addu $t8, $t8, $fp +/* 009768 80008B68 0018C080 */ sll $t8, $t8, 2 +/* 00976C 80008B6C 27B001A8 */ addiu $s0, $sp, 0x1a8 +/* 009770 80008B70 27B1012C */ addiu $s1, $sp, 0x12c +/* 009774 80008B74 01F89821 */ addu $s3, $t7, $t8 +.L80008B78: +/* 009778 80008B78 C66C000C */ lwc1 $f12, 0xc($s3) +/* 00977C 80008B7C C66E0010 */ lwc1 $f14, 0x10($s3) +/* 009780 80008B80 8E660014 */ lw $a2, 0x14($s3) +/* 009784 80008B84 27B9022C */ addiu $t9, $sp, 0x22c +/* 009788 80008B88 27A80228 */ addiu $t0, $sp, 0x228 +/* 00978C 80008B8C 27A90224 */ addiu $t1, $sp, 0x224 +/* 009790 80008B90 AFA90018 */ sw $t1, 0x18($sp) +/* 009794 80008B94 AFA80014 */ sw $t0, 0x14($sp) +/* 009798 80008B98 AFB90010 */ sw $t9, 0x10($sp) +/* 00979C 80008B9C 0C0024AA */ jal func_800092A8 +/* 0097A0 80008BA0 02803825 */ move $a3, $s4 +/* 0097A4 80008BA4 AE020000 */ sw $v0, ($s0) +/* 0097A8 80008BA8 C66A0014 */ lwc1 $f10, 0x14($s3) +/* 0097AC 80008BAC C7B00224 */ lwc1 $f16, 0x224($sp) +/* 0097B0 80008BB0 C666000C */ lwc1 $f6, 0xc($s3) +/* 0097B4 80008BB4 C7A8022C */ lwc1 $f8, 0x22c($sp) +/* 0097B8 80008BB8 86660000 */ lh $a2, ($s3) +/* 0097BC 80008BBC 460A8381 */ sub.s $f14, $f16, $f10 +/* 0097C0 80008BC0 0C002430 */ jal func_800090C0 +/* 0097C4 80008BC4 46064301 */ sub.s $f12, $f8, $f6 +/* 0097C8 80008BC8 8E030000 */ lw $v1, ($s0) +/* 0097CC 80008BCC AE220000 */ sw $v0, ($s1) +/* 0097D0 80008BD0 0076082A */ slt $at, $v1, $s6 +/* 0097D4 80008BD4 10200002 */ beqz $at, .L80008BE0 +/* 0097D8 80008BD8 2694000C */ addiu $s4, $s4, 0xc +/* 0097DC 80008BDC 0060B025 */ move $s6, $v1 +.L80008BE0: +/* 0097E0 80008BE0 82EA017C */ lb $t2, 0x17c($s7) +/* 0097E4 80008BE4 26520001 */ addiu $s2, $s2, 1 +/* 0097E8 80008BE8 024A082A */ slt $at, $s2, $t2 +/* 0097EC 80008BEC 26100004 */ addiu $s0, $s0, 4 +/* 0097F0 80008BF0 26310004 */ addiu $s1, $s1, 4 +/* 0097F4 80008BF4 1420FFE0 */ bnez $at, .L80008B78 +/* 0097F8 80008BF8 02A3A821 */ addu $s5, $s5, $v1 +/* 0097FC 80008BFC 8FA20088 */ lw $v0, 0x88($sp) +/* 009800 80008C00 00000000 */ nop +/* 009804 80008C04 8C430170 */ lw $v1, 0x170($v0) +/* 009808 80008C08 00000000 */ nop +.L80008C0C: +/* 00980C 80008C0C 4483C000 */ mtc1 $v1, $f24 +/* 009810 80008C10 904C0174 */ lbu $t4, 0x174($v0) +/* 009814 80008C14 4680C0A0 */ cvt.s.w $f2, $f24 +/* 009818 80008C18 448CC000 */ mtc1 $t4, $f24 +/* 00981C 80008C1C 05810005 */ bgez $t4, .L80008C34 +/* 009820 80008C20 4680C320 */ cvt.s.w $f12, $f24 +/* 009824 80008C24 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 009828 80008C28 44814000 */ mtc1 $at, $f8 +/* 00982C 80008C2C 00000000 */ nop +/* 009830 80008C30 46086300 */ add.s $f12, $f12, $f8 +.L80008C34: +/* 009834 80008C34 904D017D */ lbu $t5, 0x17d($v0) +/* 009838 80008C38 8FB90254 */ lw $t9, 0x254($sp) +/* 00983C 80008C3C 15A00013 */ bnez $t5, .L80008C8C +/* 009840 80008C40 00767823 */ subu $t7, $v1, $s6 +/* 009844 80008C44 44963000 */ mtc1 $s6, $f6 +/* 009848 80008C48 00000000 */ nop +/* 00984C 80008C4C 46803420 */ cvt.s.w $f16, $f6 +/* 009850 80008C50 00000000 */ nop +/* 009854 80008C54 46028283 */ div.s $f10, $f16, $f2 +/* 009858 80008C58 460AD481 */ sub.s $f18, $f26, $f10 +/* 00985C 80008C5C 460C9102 */ mul.s $f4, $f18, $f12 +/* 009860 80008C60 444EF800 */ cfc1 $t6, $31 +/* 009864 80008C64 00000000 */ nop +/* 009868 80008C68 35C10003 */ ori $at, $t6, 3 +/* 00986C 80008C6C 38210002 */ xori $at, $at, 2 +/* 009870 80008C70 44C1F800 */ ctc1 $at, $31 +/* 009874 80008C74 00000000 */ nop +/* 009878 80008C78 46002224 */ cvt.w.s $f8, $f4 +/* 00987C 80008C7C 44024000 */ mfc1 $v0, $f8 +/* 009880 80008C80 44CEF800 */ ctc1 $t6, $31 +/* 009884 80008C84 10000014 */ b .L80008CD8 +/* 009888 80008C88 0059082A */ slt $at, $v0, $t9 +.L80008C8C: +/* 00988C 80008C8C 448F3000 */ mtc1 $t7, $f6 +/* 009890 80008C90 00000000 */ nop +/* 009894 80008C94 46803420 */ cvt.s.w $f16, $f6 +/* 009898 80008C98 00000000 */ nop +/* 00989C 80008C9C 46028003 */ div.s $f0, $f16, $f2 +/* 0098A0 80008CA0 46000282 */ mul.s $f10, $f0, $f0 +/* 0098A4 80008CA4 00000000 */ nop +/* 0098A8 80008CA8 460C5482 */ mul.s $f18, $f10, $f12 +/* 0098AC 80008CAC 4458F800 */ cfc1 $t8, $31 +/* 0098B0 80008CB0 00000000 */ nop +/* 0098B4 80008CB4 37010003 */ ori $at, $t8, 3 +/* 0098B8 80008CB8 38210002 */ xori $at, $at, 2 +/* 0098BC 80008CBC 44C1F800 */ ctc1 $at, $31 +/* 0098C0 80008CC0 00000000 */ nop +/* 0098C4 80008CC4 46009124 */ cvt.w.s $f4, $f18 +/* 0098C8 80008CC8 44D8F800 */ ctc1 $t8, $31 +/* 0098CC 80008CCC 44022000 */ mfc1 $v0, $f4 +/* 0098D0 80008CD0 00000000 */ nop +/* 0098D4 80008CD4 0059082A */ slt $at, $v0, $t9 +.L80008CD8: +/* 0098D8 80008CD8 14200057 */ bnez $at, .L80008E38 +/* 0098DC 80008CDC 8FAC00B0 */ lw $t4, 0xb0($sp) +/* 0098E0 80008CE0 8FA80088 */ lw $t0, 0x88($sp) +/* 0098E4 80008CE4 AFA20254 */ sw $v0, 0x254($sp) +/* 0098E8 80008CE8 8103017C */ lb $v1, 0x17c($t0) +/* 0098EC 80008CEC 24010001 */ li $at, 1 +/* 0098F0 80008CF0 14610004 */ bne $v1, $at, .L80008D04 +/* 0098F4 80008CF4 00002025 */ move $a0, $zero +/* 0098F8 80008CF8 8FA9012C */ lw $t1, 0x12c($sp) +/* 0098FC 80008CFC 10000036 */ b .L80008DD8 +/* 009900 80008D00 AFA90250 */ sw $t1, 0x250($sp) +.L80008D04: +/* 009904 80008D04 00009025 */ move $s2, $zero +/* 009908 80008D08 18600011 */ blez $v1, .L80008D50 +/* 00990C 80008D0C AFA00250 */ sw $zero, 0x250($sp) +/* 009910 80008D10 27B001A8 */ addiu $s0, $sp, 0x1a8 +/* 009914 80008D14 27A200B8 */ addiu $v0, $sp, 0xb8 +.L80008D18: +/* 009918 80008D18 8E0A0000 */ lw $t2, ($s0) +/* 00991C 80008D1C 26520001 */ addiu $s2, $s2, 1 +/* 009920 80008D20 02AA1823 */ subu $v1, $s5, $t2 +/* 009924 80008D24 AC430000 */ sw $v1, ($v0) +/* 009928 80008D28 82EB017C */ lb $t3, 0x17c($s7) +/* 00992C 80008D2C 26100004 */ addiu $s0, $s0, 4 +/* 009930 80008D30 024B082A */ slt $at, $s2, $t3 +/* 009934 80008D34 24420004 */ addiu $v0, $v0, 4 +/* 009938 80008D38 1420FFF7 */ bnez $at, .L80008D18 +/* 00993C 80008D3C 00832021 */ addu $a0, $a0, $v1 +/* 009940 80008D40 8FAC0088 */ lw $t4, 0x88($sp) +/* 009944 80008D44 00000000 */ nop +/* 009948 80008D48 8183017C */ lb $v1, 0x17c($t4) +/* 00994C 80008D4C 00000000 */ nop +.L80008D50: +/* 009950 80008D50 18600021 */ blez $v1, .L80008DD8 +/* 009954 80008D54 27B1012C */ addiu $s1, $sp, 0x12c +/* 009958 80008D58 82E5017C */ lb $a1, 0x17c($s7) +/* 00995C 80008D5C 44844000 */ mtc1 $a0, $f8 +/* 009960 80008D60 27A200B8 */ addiu $v0, $sp, 0xb8 +/* 009964 80008D64 00057080 */ sll $t6, $a1, 2 +/* 009968 80008D68 8FA40250 */ lw $a0, 0x250($sp) +/* 00996C 80008D6C 01C21821 */ addu $v1, $t6, $v0 +/* 009970 80008D70 46804020 */ cvt.s.w $f0, $f8 +.L80008D74: +/* 009974 80008D74 8C4F0000 */ lw $t7, ($v0) +/* 009978 80008D78 8E380000 */ lw $t8, ($s1) +/* 00997C 80008D7C 448F3000 */ mtc1 $t7, $f6 +/* 009980 80008D80 44989000 */ mtc1 $t8, $f18 +/* 009984 80008D84 46803420 */ cvt.s.w $f16, $f6 +/* 009988 80008D88 44843000 */ mtc1 $a0, $f6 +/* 00998C 80008D8C 24420004 */ addiu $v0, $v0, 4 +/* 009990 80008D90 46008283 */ div.s $f10, $f16, $f0 +/* 009994 80008D94 46809120 */ cvt.s.w $f4, $f18 +/* 009998 80008D98 26310004 */ addiu $s1, $s1, 4 +/* 00999C 80008D9C 46803420 */ cvt.s.w $f16, $f6 +/* 0099A0 80008DA0 46045202 */ mul.s $f8, $f10, $f4 +/* 0099A4 80008DA4 46088480 */ add.s $f18, $f16, $f8 +/* 0099A8 80008DA8 4459F800 */ cfc1 $t9, $31 +/* 0099AC 80008DAC 00000000 */ nop +/* 0099B0 80008DB0 37210003 */ ori $at, $t9, 3 +/* 0099B4 80008DB4 38210002 */ xori $at, $at, 2 +/* 0099B8 80008DB8 44C1F800 */ ctc1 $at, $31 +/* 0099BC 80008DBC 0043082B */ sltu $at, $v0, $v1 +/* 0099C0 80008DC0 460092A4 */ cvt.w.s $f10, $f18 +/* 0099C4 80008DC4 44045000 */ mfc1 $a0, $f10 +/* 0099C8 80008DC8 44D9F800 */ ctc1 $t9, $31 +/* 0099CC 80008DCC 1420FFE9 */ bnez $at, .L80008D74 +/* 0099D0 80008DD0 00000000 */ nop +/* 0099D4 80008DD4 AFA40250 */ sw $a0, 0x250($sp) +.L80008DD8: +/* 0099D8 80008DD8 2AC10190 */ slti $at, $s6, 0x190 +/* 0099DC 80008DDC 10200016 */ beqz $at, .L80008E38 +/* 0099E0 80008DE0 8FAC00B0 */ lw $t4, 0xb0($sp) +/* 0099E4 80008DE4 44968000 */ mtc1 $s6, $f16 +/* 0099E8 80008DE8 8FA80250 */ lw $t0, 0x250($sp) +/* 0099EC 80008DEC 46808220 */ cvt.s.w $f8, $f16 +/* 0099F0 80008DF0 2509FFC0 */ addiu $t1, $t0, -0x40 +/* 0099F4 80008DF4 44892000 */ mtc1 $t1, $f4 +/* 0099F8 80008DF8 46144483 */ div.s $f18, $f8, $f20 +/* 0099FC 80008DFC 468021A0 */ cvt.s.w $f6, $f4 +/* 009A00 80008E00 46123282 */ mul.s $f10, $f6, $f18 +/* 009A04 80008E04 46165100 */ add.s $f4, $f10, $f22 +/* 009A08 80008E08 444AF800 */ cfc1 $t2, $31 +/* 009A0C 80008E0C 00000000 */ nop +/* 009A10 80008E10 35410003 */ ori $at, $t2, 3 +/* 009A14 80008E14 38210002 */ xori $at, $at, 2 +/* 009A18 80008E18 44C1F800 */ ctc1 $at, $31 +/* 009A1C 80008E1C 00000000 */ nop +/* 009A20 80008E20 46002424 */ cvt.w.s $f16, $f4 +/* 009A24 80008E24 440B8000 */ mfc1 $t3, $f16 +/* 009A28 80008E28 44CAF800 */ ctc1 $t2, $31 +/* 009A2C 80008E2C AFAB0250 */ sw $t3, 0x250($sp) +/* 009A30 80008E30 00000000 */ nop +/* 009A34 80008E34 8FAC00B0 */ lw $t4, 0xb0($sp) +.L80008E38: +/* 009A38 80008E38 27DE0001 */ addiu $fp, $fp, 1 +/* 009A3C 80008E3C 17CCFF40 */ bne $fp, $t4, .L80008B40 +/* 009A40 80008E40 8FA20088 */ lw $v0, 0x88($sp) +.L80008E44: +/* 009A44 80008E44 8FAE0088 */ lw $t6, 0x88($sp) +/* 009A48 80008E48 8FAD0254 */ lw $t5, 0x254($sp) +/* 009A4C 80008E4C 91C20000 */ lbu $v0, ($t6) +/* 009A50 80008E50 24010001 */ li $at, 1 +/* 009A54 80008E54 1440004C */ bnez $v0, .L80008F88 +/* 009A58 80008E58 00000000 */ nop +/* 009A5C 80008E5C 91C20175 */ lbu $v0, 0x175($t6) +/* 009A60 80008E60 00000000 */ nop +/* 009A64 80008E64 01A2082A */ slt $at, $t5, $v0 +/* 009A68 80008E68 10200003 */ beqz $at, .L80008E78 +/* 009A6C 80008E6C 8FAF0254 */ lw $t7, 0x254($sp) +/* 009A70 80008E70 AFA20254 */ sw $v0, 0x254($sp) +/* 009A74 80008E74 8FAF0254 */ lw $t7, 0x254($sp) +.L80008E78: +/* 009A78 80008E78 8FB80088 */ lw $t8, 0x88($sp) +/* 009A7C 80008E7C 29E1000B */ slti $at, $t7, 0xb +/* 009A80 80008E80 14200038 */ bnez $at, .L80008F64 +/* 009A84 80008E84 8FAF0088 */ lw $t7, 0x88($sp) +/* 009A88 80008E88 93190176 */ lbu $t9, 0x176($t8) +/* 009A8C 80008E8C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 009A90 80008E90 44994000 */ mtc1 $t9, $f8 +/* 009A94 80008E94 07210004 */ bgez $t9, .L80008EA8 +/* 009A98 80008E98 468041A0 */ cvt.s.w $f6, $f8 +/* 009A9C 80008E9C 44819000 */ mtc1 $at, $f18 +/* 009AA0 80008EA0 00000000 */ nop +/* 009AA4 80008EA4 46123180 */ add.s $f6, $f6, $f18 +.L80008EA8: +/* 009AA8 80008EA8 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 009AAC 80008EAC 44815000 */ mtc1 $at, $f10 +/* 009AB0 80008EB0 00000000 */ nop +/* 009AB4 80008EB4 460A3103 */ div.s $f4, $f6, $f10 +/* 009AB8 80008EB8 E7A40090 */ swc1 $f4, 0x90($sp) +/* 009ABC 80008EBC 8F040178 */ lw $a0, 0x178($t8) +/* 009AC0 80008EC0 00000000 */ nop +/* 009AC4 80008EC4 14800008 */ bnez $a0, .L80008EE8 +/* 009AC8 80008EC8 00000000 */ nop +/* 009ACC 80008ECC 9704016E */ lhu $a0, 0x16e($t8) +/* 009AD0 80008ED0 0C0007C5 */ jal func_80001F14 +/* 009AD4 80008ED4 27050178 */ addiu $a1, $t8, 0x178 +/* 009AD8 80008ED8 8FA80088 */ lw $t0, 0x88($sp) +/* 009ADC 80008EDC 00000000 */ nop +/* 009AE0 80008EE0 8D040178 */ lw $a0, 0x178($t0) +/* 009AE4 80008EE4 00000000 */ nop +.L80008EE8: +/* 009AE8 80008EE8 10800037 */ beqz $a0, .L80008FC8 +/* 009AEC 80008EEC 8FAB0260 */ lw $t3, 0x260($sp) +/* 009AF0 80008EF0 8FA60254 */ lw $a2, 0x254($sp) +/* 009AF4 80008EF4 24050008 */ li $a1, 8 +/* 009AF8 80008EF8 00064A00 */ sll $t1, $a2, 8 +/* 009AFC 80008EFC 0C00127E */ jal func_800049F8 +/* 009B00 80008F00 01203025 */ move $a2, $t1 +/* 009B04 80008F04 8FAA0088 */ lw $t2, 0x88($sp) +/* 009B08 80008F08 8FA60090 */ lw $a2, 0x90($sp) +/* 009B0C 80008F0C 8D440178 */ lw $a0, 0x178($t2) +/* 009B10 80008F10 0C00127E */ jal func_800049F8 +/* 009B14 80008F14 24050010 */ li $a1, 16 +/* 009B18 80008F18 8FAB00B0 */ lw $t3, 0xb0($sp) +/* 009B1C 80008F1C 24010001 */ li $at, 1 +/* 009B20 80008F20 11610002 */ beq $t3, $at, .L80008F2C +/* 009B24 80008F24 240C0040 */ li $t4, 64 +/* 009B28 80008F28 AFAC0250 */ sw $t4, 0x250($sp) +.L80008F2C: +/* 009B2C 80008F2C 8FAE0088 */ lw $t6, 0x88($sp) +/* 009B30 80008F30 8FA60250 */ lw $a2, 0x250($sp) +/* 009B34 80008F34 8DC40178 */ lw $a0, 0x178($t6) +/* 009B38 80008F38 0C00127E */ jal func_800049F8 +/* 009B3C 80008F3C 24050004 */ li $a1, 4 +/* 009B40 80008F40 8FAD0088 */ lw $t5, 0x88($sp) +/* 009B44 80008F44 00000000 */ nop +/* 009B48 80008F48 8DA40178 */ lw $a0, 0x178($t5) +/* 009B4C 80008F4C 91A5017E */ lbu $a1, 0x17e($t5) +/* 009B50 80008F50 0C001181 */ jal func_80004604 +/* 009B54 80008F54 00000000 */ nop +/* 009B58 80008F58 1000001B */ b .L80008FC8 +/* 009B5C 80008F5C 8FAB0260 */ lw $t3, 0x260($sp) +/* 009B60 80008F60 8FAF0088 */ lw $t7, 0x88($sp) +.L80008F64: +/* 009B64 80008F64 00000000 */ nop +/* 009B68 80008F68 8DE40178 */ lw $a0, 0x178($t7) +/* 009B6C 80008F6C 00000000 */ nop +/* 009B70 80008F70 10800015 */ beqz $a0, .L80008FC8 +/* 009B74 80008F74 8FAB0260 */ lw $t3, 0x260($sp) +/* 009B78 80008F78 0C001223 */ jal func_8000488C +/* 009B7C 80008F7C 00000000 */ nop +/* 009B80 80008F80 10000011 */ b .L80008FC8 +/* 009B84 80008F84 8FAB0260 */ lw $t3, 0x260($sp) +.L80008F88: +/* 009B88 80008F88 1441000F */ bne $v0, $at, .L80008FC8 +/* 009B8C 80008F8C 8FAB0260 */ lw $t3, 0x260($sp) +/* 009B90 80008F90 8FB9024C */ lw $t9, 0x24c($sp) +/* 009B94 80008F94 8FB80254 */ lw $t8, 0x254($sp) +/* 009B98 80008F98 00000000 */ nop +/* 009B9C 80008F9C 0338082A */ slt $at, $t9, $t8 +/* 009BA0 80008FA0 10200009 */ beqz $at, .L80008FC8 +/* 009BA4 80008FA4 8FAB0260 */ lw $t3, 0x260($sp) +/* 009BA8 80008FA8 8FA80250 */ lw $t0, 0x250($sp) +/* 009BAC 80008FAC 8FA90088 */ lw $t1, 0x88($sp) +/* 009BB0 80008FB0 AFB8024C */ sw $t8, 0x24c($sp) +/* 009BB4 80008FB4 AFA80248 */ sw $t0, 0x248($sp) +/* 009BB8 80008FB8 8D2A016C */ lw $t2, 0x16c($t1) +/* 009BBC 80008FBC 00000000 */ nop +/* 009BC0 80008FC0 AFAA0244 */ sw $t2, 0x244($sp) +.L80008FC4: +/* 009BC4 80008FC4 8FAB0260 */ lw $t3, 0x260($sp) +.L80008FC8: +/* 009BC8 80008FC8 8FA20088 */ lw $v0, 0x88($sp) +/* 009BCC 80008FCC 24010007 */ li $at, 7 +/* 009BD0 80008FD0 256C0001 */ addiu $t4, $t3, 1 +/* 009BD4 80008FD4 AFAC0260 */ sw $t4, 0x260($sp) +/* 009BD8 80008FD8 1581FEC7 */ bne $t4, $at, .L80008AF8 +/* 009BDC 80008FDC 24420180 */ addiu $v0, $v0, 0x180 +/* 009BE0 80008FE0 8FAE024C */ lw $t6, 0x24c($sp) +/* 009BE4 80008FE4 3C0D8012 */ lui $t5, %hi(D_8011AC18) # $t5, 0x8012 +/* 009BE8 80008FE8 29C1000B */ slti $at, $t6, 0xb +/* 009BEC 80008FEC 14200015 */ bnez $at, .L80009044 +/* 009BF0 80008FF0 00000000 */ nop +/* 009BF4 80008FF4 91ADAC18 */ lbu $t5, %lo(D_8011AC18)($t5) +/* 009BF8 80008FF8 00000000 */ nop +/* 009BFC 80008FFC 15A00011 */ bnez $t5, .L80009044 +/* 009C00 80009000 00000000 */ nop +/* 009C04 80009004 0C000660 */ jal func_80001980 +/* 009C08 80009008 00000000 */ nop +/* 009C0C 8000900C 8FAF0244 */ lw $t7, 0x244($sp) +/* 009C10 80009010 93A40247 */ lbu $a0, 0x247($sp) +/* 009C14 80009014 11E20003 */ beq $t7, $v0, .L80009024 +/* 009C18 80009018 00000000 */ nop +/* 009C1C 8000901C 0C0005E1 */ jal func_80001784 +/* 009C20 80009020 00000000 */ nop +.L80009024: +/* 009C24 80009024 93A4024F */ lbu $a0, 0x24f($sp) +/* 009C28 80009028 0C0006C3 */ jal func_80001B0C +/* 009C2C 8000902C 00000000 */ nop +/* 009C30 80009030 93A4024B */ lbu $a0, 0x24b($sp) +/* 009C34 80009034 0C0006D6 */ jal func_80001B58 +/* 009C38 80009038 00000000 */ nop +/* 009C3C 8000903C 10000004 */ b .L80009050 +/* 009C40 80009040 8FA5026C */ lw $a1, 0x26c($sp) +.L80009044: +/* 009C44 80009044 0C000638 */ jal func_800018E0 +/* 009C48 80009048 00000000 */ nop +/* 009C4C 8000904C 8FA5026C */ lw $a1, 0x26c($sp) +.L80009050: +/* 009C50 80009050 8FA40268 */ lw $a0, 0x268($sp) +/* 009C54 80009054 10A00007 */ beqz $a1, .L80009074 +/* 009C58 80009058 8FBF006C */ lw $ra, 0x6c($sp) +/* 009C5C 8000905C 8FB90270 */ lw $t9, 0x270($sp) +/* 009C60 80009060 8FA600AC */ lw $a2, 0xac($sp) +/* 009C64 80009064 93A700B3 */ lbu $a3, 0xb3($sp) +/* 009C68 80009068 0C001BF2 */ jal func_80006FC8 +/* 009C6C 8000906C AFB90010 */ sw $t9, 0x10($sp) +/* 009C70 80009070 8FBF006C */ lw $ra, 0x6c($sp) +.L80009074: +/* 009C74 80009074 C7B50028 */ lwc1 $f21, 0x28($sp) +/* 009C78 80009078 C7B4002C */ lwc1 $f20, 0x2c($sp) +/* 009C7C 8000907C C7B70030 */ lwc1 $f23, 0x30($sp) +/* 009C80 80009080 C7B60034 */ lwc1 $f22, 0x34($sp) +/* 009C84 80009084 C7B90038 */ lwc1 $f25, 0x38($sp) +/* 009C88 80009088 C7B8003C */ lwc1 $f24, 0x3c($sp) +/* 009C8C 8000908C C7BB0040 */ lwc1 $f27, 0x40($sp) +/* 009C90 80009090 C7BA0044 */ lwc1 $f26, 0x44($sp) +/* 009C94 80009094 8FB00048 */ lw $s0, 0x48($sp) +/* 009C98 80009098 8FB1004C */ lw $s1, 0x4c($sp) +/* 009C9C 8000909C 8FB20050 */ lw $s2, 0x50($sp) +/* 009CA0 800090A0 8FB30054 */ lw $s3, 0x54($sp) +/* 009CA4 800090A4 8FB40058 */ lw $s4, 0x58($sp) +/* 009CA8 800090A8 8FB5005C */ lw $s5, 0x5c($sp) +/* 009CAC 800090AC 8FB60060 */ lw $s6, 0x60($sp) +/* 009CB0 800090B0 8FB70064 */ lw $s7, 0x64($sp) +/* 009CB4 800090B4 8FBE0068 */ lw $fp, 0x68($sp) +/* 009CB8 800090B8 03E00008 */ jr $ra +/* 009CBC 800090BC 27BD0268 */ addiu $sp, $sp, 0x268 + diff --git a/asm/non_matchings/unknown_005740/func_800090C0.s b/asm/non_matchings/unknown_005740/func_800090C0.s new file mode 100644 index 00000000..9109d33e --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800090C0.s @@ -0,0 +1,133 @@ +glabel func_800090C0 +/* 009CC0 800090C0 460E7482 */ mul.s $f18, $f14, $f14 +/* 009CC4 800090C4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 009CC8 800090C8 E7AC0028 */ swc1 $f12, 0x28($sp) +/* 009CCC 800090CC C7B00028 */ lwc1 $f16, 0x28($sp) +/* 009CD0 800090D0 AFBF0014 */ sw $ra, 0x14($sp) +/* 009CD4 800090D4 46108402 */ mul.s $f16, $f16, $f16 +/* 009CD8 800090D8 AFA60030 */ sw $a2, 0x30($sp) +/* 009CDC 800090DC E7AE002C */ swc1 $f14, 0x2c($sp) +/* 009CE0 800090E0 0C0326B4 */ jal sqrtf +/* 009CE4 800090E4 46128300 */ add.s $f12, $f16, $f18 +/* 009CE8 800090E8 C7AE002C */ lwc1 $f14, 0x2c($sp) +/* 009CEC 800090EC C7AC0028 */ lwc1 $f12, 0x28($sp) +/* 009CF0 800090F0 0C01C1D4 */ jal func_80070750 +/* 009CF4 800090F4 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 009CF8 800090F8 8FA60030 */ lw $a2, 0x30($sp) +/* 009CFC 800090FC 340EFFFF */ li $t6, 65535 +/* 009D00 80009100 01C21823 */ subu $v1, $t6, $v0 +/* 009D04 80009104 C7A2001C */ lwc1 $f2, 0x1c($sp) +/* 009D08 80009108 0066082A */ slt $at, $v1, $a2 +/* 009D0C 8000910C 1020002F */ beqz $at, .L800091CC +/* 009D10 80009110 00602825 */ move $a1, $v1 +/* 009D14 80009114 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 009D18 80009118 44815000 */ mtc1 $at, $f10 +/* 009D1C 8000911C 00C52023 */ subu $a0, $a2, $a1 +/* 009D20 80009120 460A103E */ c.le.s $f2, $f10 +/* 009D24 80009124 00044C00 */ sll $t1, $a0, 0x10 +/* 009D28 80009128 4500001F */ bc1f .L800091A8 +/* 009D2C 8000912C 00000000 */ nop +/* 009D30 80009130 00C32023 */ subu $a0, $a2, $v1 +/* 009D34 80009134 00047C00 */ sll $t7, $a0, 0x10 +/* 009D38 80009138 000F2403 */ sra $a0, $t7, 0x10 +/* 009D3C 8000913C 0C01C20C */ jal func_80070830 +/* 009D40 80009140 E7A2001C */ swc1 $f2, 0x1c($sp) +/* 009D44 80009144 C7A2001C */ lwc1 $f2, 0x1c($sp) +/* 009D48 80009148 04410003 */ bgez $v0, .L80009158 +/* 009D4C 8000914C 0002CA83 */ sra $t9, $v0, 0xa +/* 009D50 80009150 244103FF */ addiu $at, $v0, 0x3ff +/* 009D54 80009154 0001CA83 */ sra $t9, $at, 0xa +.L80009158: +/* 009D58 80009158 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 009D5C 8000915C 44812000 */ mtc1 $at, $f4 +/* 009D60 80009160 44998000 */ mtc1 $t9, $f16 +/* 009D64 80009164 46041182 */ mul.s $f6, $f2, $f4 +/* 009D68 80009168 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 009D6C 8000916C 44815000 */ mtc1 $at, $f10 +/* 009D70 80009170 468084A0 */ cvt.s.w $f18, $f16 +/* 009D74 80009174 46069202 */ mul.s $f8, $f18, $f6 +/* 009D78 80009178 46085401 */ sub.s $f16, $f10, $f8 +/* 009D7C 8000917C 4448F800 */ cfc1 $t0, $31 +/* 009D80 80009180 00000000 */ nop +/* 009D84 80009184 35010003 */ ori $at, $t0, 3 +/* 009D88 80009188 38210002 */ xori $at, $at, 2 +/* 009D8C 8000918C 44C1F800 */ ctc1 $at, $31 +/* 009D90 80009190 00000000 */ nop +/* 009D94 80009194 46008124 */ cvt.w.s $f4, $f16 +/* 009D98 80009198 44032000 */ mfc1 $v1, $f4 +/* 009D9C 8000919C 44C8F800 */ ctc1 $t0, $31 +/* 009DA0 800091A0 10000036 */ b .L8000927C +/* 009DA4 800091A4 00000000 */ nop +.L800091A8: +/* 009DA8 800091A8 0C01C224 */ jal func_80070890 +/* 009DAC 800091AC 00092403 */ sra $a0, $t1, 0x10 +/* 009DB0 800091B0 04410003 */ bgez $v0, .L800091C0 +/* 009DB4 800091B4 00025A83 */ sra $t3, $v0, 0xa +/* 009DB8 800091B8 244103FF */ addiu $at, $v0, 0x3ff +/* 009DBC 800091BC 00015A83 */ sra $t3, $at, 0xa +.L800091C0: +/* 009DC0 800091C0 240C0040 */ li $t4, 64 +/* 009DC4 800091C4 1000002D */ b .L8000927C +/* 009DC8 800091C8 018B1823 */ subu $v1, $t4, $t3 +.L800091CC: +/* 009DCC 800091CC 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 009DD0 800091D0 44819000 */ mtc1 $at, $f18 +/* 009DD4 800091D4 00A62023 */ subu $a0, $a1, $a2 +/* 009DD8 800091D8 4612103E */ c.le.s $f2, $f18 +/* 009DDC 800091DC 0004CC00 */ sll $t9, $a0, 0x10 +/* 009DE0 800091E0 4500001F */ bc1f .L80009260 +/* 009DE4 800091E4 00000000 */ nop +/* 009DE8 800091E8 00A62023 */ subu $a0, $a1, $a2 +/* 009DEC 800091EC 00046C00 */ sll $t5, $a0, 0x10 +/* 009DF0 800091F0 000D2403 */ sra $a0, $t5, 0x10 +/* 009DF4 800091F4 0C01C20C */ jal func_80070830 +/* 009DF8 800091F8 E7A2001C */ swc1 $f2, 0x1c($sp) +/* 009DFC 800091FC C7A2001C */ lwc1 $f2, 0x1c($sp) +/* 009E00 80009200 04410003 */ bgez $v0, .L80009210 +/* 009E04 80009204 00027A83 */ sra $t7, $v0, 0xa +/* 009E08 80009208 244103FF */ addiu $at, $v0, 0x3ff +/* 009E0C 8000920C 00017A83 */ sra $t7, $at, 0xa +.L80009210: +/* 009E10 80009210 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 009E14 80009214 44814000 */ mtc1 $at, $f8 +/* 009E18 80009218 448F3000 */ mtc1 $t7, $f6 +/* 009E1C 8000921C 46081402 */ mul.s $f16, $f2, $f8 +/* 009E20 80009220 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 009E24 80009224 44819000 */ mtc1 $at, $f18 +/* 009E28 80009228 468032A0 */ cvt.s.w $f10, $f6 +/* 009E2C 8000922C 46105102 */ mul.s $f4, $f10, $f16 +/* 009E30 80009230 46122180 */ add.s $f6, $f4, $f18 +/* 009E34 80009234 4458F800 */ cfc1 $t8, $31 +/* 009E38 80009238 00000000 */ nop +/* 009E3C 8000923C 37010003 */ ori $at, $t8, 3 +/* 009E40 80009240 38210002 */ xori $at, $at, 2 +/* 009E44 80009244 44C1F800 */ ctc1 $at, $31 +/* 009E48 80009248 00000000 */ nop +/* 009E4C 8000924C 46003224 */ cvt.w.s $f8, $f6 +/* 009E50 80009250 44034000 */ mfc1 $v1, $f8 +/* 009E54 80009254 44D8F800 */ ctc1 $t8, $31 +/* 009E58 80009258 10000008 */ b .L8000927C +/* 009E5C 8000925C 00000000 */ nop +.L80009260: +/* 009E60 80009260 0C01C224 */ jal func_80070890 +/* 009E64 80009264 00192403 */ sra $a0, $t9, 0x10 +/* 009E68 80009268 04410003 */ bgez $v0, .L80009278 +/* 009E6C 8000926C 00021A83 */ sra $v1, $v0, 0xa +/* 009E70 80009270 244103FF */ addiu $at, $v0, 0x3ff +/* 009E74 80009274 00011A83 */ sra $v1, $at, 0xa +.L80009278: +/* 009E78 80009278 24630040 */ addiu $v1, $v1, 0x40 +.L8000927C: +/* 009E7C 8000927C 0C0270C3 */ jal func_8009C30C +/* 009E80 80009280 AFA30020 */ sw $v1, 0x20($sp) +/* 009E84 80009284 8FA30020 */ lw $v1, 0x20($sp) +/* 009E88 80009288 30490004 */ andi $t1, $v0, 4 +/* 009E8C 8000928C 11200002 */ beqz $t1, .L80009298 +/* 009E90 80009290 240A0080 */ li $t2, 128 +/* 009E94 80009294 01431823 */ subu $v1, $t2, $v1 +.L80009298: +/* 009E98 80009298 8FBF0014 */ lw $ra, 0x14($sp) +/* 009E9C 8000929C 27BD0028 */ addiu $sp, $sp, 0x28 +/* 009EA0 800092A0 03E00008 */ jr $ra +/* 009EA4 800092A4 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_005740/func_800092A8.s b/asm/non_matchings/unknown_005740/func_800092A8.s new file mode 100644 index 00000000..94fc22ff --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800092A8.s @@ -0,0 +1,179 @@ +glabel func_800092A8 +/* 009EA8 800092A8 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 009EAC 800092AC AFBF002C */ sw $ra, 0x2c($sp) +/* 009EB0 800092B0 E7B90020 */ swc1 $f25, 0x20($sp) +/* 009EB4 800092B4 E7B80024 */ swc1 $f24, 0x24($sp) +/* 009EB8 800092B8 E7B70018 */ swc1 $f23, 0x18($sp) +/* 009EBC 800092BC E7B6001C */ swc1 $f22, 0x1c($sp) +/* 009EC0 800092C0 E7B50010 */ swc1 $f21, 0x10($sp) +/* 009EC4 800092C4 E7B40014 */ swc1 $f20, 0x14($sp) +/* 009EC8 800092C8 E7AC0068 */ swc1 $f12, 0x68($sp) +/* 009ECC 800092CC E7AE006C */ swc1 $f14, 0x6c($sp) +/* 009ED0 800092D0 AFA60070 */ sw $a2, 0x70($sp) +/* 009ED4 800092D4 C4E4000C */ lwc1 $f4, 0xc($a3) +/* 009ED8 800092D8 C4F40000 */ lwc1 $f20, ($a3) +/* 009EDC 800092DC C4F60004 */ lwc1 $f22, 4($a3) +/* 009EE0 800092E0 C4F80008 */ lwc1 $f24, 8($a3) +/* 009EE4 800092E4 E7A4004C */ swc1 $f4, 0x4c($sp) +/* 009EE8 800092E8 C4E60010 */ lwc1 $f6, 0x10($a3) +/* 009EEC 800092EC C7AA004C */ lwc1 $f10, 0x4c($sp) +/* 009EF0 800092F0 E7A60048 */ swc1 $f6, 0x48($sp) +/* 009EF4 800092F4 C4E80014 */ lwc1 $f8, 0x14($a3) +/* 009EF8 800092F8 C7A60048 */ lwc1 $f6, 0x48($sp) +/* 009EFC 800092FC 46145081 */ sub.s $f2, $f10, $f20 +/* 009F00 80009300 E7A80044 */ swc1 $f8, 0x44($sp) +/* 009F04 80009304 C7AA0044 */ lwc1 $f10, 0x44($sp) +/* 009F08 80009308 46163201 */ sub.s $f8, $f6, $f22 +/* 009F0C 8000930C 44800800 */ mtc1 $zero, $f1 +/* 009F10 80009310 44800000 */ mtc1 $zero, $f0 +/* 009F14 80009314 46185181 */ sub.s $f6, $f10, $f24 +/* 009F18 80009318 E7A20038 */ swc1 $f2, 0x38($sp) +/* 009F1C 8000931C 460012A1 */ cvt.d.s $f10, $f2 +/* 009F20 80009320 462A0032 */ c.eq.d $f0, $f10 +/* 009F24 80009324 E7A80034 */ swc1 $f8, 0x34($sp) +/* 009F28 80009328 46004406 */ mov.s $f16, $f8 +/* 009F2C 8000932C E7A60030 */ swc1 $f6, 0x30($sp) +/* 009F30 80009330 4500000E */ bc1f .L8000936C +/* 009F34 80009334 46003486 */ mov.s $f18, $f6 +/* 009F38 80009338 46004121 */ cvt.d.s $f4, $f8 +/* 009F3C 8000933C 46240032 */ c.eq.d $f0, $f4 +/* 009F40 80009340 00000000 */ nop +/* 009F44 80009344 45000009 */ bc1f .L8000936C +/* 009F48 80009348 00000000 */ nop +/* 009F4C 8000934C 460032A1 */ cvt.d.s $f10, $f6 +/* 009F50 80009350 462A0032 */ c.eq.d $f0, $f10 +/* 009F54 80009354 00000000 */ nop +/* 009F58 80009358 45000004 */ bc1f .L8000936C +/* 009F5C 8000935C 00000000 */ nop +/* 009F60 80009360 44800000 */ mtc1 $zero, $f0 +/* 009F64 80009364 10000015 */ b .L800093BC +/* 009F68 80009368 44802000 */ mtc1 $zero, $f4 +.L8000936C: +/* 009F6C 8000936C C7A80068 */ lwc1 $f8, 0x68($sp) +/* 009F70 80009370 C7AA006C */ lwc1 $f10, 0x6c($sp) +/* 009F74 80009374 46144101 */ sub.s $f4, $f8, $f20 +/* 009F78 80009378 46022182 */ mul.s $f6, $f4, $f2 +/* 009F7C 8000937C 46165201 */ sub.s $f8, $f10, $f22 +/* 009F80 80009380 46104102 */ mul.s $f4, $f8, $f16 +/* 009F84 80009384 C7A80070 */ lwc1 $f8, 0x70($sp) +/* 009F88 80009388 46043280 */ add.s $f10, $f6, $f4 +/* 009F8C 8000938C 46184181 */ sub.s $f6, $f8, $f24 +/* 009F90 80009390 46123102 */ mul.s $f4, $f6, $f18 +/* 009F94 80009394 00000000 */ nop +/* 009F98 80009398 46021182 */ mul.s $f6, $f2, $f2 +/* 009F9C 8000939C 46045200 */ add.s $f8, $f10, $f4 +/* 009FA0 800093A0 46108282 */ mul.s $f10, $f16, $f16 +/* 009FA4 800093A4 460A3100 */ add.s $f4, $f6, $f10 +/* 009FA8 800093A8 46129182 */ mul.s $f6, $f18, $f18 +/* 009FAC 800093AC 46062280 */ add.s $f10, $f4, $f6 +/* 009FB0 800093B0 00000000 */ nop +/* 009FB4 800093B4 460A4003 */ div.s $f0, $f8, $f10 +/* 009FB8 800093B8 44802000 */ mtc1 $zero, $f4 +.L800093BC: +/* 009FBC 800093BC 8FA20078 */ lw $v0, 0x78($sp) +/* 009FC0 800093C0 4604003C */ c.lt.s $f0, $f4 +/* 009FC4 800093C4 8FA3007C */ lw $v1, 0x7c($sp) +/* 009FC8 800093C8 45000014 */ bc1f .L8000941C +/* 009FCC 800093CC 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 009FD0 800093D0 E4540000 */ swc1 $f20, ($v0) +/* 009FD4 800093D4 E4760000 */ swc1 $f22, ($v1) +/* 009FD8 800093D8 8FAE0080 */ lw $t6, 0x80($sp) +/* 009FDC 800093DC 00000000 */ nop +/* 009FE0 800093E0 E5D80000 */ swc1 $f24, ($t6) +/* 009FE4 800093E4 C7A60068 */ lwc1 $f6, 0x68($sp) +/* 009FE8 800093E8 C7A8006C */ lwc1 $f8, 0x6c($sp) +/* 009FEC 800093EC 4606A001 */ sub.s $f0, $f20, $f6 +/* 009FF0 800093F0 C7AA0070 */ lwc1 $f10, 0x70($sp) +/* 009FF4 800093F4 46000102 */ mul.s $f4, $f0, $f0 +/* 009FF8 800093F8 4608B081 */ sub.s $f2, $f22, $f8 +/* 009FFC 800093FC 46021182 */ mul.s $f6, $f2, $f2 +/* 00A000 80009400 460AC381 */ sub.s $f14, $f24, $f10 +/* 00A004 80009404 460E7282 */ mul.s $f10, $f14, $f14 +/* 00A008 80009408 46062200 */ add.s $f8, $f4, $f6 +/* 00A00C 8000940C 0C0326B4 */ jal sqrtf +/* 00A010 80009410 460A4300 */ add.s $f12, $f8, $f10 +/* 00A014 80009414 10000041 */ b .L8000951C +/* 00A018 80009418 4459F800 */ cfc1 $t9, $31 +.L8000941C: +/* 00A01C 8000941C 44812000 */ mtc1 $at, $f4 +/* 00A020 80009420 8FA20078 */ lw $v0, 0x78($sp) +/* 00A024 80009424 4600203C */ c.lt.s $f4, $f0 +/* 00A028 80009428 C7A80038 */ lwc1 $f8, 0x38($sp) +/* 00A02C 8000942C 4500001C */ bc1f .L800094A0 +/* 00A030 80009430 00000000 */ nop +/* 00A034 80009434 C7A6004C */ lwc1 $f6, 0x4c($sp) +/* 00A038 80009438 8FA3007C */ lw $v1, 0x7c($sp) +/* 00A03C 8000943C E4460000 */ swc1 $f6, ($v0) +/* 00A040 80009440 C7A80048 */ lwc1 $f8, 0x48($sp) +/* 00A044 80009444 00000000 */ nop +/* 00A048 80009448 E4680000 */ swc1 $f8, ($v1) +/* 00A04C 8000944C 8FAF0080 */ lw $t7, 0x80($sp) +/* 00A050 80009450 C7AA0044 */ lwc1 $f10, 0x44($sp) +/* 00A054 80009454 00000000 */ nop +/* 00A058 80009458 E5EA0000 */ swc1 $f10, ($t7) +/* 00A05C 8000945C C7A60068 */ lwc1 $f6, 0x68($sp) +/* 00A060 80009460 C7A4004C */ lwc1 $f4, 0x4c($sp) +/* 00A064 80009464 C7A80048 */ lwc1 $f8, 0x48($sp) +/* 00A068 80009468 46062001 */ sub.s $f0, $f4, $f6 +/* 00A06C 8000946C C7A4006C */ lwc1 $f4, 0x6c($sp) +/* 00A070 80009470 C7A60070 */ lwc1 $f6, 0x70($sp) +/* 00A074 80009474 46044081 */ sub.s $f2, $f8, $f4 +/* 00A078 80009478 46000202 */ mul.s $f8, $f0, $f0 +/* 00A07C 8000947C 46065381 */ sub.s $f14, $f10, $f6 +/* 00A080 80009480 46021102 */ mul.s $f4, $f2, $f2 +/* 00A084 80009484 00000000 */ nop +/* 00A088 80009488 460E7182 */ mul.s $f6, $f14, $f14 +/* 00A08C 8000948C 46044280 */ add.s $f10, $f8, $f4 +/* 00A090 80009490 0C0326B4 */ jal sqrtf +/* 00A094 80009494 46065300 */ add.s $f12, $f10, $f6 +/* 00A098 80009498 10000020 */ b .L8000951C +/* 00A09C 8000949C 4459F800 */ cfc1 $t9, $31 +.L800094A0: +/* 00A0A0 800094A0 46080102 */ mul.s $f4, $f0, $f8 +/* 00A0A4 800094A4 8FA20078 */ lw $v0, 0x78($sp) +/* 00A0A8 800094A8 8FA3007C */ lw $v1, 0x7c($sp) +/* 00A0AC 800094AC 46142280 */ add.s $f10, $f4, $f20 +/* 00A0B0 800094B0 E44A0000 */ swc1 $f10, ($v0) +/* 00A0B4 800094B4 C7A60034 */ lwc1 $f6, 0x34($sp) +/* 00A0B8 800094B8 00000000 */ nop +/* 00A0BC 800094BC 46060202 */ mul.s $f8, $f0, $f6 +/* 00A0C0 800094C0 46164100 */ add.s $f4, $f8, $f22 +/* 00A0C4 800094C4 E4640000 */ swc1 $f4, ($v1) +/* 00A0C8 800094C8 C7AA0030 */ lwc1 $f10, 0x30($sp) +/* 00A0CC 800094CC 8FB80080 */ lw $t8, 0x80($sp) +/* 00A0D0 800094D0 460A0182 */ mul.s $f6, $f0, $f10 +/* 00A0D4 800094D4 46183400 */ add.s $f16, $f6, $f24 +/* 00A0D8 800094D8 E7100000 */ swc1 $f16, ($t8) +/* 00A0DC 800094DC C7AA0068 */ lwc1 $f10, 0x68($sp) +/* 00A0E0 800094E0 C7A80070 */ lwc1 $f8, 0x70($sp) +/* 00A0E4 800094E4 C4440000 */ lwc1 $f4, ($v0) +/* 00A0E8 800094E8 46088481 */ sub.s $f18, $f16, $f8 +/* 00A0EC 800094EC C7A8006C */ lwc1 $f8, 0x6c($sp) +/* 00A0F0 800094F0 460A2081 */ sub.s $f2, $f4, $f10 +/* 00A0F4 800094F4 C4660000 */ lwc1 $f6, ($v1) +/* 00A0F8 800094F8 46021102 */ mul.s $f4, $f2, $f2 +/* 00A0FC 800094FC 46083381 */ sub.s $f14, $f6, $f8 +/* 00A100 80009500 460E7282 */ mul.s $f10, $f14, $f14 +/* 00A104 80009504 00000000 */ nop +/* 00A108 80009508 46129202 */ mul.s $f8, $f18, $f18 +/* 00A10C 8000950C 460A2180 */ add.s $f6, $f4, $f10 +/* 00A110 80009510 0C0326B4 */ jal sqrtf +/* 00A114 80009514 46064300 */ add.s $f12, $f8, $f6 +/* 00A118 80009518 4459F800 */ cfc1 $t9, $31 +.L8000951C: +/* 00A11C 8000951C 8FBF002C */ lw $ra, 0x2c($sp) +/* 00A120 80009520 37210003 */ ori $at, $t9, 3 +/* 00A124 80009524 38210002 */ xori $at, $at, 2 +/* 00A128 80009528 44C1F800 */ ctc1 $at, $31 +/* 00A12C 8000952C C7B50010 */ lwc1 $f21, 0x10($sp) +/* 00A130 80009530 46000124 */ cvt.w.s $f4, $f0 +/* 00A134 80009534 C7B40014 */ lwc1 $f20, 0x14($sp) +/* 00A138 80009538 44022000 */ mfc1 $v0, $f4 +/* 00A13C 8000953C C7B70018 */ lwc1 $f23, 0x18($sp) +/* 00A140 80009540 C7B6001C */ lwc1 $f22, 0x1c($sp) +/* 00A144 80009544 C7B90020 */ lwc1 $f25, 0x20($sp) +/* 00A148 80009548 C7B80024 */ lwc1 $f24, 0x24($sp) +/* 00A14C 8000954C 44D9F800 */ ctc1 $t9, $31 +/* 00A150 80009550 03E00008 */ jr $ra +/* 00A154 80009554 27BD0068 */ addiu $sp, $sp, 0x68 + diff --git a/asm/non_matchings/unknown_005740/func_80009558.s b/asm/non_matchings/unknown_005740/func_80009558.s new file mode 100644 index 00000000..49aa1b78 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80009558.s @@ -0,0 +1,38 @@ +glabel func_80009558 +/* 00A158 80009558 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 00A15C 8000955C AFA40038 */ sw $a0, 0x38($sp) +/* 00A160 80009560 97AF003A */ lhu $t7, 0x3a($sp) +/* 00A164 80009564 3C0E8012 */ lui $t6, %hi(D_80119C40) # $t6, 0x8012 +/* 00A168 80009568 000FC080 */ sll $t8, $t7, 2 +/* 00A16C 8000956C 8DCE9C40 */ lw $t6, %lo(D_80119C40)($t6) +/* 00A170 80009570 030FC021 */ addu $t8, $t8, $t7 +/* 00A174 80009574 0018C040 */ sll $t8, $t8, 1 +/* 00A178 80009578 93B9004B */ lbu $t9, 0x4b($sp) +/* 00A17C 8000957C AFBF0034 */ sw $ra, 0x34($sp) +/* 00A180 80009580 AFA70044 */ sw $a3, 0x44($sp) +/* 00A184 80009584 01D81021 */ addu $v0, $t6, $t8 +/* 00A188 80009588 94440000 */ lhu $a0, ($v0) +/* 00A18C 8000958C AFB90010 */ sw $t9, 0x10($sp) +/* 00A190 80009590 90480003 */ lbu $t0, 3($v0) +/* 00A194 80009594 44856000 */ mtc1 $a1, $f12 +/* 00A198 80009598 AFA80014 */ sw $t0, 0x14($sp) +/* 00A19C 8000959C 90490002 */ lbu $t1, 2($v0) +/* 00A1A0 800095A0 44867000 */ mtc1 $a2, $f14 +/* 00A1A4 800095A4 AFA90018 */ sw $t1, 0x18($sp) +/* 00A1A8 800095A8 944A0006 */ lhu $t2, 6($v0) +/* 00A1AC 800095AC AFA00020 */ sw $zero, 0x20($sp) +/* 00A1B0 800095B0 AFAA001C */ sw $t2, 0x1c($sp) +/* 00A1B4 800095B4 904B0004 */ lbu $t3, 4($v0) +/* 00A1B8 800095B8 8FAD004C */ lw $t5, 0x4c($sp) +/* 00A1BC 800095BC AFAB0024 */ sw $t3, 0x24($sp) +/* 00A1C0 800095C0 904C0008 */ lbu $t4, 8($v0) +/* 00A1C4 800095C4 44056000 */ mfc1 $a1, $f12 +/* 00A1C8 800095C8 44067000 */ mfc1 $a2, $f14 +/* 00A1CC 800095CC AFAD002C */ sw $t5, 0x2c($sp) +/* 00A1D0 800095D0 0C0025D3 */ jal func_8000974C +/* 00A1D4 800095D4 AFAC0028 */ sw $t4, 0x28($sp) +/* 00A1D8 800095D8 8FBF0034 */ lw $ra, 0x34($sp) +/* 00A1DC 800095DC 27BD0038 */ addiu $sp, $sp, 0x38 +/* 00A1E0 800095E0 03E00008 */ jr $ra +/* 00A1E4 800095E4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800095E8.s b/asm/non_matchings/unknown_005740/func_800095E8.s new file mode 100644 index 00000000..2a71effa --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800095E8.s @@ -0,0 +1,65 @@ +glabel func_800095E8 +/* 00A1E8 800095E8 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 00A1EC 800095EC 4449F800 */ cfc1 $t1, $31 +/* 00A1F0 800095F0 240A0001 */ li $t2, 1 +/* 00A1F4 800095F4 44CAF800 */ ctc1 $t2, $31 +/* 00A1F8 800095F8 C7A40050 */ lwc1 $f4, 0x50($sp) +/* 00A1FC 800095FC 44856000 */ mtc1 $a1, $f12 +/* 00A200 80009600 460021A4 */ cvt.w.s $f6, $f4 +/* 00A204 80009604 44867000 */ mtc1 $a2, $f14 +/* 00A208 80009608 444AF800 */ cfc1 $t2, $31 +/* 00A20C 8000960C 93AF004B */ lbu $t7, 0x4b($sp) +/* 00A210 80009610 93B9004F */ lbu $t9, 0x4f($sp) +/* 00A214 80009614 AFA40038 */ sw $a0, 0x38($sp) +/* 00A218 80009618 308EFFFF */ andi $t6, $a0, 0xffff +/* 00A21C 8000961C 24180064 */ li $t8, 100 +/* 00A220 80009620 24083A98 */ li $t0, 15000 +/* 00A224 80009624 44056000 */ mfc1 $a1, $f12 +/* 00A228 80009628 44067000 */ mfc1 $a2, $f14 +/* 00A22C 8000962C 314A0078 */ andi $t2, $t2, 0x78 +/* 00A230 80009630 01C02025 */ move $a0, $t6 +/* 00A234 80009634 AFBF0034 */ sw $ra, 0x34($sp) +/* 00A238 80009638 AFA70044 */ sw $a3, 0x44($sp) +/* 00A23C 8000963C AFA8001C */ sw $t0, 0x1c($sp) +/* 00A240 80009640 AFB80014 */ sw $t8, 0x14($sp) +/* 00A244 80009644 AFA00020 */ sw $zero, 0x20($sp) +/* 00A248 80009648 AFAF0010 */ sw $t7, 0x10($sp) +/* 00A24C 8000964C 11400013 */ beqz $t2, .L8000969C +/* 00A250 80009650 AFB90018 */ sw $t9, 0x18($sp) +/* 00A254 80009654 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 00A258 80009658 44813000 */ mtc1 $at, $f6 +/* 00A25C 8000965C 240A0001 */ li $t2, 1 +/* 00A260 80009660 46062181 */ sub.s $f6, $f4, $f6 +/* 00A264 80009664 3C018000 */ lui $at, 0x8000 +/* 00A268 80009668 44CAF800 */ ctc1 $t2, $31 +/* 00A26C 8000966C 00000000 */ nop +/* 00A270 80009670 460031A4 */ cvt.w.s $f6, $f6 +/* 00A274 80009674 444AF800 */ cfc1 $t2, $31 +/* 00A278 80009678 00000000 */ nop +/* 00A27C 8000967C 314A0078 */ andi $t2, $t2, 0x78 +/* 00A280 80009680 15400004 */ bnez $t2, .L80009694 +/* 00A284 80009684 00000000 */ nop +/* 00A288 80009688 440A3000 */ mfc1 $t2, $f6 +/* 00A28C 8000968C 10000007 */ b .L800096AC +/* 00A290 80009690 01415025 */ or $t2, $t2, $at +.L80009694: +/* 00A294 80009694 10000005 */ b .L800096AC +/* 00A298 80009698 240AFFFF */ li $t2, -1 +.L8000969C: +/* 00A29C 8000969C 440A3000 */ mfc1 $t2, $f6 +/* 00A2A0 800096A0 00000000 */ nop +/* 00A2A4 800096A4 0540FFFB */ bltz $t2, .L80009694 +/* 00A2A8 800096A8 00000000 */ nop +.L800096AC: +/* 00A2AC 800096AC 8FAC0054 */ lw $t4, 0x54($sp) +/* 00A2B0 800096B0 44C9F800 */ ctc1 $t1, $31 +/* 00A2B4 800096B4 240B003F */ li $t3, 63 +/* 00A2B8 800096B8 AFAB0028 */ sw $t3, 0x28($sp) +/* 00A2BC 800096BC AFAA0024 */ sw $t2, 0x24($sp) +/* 00A2C0 800096C0 0C0025D3 */ jal func_8000974C +/* 00A2C4 800096C4 AFAC002C */ sw $t4, 0x2c($sp) +/* 00A2C8 800096C8 8FBF0034 */ lw $ra, 0x34($sp) +/* 00A2CC 800096CC 27BD0038 */ addiu $sp, $sp, 0x38 +/* 00A2D0 800096D0 03E00008 */ jr $ra +/* 00A2D4 800096D4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800096D8.s b/asm/non_matchings/unknown_005740/func_800096D8.s new file mode 100644 index 00000000..740a63ea --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800096D8.s @@ -0,0 +1,10 @@ +glabel func_800096D8 +/* 00A2D8 800096D8 44856000 */ mtc1 $a1, $f12 +/* 00A2DC 800096DC 44867000 */ mtc1 $a2, $f14 +/* 00A2E0 800096E0 AFA7000C */ sw $a3, 0xc($sp) +/* 00A2E4 800096E4 E48C0000 */ swc1 $f12, ($a0) +/* 00A2E8 800096E8 E48E0004 */ swc1 $f14, 4($a0) +/* 00A2EC 800096EC C7A4000C */ lwc1 $f4, 0xc($sp) +/* 00A2F0 800096F0 03E00008 */ jr $ra +/* 00A2F4 800096F4 E4840008 */ swc1 $f4, 8($a0) + diff --git a/asm/non_matchings/unknown_005740/func_800096F8.s b/asm/non_matchings/unknown_005740/func_800096F8.s new file mode 100644 index 00000000..985145fa --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800096F8.s @@ -0,0 +1,26 @@ +glabel func_800096F8 +/* 00A2F8 800096F8 3C028012 */ lui $v0, %hi(D_80119C44) # $v0, 0x8012 +/* 00A2FC 800096FC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 00A300 80009700 8C429C44 */ lw $v0, %lo(D_80119C44)($v0) +/* 00A304 80009704 AFBF0014 */ sw $ra, 0x14($sp) +/* 00A308 80009708 00002825 */ move $a1, $zero +/* 00A30C 8000970C 24030028 */ li $v1, 40 +.L80009710: +/* 00A310 80009710 8C4E0000 */ lw $t6, ($v0) +/* 00A314 80009714 00000000 */ nop +/* 00A318 80009718 148E0005 */ bne $a0, $t6, .L80009730 +/* 00A31C 8000971C 00000000 */ nop +/* 00A320 80009720 0C0028BA */ jal func_8000A2E8 +/* 00A324 80009724 00A02025 */ move $a0, $a1 +/* 00A328 80009728 10000005 */ b .L80009740 +/* 00A32C 8000972C 8FBF0014 */ lw $ra, 0x14($sp) +.L80009730: +/* 00A330 80009730 24A50001 */ addiu $a1, $a1, 1 +/* 00A334 80009734 14A3FFF6 */ bne $a1, $v1, .L80009710 +/* 00A338 80009738 24420004 */ addiu $v0, $v0, 4 +/* 00A33C 8000973C 8FBF0014 */ lw $ra, 0x14($sp) +.L80009740: +/* 00A340 80009740 27BD0018 */ addiu $sp, $sp, 0x18 +/* 00A344 80009744 03E00008 */ jr $ra +/* 00A348 80009748 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000974C.s b/asm/non_matchings/unknown_005740/func_8000974C.s new file mode 100644 index 00000000..ffff8598 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000974C.s @@ -0,0 +1,93 @@ +glabel func_8000974C +/* 00A34C 8000974C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 00A350 80009750 AFA5001C */ sw $a1, 0x1c($sp) +/* 00A354 80009754 8FA50044 */ lw $a1, 0x44($sp) +/* 00A358 80009758 AFBF0014 */ sw $ra, 0x14($sp) +/* 00A35C 8000975C AFA40018 */ sw $a0, 0x18($sp) +/* 00A360 80009760 AFA60020 */ sw $a2, 0x20($sp) +/* 00A364 80009764 10A00009 */ beqz $a1, .L8000978C +/* 00A368 80009768 AFA70024 */ sw $a3, 0x24($sp) +/* 00A36C 8000976C 97A4001A */ lhu $a0, 0x1a($sp) +/* 00A370 80009770 00000000 */ nop +/* 00A374 80009774 348EE000 */ ori $t6, $a0, 0xe000 +/* 00A378 80009778 000E7C00 */ sll $t7, $t6, 0x10 +/* 00A37C 8000977C 0C00916D */ jal func_800245B4 +/* 00A380 80009780 000F2403 */ sra $a0, $t7, 0x10 +/* 00A384 80009784 8FA50044 */ lw $a1, 0x44($sp) +/* 00A388 80009788 00000000 */ nop +.L8000978C: +/* 00A38C 8000978C 3C04800E */ lui $a0, %hi(D_800DC6E0) # $a0, 0x800e +/* 00A390 80009790 2484C6E0 */ addiu $a0, %lo(D_800DC6E0) # addiu $a0, $a0, -0x3920 +/* 00A394 80009794 94990000 */ lhu $t9, ($a0) +/* 00A398 80009798 24010028 */ li $at, 40 +/* 00A39C 8000979C 17210008 */ bne $t9, $at, .L800097C0 +/* 00A3A0 800097A0 3C068012 */ lui $a2, %hi(D_80119C4C) # $a2, 0x8012 +/* 00A3A4 800097A4 10A00002 */ beqz $a1, .L800097B0 +/* 00A3A8 800097A8 00000000 */ nop +/* 00A3AC 800097AC ACA00000 */ sw $zero, ($a1) +.L800097B0: +/* 00A3B0 800097B0 0C00916D */ jal func_800245B4 +/* 00A3B4 800097B4 2404AA55 */ li $a0, -21931 +/* 00A3B8 800097B8 10000037 */ b .L80009898 +/* 00A3BC 800097BC 8FBF0014 */ lw $ra, 0x14($sp) +.L800097C0: +/* 00A3C0 800097C0 24C69C4C */ addiu $a2, %lo(D_80119C4C) # addiu $a2, $a2, -0x63b4 +/* 00A3C4 800097C4 90C30000 */ lbu $v1, ($a2) +/* 00A3C8 800097C8 3C088012 */ lui $t0, %hi(D_80119C50) # $t0, 0x8012 +/* 00A3CC 800097CC 8D089C50 */ lw $t0, %lo(D_80119C50)($t0) +/* 00A3D0 800097D0 00034880 */ sll $t1, $v1, 2 +/* 00A3D4 800097D4 01095021 */ addu $t2, $t0, $t1 +/* 00A3D8 800097D8 8D420000 */ lw $v0, ($t2) +/* 00A3DC 800097DC C7A4001C */ lwc1 $f4, 0x1c($sp) +/* 00A3E0 800097E0 246BFFFF */ addiu $t3, $v1, -1 +/* 00A3E4 800097E4 A0CB0000 */ sb $t3, ($a2) +/* 00A3E8 800097E8 E4440000 */ swc1 $f4, ($v0) +/* 00A3EC 800097EC C7A60020 */ lwc1 $f6, 0x20($sp) +/* 00A3F0 800097F0 3C0A8012 */ lui $t2, %hi(D_80119C44) # $t2, 0x8012 +/* 00A3F4 800097F4 E4460004 */ swc1 $f6, 4($v0) +/* 00A3F8 800097F8 C7A80024 */ lwc1 $f8, 0x24($sp) +/* 00A3FC 800097FC 00000000 */ nop +/* 00A400 80009800 E4480008 */ swc1 $f8, 8($v0) +/* 00A404 80009804 97AC001A */ lhu $t4, 0x1a($sp) +/* 00A408 80009808 00000000 */ nop +/* 00A40C 8000980C A44C000C */ sh $t4, 0xc($v0) +/* 00A410 80009810 93AD002B */ lbu $t5, 0x2b($sp) +/* 00A414 80009814 00000000 */ nop +/* 00A418 80009818 A04D0011 */ sb $t5, 0x11($v0) +/* 00A41C 8000981C 93AE002F */ lbu $t6, 0x2f($sp) +/* 00A420 80009820 00000000 */ nop +/* 00A424 80009824 A04E0010 */ sb $t6, 0x10($v0) +/* 00A428 80009828 93AF0033 */ lbu $t7, 0x33($sp) +/* 00A42C 8000982C 00000000 */ nop +/* 00A430 80009830 A04F000E */ sb $t7, 0xe($v0) +/* 00A434 80009834 93B8003F */ lbu $t8, 0x3f($sp) +/* 00A438 80009838 00000000 */ nop +/* 00A43C 8000983C A058000F */ sb $t8, 0xf($v0) +/* 00A440 80009840 97B90036 */ lhu $t9, 0x36($sp) +/* 00A444 80009844 00000000 */ nop +/* 00A448 80009848 AC590014 */ sw $t9, 0x14($v0) +/* 00A44C 8000984C 93A8003B */ lbu $t0, 0x3b($sp) +/* 00A450 80009850 00000000 */ nop +/* 00A454 80009854 A0480020 */ sb $t0, 0x20($v0) +/* 00A458 80009858 93A90043 */ lbu $t1, 0x43($sp) +/* 00A45C 8000985C A0400022 */ sb $zero, 0x22($v0) +/* 00A460 80009860 AC45001C */ sw $a1, 0x1c($v0) +/* 00A464 80009864 A0490021 */ sb $t1, 0x21($v0) +/* 00A468 80009868 948B0000 */ lhu $t3, ($a0) +/* 00A46C 8000986C 8D4A9C44 */ lw $t2, %lo(D_80119C44)($t2) +/* 00A470 80009870 000B6080 */ sll $t4, $t3, 2 +/* 00A474 80009874 014C6821 */ addu $t5, $t2, $t4 +/* 00A478 80009878 ADA20000 */ sw $v0, ($t5) +/* 00A47C 8000987C 948E0000 */ lhu $t6, ($a0) +/* 00A480 80009880 00000000 */ nop +/* 00A484 80009884 25CF0001 */ addiu $t7, $t6, 1 +/* 00A488 80009888 10A00002 */ beqz $a1, .L80009894 +/* 00A48C 8000988C A48F0000 */ sh $t7, ($a0) +/* 00A490 80009890 ACA20000 */ sw $v0, ($a1) +.L80009894: +/* 00A494 80009894 8FBF0014 */ lw $ra, 0x14($sp) +.L80009898: +/* 00A498 80009898 27BD0018 */ addiu $sp, $sp, 0x18 +/* 00A49C 8000989C 03E00008 */ jr $ra +/* 00A4A0 800098A0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800098A4.s b/asm/non_matchings/unknown_005740/func_800098A4.s new file mode 100644 index 00000000..7009e27d --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800098A4.s @@ -0,0 +1,53 @@ +glabel func_800098A4 +/* 00A4A4 800098A4 44866000 */ mtc1 $a2, $f12 +/* 00A4A8 800098A8 93A6002F */ lbu $a2, 0x2f($sp) +/* 00A4AC 800098AC AFA40000 */ sw $a0, ($sp) +/* 00A4B0 800098B0 44877000 */ mtc1 $a3, $f14 +/* 00A4B4 800098B4 93A70003 */ lbu $a3, 3($sp) +/* 00A4B8 800098B8 28C10007 */ slti $at, $a2, 7 +/* 00A4BC 800098BC AFA50004 */ sw $a1, 4($sp) +/* 00A4C0 800098C0 10200027 */ beqz $at, .L80009960 +/* 00A4C4 800098C4 30AEFFFF */ andi $t6, $a1, 0xffff +/* 00A4C8 800098C8 93A20033 */ lbu $v0, 0x33($sp) +/* 00A4CC 800098CC 00067880 */ sll $t7, $a2, 2 +/* 00A4D0 800098D0 2841001E */ slti $at, $v0, 0x1e +/* 00A4D4 800098D4 10200022 */ beqz $at, .L80009960 +/* 00A4D8 800098D8 01E67823 */ subu $t7, $t7, $a2 +/* 00A4DC 800098DC 3C188012 */ lui $t8, %hi(D_80119C58) # $t8, 0x8012 +/* 00A4E0 800098E0 0002C880 */ sll $t9, $v0, 2 +/* 00A4E4 800098E4 0322C823 */ subu $t9, $t9, $v0 +/* 00A4E8 800098E8 27189C58 */ addiu $t8, %lo(D_80119C58) # addiu $t8, $t8, -0x63a8 +/* 00A4EC 800098EC 000F79C0 */ sll $t7, $t7, 7 +/* 00A4F0 800098F0 01F81821 */ addu $v1, $t7, $t8 +/* 00A4F4 800098F4 00194080 */ sll $t0, $t9, 2 +/* 00A4F8 800098F8 C7A40010 */ lwc1 $f4, 0x10($sp) +/* 00A4FC 800098FC 00682021 */ addu $a0, $v1, $t0 +/* 00A500 80009900 E48C0004 */ swc1 $f12, 4($a0) +/* 00A504 80009904 E48E0008 */ swc1 $f14, 8($a0) +/* 00A508 80009908 1440000F */ bnez $v0, .L80009948 +/* 00A50C 8000990C E484000C */ swc1 $f4, 0xc($a0) +/* 00A510 80009910 AC6E016C */ sw $t6, 0x16c($v1) +/* 00A514 80009914 97A90026 */ lhu $t1, 0x26($sp) +/* 00A518 80009918 93AA002B */ lbu $t2, 0x2b($sp) +/* 00A51C 8000991C 93AB001B */ lbu $t3, 0x1b($sp) +/* 00A520 80009920 93AC0017 */ lbu $t4, 0x17($sp) +/* 00A524 80009924 93AD001F */ lbu $t5, 0x1f($sp) +/* 00A528 80009928 93AE0023 */ lbu $t6, 0x23($sp) +/* 00A52C 8000992C A0670000 */ sb $a3, ($v1) +/* 00A530 80009930 AC690170 */ sw $t1, 0x170($v1) +/* 00A534 80009934 A06A017D */ sb $t2, 0x17d($v1) +/* 00A538 80009938 A06B0174 */ sb $t3, 0x174($v1) +/* 00A53C 8000993C A06C0175 */ sb $t4, 0x175($v1) +/* 00A540 80009940 A06D0176 */ sb $t5, 0x176($v1) +/* 00A544 80009944 A06E017E */ sb $t6, 0x17e($v1) +.L80009948: +/* 00A548 80009948 806F017C */ lb $t7, 0x17c($v1) +/* 00A54C 8000994C 00000000 */ nop +/* 00A550 80009950 01E2082A */ slt $at, $t7, $v0 +/* 00A554 80009954 10200002 */ beqz $at, .L80009960 +/* 00A558 80009958 00000000 */ nop +/* 00A55C 8000995C A062017C */ sb $v0, 0x17c($v1) +.L80009960: +/* 00A560 80009960 03E00008 */ jr $ra +/* 00A564 80009964 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80009968.s b/asm/non_matchings/unknown_005740/func_80009968.s new file mode 100644 index 00000000..471160ed --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80009968.s @@ -0,0 +1,37 @@ +glabel func_80009968 +/* 00A568 80009968 93A40013 */ lbu $a0, 0x13($sp) +/* 00A56C 8000996C AFA60008 */ sw $a2, 8($sp) +/* 00A570 80009970 28810007 */ slti $at, $a0, 7 +/* 00A574 80009974 AFA7000C */ sw $a3, 0xc($sp) +/* 00A578 80009978 1020001A */ beqz $at, .L800099E4 +/* 00A57C 8000997C 30EE00FF */ andi $t6, $a3, 0xff +/* 00A580 80009980 93A20017 */ lbu $v0, 0x17($sp) +/* 00A584 80009984 00047880 */ sll $t7, $a0, 2 +/* 00A588 80009988 2841000F */ slti $at, $v0, 0xf +/* 00A58C 8000998C 10200015 */ beqz $at, .L800099E4 +/* 00A590 80009990 01E47823 */ subu $t7, $t7, $a0 +/* 00A594 80009994 3C188012 */ lui $t8, %hi(D_8011A6D8) # $t8, 0x8012 +/* 00A598 80009998 0002C880 */ sll $t9, $v0, 2 +/* 00A59C 8000999C 0322C823 */ subu $t9, $t9, $v0 +/* 00A5A0 800099A0 2718A6D8 */ addiu $t8, %lo(D_8011A6D8) # addiu $t8, $t8, -0x5928 +/* 00A5A4 800099A4 000F7980 */ sll $t7, $t7, 6 +/* 00A5A8 800099A8 01F81821 */ addu $v1, $t7, $t8 +/* 00A5AC 800099AC 00194080 */ sll $t0, $t9, 2 +/* 00A5B0 800099B0 C7A40008 */ lwc1 $f4, 8($sp) +/* 00A5B4 800099B4 00682821 */ addu $a1, $v1, $t0 +/* 00A5B8 800099B8 E4AC0004 */ swc1 $f12, 4($a1) +/* 00A5BC 800099BC E4AE0008 */ swc1 $f14, 8($a1) +/* 00A5C0 800099C0 14400002 */ bnez $v0, .L800099CC +/* 00A5C4 800099C4 E4A4000C */ swc1 $f4, 0xc($a1) +/* 00A5C8 800099C8 A06E0000 */ sb $t6, ($v1) +.L800099CC: +/* 00A5CC 800099CC 806900B8 */ lb $t1, 0xb8($v1) +/* 00A5D0 800099D0 00000000 */ nop +/* 00A5D4 800099D4 0122082A */ slt $at, $t1, $v0 +/* 00A5D8 800099D8 10200002 */ beqz $at, .L800099E4 +/* 00A5DC 800099DC 00000000 */ nop +/* 00A5E0 800099E0 A06200B8 */ sb $v0, 0xb8($v1) +.L800099E4: +/* 00A5E4 800099E4 03E00008 */ jr $ra +/* 00A5E8 800099E8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800099EC.s b/asm/non_matchings/unknown_005740/func_800099EC.s new file mode 100644 index 00000000..02b48784 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800099EC.s @@ -0,0 +1,58 @@ +glabel func_800099EC +/* 00A5EC 800099EC 308E00FF */ andi $t6, $a0, 0xff +/* 00A5F0 800099F0 000E7880 */ sll $t7, $t6, 2 +/* 00A5F4 800099F4 01EE7823 */ subu $t7, $t7, $t6 +/* 00A5F8 800099F8 3C188012 */ lui $t8, %hi(D_80119C58) # $t8, 0x8012 +/* 00A5FC 800099FC 27189C58 */ addiu $t8, %lo(D_80119C58) # addiu $t8, $t8, -0x63a8 +/* 00A600 80009A00 000F79C0 */ sll $t7, $t7, 7 +/* 00A604 80009A04 AFA40000 */ sw $a0, ($sp) +/* 00A608 80009A08 01F81021 */ addu $v0, $t7, $t8 +/* 00A60C 80009A0C 8047017C */ lb $a3, 0x17c($v0) +/* 00A610 80009A10 24030001 */ li $v1, 1 +/* 00A614 80009A14 1CE00003 */ bgtz $a3, .L80009A24 +/* 00A618 80009A18 24460004 */ addiu $a2, $v0, 4 +/* 00A61C 80009A1C 03E00008 */ jr $ra +/* 00A620 80009A20 00001025 */ move $v0, $zero + +.L80009A24: +/* 00A624 80009A24 18E00020 */ blez $a3, .L80009AA8 +/* 00A628 80009A28 00002025 */ move $a0, $zero +/* 00A62C 80009A2C 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 00A630 80009A30 44817000 */ mtc1 $at, $f14 +/* 00A634 80009A34 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 00A638 80009A38 44816000 */ mtc1 $at, $f12 +/* 00A63C 80009A3C 3C01800E */ lui $at, %hi(D_800E4F1C) # $at, 0x800e +/* 00A640 80009A40 C4234F18 */ lwc1 $f3, %lo(D_800E4F18)($at) +/* 00A644 80009A44 C4224F1C */ lwc1 $f2, %lo(D_800E4F1C)($at) +/* 00A648 80009A48 8045017C */ lb $a1, 0x17c($v0) +/* 00A64C 80009A4C 00000000 */ nop +.L80009A50: +/* 00A650 80009A50 C4C00000 */ lwc1 $f0, ($a2) +/* 00A654 80009A54 24840001 */ addiu $a0, $a0, 1 +/* 00A658 80009A58 46000121 */ cvt.d.s $f4, $f0 +/* 00A65C 80009A5C 46241032 */ c.eq.d $f2, $f4 +/* 00A660 80009A60 0085082A */ slt $at, $a0, $a1 +/* 00A664 80009A64 4501000D */ bc1t .L80009A9C +/* 00A668 80009A68 00000000 */ nop +/* 00A66C 80009A6C 460C0180 */ add.s $f6, $f0, $f12 +/* 00A670 80009A70 46003221 */ cvt.d.s $f8, $f6 +/* 00A674 80009A74 46281032 */ c.eq.d $f2, $f8 +/* 00A678 80009A78 00000000 */ nop +/* 00A67C 80009A7C 45010007 */ bc1t .L80009A9C +/* 00A680 80009A80 00000000 */ nop +/* 00A684 80009A84 460E0280 */ add.s $f10, $f0, $f14 +/* 00A688 80009A88 46005421 */ cvt.d.s $f16, $f10 +/* 00A68C 80009A8C 46301032 */ c.eq.d $f2, $f16 +/* 00A690 80009A90 00000000 */ nop +/* 00A694 80009A94 45000002 */ bc1f .L80009AA0 +/* 00A698 80009A98 00000000 */ nop +.L80009A9C: +/* 00A69C 80009A9C 00001825 */ move $v1, $zero +.L80009AA0: +/* 00A6A0 80009AA0 1420FFEB */ bnez $at, .L80009A50 +/* 00A6A4 80009AA4 24C6000C */ addiu $a2, $a2, 0xc +.L80009AA8: +/* 00A6A8 80009AA8 00601025 */ move $v0, $v1 +/* 00A6AC 80009AAC 03E00008 */ jr $ra +/* 00A6B0 80009AB0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80009AB4.s b/asm/non_matchings/unknown_005740/func_80009AB4.s new file mode 100644 index 00000000..483ace52 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80009AB4.s @@ -0,0 +1,58 @@ +glabel func_80009AB4 +/* 00A6B4 80009AB4 308E00FF */ andi $t6, $a0, 0xff +/* 00A6B8 80009AB8 000E7880 */ sll $t7, $t6, 2 +/* 00A6BC 80009ABC 01EE7823 */ subu $t7, $t7, $t6 +/* 00A6C0 80009AC0 3C188012 */ lui $t8, %hi(D_8011A6D8) # $t8, 0x8012 +/* 00A6C4 80009AC4 2718A6D8 */ addiu $t8, %lo(D_8011A6D8) # addiu $t8, $t8, -0x5928 +/* 00A6C8 80009AC8 000F7980 */ sll $t7, $t7, 6 +/* 00A6CC 80009ACC AFA40000 */ sw $a0, ($sp) +/* 00A6D0 80009AD0 01F81021 */ addu $v0, $t7, $t8 +/* 00A6D4 80009AD4 804700B8 */ lb $a3, 0xb8($v0) +/* 00A6D8 80009AD8 24030001 */ li $v1, 1 +/* 00A6DC 80009ADC 1CE00003 */ bgtz $a3, .L80009AEC +/* 00A6E0 80009AE0 24460004 */ addiu $a2, $v0, 4 +/* 00A6E4 80009AE4 03E00008 */ jr $ra +/* 00A6E8 80009AE8 00001025 */ move $v0, $zero + +.L80009AEC: +/* 00A6EC 80009AEC 18E00020 */ blez $a3, .L80009B70 +/* 00A6F0 80009AF0 00002025 */ move $a0, $zero +/* 00A6F4 80009AF4 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 00A6F8 80009AF8 44817000 */ mtc1 $at, $f14 +/* 00A6FC 80009AFC 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 00A700 80009B00 44816000 */ mtc1 $at, $f12 +/* 00A704 80009B04 3C01800E */ lui $at, %hi(D_800E4F24) # $at, 0x800e +/* 00A708 80009B08 C4234F20 */ lwc1 $f3, %lo(D_800E4F20)($at) +/* 00A70C 80009B0C C4224F24 */ lwc1 $f2, %lo(D_800E4F24)($at) +/* 00A710 80009B10 804500B8 */ lb $a1, 0xb8($v0) +/* 00A714 80009B14 00000000 */ nop +.L80009B18: +/* 00A718 80009B18 C4C00000 */ lwc1 $f0, ($a2) +/* 00A71C 80009B1C 24840001 */ addiu $a0, $a0, 1 +/* 00A720 80009B20 46000121 */ cvt.d.s $f4, $f0 +/* 00A724 80009B24 46241032 */ c.eq.d $f2, $f4 +/* 00A728 80009B28 0085082A */ slt $at, $a0, $a1 +/* 00A72C 80009B2C 4501000D */ bc1t .L80009B64 +/* 00A730 80009B30 00000000 */ nop +/* 00A734 80009B34 460C0180 */ add.s $f6, $f0, $f12 +/* 00A738 80009B38 46003221 */ cvt.d.s $f8, $f6 +/* 00A73C 80009B3C 46281032 */ c.eq.d $f2, $f8 +/* 00A740 80009B40 00000000 */ nop +/* 00A744 80009B44 45010007 */ bc1t .L80009B64 +/* 00A748 80009B48 00000000 */ nop +/* 00A74C 80009B4C 460E0280 */ add.s $f10, $f0, $f14 +/* 00A750 80009B50 46005421 */ cvt.d.s $f16, $f10 +/* 00A754 80009B54 46301032 */ c.eq.d $f2, $f16 +/* 00A758 80009B58 00000000 */ nop +/* 00A75C 80009B5C 45000002 */ bc1f .L80009B68 +/* 00A760 80009B60 00000000 */ nop +.L80009B64: +/* 00A764 80009B64 00001825 */ move $v1, $zero +.L80009B68: +/* 00A768 80009B68 1420FFEB */ bnez $at, .L80009B18 +/* 00A76C 80009B6C 24C6000C */ addiu $a2, $a2, 0xc +.L80009B70: +/* 00A770 80009B70 00601025 */ move $v0, $v1 +/* 00A774 80009B74 03E00008 */ jr $ra +/* 00A778 80009B78 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80009B7C.s b/asm/non_matchings/unknown_005740/func_80009B7C.s new file mode 100644 index 00000000..053ae281 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80009B7C.s @@ -0,0 +1,134 @@ +glabel func_80009B7C +/* 00A77C 80009B7C 27BDFF28 */ addiu $sp, $sp, -0xd8 +/* 00A780 80009B80 E7B8003C */ swc1 $f24, 0x3c($sp) +/* 00A784 80009B84 E7B4002C */ swc1 $f20, 0x2c($sp) +/* 00A788 80009B88 4486A000 */ mtc1 $a2, $f20 +/* 00A78C 80009B8C 4487C000 */ mtc1 $a3, $f24 +/* 00A790 80009B90 E7B60034 */ swc1 $f22, 0x34($sp) +/* 00A794 80009B94 4485B000 */ mtc1 $a1, $f22 +/* 00A798 80009B98 AFBF0064 */ sw $ra, 0x64($sp) +/* 00A79C 80009B9C 4406C000 */ mfc1 $a2, $f24 +/* 00A7A0 80009BA0 AFBE0060 */ sw $fp, 0x60($sp) +/* 00A7A4 80009BA4 AFB7005C */ sw $s7, 0x5c($sp) +/* 00A7A8 80009BA8 AFB60058 */ sw $s6, 0x58($sp) +/* 00A7AC 80009BAC AFB50054 */ sw $s5, 0x54($sp) +/* 00A7B0 80009BB0 AFB40050 */ sw $s4, 0x50($sp) +/* 00A7B4 80009BB4 AFB3004C */ sw $s3, 0x4c($sp) +/* 00A7B8 80009BB8 AFB20048 */ sw $s2, 0x48($sp) +/* 00A7BC 80009BBC AFB10044 */ sw $s1, 0x44($sp) +/* 00A7C0 80009BC0 AFB00040 */ sw $s0, 0x40($sp) +/* 00A7C4 80009BC4 E7B90038 */ swc1 $f25, 0x38($sp) +/* 00A7C8 80009BC8 E7B70030 */ swc1 $f23, 0x30($sp) +/* 00A7CC 80009BCC E7B50028 */ swc1 $f21, 0x28($sp) +/* 00A7D0 80009BD0 AFA400D8 */ sw $a0, 0xd8($sp) +/* 00A7D4 80009BD4 4600A386 */ mov.s $f14, $f20 +/* 00A7D8 80009BD8 0C00A7C6 */ jal func_80029F18 +/* 00A7DC 80009BDC 4600B306 */ mov.s $f12, $f22 +/* 00A7E0 80009BE0 3C178012 */ lui $s7, %hi(D_8011A6D8) # $s7, 0x8012 +/* 00A7E4 80009BE4 AFA200B0 */ sw $v0, 0xb0($sp) +/* 00A7E8 80009BE8 0000A825 */ move $s5, $zero +/* 00A7EC 80009BEC 24160190 */ li $s6, 400 +/* 00A7F0 80009BF0 26F7A6D8 */ addiu $s7, %lo(D_8011A6D8) # addiu $s7, $s7, -0x5928 +/* 00A7F4 80009BF4 00001825 */ move $v1, $zero +.L80009BF8: +/* 00A7F8 80009BF8 92EE0000 */ lbu $t6, ($s7) +/* 00A7FC 80009BFC AFB700CC */ sw $s7, 0xcc($sp) +/* 00A800 80009C00 11C0003D */ beqz $t6, .L80009CF8 +/* 00A804 80009C04 AFA300D4 */ sw $v1, 0xd4($sp) +/* 00A808 80009C08 306400FF */ andi $a0, $v1, 0xff +/* 00A80C 80009C0C 0C0026AD */ jal func_80009AB4 +/* 00A810 80009C10 AFA300D4 */ sw $v1, 0xd4($sp) +/* 00A814 80009C14 10400039 */ beqz $v0, .L80009CFC +/* 00A818 80009C18 8FA300D4 */ lw $v1, 0xd4($sp) +/* 00A81C 80009C1C 82EF00B8 */ lb $t7, 0xb8($s7) +/* 00A820 80009C20 26FE0004 */ addiu $fp, $s7, 4 +/* 00A824 80009C24 19E00034 */ blez $t7, .L80009CF8 +/* 00A828 80009C28 AFA000D0 */ sw $zero, 0xd0($sp) +.L80009C2C: +/* 00A82C 80009C2C 4406C000 */ mfc1 $a2, $f24 +/* 00A830 80009C30 27B800C4 */ addiu $t8, $sp, 0xc4 +/* 00A834 80009C34 27B900C0 */ addiu $t9, $sp, 0xc0 +/* 00A838 80009C38 27A800BC */ addiu $t0, $sp, 0xbc +/* 00A83C 80009C3C AFA80018 */ sw $t0, 0x18($sp) +/* 00A840 80009C40 AFB90014 */ sw $t9, 0x14($sp) +/* 00A844 80009C44 AFB80010 */ sw $t8, 0x10($sp) +/* 00A848 80009C48 4600B306 */ mov.s $f12, $f22 +/* 00A84C 80009C4C 4600A386 */ mov.s $f14, $f20 +/* 00A850 80009C50 0C0024AA */ jal func_800092A8 +/* 00A854 80009C54 03C03825 */ move $a3, $fp +/* 00A858 80009C58 0056082A */ slt $at, $v0, $s6 +/* 00A85C 80009C5C 1020001D */ beqz $at, .L80009CD4 +/* 00A860 80009C60 00409825 */ move $s3, $v0 +/* 00A864 80009C64 8FA400B0 */ lw $a0, 0xb0($sp) +/* 00A868 80009C68 4405B000 */ mfc1 $a1, $f22 +/* 00A86C 80009C6C 4406C000 */ mfc1 $a2, $f24 +/* 00A870 80009C70 27A7007C */ addiu $a3, $sp, 0x7c +/* 00A874 80009C74 0C00AEAC */ jal func_8002BAB0 +/* 00A878 80009C78 00001025 */ move $v0, $zero +/* 00A87C 80009C7C 18400015 */ blez $v0, .L80009CD4 +/* 00A880 80009C80 27B0007C */ addiu $s0, $sp, 0x7c +/* 00A884 80009C84 00025080 */ sll $t2, $v0, 2 +/* 00A888 80009C88 0150A021 */ addu $s4, $t2, $s0 +.L80009C8C: +/* 00A88C 80009C8C C6040000 */ lwc1 $f4, ($s0) +/* 00A890 80009C90 8FA500C4 */ lw $a1, 0xc4($sp) +/* 00A894 80009C94 4604A03C */ c.lt.s $f20, $f4 +/* 00A898 80009C98 8FA600C0 */ lw $a2, 0xc0($sp) +/* 00A89C 80009C9C 45000009 */ bc1f .L80009CC4 +/* 00A8A0 80009CA0 02E02025 */ move $a0, $s7 +/* 00A8A4 80009CA4 8FA700BC */ lw $a3, 0xbc($sp) +/* 00A8A8 80009CA8 0260B025 */ move $s6, $s3 +/* 00A8AC 80009CAC 0C00275B */ jal func_80009D6C +/* 00A8B0 80009CB0 02A08825 */ move $s1, $s5 +/* 00A8B4 80009CB4 0222082A */ slt $at, $s1, $v0 +/* 00A8B8 80009CB8 10200002 */ beqz $at, .L80009CC4 +/* 00A8BC 80009CBC 00000000 */ nop +/* 00A8C0 80009CC0 305500FF */ andi $s5, $v0, 0xff +.L80009CC4: +/* 00A8C4 80009CC4 26100004 */ addiu $s0, $s0, 4 +/* 00A8C8 80009CC8 0214082B */ sltu $at, $s0, $s4 +/* 00A8CC 80009CCC 1420FFEF */ bnez $at, .L80009C8C +/* 00A8D0 80009CD0 00000000 */ nop +.L80009CD4: +/* 00A8D4 80009CD4 8FA200D0 */ lw $v0, 0xd0($sp) +/* 00A8D8 80009CD8 8FAB00CC */ lw $t3, 0xcc($sp) +/* 00A8DC 80009CDC 24420001 */ addiu $v0, $v0, 1 +/* 00A8E0 80009CE0 AFA200D0 */ sw $v0, 0xd0($sp) +/* 00A8E4 80009CE4 816C00B8 */ lb $t4, 0xb8($t3) +/* 00A8E8 80009CE8 27DE000C */ addiu $fp, $fp, 0xc +/* 00A8EC 80009CEC 004C082A */ slt $at, $v0, $t4 +/* 00A8F0 80009CF0 1420FFCE */ bnez $at, .L80009C2C +/* 00A8F4 80009CF4 00000000 */ nop +.L80009CF8: +/* 00A8F8 80009CF8 8FA300D4 */ lw $v1, 0xd4($sp) +.L80009CFC: +/* 00A8FC 80009CFC 24010007 */ li $at, 7 +/* 00A900 80009D00 24630001 */ addiu $v1, $v1, 1 +/* 00A904 80009D04 1461FFBC */ bne $v1, $at, .L80009BF8 +/* 00A908 80009D08 26F700C0 */ addiu $s7, $s7, 0xc0 +/* 00A90C 80009D0C 8FA400D8 */ lw $a0, 0xd8($sp) +/* 00A910 80009D10 24050100 */ li $a1, 256 +/* 00A914 80009D14 10800004 */ beqz $a0, .L80009D28 +/* 00A918 80009D18 8FBF0064 */ lw $ra, 0x64($sp) +/* 00A91C 80009D1C 0C00127E */ jal func_800049F8 +/* 00A920 80009D20 02A03025 */ move $a2, $s5 +/* 00A924 80009D24 8FBF0064 */ lw $ra, 0x64($sp) +.L80009D28: +/* 00A928 80009D28 C7B50028 */ lwc1 $f21, 0x28($sp) +/* 00A92C 80009D2C C7B4002C */ lwc1 $f20, 0x2c($sp) +/* 00A930 80009D30 C7B70030 */ lwc1 $f23, 0x30($sp) +/* 00A934 80009D34 C7B60034 */ lwc1 $f22, 0x34($sp) +/* 00A938 80009D38 C7B90038 */ lwc1 $f25, 0x38($sp) +/* 00A93C 80009D3C C7B8003C */ lwc1 $f24, 0x3c($sp) +/* 00A940 80009D40 8FB00040 */ lw $s0, 0x40($sp) +/* 00A944 80009D44 8FB10044 */ lw $s1, 0x44($sp) +/* 00A948 80009D48 8FB20048 */ lw $s2, 0x48($sp) +/* 00A94C 80009D4C 8FB3004C */ lw $s3, 0x4c($sp) +/* 00A950 80009D50 8FB40050 */ lw $s4, 0x50($sp) +/* 00A954 80009D54 8FB50054 */ lw $s5, 0x54($sp) +/* 00A958 80009D58 8FB60058 */ lw $s6, 0x58($sp) +/* 00A95C 80009D5C 8FB7005C */ lw $s7, 0x5c($sp) +/* 00A960 80009D60 8FBE0060 */ lw $fp, 0x60($sp) +/* 00A964 80009D64 03E00008 */ jr $ra +/* 00A968 80009D68 27BD00D8 */ addiu $sp, $sp, 0xd8 + diff --git a/asm/non_matchings/unknown_005740/func_80009D6C.s b/asm/non_matchings/unknown_005740/func_80009D6C.s new file mode 100644 index 00000000..5c1e6987 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80009D6C.s @@ -0,0 +1,384 @@ +glabel func_80009D6C +/* 00A96C 80009D6C 27BDFF68 */ addiu $sp, $sp, -0x98 +/* 00A970 80009D70 E7B80024 */ swc1 $f24, 0x24($sp) +/* 00A974 80009D74 AFBF004C */ sw $ra, 0x4c($sp) +/* 00A978 80009D78 AFB10048 */ sw $s1, 0x48($sp) +/* 00A97C 80009D7C AFB00044 */ sw $s0, 0x44($sp) +/* 00A980 80009D80 E7BF0038 */ swc1 $f31, 0x38($sp) +/* 00A984 80009D84 E7BE003C */ swc1 $f30, 0x3c($sp) +/* 00A988 80009D88 E7BD0030 */ swc1 $f29, 0x30($sp) +/* 00A98C 80009D8C E7BC0034 */ swc1 $f28, 0x34($sp) +/* 00A990 80009D90 E7BB0028 */ swc1 $f27, 0x28($sp) +/* 00A994 80009D94 E7BA002C */ swc1 $f26, 0x2c($sp) +/* 00A998 80009D98 E7B90020 */ swc1 $f25, 0x20($sp) +/* 00A99C 80009D9C E7B70018 */ swc1 $f23, 0x18($sp) +/* 00A9A0 80009DA0 E7B6001C */ swc1 $f22, 0x1c($sp) +/* 00A9A4 80009DA4 E7B50010 */ swc1 $f21, 0x10($sp) +/* 00A9A8 80009DA8 E7B40014 */ swc1 $f20, 0x14($sp) +/* 00A9AC 80009DAC AFA5009C */ sw $a1, 0x9c($sp) +/* 00A9B0 80009DB0 AFA600A0 */ sw $a2, 0xa0($sp) +/* 00A9B4 80009DB4 AFA700A4 */ sw $a3, 0xa4($sp) +/* 00A9B8 80009DB8 4480C000 */ mtc1 $zero, $f24 +/* 00A9BC 80009DBC C48400BC */ lwc1 $f4, 0xbc($a0) +/* 00A9C0 80009DC0 00808825 */ move $s1, $a0 +/* 00A9C4 80009DC4 4604C032 */ c.eq.s $f24, $f4 +/* 00A9C8 80009DC8 00000000 */ nop +/* 00A9CC 80009DCC 45000028 */ bc1f .L80009E70 +/* 00A9D0 80009DD0 26300004 */ addiu $s0, $s1, 4 +/* 00A9D4 80009DD4 808E00B8 */ lb $t6, 0xb8($a0) +/* 00A9D8 80009DD8 24900004 */ addiu $s0, $a0, 4 +/* 00A9DC 80009DDC 448E3000 */ mtc1 $t6, $f6 +/* 00A9E0 80009DE0 4600C506 */ mov.s $f20, $f24 +/* 00A9E4 80009DE4 46803220 */ cvt.s.w $f8, $f6 +/* 00A9E8 80009DE8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 00A9EC 80009DEC 4608C03C */ c.lt.s $f24, $f8 +/* 00A9F0 80009DF0 00000000 */ nop +/* 00A9F4 80009DF4 4500001D */ bc1f .L80009E6C +/* 00A9F8 80009DF8 00000000 */ nop +/* 00A9FC 80009DFC 4481B000 */ mtc1 $at, $f22 +/* 00AA00 80009E00 00000000 */ nop +.L80009E04: +/* 00AA04 80009E04 C60A000C */ lwc1 $f10, 0xc($s0) +/* 00AA08 80009E08 C6040000 */ lwc1 $f4, ($s0) +/* 00AA0C 80009E0C C6060010 */ lwc1 $f6, 0x10($s0) +/* 00AA10 80009E10 C6080004 */ lwc1 $f8, 4($s0) +/* 00AA14 80009E14 46045001 */ sub.s $f0, $f10, $f4 +/* 00AA18 80009E18 C6040008 */ lwc1 $f4, 8($s0) +/* 00AA1C 80009E1C 46083081 */ sub.s $f2, $f6, $f8 +/* 00AA20 80009E20 C60A0014 */ lwc1 $f10, 0x14($s0) +/* 00AA24 80009E24 46000182 */ mul.s $f6, $f0, $f0 +/* 00AA28 80009E28 46045381 */ sub.s $f14, $f10, $f4 +/* 00AA2C 80009E2C 46021202 */ mul.s $f8, $f2, $f2 +/* 00AA30 80009E30 00000000 */ nop +/* 00AA34 80009E34 460E7102 */ mul.s $f4, $f14, $f14 +/* 00AA38 80009E38 46083280 */ add.s $f10, $f6, $f8 +/* 00AA3C 80009E3C 0C0326B4 */ jal sqrtf +/* 00AA40 80009E40 46045300 */ add.s $f12, $f10, $f4 +/* 00AA44 80009E44 822F00B8 */ lb $t7, 0xb8($s1) +/* 00AA48 80009E48 4616A500 */ add.s $f20, $f20, $f22 +/* 00AA4C 80009E4C 448F5000 */ mtc1 $t7, $f10 +/* 00AA50 80009E50 C62600BC */ lwc1 $f6, 0xbc($s1) +/* 00AA54 80009E54 46805120 */ cvt.s.w $f4, $f10 +/* 00AA58 80009E58 2610000C */ addiu $s0, $s0, 0xc +/* 00AA5C 80009E5C 4604A03C */ c.lt.s $f20, $f4 +/* 00AA60 80009E60 46003200 */ add.s $f8, $f6, $f0 +/* 00AA64 80009E64 4501FFE7 */ bc1t .L80009E04 +/* 00AA68 80009E68 E62800BC */ swc1 $f8, 0xbc($s1) +.L80009E6C: +/* 00AA6C 80009E6C 26300004 */ addiu $s0, $s1, 4 +.L80009E70: +/* 00AA70 80009E70 4600C406 */ mov.s $f16, $f24 +/* 00AA74 80009E74 00001025 */ move $v0, $zero +.L80009E78: +/* 00AA78 80009E78 C6160000 */ lwc1 $f22, ($s0) +/* 00AA7C 80009E7C C614000C */ lwc1 $f20, 0xc($s0) +/* 00AA80 80009E80 C61E0004 */ lwc1 $f30, 4($s0) +/* 00AA84 80009E84 4616A601 */ sub.s $f24, $f20, $f22 +/* 00AA88 80009E88 C6000010 */ lwc1 $f0, 0x10($s0) +/* 00AA8C 80009E8C 4618C182 */ mul.s $f6, $f24, $f24 +/* 00AA90 80009E90 461E0681 */ sub.s $f26, $f0, $f30 +/* 00AA94 80009E94 C6120008 */ lwc1 $f18, 8($s0) +/* 00AA98 80009E98 C6020014 */ lwc1 $f2, 0x14($s0) +/* 00AA9C 80009E9C 461AD202 */ mul.s $f8, $f26, $f26 +/* 00AAA0 80009EA0 46121701 */ sub.s $f28, $f2, $f18 +/* 00AAA4 80009EA4 E7B0005C */ swc1 $f16, 0x5c($sp) +/* 00AAA8 80009EA8 A3A20057 */ sb $v0, 0x57($sp) +/* 00AAAC 80009EAC 461CE102 */ mul.s $f4, $f28, $f28 +/* 00AAB0 80009EB0 46083280 */ add.s $f10, $f6, $f8 +/* 00AAB4 80009EB4 E7B2007C */ swc1 $f18, 0x7c($sp) +/* 00AAB8 80009EB8 0C0326B4 */ jal sqrtf +/* 00AABC 80009EBC 46045300 */ add.s $f12, $f10, $f4 +/* 00AAC0 80009EC0 C7A6009C */ lwc1 $f6, 0x9c($sp) +/* 00AAC4 80009EC4 93A20057 */ lbu $v0, 0x57($sp) +/* 00AAC8 80009EC8 4606B03E */ c.le.s $f22, $f6 +/* 00AACC 80009ECC C7B0005C */ lwc1 $f16, 0x5c($sp) +/* 00AAD0 80009ED0 C7B2007C */ lwc1 $f18, 0x7c($sp) +/* 00AAD4 80009ED4 45000005 */ bc1f .L80009EEC +/* 00AAD8 80009ED8 00000000 */ nop +/* 00AADC 80009EDC 4614303E */ c.le.s $f6, $f20 +/* 00AAE0 80009EE0 00000000 */ nop +/* 00AAE4 80009EE4 4501000B */ bc1t .L80009F14 +/* 00AAE8 80009EE8 00000000 */ nop +.L80009EEC: +/* 00AAEC 80009EEC C7A8009C */ lwc1 $f8, 0x9c($sp) +/* 00AAF0 80009EF0 00000000 */ nop +/* 00AAF4 80009EF4 4608A03E */ c.le.s $f20, $f8 +/* 00AAF8 80009EF8 00000000 */ nop +/* 00AAFC 80009EFC 45000048 */ bc1f .L8000A020 +/* 00AB00 80009F00 00000000 */ nop +/* 00AB04 80009F04 4616403E */ c.le.s $f8, $f22 +/* 00AB08 80009F08 00000000 */ nop +/* 00AB0C 80009F0C 45000044 */ bc1f .L8000A020 +/* 00AB10 80009F10 00000000 */ nop +.L80009F14: +/* 00AB14 80009F14 44805000 */ mtc1 $zero, $f10 +/* 00AB18 80009F18 C7A4009C */ lwc1 $f4, 0x9c($sp) +/* 00AB1C 80009F1C 460AC032 */ c.eq.s $f24, $f10 +/* 00AB20 80009F20 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 00AB24 80009F24 45010004 */ bc1t .L80009F38 +/* 00AB28 80009F28 00000000 */ nop +/* 00AB2C 80009F2C 46162181 */ sub.s $f6, $f4, $f22 +/* 00AB30 80009F30 10000012 */ b .L80009F7C +/* 00AB34 80009F34 46183303 */ div.s $f12, $f6, $f24 +.L80009F38: +/* 00AB38 80009F38 44801000 */ mtc1 $zero, $f2 +/* 00AB3C 80009F3C C7A800A0 */ lwc1 $f8, 0xa0($sp) +/* 00AB40 80009F40 4602D032 */ c.eq.s $f26, $f2 +/* 00AB44 80009F44 00000000 */ nop +/* 00AB48 80009F48 45010004 */ bc1t .L80009F5C +/* 00AB4C 80009F4C 00000000 */ nop +/* 00AB50 80009F50 461E4281 */ sub.s $f10, $f8, $f30 +/* 00AB54 80009F54 10000009 */ b .L80009F7C +/* 00AB58 80009F58 461A5303 */ div.s $f12, $f10, $f26 +.L80009F5C: +/* 00AB5C 80009F5C 4602E032 */ c.eq.s $f28, $f2 +/* 00AB60 80009F60 C7A400A4 */ lwc1 $f4, 0xa4($sp) +/* 00AB64 80009F64 45010004 */ bc1t .L80009F78 +/* 00AB68 80009F68 00000000 */ nop +/* 00AB6C 80009F6C 46122181 */ sub.s $f6, $f4, $f18 +/* 00AB70 80009F70 10000002 */ b .L80009F7C +/* 00AB74 80009F74 461C3303 */ div.s $f12, $f6, $f28 +.L80009F78: +/* 00AB78 80009F78 46001306 */ mov.s $f12, $f2 +.L80009F7C: +/* 00AB7C 80009F7C 460CD202 */ mul.s $f8, $f26, $f12 +/* 00AB80 80009F80 C7AA00A0 */ lwc1 $f10, 0xa0($sp) +/* 00AB84 80009F84 44813000 */ mtc1 $at, $f6 +/* 00AB88 80009F88 C7A400A0 */ lwc1 $f4, 0xa0($sp) +/* 00AB8C 80009F8C 461E4080 */ add.s $f2, $f8, $f30 +/* 00AB90 80009F90 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 00AB94 80009F94 4602503E */ c.le.s $f10, $f2 +/* 00AB98 80009F98 00000000 */ nop +/* 00AB9C 80009F9C 45000003 */ bc1f .L80009FAC +/* 00ABA0 80009FA0 00000000 */ nop +/* 00ABA4 80009FA4 10000003 */ b .L80009FB4 +/* 00ABA8 80009FA8 460A1381 */ sub.s $f14, $f2, $f10 +.L80009FAC: +/* 00ABAC 80009FAC 46041381 */ sub.s $f14, $f2, $f4 +/* 00ABB0 80009FB0 46007387 */ neg.s $f14, $f14 +.L80009FB4: +/* 00ABB4 80009FB4 4606703C */ c.lt.s $f14, $f6 +/* 00ABB8 80009FB8 00000000 */ nop +/* 00ABBC 80009FBC 45000016 */ bc1f .L8000A018 +/* 00ABC0 80009FC0 00000000 */ nop +/* 00ABC4 80009FC4 460CE202 */ mul.s $f8, $f28, $f12 +/* 00ABC8 80009FC8 C7AA00A4 */ lwc1 $f10, 0xa4($sp) +/* 00ABCC 80009FCC 44813000 */ mtc1 $at, $f6 +/* 00ABD0 80009FD0 C7A400A4 */ lwc1 $f4, 0xa4($sp) +/* 00ABD4 80009FD4 46124080 */ add.s $f2, $f8, $f18 +/* 00ABD8 80009FD8 4602503E */ c.le.s $f10, $f2 +/* 00ABDC 80009FDC 00000000 */ nop +/* 00ABE0 80009FE0 45000003 */ bc1f .L80009FF0 +/* 00ABE4 80009FE4 00000000 */ nop +/* 00ABE8 80009FE8 10000003 */ b .L80009FF8 +/* 00ABEC 80009FEC 460A1381 */ sub.s $f14, $f2, $f10 +.L80009FF0: +/* 00ABF0 80009FF0 46041381 */ sub.s $f14, $f2, $f4 +/* 00ABF4 80009FF4 46007387 */ neg.s $f14, $f14 +.L80009FF8: +/* 00ABF8 80009FF8 4606703C */ c.lt.s $f14, $f6 +/* 00ABFC 80009FFC 00000000 */ nop +/* 00AC00 8000A000 45000005 */ bc1f .L8000A018 +/* 00AC04 8000A004 00000000 */ nop +/* 00AC08 8000A008 46006202 */ mul.s $f8, $f12, $f0 +/* 00AC0C 8000A00C 24020001 */ li $v0, 1 +/* 00AC10 8000A010 10000004 */ b .L8000A024 +/* 00AC14 8000A014 46088400 */ add.s $f16, $f16, $f8 +.L8000A018: +/* 00AC18 8000A018 10000002 */ b .L8000A024 +/* 00AC1C 8000A01C 46008400 */ add.s $f16, $f16, $f0 +.L8000A020: +/* 00AC20 8000A020 46008400 */ add.s $f16, $f16, $f0 +.L8000A024: +/* 00AC24 8000A024 1040FF94 */ beqz $v0, .L80009E78 +/* 00AC28 8000A028 2610000C */ addiu $s0, $s0, 0xc +/* 00AC2C 8000A02C 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 00AC30 8000A030 44815000 */ mtc1 $at, $f10 +/* 00AC34 8000A034 C62000BC */ lwc1 $f0, 0xbc($s1) +/* 00AC38 8000A038 8FB00044 */ lw $s0, 0x44($sp) +/* 00AC3C 8000A03C 460A0103 */ div.s $f4, $f0, $f10 +/* 00AC40 8000A040 8FBF004C */ lw $ra, 0x4c($sp) +/* 00AC44 8000A044 3C014396 */ li $at, 0x43960000 # 300.000000 +/* 00AC48 8000A048 4610203C */ c.lt.s $f4, $f16 +/* 00AC4C 8000A04C 00000000 */ nop +/* 00AC50 8000A050 45000002 */ bc1f .L8000A05C +/* 00AC54 8000A054 00000000 */ nop +/* 00AC58 8000A058 46100401 */ sub.s $f16, $f0, $f16 +.L8000A05C: +/* 00AC5C 8000A05C 44810000 */ mtc1 $at, $f0 +/* 00AC60 8000A060 00000000 */ nop +/* 00AC64 8000A064 4600803C */ c.lt.s $f16, $f0 +/* 00AC68 8000A068 00000000 */ nop +/* 00AC6C 8000A06C 45000034 */ bc1f .L8000A140 +/* 00AC70 8000A070 00000000 */ nop +/* 00AC74 8000A074 92380000 */ lbu $t8, ($s1) +/* 00AC78 8000A078 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 00AC7C 8000A07C 44983000 */ mtc1 $t8, $f6 +/* 00AC80 8000A080 07010004 */ bgez $t8, .L8000A094 +/* 00AC84 8000A084 46803220 */ cvt.s.w $f8, $f6 +/* 00AC88 8000A088 44815000 */ mtc1 $at, $f10 +/* 00AC8C 8000A08C 00000000 */ nop +/* 00AC90 8000A090 460A4200 */ add.s $f8, $f8, $f10 +.L8000A094: +/* 00AC94 8000A094 46104102 */ mul.s $f4, $f8, $f16 +/* 00AC98 8000A098 24020001 */ li $v0, 1 +/* 00AC9C 8000A09C 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 +/* 00ACA0 8000A0A0 46002183 */ div.s $f6, $f4, $f0 +/* 00ACA4 8000A0A4 4459F800 */ cfc1 $t9, $31 +/* 00ACA8 8000A0A8 44C2F800 */ ctc1 $v0, $31 +/* 00ACAC 8000A0AC 00000000 */ nop +/* 00ACB0 8000A0B0 460032A4 */ cvt.w.s $f10, $f6 +/* 00ACB4 8000A0B4 4442F800 */ cfc1 $v0, $31 +/* 00ACB8 8000A0B8 00000000 */ nop +/* 00ACBC 8000A0BC 30420078 */ andi $v0, $v0, 0x78 +/* 00ACC0 8000A0C0 10400018 */ beqz $v0, .L8000A124 +/* 00ACC4 8000A0C4 00000000 */ nop +/* 00ACC8 8000A0C8 44815000 */ mtc1 $at, $f10 +/* 00ACCC 8000A0CC 24020001 */ li $v0, 1 +/* 00ACD0 8000A0D0 460A3281 */ sub.s $f10, $f6, $f10 +/* 00ACD4 8000A0D4 3C018000 */ lui $at, 0x8000 +/* 00ACD8 8000A0D8 44C2F800 */ ctc1 $v0, $31 +/* 00ACDC 8000A0DC 00000000 */ nop +/* 00ACE0 8000A0E0 460052A4 */ cvt.w.s $f10, $f10 +/* 00ACE4 8000A0E4 4442F800 */ cfc1 $v0, $31 +/* 00ACE8 8000A0E8 00000000 */ nop +/* 00ACEC 8000A0EC 30420078 */ andi $v0, $v0, 0x78 +/* 00ACF0 8000A0F0 14400008 */ bnez $v0, .L8000A114 +/* 00ACF4 8000A0F4 2402FFFF */ li $v0, -1 +/* 00ACF8 8000A0F8 44025000 */ mfc1 $v0, $f10 +/* 00ACFC 8000A0FC 44D9F800 */ ctc1 $t9, $31 +/* 00AD00 8000A100 00411025 */ or $v0, $v0, $at +/* 00AD04 8000A104 304800FF */ andi $t0, $v0, 0xff +/* 00AD08 8000A108 1000000F */ b .L8000A148 +/* 00AD0C 8000A10C 01001025 */ move $v0, $t0 +.L8000A110: +/* 00AD10 8000A110 2402FFFF */ li $v0, -1 +.L8000A114: +/* 00AD14 8000A114 304800FF */ andi $t0, $v0, 0xff +/* 00AD18 8000A118 44D9F800 */ ctc1 $t9, $31 +/* 00AD1C 8000A11C 1000000A */ b .L8000A148 +/* 00AD20 8000A120 01001025 */ move $v0, $t0 +.L8000A124: +/* 00AD24 8000A124 44025000 */ mfc1 $v0, $f10 +/* 00AD28 8000A128 00000000 */ nop +/* 00AD2C 8000A12C 0440FFF8 */ bltz $v0, .L8000A110 +/* 00AD30 8000A130 304800FF */ andi $t0, $v0, 0xff +/* 00AD34 8000A134 44D9F800 */ ctc1 $t9, $31 +/* 00AD38 8000A138 10000003 */ b .L8000A148 +/* 00AD3C 8000A13C 01001025 */ move $v0, $t0 +.L8000A140: +/* 00AD40 8000A140 92220000 */ lbu $v0, ($s1) +/* 00AD44 8000A144 00000000 */ nop +.L8000A148: +/* 00AD48 8000A148 C7B50010 */ lwc1 $f21, 0x10($sp) +/* 00AD4C 8000A14C C7B40014 */ lwc1 $f20, 0x14($sp) +/* 00AD50 8000A150 C7B70018 */ lwc1 $f23, 0x18($sp) +/* 00AD54 8000A154 C7B6001C */ lwc1 $f22, 0x1c($sp) +/* 00AD58 8000A158 C7B90020 */ lwc1 $f25, 0x20($sp) +/* 00AD5C 8000A15C C7B80024 */ lwc1 $f24, 0x24($sp) +/* 00AD60 8000A160 C7BB0028 */ lwc1 $f27, 0x28($sp) +/* 00AD64 8000A164 C7BA002C */ lwc1 $f26, 0x2c($sp) +/* 00AD68 8000A168 C7BD0030 */ lwc1 $f29, 0x30($sp) +/* 00AD6C 8000A16C C7BC0034 */ lwc1 $f28, 0x34($sp) +/* 00AD70 8000A170 C7BF0038 */ lwc1 $f31, 0x38($sp) +/* 00AD74 8000A174 C7BE003C */ lwc1 $f30, 0x3c($sp) +/* 00AD78 8000A178 8FB10048 */ lw $s1, 0x48($sp) +/* 00AD7C 8000A17C 03E00008 */ jr $ra +/* 00AD80 8000A180 27BD0098 */ addiu $sp, $sp, 0x98 + +/* 00AD84 8000A184 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 00AD88 8000A188 AFBE0048 */ sw $fp, 0x48($sp) +/* 00AD8C 8000A18C AFB70044 */ sw $s7, 0x44($sp) +/* 00AD90 8000A190 AFB60040 */ sw $s6, 0x40($sp) +/* 00AD94 8000A194 AFB5003C */ sw $s5, 0x3c($sp) +/* 00AD98 8000A198 AFB40038 */ sw $s4, 0x38($sp) +/* 00AD9C 8000A19C AFB30034 */ sw $s3, 0x34($sp) +/* 00ADA0 8000A1A0 3C168012 */ lui $s6, %hi(D_80119C58) # $s6, 0x8012 +/* 00ADA4 8000A1A4 3C178012 */ lui $s7, %hi(D_80119C5C) # $s7, 0x8012 +/* 00ADA8 8000A1A8 3C1E8012 */ lui $fp, %hi(D_8011A6DC) # $fp, 0x8012 +/* 00ADAC 8000A1AC 00809825 */ move $s3, $a0 +/* 00ADB0 8000A1B0 00A0A025 */ move $s4, $a1 +/* 00ADB4 8000A1B4 00C0A825 */ move $s5, $a2 +/* 00ADB8 8000A1B8 AFBF004C */ sw $ra, 0x4c($sp) +/* 00ADBC 8000A1BC AFB20030 */ sw $s2, 0x30($sp) +/* 00ADC0 8000A1C0 AFB1002C */ sw $s1, 0x2c($sp) +/* 00ADC4 8000A1C4 AFB00028 */ sw $s0, 0x28($sp) +/* 00ADC8 8000A1C8 27DEA6DC */ addiu $fp, %lo(D_8011A6DC) # addiu $fp, $fp, -0x5924 +/* 00ADCC 8000A1CC 26F79C5C */ addiu $s7, %lo(D_80119C5C) # addiu $s7, $s7, -0x63a4 +/* 00ADD0 8000A1D0 26D69C58 */ addiu $s6, %lo(D_80119C58) # addiu $s6, $s6, -0x63a8 +.L8000A1D4: +/* 00ADD4 8000A1D4 8ECE016C */ lw $t6, 0x16c($s6) +/* 00ADD8 8000A1D8 02C09025 */ move $s2, $s6 +/* 00ADDC 8000A1DC 11C00013 */ beqz $t6, .L8000A22C +/* 00ADE0 8000A1E0 02E08825 */ move $s1, $s7 +/* 00ADE4 8000A1E4 82CF017C */ lb $t7, 0x17c($s6) +/* 00ADE8 8000A1E8 00008025 */ move $s0, $zero +/* 00ADEC 8000A1EC 19E0000F */ blez $t7, .L8000A22C +.L8000A1F0: +/* 00ADF0 8000A1F0 241800FF */ li $t8, 255 +/* 00ADF4 8000A1F4 241900FF */ li $t9, 255 +/* 00ADF8 8000A1F8 AFB90014 */ sw $t9, 0x14($sp) +/* 00ADFC 8000A1FC AFB80010 */ sw $t8, 0x10($sp) +/* 00AE00 8000A200 02602025 */ move $a0, $s3 +/* 00AE04 8000A204 02802825 */ move $a1, $s4 +/* 00AE08 8000A208 02A03025 */ move $a2, $s5 +/* 00AE0C 8000A20C 02203825 */ move $a3, $s1 +/* 00AE10 8000A210 0C002905 */ jal func_8000A414 +/* 00AE14 8000A214 AFA00018 */ sw $zero, 0x18($sp) +/* 00AE18 8000A218 8248017C */ lb $t0, 0x17c($s2) +/* 00AE1C 8000A21C 26100001 */ addiu $s0, $s0, 1 +/* 00AE20 8000A220 0208082A */ slt $at, $s0, $t0 +/* 00AE24 8000A224 1420FFF2 */ bnez $at, .L8000A1F0 +/* 00AE28 8000A228 2631000C */ addiu $s1, $s1, 0xc +.L8000A22C: +/* 00AE2C 8000A22C 26F70180 */ addiu $s7, $s7, 0x180 +/* 00AE30 8000A230 02FE082B */ sltu $at, $s7, $fp +/* 00AE34 8000A234 1420FFE7 */ bnez $at, .L8000A1D4 +/* 00AE38 8000A238 26D60180 */ addiu $s6, $s6, 0x180 +/* 00AE3C 8000A23C 3C168012 */ lui $s6, %hi(D_8011A6D8) # $s6, 0x8012 +/* 00AE40 8000A240 3C178012 */ lui $s7, %hi(D_8011A6DC) # $s7, 0x8012 +/* 00AE44 8000A244 3C1E8012 */ lui $fp, %hi(D_8011AC1C) # $fp, 0x8012 +/* 00AE48 8000A248 27DEAC1C */ addiu $fp, %lo(D_8011AC1C) # addiu $fp, $fp, -0x53e4 +/* 00AE4C 8000A24C 26F7A6DC */ addiu $s7, %lo(D_8011A6DC) # addiu $s7, $s7, -0x5924 +/* 00AE50 8000A250 26D6A6D8 */ addiu $s6, %lo(D_8011A6D8) # addiu $s6, $s6, -0x5928 +.L8000A254: +/* 00AE54 8000A254 92C90000 */ lbu $t1, ($s6) +/* 00AE58 8000A258 02C09025 */ move $s2, $s6 +/* 00AE5C 8000A25C 11200013 */ beqz $t1, .L8000A2AC +/* 00AE60 8000A260 02E08825 */ move $s1, $s7 +/* 00AE64 8000A264 82CA00B8 */ lb $t2, 0xb8($s6) +/* 00AE68 8000A268 00008025 */ move $s0, $zero +/* 00AE6C 8000A26C 1940000F */ blez $t2, .L8000A2AC +.L8000A270: +/* 00AE70 8000A270 240B00FF */ li $t3, 255 +/* 00AE74 8000A274 240C00FF */ li $t4, 255 +/* 00AE78 8000A278 AFAC0018 */ sw $t4, 0x18($sp) +/* 00AE7C 8000A27C AFAB0010 */ sw $t3, 0x10($sp) +/* 00AE80 8000A280 02602025 */ move $a0, $s3 +/* 00AE84 8000A284 02802825 */ move $a1, $s4 +/* 00AE88 8000A288 02A03025 */ move $a2, $s5 +/* 00AE8C 8000A28C 02203825 */ move $a3, $s1 +/* 00AE90 8000A290 0C002905 */ jal func_8000A414 +/* 00AE94 8000A294 AFA00014 */ sw $zero, 0x14($sp) +/* 00AE98 8000A298 824D00B8 */ lb $t5, 0xb8($s2) +/* 00AE9C 8000A29C 26100001 */ addiu $s0, $s0, 1 +/* 00AEA0 8000A2A0 020D082A */ slt $at, $s0, $t5 +/* 00AEA4 8000A2A4 1420FFF2 */ bnez $at, .L8000A270 +/* 00AEA8 8000A2A8 2631000C */ addiu $s1, $s1, 0xc +.L8000A2AC: +/* 00AEAC 8000A2AC 26F700C0 */ addiu $s7, $s7, 0xc0 +/* 00AEB0 8000A2B0 16FEFFE8 */ bne $s7, $fp, .L8000A254 +/* 00AEB4 8000A2B4 26D600C0 */ addiu $s6, $s6, 0xc0 +/* 00AEB8 8000A2B8 8FBF004C */ lw $ra, 0x4c($sp) +/* 00AEBC 8000A2BC 8FB00028 */ lw $s0, 0x28($sp) +/* 00AEC0 8000A2C0 8FB1002C */ lw $s1, 0x2c($sp) +/* 00AEC4 8000A2C4 8FB20030 */ lw $s2, 0x30($sp) +/* 00AEC8 8000A2C8 8FB30034 */ lw $s3, 0x34($sp) +/* 00AECC 8000A2CC 8FB40038 */ lw $s4, 0x38($sp) +/* 00AED0 8000A2D0 8FB5003C */ lw $s5, 0x3c($sp) +/* 00AED4 8000A2D4 8FB60040 */ lw $s6, 0x40($sp) +/* 00AED8 8000A2D8 8FB70044 */ lw $s7, 0x44($sp) +/* 00AEDC 8000A2DC 8FBE0048 */ lw $fp, 0x48($sp) +/* 00AEE0 8000A2E0 03E00008 */ jr $ra +/* 00AEE4 8000A2E4 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_005740/func_8000A2E8.s b/asm/non_matchings/unknown_005740/func_8000A2E8.s new file mode 100644 index 00000000..eea391c9 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000A2E8.s @@ -0,0 +1,80 @@ +glabel func_8000A2E8 +/* 00AEE8 8000A2E8 3C07800E */ lui $a3, %hi(D_800DC6E0) # $a3, 0x800e +/* 00AEEC 8000A2EC 24E7C6E0 */ addiu $a3, %lo(D_800DC6E0) # addiu $a3, $a3, -0x3920 +/* 00AEF0 8000A2F0 94EE0000 */ lhu $t6, ($a3) +/* 00AEF4 8000A2F4 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 00AEF8 8000A2F8 11C00042 */ beqz $t6, .L8000A404 +/* 00AEFC 8000A2FC AFBF0014 */ sw $ra, 0x14($sp) +/* 00AF00 8000A300 3C0F8012 */ lui $t7, %hi(D_80119C44) # $t7, 0x8012 +/* 00AF04 8000A304 8DEF9C44 */ lw $t7, %lo(D_80119C44)($t7) +/* 00AF08 8000A308 00042880 */ sll $a1, $a0, 2 +/* 00AF0C 8000A30C 01E51821 */ addu $v1, $t7, $a1 +/* 00AF10 8000A310 8C620000 */ lw $v0, ($v1) +/* 00AF14 8000A314 00000000 */ nop +/* 00AF18 8000A318 8C440018 */ lw $a0, 0x18($v0) +/* 00AF1C 8000A31C 00000000 */ nop +/* 00AF20 8000A320 1080000A */ beqz $a0, .L8000A34C +/* 00AF24 8000A324 00000000 */ nop +/* 00AF28 8000A328 0C001223 */ jal func_8000488C +/* 00AF2C 8000A32C AFA5001C */ sw $a1, 0x1c($sp) +/* 00AF30 8000A330 3C188012 */ lui $t8, %hi(D_80119C44) # $t8, 0x8012 +/* 00AF34 8000A334 8F189C44 */ lw $t8, %lo(D_80119C44)($t8) +/* 00AF38 8000A338 8FA5001C */ lw $a1, 0x1c($sp) +/* 00AF3C 8000A33C 3C07800E */ lui $a3, %hi(D_800DC6E0) # $a3, 0x800e +/* 00AF40 8000A340 03051821 */ addu $v1, $t8, $a1 +/* 00AF44 8000A344 8C620000 */ lw $v0, ($v1) +/* 00AF48 8000A348 24E7C6E0 */ addiu $a3, %lo(D_800DC6E0) # addiu $a3, $a3, -0x3920 +.L8000A34C: +/* 00AF4C 8000A34C 8C46001C */ lw $a2, 0x1c($v0) +/* 00AF50 8000A350 3C198012 */ lui $t9, %hi(D_80119C44) # $t9, 0x8012 +/* 00AF54 8000A354 10C00013 */ beqz $a2, .L8000A3A4 +/* 00AF58 8000A358 00000000 */ nop +/* 00AF5C 8000A35C ACC00000 */ sw $zero, ($a2) +/* 00AF60 8000A360 8F399C44 */ lw $t9, %lo(D_80119C44)($t9) +/* 00AF64 8000A364 00000000 */ nop +/* 00AF68 8000A368 03254021 */ addu $t0, $t9, $a1 +/* 00AF6C 8000A36C 8D090000 */ lw $t1, ($t0) +/* 00AF70 8000A370 00000000 */ nop +/* 00AF74 8000A374 9524000C */ lhu $a0, 0xc($t1) +/* 00AF78 8000A378 AFA5001C */ sw $a1, 0x1c($sp) +/* 00AF7C 8000A37C 348A5000 */ ori $t2, $a0, 0x5000 +/* 00AF80 8000A380 000A5C00 */ sll $t3, $t2, 0x10 +/* 00AF84 8000A384 0C00916D */ jal func_800245B4 +/* 00AF88 8000A388 000B2403 */ sra $a0, $t3, 0x10 +/* 00AF8C 8000A38C 3C0D8012 */ lui $t5, %hi(D_80119C44) # $t5, 0x8012 +/* 00AF90 8000A390 8DAD9C44 */ lw $t5, %lo(D_80119C44)($t5) +/* 00AF94 8000A394 8FA5001C */ lw $a1, 0x1c($sp) +/* 00AF98 8000A398 3C07800E */ lui $a3, %hi(D_800DC6E0) # $a3, 0x800e +/* 00AF9C 8000A39C 24E7C6E0 */ addiu $a3, %lo(D_800DC6E0) # addiu $a3, $a3, -0x3920 +/* 00AFA0 8000A3A0 01A51821 */ addu $v1, $t5, $a1 +.L8000A3A4: +/* 00AFA4 8000A3A4 3C048012 */ lui $a0, %hi(D_80119C4C) # $a0, 0x8012 +/* 00AFA8 8000A3A8 24849C4C */ addiu $a0, %lo(D_80119C4C) # addiu $a0, $a0, -0x63b4 +/* 00AFAC 8000A3AC 908E0000 */ lbu $t6, ($a0) +/* 00AFB0 8000A3B0 3C198012 */ lui $t9, %hi(D_80119C50) # $t9, 0x8012 +/* 00AFB4 8000A3B4 25CF0001 */ addiu $t7, $t6, 1 +/* 00AFB8 8000A3B8 A08F0000 */ sb $t7, ($a0) +/* 00AFBC 8000A3BC 8F399C50 */ lw $t9, %lo(D_80119C50)($t9) +/* 00AFC0 8000A3C0 31E800FF */ andi $t0, $t7, 0xff +/* 00AFC4 8000A3C4 8C780000 */ lw $t8, ($v1) +/* 00AFC8 8000A3C8 00084880 */ sll $t1, $t0, 2 +/* 00AFCC 8000A3CC 03295021 */ addu $t2, $t9, $t1 +/* 00AFD0 8000A3D0 AD580000 */ sw $t8, ($t2) +/* 00AFD4 8000A3D4 94EB0000 */ lhu $t3, ($a3) +/* 00AFD8 8000A3D8 3C028012 */ lui $v0, %hi(D_80119C44) # $v0, 0x8012 +/* 00AFDC 8000A3DC 8C429C44 */ lw $v0, %lo(D_80119C44)($v0) +/* 00AFE0 8000A3E0 000B6080 */ sll $t4, $t3, 2 +/* 00AFE4 8000A3E4 004C6821 */ addu $t5, $v0, $t4 +/* 00AFE8 8000A3E8 8DAEFFFC */ lw $t6, -4($t5) +/* 00AFEC 8000A3EC 00457821 */ addu $t7, $v0, $a1 +/* 00AFF0 8000A3F0 ADEE0000 */ sw $t6, ($t7) +/* 00AFF4 8000A3F4 94E80000 */ lhu $t0, ($a3) +/* 00AFF8 8000A3F8 00000000 */ nop +/* 00AFFC 8000A3FC 2519FFFF */ addiu $t9, $t0, -1 +/* 00B000 8000A400 A4F90000 */ sh $t9, ($a3) +.L8000A404: +/* 00B004 8000A404 8FBF0014 */ lw $ra, 0x14($sp) +/* 00B008 8000A408 27BD0020 */ addiu $sp, $sp, 0x20 +/* 00B00C 8000A40C 03E00008 */ jr $ra +/* 00B010 8000A410 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000A414.s b/asm/non_matchings/unknown_005740/func_8000A414.s new file mode 100644 index 00000000..21537444 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000A414.s @@ -0,0 +1,197 @@ +glabel func_8000A414 +/* 00B014 8000A414 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 00B018 8000A418 444EF800 */ cfc1 $t6, $31 +/* 00B01C 8000A41C AFBF0014 */ sw $ra, 0x14($sp) +/* 00B020 8000A420 35C10003 */ ori $at, $t6, 3 +/* 00B024 8000A424 AFA40038 */ sw $a0, 0x38($sp) +/* 00B028 8000A428 AFA5003C */ sw $a1, 0x3c($sp) +/* 00B02C 8000A42C AFA60040 */ sw $a2, 0x40($sp) +/* 00B030 8000A430 38210002 */ xori $at, $at, 2 +/* 00B034 8000A434 44C1F800 */ ctc1 $at, $31 +/* 00B038 8000A438 C4E40000 */ lwc1 $f4, ($a3) +/* 00B03C 8000A43C C4E80004 */ lwc1 $f8, 4($a3) +/* 00B040 8000A440 460021A4 */ cvt.w.s $f6, $f4 +/* 00B044 8000A444 C4F00008 */ lwc1 $f16, 8($a3) +/* 00B048 8000A448 44CEF800 */ ctc1 $t6, $31 +/* 00B04C 8000A44C C4E4000C */ lwc1 $f4, 0xc($a3) +/* 00B050 8000A450 44083000 */ mfc1 $t0, $f6 +/* 00B054 8000A454 4459F800 */ cfc1 $t9, $31 +/* 00B058 8000A458 00000000 */ nop +/* 00B05C 8000A45C 37210003 */ ori $at, $t9, 3 +/* 00B060 8000A460 38210002 */ xori $at, $at, 2 +/* 00B064 8000A464 44C1F800 */ ctc1 $at, $31 +/* 00B068 8000A468 00000000 */ nop +/* 00B06C 8000A46C 460042A4 */ cvt.w.s $f10, $f8 +/* 00B070 8000A470 C4E80010 */ lwc1 $f8, 0x10($a3) +/* 00B074 8000A474 44D9F800 */ ctc1 $t9, $31 +/* 00B078 8000A478 44095000 */ mfc1 $t1, $f10 +/* 00B07C 8000A47C 00000000 */ nop +/* 00B080 8000A480 4458F800 */ cfc1 $t8, $31 +/* 00B084 8000A484 00000000 */ nop +/* 00B088 8000A488 37010003 */ ori $at, $t8, 3 +/* 00B08C 8000A48C 38210002 */ xori $at, $at, 2 +/* 00B090 8000A490 44C1F800 */ ctc1 $at, $31 +/* 00B094 8000A494 00000000 */ nop +/* 00B098 8000A498 460084A4 */ cvt.w.s $f18, $f16 +/* 00B09C 8000A49C C4F00014 */ lwc1 $f16, 0x14($a3) +/* 00B0A0 8000A4A0 44D8F800 */ ctc1 $t8, $31 +/* 00B0A4 8000A4A4 440A9000 */ mfc1 $t2, $f18 +/* 00B0A8 8000A4A8 00000000 */ nop +/* 00B0AC 8000A4AC 444FF800 */ cfc1 $t7, $31 +/* 00B0B0 8000A4B0 00000000 */ nop +/* 00B0B4 8000A4B4 35E10003 */ ori $at, $t7, 3 +/* 00B0B8 8000A4B8 38210002 */ xori $at, $at, 2 +/* 00B0BC 8000A4BC 44C1F800 */ ctc1 $at, $31 +/* 00B0C0 8000A4C0 00000000 */ nop +/* 00B0C4 8000A4C4 460021A4 */ cvt.w.s $f6, $f4 +/* 00B0C8 8000A4C8 44CFF800 */ ctc1 $t7, $31 +/* 00B0CC 8000A4CC 440B3000 */ mfc1 $t3, $f6 +/* 00B0D0 8000A4D0 00000000 */ nop +/* 00B0D4 8000A4D4 444EF800 */ cfc1 $t6, $31 +/* 00B0D8 8000A4D8 00000000 */ nop +/* 00B0DC 8000A4DC 35C10003 */ ori $at, $t6, 3 +/* 00B0E0 8000A4E0 38210002 */ xori $at, $at, 2 +/* 00B0E4 8000A4E4 44C1F800 */ ctc1 $at, $31 +/* 00B0E8 8000A4E8 00000000 */ nop +/* 00B0EC 8000A4EC 460042A4 */ cvt.w.s $f10, $f8 +/* 00B0F0 8000A4F0 44CEF800 */ ctc1 $t6, $31 +/* 00B0F4 8000A4F4 440C5000 */ mfc1 $t4, $f10 +/* 00B0F8 8000A4F8 00000000 */ nop +/* 00B0FC 8000A4FC 4459F800 */ cfc1 $t9, $31 +/* 00B100 8000A500 00000000 */ nop +/* 00B104 8000A504 37210003 */ ori $at, $t9, 3 +/* 00B108 8000A508 38210002 */ xori $at, $at, 2 +/* 00B10C 8000A50C 44C1F800 */ ctc1 $at, $31 +/* 00B110 8000A510 00000000 */ nop +/* 00B114 8000A514 460084A4 */ cvt.w.s $f18, $f16 +/* 00B118 8000A518 44D9F800 */ ctc1 $t9, $31 +/* 00B11C 8000A51C 8C990000 */ lw $t9, ($a0) +/* 00B120 8000A520 440D9000 */ mfc1 $t5, $f18 +/* 00B124 8000A524 AFB90034 */ sw $t9, 0x34($sp) +/* 00B128 8000A528 8CA20000 */ lw $v0, ($a1) +/* 00B12C 8000A52C 8CC30000 */ lw $v1, ($a2) +/* 00B130 8000A530 00003025 */ move $a2, $zero +/* 00B134 8000A534 00002825 */ move $a1, $zero +/* 00B138 8000A538 27A40034 */ addiu $a0, $sp, 0x34 +/* 00B13C 8000A53C A7A8002A */ sh $t0, 0x2a($sp) +/* 00B140 8000A540 A7A90028 */ sh $t1, 0x28($sp) +/* 00B144 8000A544 A7AA0026 */ sh $t2, 0x26($sp) +/* 00B148 8000A548 A7AB0024 */ sh $t3, 0x24($sp) +/* 00B14C 8000A54C A7AC0022 */ sh $t4, 0x22($sp) +/* 00B150 8000A550 A7AD0020 */ sh $t5, 0x20($sp) +/* 00B154 8000A554 AFA20030 */ sw $v0, 0x30($sp) +/* 00B158 8000A558 0C01ED32 */ jal func_8007B4C8 +/* 00B15C 8000A55C AFA3002C */ sw $v1, 0x2c($sp) +/* 00B160 8000A560 8FA20030 */ lw $v0, 0x30($sp) +/* 00B164 8000A564 3C078000 */ lui $a3, 0x8000 +/* 00B168 8000A568 8FA40034 */ lw $a0, 0x34($sp) +/* 00B16C 8000A56C 00472821 */ addu $a1, $v0, $a3 +/* 00B170 8000A570 30AE0006 */ andi $t6, $a1, 6 +/* 00B174 8000A574 35CF0018 */ ori $t7, $t6, 0x18 +/* 00B178 8000A578 24990008 */ addiu $t9, $a0, 8 +/* 00B17C 8000A57C AFB90034 */ sw $t9, 0x34($sp) +/* 00B180 8000A580 31F800FF */ andi $t8, $t7, 0xff +/* 00B184 8000A584 0018CC00 */ sll $t9, $t8, 0x10 +/* 00B188 8000A588 3C010400 */ lui $at, 0x400 +/* 00B18C 8000A58C 8FA3002C */ lw $v1, 0x2c($sp) +/* 00B190 8000A590 87A8002A */ lh $t0, 0x2a($sp) +/* 00B194 8000A594 87A90028 */ lh $t1, 0x28($sp) +/* 00B198 8000A598 87AA0026 */ lh $t2, 0x26($sp) +/* 00B19C 8000A59C 87AB0024 */ lh $t3, 0x24($sp) +/* 00B1A0 8000A5A0 87AC0022 */ lh $t4, 0x22($sp) +/* 00B1A4 8000A5A4 87AD0020 */ lh $t5, 0x20($sp) +/* 00B1A8 8000A5A8 93BF004B */ lbu $ra, 0x4b($sp) +/* 00B1AC 8000A5AC 03217025 */ or $t6, $t9, $at +/* 00B1B0 8000A5B0 35CF0050 */ ori $t7, $t6, 0x50 +/* 00B1B4 8000A5B4 AC8F0000 */ sw $t7, ($a0) +/* 00B1B8 8000A5B8 AC850004 */ sw $a1, 4($a0) +/* 00B1BC 8000A5BC 8FB80034 */ lw $t8, 0x34($sp) +/* 00B1C0 8000A5C0 3C0E0510 */ lui $t6, (0x05100020 >> 16) # lui $t6, 0x510 +/* 00B1C4 8000A5C4 27190008 */ addiu $t9, $t8, 8 +/* 00B1C8 8000A5C8 AFB90034 */ sw $t9, 0x34($sp) +/* 00B1CC 8000A5CC 35CE0020 */ ori $t6, (0x05100020 & 0xFFFF) # ori $t6, $t6, 0x20 +/* 00B1D0 8000A5D0 00677821 */ addu $t7, $v1, $a3 +/* 00B1D4 8000A5D4 AF0F0004 */ sw $t7, 4($t8) +/* 00B1D8 8000A5D8 AF0E0000 */ sw $t6, ($t8) +/* 00B1DC 8000A5DC 25380005 */ addiu $t8, $t1, 5 +/* 00B1E0 8000A5E0 A4580002 */ sh $t8, 2($v0) +/* 00B1E4 8000A5E4 A4480000 */ sh $t0, ($v0) +/* 00B1E8 8000A5E8 A44A0004 */ sh $t2, 4($v0) +/* 00B1EC 8000A5EC A05F0006 */ sb $ra, 6($v0) +/* 00B1F0 8000A5F0 93B9004F */ lbu $t9, 0x4f($sp) +/* 00B1F4 8000A5F4 240400FF */ li $a0, 255 +/* 00B1F8 8000A5F8 A0590007 */ sb $t9, 7($v0) +/* 00B1FC 8000A5FC 93A50053 */ lbu $a1, 0x53($sp) +/* 00B200 8000A600 252EFFFB */ addiu $t6, $t1, -5 +/* 00B204 8000A604 A0440009 */ sb $a0, 9($v0) +/* 00B208 8000A608 A44E000C */ sh $t6, 0xc($v0) +/* 00B20C 8000A60C A448000A */ sh $t0, 0xa($v0) +/* 00B210 8000A610 A44A000E */ sh $t2, 0xe($v0) +/* 00B214 8000A614 A05F0010 */ sb $ra, 0x10($v0) +/* 00B218 8000A618 A0450008 */ sb $a1, 8($v0) +/* 00B21C 8000A61C 93AF004F */ lbu $t7, 0x4f($sp) +/* 00B220 8000A620 A0440013 */ sb $a0, 0x13($v0) +/* 00B224 8000A624 A044001A */ sb $a0, 0x1a($v0) +/* 00B228 8000A628 A044001B */ sb $a0, 0x1b($v0) +/* 00B22C 8000A62C A044001C */ sb $a0, 0x1c($v0) +/* 00B230 8000A630 A044001D */ sb $a0, 0x1d($v0) +/* 00B234 8000A634 A0440024 */ sb $a0, 0x24($v0) +/* 00B238 8000A638 A0440025 */ sb $a0, 0x25($v0) +/* 00B23C 8000A63C A0440026 */ sb $a0, 0x26($v0) +/* 00B240 8000A640 A0440027 */ sb $a0, 0x27($v0) +/* 00B244 8000A644 25980005 */ addiu $t8, $t4, 5 +/* 00B248 8000A648 2599FFFB */ addiu $t9, $t4, -5 +/* 00B24C 8000A64C A0450012 */ sb $a1, 0x12($v0) +/* 00B250 8000A650 A4580016 */ sh $t8, 0x16($v0) +/* 00B254 8000A654 A4590020 */ sh $t9, 0x20($v0) +/* 00B258 8000A658 A44B0014 */ sh $t3, 0x14($v0) +/* 00B25C 8000A65C A44B001E */ sh $t3, 0x1e($v0) +/* 00B260 8000A660 A44D0018 */ sh $t5, 0x18($v0) +/* 00B264 8000A664 A44D0022 */ sh $t5, 0x22($v0) +/* 00B268 8000A668 A04F0011 */ sb $t7, 0x11($v0) +/* 00B26C 8000A66C 240403E0 */ li $a0, 992 +/* 00B270 8000A670 24050001 */ li $a1, 1 +/* 00B274 8000A674 24080001 */ li $t0, 1 +/* 00B278 8000A678 24070002 */ li $a3, 2 +/* 00B27C 8000A67C 24060040 */ li $a2, 64 +/* 00B280 8000A680 240E0003 */ li $t6, 3 +/* 00B284 8000A684 A0660000 */ sb $a2, ($v1) +/* 00B288 8000A688 A0670001 */ sb $a3, 1($v1) +/* 00B28C 8000A68C A0680002 */ sb $t0, 2($v1) +/* 00B290 8000A690 A0600003 */ sb $zero, 3($v1) +/* 00B294 8000A694 A4640004 */ sh $a0, 4($v1) +/* 00B298 8000A698 A4640006 */ sh $a0, 6($v1) +/* 00B29C 8000A69C A4640008 */ sh $a0, 8($v1) +/* 00B2A0 8000A6A0 A460000A */ sh $zero, 0xa($v1) +/* 00B2A4 8000A6A4 A465000C */ sh $a1, 0xc($v1) +/* 00B2A8 8000A6A8 A460000E */ sh $zero, 0xe($v1) +/* 00B2AC 8000A6AC A0660010 */ sb $a2, 0x10($v1) +/* 00B2B0 8000A6B0 A06E0011 */ sb $t6, 0x11($v1) +/* 00B2B4 8000A6B4 A0670012 */ sb $a3, 0x12($v1) +/* 00B2B8 8000A6B8 A0680013 */ sb $t0, 0x13($v1) +/* 00B2BC 8000A6BC A4650014 */ sh $a1, 0x14($v1) +/* 00B2C0 8000A6C0 A4640016 */ sh $a0, 0x16($v1) +/* 00B2C4 8000A6C4 A4640018 */ sh $a0, 0x18($v1) +/* 00B2C8 8000A6C8 A464001A */ sh $a0, 0x1a($v1) +/* 00B2CC 8000A6CC A465001C */ sh $a1, 0x1c($v1) +/* 00B2D0 8000A6D0 A460001E */ sh $zero, 0x1e($v1) +/* 00B2D4 8000A6D4 8FB80038 */ lw $t8, 0x38($sp) +/* 00B2D8 8000A6D8 8FAF0034 */ lw $t7, 0x34($sp) +/* 00B2DC 8000A6DC 24420028 */ addiu $v0, $v0, 0x28 +/* 00B2E0 8000A6E0 AF0F0000 */ sw $t7, ($t8) +/* 00B2E4 8000A6E4 8FB9003C */ lw $t9, 0x3c($sp) +/* 00B2E8 8000A6E8 24630020 */ addiu $v1, $v1, 0x20 +/* 00B2EC 8000A6EC AF220000 */ sw $v0, ($t9) +/* 00B2F0 8000A6F0 8FAE0040 */ lw $t6, 0x40($sp) +/* 00B2F4 8000A6F4 00000000 */ nop +/* 00B2F8 8000A6F8 ADC30000 */ sw $v1, ($t6) +/* 00B2FC 8000A6FC 8FBF0014 */ lw $ra, 0x14($sp) +/* 00B300 8000A700 27BD0038 */ addiu $sp, $sp, 0x38 +/* 00B304 8000A704 03E00008 */ jr $ra +/* 00B308 8000A708 00000000 */ nop + +/* 00B30C 8000A70C 00000000 */ nop +/* 00B310 8000A710 AFA40000 */ sw $a0, ($sp) +/* 00B314 8000A714 03E00008 */ jr $ra +/* 00B318 8000A718 AFA50004 */ sw $a1, 4($sp) + diff --git a/asm/non_matchings/unknown_005740/func_8000A71C.s b/asm/non_matchings/unknown_005740/func_8000A71C.s new file mode 100644 index 00000000..2f5b9305 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000A71C.s @@ -0,0 +1,49 @@ +glabel func_8000A71C +/* 00B31C 8000A71C AFA50004 */ sw $a1, 4($sp) +/* 00B320 8000A720 AFA60008 */ sw $a2, 8($sp) +/* 00B324 8000A724 AFA7000C */ sw $a3, 0xc($sp) +/* 00B328 8000A728 90880071 */ lbu $t0, 0x71($a0) +/* 00B32C 8000A72C 90990070 */ lbu $t9, 0x70($a0) +/* 00B330 8000A730 30AE00FF */ andi $t6, $a1, 0xff +/* 00B334 8000A734 30CF00FF */ andi $t7, $a2, 0xff +/* 00B338 8000A738 30F800FF */ andi $t8, $a3, 0xff +/* 00B33C 8000A73C 8C83006C */ lw $v1, 0x6c($a0) +/* 00B340 8000A740 0328082A */ slt $at, $t9, $t0 +/* 00B344 8000A744 03003825 */ move $a3, $t8 +/* 00B348 8000A748 01E03025 */ move $a2, $t7 +/* 00B34C 8000A74C 10200003 */ beqz $at, .L8000A75C +/* 00B350 8000A750 01C02825 */ move $a1, $t6 +/* 00B354 8000A754 03E00008 */ jr $ra +/* 00B358 8000A758 00001025 */ move $v0, $zero + +.L8000A75C: +/* 00B35C 8000A75C 10600017 */ beqz $v1, .L8000A7BC +/* 00B360 8000A760 00601025 */ move $v0, $v1 +/* 00B364 8000A764 8C690000 */ lw $t1, ($v1) +/* 00B368 8000A768 00000000 */ nop +/* 00B36C 8000A76C AC89006C */ sw $t1, 0x6c($a0) +/* 00B370 8000A770 AC600000 */ sw $zero, ($v1) +/* 00B374 8000A774 8C8A0064 */ lw $t2, 0x64($a0) +/* 00B378 8000A778 00000000 */ nop +/* 00B37C 8000A77C 15400003 */ bnez $t2, .L8000A78C +/* 00B380 8000A780 00000000 */ nop +/* 00B384 8000A784 10000004 */ b .L8000A798 +/* 00B388 8000A788 AC830064 */ sw $v1, 0x64($a0) +.L8000A78C: +/* 00B38C 8000A78C 8C8B0068 */ lw $t3, 0x68($a0) +/* 00B390 8000A790 00000000 */ nop +/* 00B394 8000A794 AD630000 */ sw $v1, ($t3) +.L8000A798: +/* 00B398 8000A798 AC830068 */ sw $v1, 0x68($a0) +/* 00B39C 8000A79C A0670031 */ sb $a3, 0x31($v1) +/* 00B3A0 8000A7A0 A0650032 */ sb $a1, 0x32($v1) +/* 00B3A4 8000A7A4 A0660033 */ sb $a2, 0x33($v1) +/* 00B3A8 8000A7A8 AC630014 */ sw $v1, 0x14($v1) +/* 00B3AC 8000A7AC 908C0071 */ lbu $t4, 0x71($a0) +/* 00B3B0 8000A7B0 00000000 */ nop +/* 00B3B4 8000A7B4 258D0001 */ addiu $t5, $t4, 1 +/* 00B3B8 8000A7B8 A08D0071 */ sb $t5, 0x71($a0) +.L8000A7BC: +/* 00B3BC 8000A7BC 03E00008 */ jr $ra +/* 00B3C0 8000A7C0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000A7C4.s b/asm/non_matchings/unknown_005740/func_8000A7C4.s new file mode 100644 index 00000000..e44a6233 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000A7C4.s @@ -0,0 +1,43 @@ +glabel func_8000A7C4 +/* 00B3C4 8000A7C4 8C830064 */ lw $v1, 0x64($a0) +/* 00B3C8 8000A7C8 00001025 */ move $v0, $zero +/* 00B3CC 8000A7CC 1060001D */ beqz $v1, .L8000A844 +/* 00B3D0 8000A7D0 24A6FFFC */ addiu $a2, $a1, -4 +.L8000A7D4: +/* 00B3D4 8000A7D4 14660016 */ bne $v1, $a2, .L8000A830 +/* 00B3D8 8000A7D8 00000000 */ nop +/* 00B3DC 8000A7DC 10400004 */ beqz $v0, .L8000A7F0 +/* 00B3E0 8000A7E0 00000000 */ nop +/* 00B3E4 8000A7E4 8C6E0000 */ lw $t6, ($v1) +/* 00B3E8 8000A7E8 10000004 */ b .L8000A7FC +/* 00B3EC 8000A7EC AC4E0000 */ sw $t6, ($v0) +.L8000A7F0: +/* 00B3F0 8000A7F0 8C6F0000 */ lw $t7, ($v1) +/* 00B3F4 8000A7F4 00000000 */ nop +/* 00B3F8 8000A7F8 AC8F0064 */ sw $t7, 0x64($a0) +.L8000A7FC: +/* 00B3FC 8000A7FC 8C980068 */ lw $t8, 0x68($a0) +/* 00B400 8000A800 00000000 */ nop +/* 00B404 8000A804 14780002 */ bne $v1, $t8, .L8000A810 +/* 00B408 8000A808 00000000 */ nop +/* 00B40C 8000A80C AC820068 */ sw $v0, 0x68($a0) +.L8000A810: +/* 00B410 8000A810 8C99006C */ lw $t9, 0x6c($a0) +/* 00B414 8000A814 00000000 */ nop +/* 00B418 8000A818 AC790000 */ sw $t9, ($v1) +/* 00B41C 8000A81C 90880071 */ lbu $t0, 0x71($a0) +/* 00B420 8000A820 AC83006C */ sw $v1, 0x6c($a0) +/* 00B424 8000A824 2509FFFF */ addiu $t1, $t0, -1 +/* 00B428 8000A828 03E00008 */ jr $ra +/* 00B42C 8000A82C A0890071 */ sb $t1, 0x71($a0) + +.L8000A830: +/* 00B430 8000A830 00601025 */ move $v0, $v1 +/* 00B434 8000A834 8C630000 */ lw $v1, ($v1) +/* 00B438 8000A838 00000000 */ nop +/* 00B43C 8000A83C 1460FFE5 */ bnez $v1, .L8000A7D4 +/* 00B440 8000A840 00000000 */ nop +.L8000A844: +/* 00B444 8000A844 03E00008 */ jr $ra +/* 00B448 8000A848 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000A84C.s b/asm/non_matchings/unknown_005740/func_8000A84C.s new file mode 100644 index 00000000..7a8a2476 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000A84C.s @@ -0,0 +1,39 @@ +glabel func_8000A84C +/* 00B44C 8000A84C AFA50004 */ sw $a1, 4($sp) +/* 00B450 8000A850 AFA60008 */ sw $a2, 8($sp) +/* 00B454 8000A854 8C830064 */ lw $v1, 0x64($a0) +/* 00B458 8000A858 30CF00FF */ andi $t7, $a2, 0xff +/* 00B45C 8000A85C 01E03025 */ move $a2, $t7 +/* 00B460 8000A860 10600018 */ beqz $v1, .L8000A8C4 +/* 00B464 8000A864 30AE00FF */ andi $t6, $a1, 0xff +/* 00B468 8000A868 01C01025 */ move $v0, $t6 +/* 00B46C 8000A86C 24070004 */ li $a3, 4 +/* 00B470 8000A870 24050003 */ li $a1, 3 +.L8000A874: +/* 00B474 8000A874 90780032 */ lbu $t8, 0x32($v1) +/* 00B478 8000A878 00000000 */ nop +/* 00B47C 8000A87C 1458000D */ bne $v0, $t8, .L8000A8B4 +/* 00B480 8000A880 00000000 */ nop +/* 00B484 8000A884 90790031 */ lbu $t9, 0x31($v1) +/* 00B488 8000A888 00000000 */ nop +/* 00B48C 8000A88C 14D90009 */ bne $a2, $t9, .L8000A8B4 +/* 00B490 8000A890 00000000 */ nop +/* 00B494 8000A894 90640035 */ lbu $a0, 0x35($v1) +/* 00B498 8000A898 00000000 */ nop +/* 00B49C 8000A89C 10A40005 */ beq $a1, $a0, .L8000A8B4 +/* 00B4A0 8000A8A0 00000000 */ nop +/* 00B4A4 8000A8A4 10E40003 */ beq $a3, $a0, .L8000A8B4 +/* 00B4A8 8000A8A8 00000000 */ nop +/* 00B4AC 8000A8AC 03E00008 */ jr $ra +/* 00B4B0 8000A8B0 00601025 */ move $v0, $v1 + +.L8000A8B4: +/* 00B4B4 8000A8B4 8C630000 */ lw $v1, ($v1) +/* 00B4B8 8000A8B8 00000000 */ nop +/* 00B4BC 8000A8BC 1460FFED */ bnez $v1, .L8000A874 +/* 00B4C0 8000A8C0 00000000 */ nop +.L8000A8C4: +/* 00B4C4 8000A8C4 00001025 */ move $v0, $zero +/* 00B4C8 8000A8C8 03E00008 */ jr $ra +/* 00B4CC 8000A8CC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000A8D0.s b/asm/non_matchings/unknown_005740/func_8000A8D0.s new file mode 100644 index 00000000..3166d572 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000A8D0.s @@ -0,0 +1,84 @@ +glabel func_8000A8D0 +/* 00B4D0 8000A8D0 27BDFFF8 */ addiu $sp, $sp, -8 +/* 00B4D4 8000A8D4 30EF00FF */ andi $t7, $a3, 0xff +/* 00B4D8 8000A8D8 AFB00004 */ sw $s0, 4($sp) +/* 00B4DC 8000A8DC AFA5000C */ sw $a1, 0xc($sp) +/* 00B4E0 8000A8E0 AFA60010 */ sw $a2, 0x10($sp) +/* 00B4E4 8000A8E4 AFA70014 */ sw $a3, 0x14($sp) +/* 00B4E8 8000A8E8 000FC880 */ sll $t9, $t7, 2 +/* 00B4EC 8000A8EC 8C980060 */ lw $t8, 0x60($a0) +/* 00B4F0 8000A8F0 032FC821 */ addu $t9, $t9, $t7 +/* 00B4F4 8000A8F4 0019C880 */ sll $t9, $t9, 2 +/* 00B4F8 8000A8F8 03195821 */ addu $t3, $t8, $t9 +/* 00B4FC 8000A8FC 8D620000 */ lw $v0, ($t3) +/* 00B500 8000A900 30D000FF */ andi $s0, $a2, 0xff +/* 00B504 8000A904 8448000E */ lh $t0, 0xe($v0) +/* 00B508 8000A908 30AE00FF */ andi $t6, $a1, 0xff +/* 00B50C 8000A90C 19000036 */ blez $t0, .L8000A9E8 +/* 00B510 8000A910 24030001 */ li $v1, 1 +/* 00B514 8000A914 01C04825 */ move $t1, $t6 +/* 00B518 8000A918 00682821 */ addu $a1, $v1, $t0 +.L8000A91C: +/* 00B51C 8000A91C 04A10003 */ bgez $a1, .L8000A92C +/* 00B520 8000A920 00056043 */ sra $t4, $a1, 1 +/* 00B524 8000A924 24A10001 */ addiu $at, $a1, 1 +/* 00B528 8000A928 00016043 */ sra $t4, $at, 1 +.L8000A92C: +/* 00B52C 8000A92C 000C6880 */ sll $t5, $t4, 2 +/* 00B530 8000A930 004D7021 */ addu $t6, $v0, $t5 +/* 00B534 8000A934 8DC7000C */ lw $a3, 0xc($t6) +/* 00B538 8000A938 01802025 */ move $a0, $t4 +/* 00B53C 8000A93C 8CE60004 */ lw $a2, 4($a3) +/* 00B540 8000A940 00000000 */ nop +/* 00B544 8000A944 90CA0002 */ lbu $t2, 2($a2) +/* 00B548 8000A948 00000000 */ nop +/* 00B54C 8000A94C 012A082A */ slt $at, $t1, $t2 +/* 00B550 8000A950 14200013 */ bnez $at, .L8000A9A0 +/* 00B554 8000A954 012A082A */ slt $at, $t1, $t2 +/* 00B558 8000A958 90CF0003 */ lbu $t7, 3($a2) +/* 00B55C 8000A95C 00000000 */ nop +/* 00B560 8000A960 01E9082A */ slt $at, $t7, $t1 +/* 00B564 8000A964 1420000E */ bnez $at, .L8000A9A0 +/* 00B568 8000A968 012A082A */ slt $at, $t1, $t2 +/* 00B56C 8000A96C 90D80000 */ lbu $t8, ($a2) +/* 00B570 8000A970 02002825 */ move $a1, $s0 +/* 00B574 8000A974 0218082A */ slt $at, $s0, $t8 +/* 00B578 8000A978 14200009 */ bnez $at, .L8000A9A0 +/* 00B57C 8000A97C 012A082A */ slt $at, $t1, $t2 +/* 00B580 8000A980 90D90001 */ lbu $t9, 1($a2) +/* 00B584 8000A984 00000000 */ nop +/* 00B588 8000A988 0325082A */ slt $at, $t9, $a1 +/* 00B58C 8000A98C 14200004 */ bnez $at, .L8000A9A0 +/* 00B590 8000A990 012A082A */ slt $at, $t1, $t2 +/* 00B594 8000A994 10000015 */ b .L8000A9EC +/* 00B598 8000A998 00E01025 */ move $v0, $a3 +/* 00B59C 8000A99C 012A082A */ slt $at, $t1, $t2 +.L8000A9A0: +/* 00B5A0 8000A9A0 1420000B */ bnez $at, .L8000A9D0 +/* 00B5A4 8000A9A4 00000000 */ nop +/* 00B5A8 8000A9A8 90CB0000 */ lbu $t3, ($a2) +/* 00B5AC 8000A9AC 00000000 */ nop +/* 00B5B0 8000A9B0 020B082A */ slt $at, $s0, $t3 +/* 00B5B4 8000A9B4 10200008 */ beqz $at, .L8000A9D8 +/* 00B5B8 8000A9B8 00000000 */ nop +/* 00B5BC 8000A9BC 90CC0003 */ lbu $t4, 3($a2) +/* 00B5C0 8000A9C0 00000000 */ nop +/* 00B5C4 8000A9C4 0189082A */ slt $at, $t4, $t1 +/* 00B5C8 8000A9C8 14200003 */ bnez $at, .L8000A9D8 +/* 00B5CC 8000A9CC 00000000 */ nop +.L8000A9D0: +/* 00B5D0 8000A9D0 10000002 */ b .L8000A9DC +/* 00B5D4 8000A9D4 2488FFFF */ addiu $t0, $a0, -1 +.L8000A9D8: +/* 00B5D8 8000A9D8 24830001 */ addiu $v1, $a0, 1 +.L8000A9DC: +/* 00B5DC 8000A9DC 0103082A */ slt $at, $t0, $v1 +/* 00B5E0 8000A9E0 1020FFCE */ beqz $at, .L8000A91C +/* 00B5E4 8000A9E4 00682821 */ addu $a1, $v1, $t0 +.L8000A9E8: +/* 00B5E8 8000A9E8 00001025 */ move $v0, $zero +.L8000A9EC: +/* 00B5EC 8000A9EC 8FB00004 */ lw $s0, 4($sp) +/* 00B5F0 8000A9F0 03E00008 */ jr $ra +/* 00B5F4 8000A9F4 27BD0008 */ addiu $sp, $sp, 8 + diff --git a/asm/non_matchings/unknown_005740/func_8000A9F8.s b/asm/non_matchings/unknown_005740/func_8000A9F8.s new file mode 100644 index 00000000..2b09b350 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000A9F8.s @@ -0,0 +1,38 @@ +glabel func_8000A9F8 +/* 00B5F8 8000A9F8 908E0036 */ lbu $t6, 0x36($a0) +/* 00B5FC 8000A9FC 908F0033 */ lbu $t7, 0x33($a0) +/* 00B600 8000AA00 90990030 */ lbu $t9, 0x30($a0) +/* 00B604 8000AA04 01CF0019 */ multu $t6, $t7 +/* 00B608 8000AA08 908A0031 */ lbu $t2, 0x31($a0) +/* 00B60C 8000AA0C 8CA90060 */ lw $t1, 0x60($a1) +/* 00B610 8000AA10 000A5880 */ sll $t3, $t2, 2 +/* 00B614 8000AA14 016A5821 */ addu $t3, $t3, $t2 +/* 00B618 8000AA18 8C8E0020 */ lw $t6, 0x20($a0) +/* 00B61C 8000AA1C 000B5880 */ sll $t3, $t3, 2 +/* 00B620 8000AA20 012B6021 */ addu $t4, $t1, $t3 +/* 00B624 8000AA24 918D0009 */ lbu $t5, 9($t4) +/* 00B628 8000AA28 91CF000D */ lbu $t7, 0xd($t6) +/* 00B62C 8000AA2C 0000C012 */ mflo $t8 +/* 00B630 8000AA30 00000000 */ nop +/* 00B634 8000AA34 00000000 */ nop +/* 00B638 8000AA38 03190019 */ multu $t8, $t9 +/* 00B63C 8000AA3C 84B90032 */ lh $t9, 0x32($a1) +/* 00B640 8000AA40 00001812 */ mflo $v1 +/* 00B644 8000AA44 00034183 */ sra $t0, $v1, 6 +/* 00B648 8000AA48 01001825 */ move $v1, $t0 +/* 00B64C 8000AA4C 01AF0019 */ multu $t5, $t7 +/* 00B650 8000AA50 0000C012 */ mflo $t8 +/* 00B654 8000AA54 00000000 */ nop +/* 00B658 8000AA58 00000000 */ nop +/* 00B65C 8000AA5C 03190019 */ multu $t8, $t9 +/* 00B660 8000AA60 00003012 */ mflo $a2 +/* 00B664 8000AA64 00064383 */ sra $t0, $a2, 0xe +/* 00B668 8000AA68 00000000 */ nop +/* 00B66C 8000AA6C 00680019 */ multu $v1, $t0 +/* 00B670 8000AA70 00001812 */ mflo $v1 +/* 00B674 8000AA74 000353C2 */ srl $t2, $v1, 0xf +/* 00B678 8000AA78 000A1400 */ sll $v0, $t2, 0x10 +/* 00B67C 8000AA7C 00024C03 */ sra $t1, $v0, 0x10 +/* 00B680 8000AA80 03E00008 */ jr $ra +/* 00B684 8000AA84 01201025 */ move $v0, $t1 + diff --git a/asm/non_matchings/unknown_005740/func_8000AA88.s b/asm/non_matchings/unknown_005740/func_8000AA88.s new file mode 100644 index 00000000..0ea920a3 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000AA88.s @@ -0,0 +1,13 @@ +glabel func_8000AA88 +/* 00B688 8000AA88 8C8E0024 */ lw $t6, 0x24($a0) +/* 00B68C 8000AA8C 240203E8 */ li $v0, 1000 +/* 00B690 8000AA90 01C51823 */ subu $v1, $t6, $a1 +/* 00B694 8000AA94 04600003 */ bltz $v1, .L8000AAA4 +/* 00B698 8000AA98 00000000 */ nop +/* 00B69C 8000AA9C 03E00008 */ jr $ra +/* 00B6A0 8000AAA0 00601025 */ move $v0, $v1 + +.L8000AAA4: +/* 00B6A4 8000AAA4 03E00008 */ jr $ra +/* 00B6A8 8000AAA8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000AAAC.s b/asm/non_matchings/unknown_005740/func_8000AAAC.s new file mode 100644 index 00000000..8d01bbd2 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000AAAC.s @@ -0,0 +1,25 @@ +glabel func_8000AAAC +/* 00B6AC 8000AAAC 908F0031 */ lbu $t7, 0x31($a0) +/* 00B6B0 8000AAB0 8CAE0060 */ lw $t6, 0x60($a1) +/* 00B6B4 8000AAB4 000FC080 */ sll $t8, $t7, 2 +/* 00B6B8 8000AAB8 030FC021 */ addu $t8, $t8, $t7 +/* 00B6BC 8000AABC 8C890020 */ lw $t1, 0x20($a0) +/* 00B6C0 8000AAC0 0018C080 */ sll $t8, $t8, 2 +/* 00B6C4 8000AAC4 01D8C821 */ addu $t9, $t6, $t8 +/* 00B6C8 8000AAC8 93280007 */ lbu $t0, 7($t9) +/* 00B6CC 8000AACC 912A000C */ lbu $t2, 0xc($t1) +/* 00B6D0 8000AAD0 00000000 */ nop +/* 00B6D4 8000AAD4 010A1821 */ addu $v1, $t0, $t2 +/* 00B6D8 8000AAD8 2463FFC0 */ addiu $v1, $v1, -0x40 +/* 00B6DC 8000AADC 1C600003 */ bgtz $v1, .L8000AAEC +/* 00B6E0 8000AAE0 2861007F */ slti $at, $v1, 0x7f +/* 00B6E4 8000AAE4 00001825 */ move $v1, $zero +/* 00B6E8 8000AAE8 2861007F */ slti $at, $v1, 0x7f +.L8000AAEC: +/* 00B6EC 8000AAEC 14200002 */ bnez $at, .L8000AAF8 +/* 00B6F0 8000AAF0 00000000 */ nop +/* 00B6F4 8000AAF4 2403007F */ li $v1, 127 +.L8000AAF8: +/* 00B6F8 8000AAF8 03E00008 */ jr $ra +/* 00B6FC 8000AAFC 306200FF */ andi $v0, $v1, 0xff + diff --git a/asm/non_matchings/unknown_005740/func_8000AB00.s b/asm/non_matchings/unknown_005740/func_8000AB00.s new file mode 100644 index 00000000..3c45b067 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000AB00.s @@ -0,0 +1,83 @@ +glabel func_8000AB00 +/* 00B700 8000AB00 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 00B704 8000AB04 AFBF0034 */ sw $ra, 0x34($sp) +/* 00B708 8000AB08 AFB60030 */ sw $s6, 0x30($sp) +/* 00B70C 8000AB0C AFB5002C */ sw $s5, 0x2c($sp) +/* 00B710 8000AB10 AFB40028 */ sw $s4, 0x28($sp) +/* 00B714 8000AB14 AFB30024 */ sw $s3, 0x24($sp) +/* 00B718 8000AB18 AFB20020 */ sw $s2, 0x20($sp) +/* 00B71C 8000AB1C AFB1001C */ sw $s1, 0x1c($sp) +/* 00B720 8000AB20 AFB00018 */ sw $s0, 0x18($sp) +/* 00B724 8000AB24 AFA60068 */ sw $a2, 0x68($sp) +/* 00B728 8000AB28 8CB60010 */ lw $s6, 0x10($a1) +/* 00B72C 8000AB2C 0080A025 */ move $s4, $a0 +/* 00B730 8000AB30 92CE0034 */ lbu $t6, 0x34($s6) +/* 00B734 8000AB34 00A0A825 */ move $s5, $a1 +/* 00B738 8000AB38 15C0001C */ bnez $t6, .L8000ABAC +/* 00B73C 8000AB3C 240A0003 */ li $t2, 3 +/* 00B740 8000AB40 8C900050 */ lw $s0, 0x50($a0) +/* 00B744 8000AB44 24130006 */ li $s3, 6 +/* 00B748 8000AB48 12000018 */ beqz $s0, .L8000ABAC +/* 00B74C 8000AB4C 240A0003 */ li $t2, 3 +.L8000AB50: +/* 00B750 8000AB50 860F000C */ lh $t7, 0xc($s0) +/* 00B754 8000AB54 8E110000 */ lw $s1, ($s0) +/* 00B758 8000AB58 166F0011 */ bne $s3, $t7, .L8000ABA0 +/* 00B75C 8000AB5C 00000000 */ nop +/* 00B760 8000AB60 8E180010 */ lw $t8, 0x10($s0) +/* 00B764 8000AB64 00000000 */ nop +/* 00B768 8000AB68 16B8000D */ bne $s5, $t8, .L8000ABA0 +/* 00B76C 8000AB6C 00000000 */ nop +/* 00B770 8000AB70 12200006 */ beqz $s1, .L8000AB8C +/* 00B774 8000AB74 26920048 */ addiu $s2, $s4, 0x48 +/* 00B778 8000AB78 8E390008 */ lw $t9, 8($s1) +/* 00B77C 8000AB7C 8E080008 */ lw $t0, 8($s0) +/* 00B780 8000AB80 00000000 */ nop +/* 00B784 8000AB84 03284821 */ addu $t1, $t9, $t0 +/* 00B788 8000AB88 AE290008 */ sw $t1, 8($s1) +.L8000AB8C: +/* 00B78C 8000AB8C 0C0321D8 */ jal func_800C8760 +/* 00B790 8000AB90 02002025 */ move $a0, $s0 +/* 00B794 8000AB94 02002025 */ move $a0, $s0 +/* 00B798 8000AB98 0C0321E4 */ jal func_800C8790 +/* 00B79C 8000AB9C 02402825 */ move $a1, $s2 +.L8000ABA0: +/* 00B7A0 8000ABA0 1620FFEB */ bnez $s1, .L8000AB50 +/* 00B7A4 8000ABA4 02208025 */ move $s0, $s1 +/* 00B7A8 8000ABA8 240A0003 */ li $t2, 3 +.L8000ABAC: +/* 00B7AC 8000ABAC A2C00033 */ sb $zero, 0x33($s6) +/* 00B7B0 8000ABB0 A2CA0034 */ sb $t2, 0x34($s6) +/* 00B7B4 8000ABB4 A2C00030 */ sb $zero, 0x30($s6) +/* 00B7B8 8000ABB8 8FAC0068 */ lw $t4, 0x68($sp) +/* 00B7BC 8000ABBC 8E8B001C */ lw $t3, 0x1c($s4) +/* 00B7C0 8000ABC0 02A02825 */ move $a1, $s5 +/* 00B7C4 8000ABC4 016C6821 */ addu $t5, $t3, $t4 +/* 00B7C8 8000ABC8 AECD0024 */ sw $t5, 0x24($s6) +/* 00B7CC 8000ABCC 8E840014 */ lw $a0, 0x14($s4) +/* 00B7D0 8000ABD0 00003025 */ move $a2, $zero +/* 00B7D4 8000ABD4 0C0326B8 */ jal func_800C9AE0 +/* 00B7D8 8000ABD8 26920048 */ addiu $s2, $s4, 0x48 +/* 00B7DC 8000ABDC 8E840014 */ lw $a0, 0x14($s4) +/* 00B7E0 8000ABE0 8FA70068 */ lw $a3, 0x68($sp) +/* 00B7E4 8000ABE4 02A02825 */ move $a1, $s5 +/* 00B7E8 8000ABE8 0C032594 */ jal func_800C9650 +/* 00B7EC 8000ABEC 00003025 */ move $a2, $zero +/* 00B7F0 8000ABF0 240E0005 */ li $t6, 5 +/* 00B7F4 8000ABF4 8FA60068 */ lw $a2, 0x68($sp) +/* 00B7F8 8000ABF8 A7AE0050 */ sh $t6, 0x50($sp) +/* 00B7FC 8000ABFC AFB50054 */ sw $s5, 0x54($sp) +/* 00B800 8000AC00 02402025 */ move $a0, $s2 +/* 00B804 8000AC04 0C03246B */ jal func_800C91AC +/* 00B808 8000AC08 27A50050 */ addiu $a1, $sp, 0x50 +/* 00B80C 8000AC0C 8FBF0034 */ lw $ra, 0x34($sp) +/* 00B810 8000AC10 8FB00018 */ lw $s0, 0x18($sp) +/* 00B814 8000AC14 8FB1001C */ lw $s1, 0x1c($sp) +/* 00B818 8000AC18 8FB20020 */ lw $s2, 0x20($sp) +/* 00B81C 8000AC1C 8FB30024 */ lw $s3, 0x24($sp) +/* 00B820 8000AC20 8FB40028 */ lw $s4, 0x28($sp) +/* 00B824 8000AC24 8FB5002C */ lw $s5, 0x2c($sp) +/* 00B828 8000AC28 8FB60030 */ lw $s6, 0x30($sp) +/* 00B82C 8000AC2C 03E00008 */ jr $ra +/* 00B830 8000AC30 27BD0060 */ addiu $sp, $sp, 0x60 + diff --git a/asm/non_matchings/unknown_005740/func_8000AC34.s b/asm/non_matchings/unknown_005740/func_8000AC34.s new file mode 100644 index 00000000..36017d03 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000AC34.s @@ -0,0 +1,51 @@ +glabel func_8000AC34 +/* 00B834 8000AC34 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 00B838 8000AC38 AFBF0014 */ sw $ra, 0x14($sp) +/* 00B83C 8000AC3C AFA40030 */ sw $a0, 0x30($sp) +/* 00B840 8000AC40 8C870050 */ lw $a3, 0x50($a0) +/* 00B844 8000AC44 00004025 */ move $t0, $zero +/* 00B848 8000AC48 10E00021 */ beqz $a3, .L8000ACD0 +/* 00B84C 8000AC4C 24090001 */ li $t1, 1 +/* 00B850 8000AC50 24040005 */ li $a0, 5 +.L8000AC54: +/* 00B854 8000AC54 8CE30008 */ lw $v1, 8($a3) +/* 00B858 8000AC58 84EF000C */ lh $t7, 0xc($a3) +/* 00B85C 8000AC5C 8CE20000 */ lw $v0, ($a3) +/* 00B860 8000AC60 148F0019 */ bne $a0, $t7, .L8000ACC8 +/* 00B864 8000AC64 01034021 */ addu $t0, $t0, $v1 +/* 00B868 8000AC68 8CF80010 */ lw $t8, 0x10($a3) +/* 00B86C 8000AC6C 00000000 */ nop +/* 00B870 8000AC70 14B80015 */ bne $a1, $t8, .L8000ACC8 +/* 00B874 8000AC74 00C8082A */ slt $at, $a2, $t0 +/* 00B878 8000AC78 10200011 */ beqz $at, .L8000ACC0 +/* 00B87C 8000AC7C 00E02025 */ move $a0, $a3 +/* 00B880 8000AC80 10400005 */ beqz $v0, .L8000AC98 +/* 00B884 8000AC84 00000000 */ nop +/* 00B888 8000AC88 8C590008 */ lw $t9, 8($v0) +/* 00B88C 8000AC8C 00000000 */ nop +/* 00B890 8000AC90 03235021 */ addu $t2, $t9, $v1 +/* 00B894 8000AC94 AC4A0008 */ sw $t2, 8($v0) +.L8000AC98: +/* 00B898 8000AC98 AFA7002C */ sw $a3, 0x2c($sp) +/* 00B89C 8000AC9C 0C0321D8 */ jal func_800C8760 +/* 00B8A0 8000ACA0 A3A9001F */ sb $t1, 0x1f($sp) +/* 00B8A4 8000ACA4 8FA50030 */ lw $a1, 0x30($sp) +/* 00B8A8 8000ACA8 8FA4002C */ lw $a0, 0x2c($sp) +/* 00B8AC 8000ACAC 0C0321E4 */ jal func_800C8790 +/* 00B8B0 8000ACB0 24A50048 */ addiu $a1, $a1, 0x48 +/* 00B8B4 8000ACB4 93A9001F */ lbu $t1, 0x1f($sp) +/* 00B8B8 8000ACB8 10000006 */ b .L8000ACD4 +/* 00B8BC 8000ACBC 8FBF0014 */ lw $ra, 0x14($sp) +.L8000ACC0: +/* 00B8C0 8000ACC0 10000003 */ b .L8000ACD0 +/* 00B8C4 8000ACC4 00004825 */ move $t1, $zero +.L8000ACC8: +/* 00B8C8 8000ACC8 1440FFE2 */ bnez $v0, .L8000AC54 +/* 00B8CC 8000ACCC 00403825 */ move $a3, $v0 +.L8000ACD0: +/* 00B8D0 8000ACD0 8FBF0014 */ lw $ra, 0x14($sp) +.L8000ACD4: +/* 00B8D4 8000ACD4 27BD0030 */ addiu $sp, $sp, 0x30 +/* 00B8D8 8000ACD8 03E00008 */ jr $ra +/* 00B8DC 8000ACDC 01201025 */ move $v0, $t1 + diff --git a/asm/non_matchings/unknown_005740/func_8000ACE0.s b/asm/non_matchings/unknown_005740/func_8000ACE0.s new file mode 100644 index 00000000..00fb1130 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000ACE0.s @@ -0,0 +1,52 @@ +glabel func_8000ACE0 +/* 00B8E0 8000ACE0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 00B8E4 8000ACE4 AFB20020 */ sw $s2, 0x20($sp) +/* 00B8E8 8000ACE8 00809025 */ move $s2, $a0 +/* 00B8EC 8000ACEC AFBF0024 */ sw $ra, 0x24($sp) +/* 00B8F0 8000ACF0 AFB1001C */ sw $s1, 0x1c($sp) +/* 00B8F4 8000ACF4 AFB00018 */ sw $s0, 0x18($sp) +/* 00B8F8 8000ACF8 AFA5002C */ sw $a1, 0x2c($sp) +/* 00B8FC 8000ACFC 00A01025 */ move $v0, $a1 +.L8000AD00: +/* 00B900 8000AD00 8C51000C */ lw $s1, 0xc($v0) +/* 00B904 8000AD04 24420004 */ addiu $v0, $v0, 4 +/* 00B908 8000AD08 1220FFFD */ beqz $s1, .L8000AD00 +/* 00B90C 8000AD0C 00000000 */ nop +/* 00B910 8000AD10 924E0034 */ lbu $t6, 0x34($s2) +/* 00B914 8000AD14 00008025 */ move $s0, $zero +/* 00B918 8000AD18 19C0000C */ blez $t6, .L8000AD4C +/* 00B91C 8000AD1C 02402025 */ move $a0, $s2 +.L8000AD20: +/* 00B920 8000AD20 0C002B7D */ jal func_8000ADF4 +/* 00B924 8000AD24 02002825 */ move $a1, $s0 +/* 00B928 8000AD28 02402025 */ move $a0, $s2 +/* 00B92C 8000AD2C 02202825 */ move $a1, $s1 +/* 00B930 8000AD30 0C002B66 */ jal func_8000AD98 +/* 00B934 8000AD34 02003025 */ move $a2, $s0 +/* 00B938 8000AD38 924F0034 */ lbu $t7, 0x34($s2) +/* 00B93C 8000AD3C 26100001 */ addiu $s0, $s0, 1 +/* 00B940 8000AD40 020F082A */ slt $at, $s0, $t7 +/* 00B944 8000AD44 1420FFF6 */ bnez $at, .L8000AD20 +/* 00B948 8000AD48 02402025 */ move $a0, $s2 +.L8000AD4C: +/* 00B94C 8000AD4C 8FB8002C */ lw $t8, 0x2c($sp) +/* 00B950 8000AD50 02402025 */ move $a0, $s2 +/* 00B954 8000AD54 8F190008 */ lw $t9, 8($t8) +/* 00B958 8000AD58 00000000 */ nop +/* 00B95C 8000AD5C 13200009 */ beqz $t9, .L8000AD84 +/* 00B960 8000AD60 8FBF0024 */ lw $ra, 0x24($sp) +/* 00B964 8000AD64 0C002B7D */ jal func_8000ADF4 +/* 00B968 8000AD68 02002825 */ move $a1, $s0 +/* 00B96C 8000AD6C 8FA8002C */ lw $t0, 0x2c($sp) +/* 00B970 8000AD70 02402025 */ move $a0, $s2 +/* 00B974 8000AD74 8D050008 */ lw $a1, 8($t0) +/* 00B978 8000AD78 0C002B66 */ jal func_8000AD98 +/* 00B97C 8000AD7C 24060009 */ li $a2, 9 +/* 00B980 8000AD80 8FBF0024 */ lw $ra, 0x24($sp) +.L8000AD84: +/* 00B984 8000AD84 8FB00018 */ lw $s0, 0x18($sp) +/* 00B988 8000AD88 8FB1001C */ lw $s1, 0x1c($sp) +/* 00B98C 8000AD8C 8FB20020 */ lw $s2, 0x20($sp) +/* 00B990 8000AD90 03E00008 */ jr $ra +/* 00B994 8000AD94 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_005740/func_8000AD98.s b/asm/non_matchings/unknown_005740/func_8000AD98.s new file mode 100644 index 00000000..ce7e519d --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000AD98.s @@ -0,0 +1,25 @@ +glabel func_8000AD98 +/* 00B998 8000AD98 00061080 */ sll $v0, $a2, 2 +/* 00B99C 8000AD9C 8C8E0060 */ lw $t6, 0x60($a0) +/* 00B9A0 8000ADA0 00461021 */ addu $v0, $v0, $a2 +/* 00B9A4 8000ADA4 00021080 */ sll $v0, $v0, 2 +/* 00B9A8 8000ADA8 01C27821 */ addu $t7, $t6, $v0 +/* 00B9AC 8000ADAC ADE50000 */ sw $a1, ($t7) +/* 00B9B0 8000ADB0 8C990060 */ lw $t9, 0x60($a0) +/* 00B9B4 8000ADB4 90B80001 */ lbu $t8, 1($a1) +/* 00B9B8 8000ADB8 03224021 */ addu $t0, $t9, $v0 +/* 00B9BC 8000ADBC A1180007 */ sb $t8, 7($t0) +/* 00B9C0 8000ADC0 8C8A0060 */ lw $t2, 0x60($a0) +/* 00B9C4 8000ADC4 90A90000 */ lbu $t1, ($a1) +/* 00B9C8 8000ADC8 01425821 */ addu $t3, $t2, $v0 +/* 00B9CC 8000ADCC A1690009 */ sb $t1, 9($t3) +/* 00B9D0 8000ADD0 8C8D0060 */ lw $t5, 0x60($a0) +/* 00B9D4 8000ADD4 90AC0002 */ lbu $t4, 2($a1) +/* 00B9D8 8000ADD8 01A27021 */ addu $t6, $t5, $v0 +/* 00B9DC 8000ADDC A1CC0008 */ sb $t4, 8($t6) +/* 00B9E0 8000ADE0 8C990060 */ lw $t9, 0x60($a0) +/* 00B9E4 8000ADE4 84AF000C */ lh $t7, 0xc($a1) +/* 00B9E8 8000ADE8 0322C021 */ addu $t8, $t9, $v0 +/* 00B9EC 8000ADEC 03E00008 */ jr $ra +/* 00B9F0 8000ADF0 A70F0004 */ sh $t7, 4($t8) + diff --git a/asm/non_matchings/unknown_005740/func_8000ADF4.s b/asm/non_matchings/unknown_005740/func_8000ADF4.s new file mode 100644 index 00000000..bc7c385d --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000ADF4.s @@ -0,0 +1,41 @@ +glabel func_8000ADF4 +/* 00B9F4 8000ADF4 00051080 */ sll $v0, $a1, 2 +/* 00B9F8 8000ADF8 8C8E0060 */ lw $t6, 0x60($a0) +/* 00B9FC 8000ADFC 00451021 */ addu $v0, $v0, $a1 +/* 00BA00 8000AE00 00021080 */ sll $v0, $v0, 2 +/* 00BA04 8000AE04 01C27821 */ addu $t7, $t6, $v0 +/* 00BA08 8000AE08 A1E00006 */ sb $zero, 6($t7) +/* 00BA0C 8000AE0C 8C980060 */ lw $t8, 0x60($a0) +/* 00BA10 8000AE10 24080040 */ li $t0, 64 +/* 00BA14 8000AE14 0302C821 */ addu $t9, $t8, $v0 +/* 00BA18 8000AE18 A320000A */ sb $zero, 0xa($t9) +/* 00BA1C 8000AE1C 8C890060 */ lw $t1, 0x60($a0) +/* 00BA20 8000AE20 2403007F */ li $v1, 127 +/* 00BA24 8000AE24 01225021 */ addu $t2, $t1, $v0 +/* 00BA28 8000AE28 A1480007 */ sb $t0, 7($t2) +/* 00BA2C 8000AE2C 8C8B0060 */ lw $t3, 0x60($a0) +/* 00BA30 8000AE30 240F0005 */ li $t7, 5 +/* 00BA34 8000AE34 01626021 */ addu $t4, $t3, $v0 +/* 00BA38 8000AE38 A1830009 */ sb $v1, 9($t4) +/* 00BA3C 8000AE3C 8C8D0060 */ lw $t5, 0x60($a0) +/* 00BA40 8000AE40 240A00C8 */ li $t2, 200 +/* 00BA44 8000AE44 01A27021 */ addu $t6, $t5, $v0 +/* 00BA48 8000AE48 A1C30010 */ sb $v1, 0x10($t6) +/* 00BA4C 8000AE4C 8C980060 */ lw $t8, 0x60($a0) +/* 00BA50 8000AE50 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 00BA54 8000AE54 0302C821 */ addu $t9, $t8, $v0 +/* 00BA58 8000AE58 A32F0008 */ sb $t7, 8($t9) +/* 00BA5C 8000AE5C 8C890060 */ lw $t1, 0x60($a0) +/* 00BA60 8000AE60 44812000 */ mtc1 $at, $f4 +/* 00BA64 8000AE64 01224021 */ addu $t0, $t1, $v0 +/* 00BA68 8000AE68 A100000B */ sb $zero, 0xb($t0) +/* 00BA6C 8000AE6C 8C8B0060 */ lw $t3, 0x60($a0) +/* 00BA70 8000AE70 00000000 */ nop +/* 00BA74 8000AE74 01626021 */ addu $t4, $t3, $v0 +/* 00BA78 8000AE78 A58A0004 */ sh $t2, 4($t4) +/* 00BA7C 8000AE7C 8C8D0060 */ lw $t5, 0x60($a0) +/* 00BA80 8000AE80 00000000 */ nop +/* 00BA84 8000AE84 01A27021 */ addu $t6, $t5, $v0 +/* 00BA88 8000AE88 03E00008 */ jr $ra +/* 00BA8C 8000AE8C E5C4000C */ swc1 $f4, 0xc($t6) + diff --git a/asm/non_matchings/unknown_005740/func_8000AE90.s b/asm/non_matchings/unknown_005740/func_8000AE90.s new file mode 100644 index 00000000..aa5ea319 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000AE90.s @@ -0,0 +1,31 @@ +glabel func_8000AE90 +/* 00BA90 8000AE90 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 00BA94 8000AE94 AFBF0024 */ sw $ra, 0x24($sp) +/* 00BA98 8000AE98 AFB20020 */ sw $s2, 0x20($sp) +/* 00BA9C 8000AE9C AFB1001C */ sw $s1, 0x1c($sp) +/* 00BAA0 8000AEA0 AFB00018 */ sw $s0, 0x18($sp) +/* 00BAA4 8000AEA4 908E0034 */ lbu $t6, 0x34($a0) +/* 00BAA8 8000AEA8 00808825 */ move $s1, $a0 +/* 00BAAC 8000AEAC 19C0000D */ blez $t6, .L8000AEE4 +/* 00BAB0 8000AEB0 00008025 */ move $s0, $zero +/* 00BAB4 8000AEB4 00009025 */ move $s2, $zero +.L8000AEB8: +/* 00BAB8 8000AEB8 8E2F0060 */ lw $t7, 0x60($s1) +/* 00BABC 8000AEBC 02202025 */ move $a0, $s1 +/* 00BAC0 8000AEC0 01F2C021 */ addu $t8, $t7, $s2 +/* 00BAC4 8000AEC4 AF000000 */ sw $zero, ($t8) +/* 00BAC8 8000AEC8 0C002B7D */ jal func_8000ADF4 +/* 00BACC 8000AECC 02002825 */ move $a1, $s0 +/* 00BAD0 8000AED0 92390034 */ lbu $t9, 0x34($s1) +/* 00BAD4 8000AED4 26100001 */ addiu $s0, $s0, 1 +/* 00BAD8 8000AED8 0219082A */ slt $at, $s0, $t9 +/* 00BADC 8000AEDC 1420FFF6 */ bnez $at, .L8000AEB8 +/* 00BAE0 8000AEE0 26520014 */ addiu $s2, $s2, 0x14 +.L8000AEE4: +/* 00BAE4 8000AEE4 8FBF0024 */ lw $ra, 0x24($sp) +/* 00BAE8 8000AEE8 8FB00018 */ lw $s0, 0x18($sp) +/* 00BAEC 8000AEEC 8FB1001C */ lw $s1, 0x1c($sp) +/* 00BAF0 8000AEF0 8FB20020 */ lw $s2, 0x20($sp) +/* 00BAF4 8000AEF4 03E00008 */ jr $ra +/* 00BAF8 8000AEF8 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_005740/func_8000AEFC.s b/asm/non_matchings/unknown_005740/func_8000AEFC.s new file mode 100644 index 00000000..b912899d --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000AEFC.s @@ -0,0 +1,79 @@ +glabel func_8000AEFC +/* 00BAFC 8000AEFC 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 00BB00 8000AF00 AFBF0034 */ sw $ra, 0x34($sp) +/* 00BB04 8000AF04 AFB70030 */ sw $s7, 0x30($sp) +/* 00BB08 8000AF08 AFB6002C */ sw $s6, 0x2c($sp) +/* 00BB0C 8000AF0C AFB50028 */ sw $s5, 0x28($sp) +/* 00BB10 8000AF10 AFB40024 */ sw $s4, 0x24($sp) +/* 00BB14 8000AF14 AFB30020 */ sw $s3, 0x20($sp) +/* 00BB18 8000AF18 AFB2001C */ sw $s2, 0x1c($sp) +/* 00BB1C 8000AF1C AFB10018 */ sw $s1, 0x18($sp) +/* 00BB20 8000AF20 AFB00014 */ sw $s0, 0x14($sp) +/* 00BB24 8000AF24 8C900050 */ lw $s0, 0x50($a0) +/* 00BB28 8000AF28 00A09025 */ move $s2, $a1 +/* 00BB2C 8000AF2C 1200002D */ beqz $s0, .L8000AFE4 +/* 00BB30 8000AF30 0080A825 */ move $s5, $a0 +/* 00BB34 8000AF34 24170017 */ li $s7, 23 +/* 00BB38 8000AF38 24160016 */ li $s6, 22 +.L8000AF3C: +/* 00BB3C 8000AF3C 8613000C */ lh $s3, 0xc($s0) +/* 00BB40 8000AF40 8E110000 */ lw $s1, ($s0) +/* 00BB44 8000AF44 12760003 */ beq $s3, $s6, .L8000AF54 +/* 00BB48 8000AF48 00000000 */ nop +/* 00BB4C 8000AF4C 16770023 */ bne $s3, $s7, .L8000AFDC +/* 00BB50 8000AF50 00000000 */ nop +.L8000AF54: +/* 00BB54 8000AF54 8E0E0010 */ lw $t6, 0x10($s0) +/* 00BB58 8000AF58 00000000 */ nop +/* 00BB5C 8000AF5C 164E001F */ bne $s2, $t6, .L8000AFDC +/* 00BB60 8000AF60 00000000 */ nop +/* 00BB64 8000AF64 8EB9007C */ lw $t9, 0x7c($s5) +/* 00BB68 8000AF68 8E040014 */ lw $a0, 0x14($s0) +/* 00BB6C 8000AF6C 0320F809 */ jalr $t9 +/* 00BB70 8000AF70 26B40048 */ addiu $s4, $s5, 0x48 +/* 00BB74 8000AF74 0C0321D8 */ jal func_800C8760 +/* 00BB78 8000AF78 02002025 */ move $a0, $s0 +/* 00BB7C 8000AF7C 12200006 */ beqz $s1, .L8000AF98 +/* 00BB80 8000AF80 02002025 */ move $a0, $s0 +/* 00BB84 8000AF84 8E2F0008 */ lw $t7, 8($s1) +/* 00BB88 8000AF88 8E180008 */ lw $t8, 8($s0) +/* 00BB8C 8000AF8C 00000000 */ nop +/* 00BB90 8000AF90 01F84021 */ addu $t0, $t7, $t8 +/* 00BB94 8000AF94 AE280008 */ sw $t0, 8($s1) +.L8000AF98: +/* 00BB98 8000AF98 0C0321E4 */ jal func_800C8790 +/* 00BB9C 8000AF9C 02802825 */ move $a1, $s4 +/* 00BBA0 8000AFA0 16760006 */ bne $s3, $s6, .L8000AFBC +/* 00BBA4 8000AFA4 00000000 */ nop +/* 00BBA8 8000AFA8 92490037 */ lbu $t1, 0x37($s2) +/* 00BBAC 8000AFAC 00000000 */ nop +/* 00BBB0 8000AFB0 312A00FE */ andi $t2, $t1, 0xfe +/* 00BBB4 8000AFB4 10000005 */ b .L8000AFCC +/* 00BBB8 8000AFB8 A24A0037 */ sb $t2, 0x37($s2) +.L8000AFBC: +/* 00BBBC 8000AFBC 924B0037 */ lbu $t3, 0x37($s2) +/* 00BBC0 8000AFC0 00000000 */ nop +/* 00BBC4 8000AFC4 316C00FD */ andi $t4, $t3, 0xfd +/* 00BBC8 8000AFC8 A24C0037 */ sb $t4, 0x37($s2) +.L8000AFCC: +/* 00BBCC 8000AFCC 924D0037 */ lbu $t5, 0x37($s2) +/* 00BBD0 8000AFD0 00000000 */ nop +/* 00BBD4 8000AFD4 11A00004 */ beqz $t5, .L8000AFE8 +/* 00BBD8 8000AFD8 8FBF0034 */ lw $ra, 0x34($sp) +.L8000AFDC: +/* 00BBDC 8000AFDC 1620FFD7 */ bnez $s1, .L8000AF3C +/* 00BBE0 8000AFE0 02208025 */ move $s0, $s1 +.L8000AFE4: +/* 00BBE4 8000AFE4 8FBF0034 */ lw $ra, 0x34($sp) +.L8000AFE8: +/* 00BBE8 8000AFE8 8FB00014 */ lw $s0, 0x14($sp) +/* 00BBEC 8000AFEC 8FB10018 */ lw $s1, 0x18($sp) +/* 00BBF0 8000AFF0 8FB2001C */ lw $s2, 0x1c($sp) +/* 00BBF4 8000AFF4 8FB30020 */ lw $s3, 0x20($sp) +/* 00BBF8 8000AFF8 8FB40024 */ lw $s4, 0x24($sp) +/* 00BBFC 8000AFFC 8FB50028 */ lw $s5, 0x28($sp) +/* 00BC00 8000B000 8FB6002C */ lw $s6, 0x2c($sp) +/* 00BC04 8000B004 8FB70030 */ lw $s7, 0x30($sp) +/* 00BC08 8000B008 03E00008 */ jr $ra +/* 00BC0C 8000B00C 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_005740/func_8000B010.s b/asm/non_matchings/unknown_005740/func_8000B010.s new file mode 100644 index 00000000..49d6caeb --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000B010.s @@ -0,0 +1,6 @@ +glabel func_8000B010 +/* 00BC10 8000B010 AFA50004 */ sw $a1, 4($sp) +/* 00BC14 8000B014 03E00008 */ jr $ra +/* 00BC18 8000B018 A0850070 */ sb $a1, 0x70($a0) + +/* 00BC1C 8000B01C 00000000 */ nop diff --git a/asm/non_matchings/unknown_005740/func_8000B020.s b/asm/non_matchings/unknown_005740/func_8000B020.s new file mode 100644 index 00000000..2a284a33 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000B020.s @@ -0,0 +1,161 @@ +glabel func_8000B020 +/* 00BC20 8000B020 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 00BC24 8000B024 AFB10020 */ sw $s1, 0x20($sp) +/* 00BC28 8000B028 00048880 */ sll $s1, $a0, 2 +/* 00BC2C 8000B02C AFB30028 */ sw $s3, 0x28($sp) +/* 00BC30 8000B030 AFB0001C */ sw $s0, 0x1c($sp) +/* 00BC34 8000B034 02248821 */ addu $s1, $s1, $a0 +/* 00BC38 8000B038 00809825 */ move $s3, $a0 +/* 00BC3C 8000B03C 00118840 */ sll $s1, $s1, 1 +/* 00BC40 8000B040 00058100 */ sll $s0, $a1, 4 +/* 00BC44 8000B044 AFB20024 */ sw $s2, 0x24($sp) +/* 00BC48 8000B048 02112021 */ addu $a0, $s0, $s1 +/* 00BC4C 8000B04C 00A09025 */ move $s2, $a1 +/* 00BC50 8000B050 AFBF003C */ sw $ra, 0x3c($sp) +/* 00BC54 8000B054 00047040 */ sll $t6, $a0, 1 +/* 00BC58 8000B058 AFB70038 */ sw $s7, 0x38($sp) +/* 00BC5C 8000B05C AFB60034 */ sw $s6, 0x34($sp) +/* 00BC60 8000B060 AFB50030 */ sw $s5, 0x30($sp) +/* 00BC64 8000B064 AFB4002C */ sw $s4, 0x2c($sp) +/* 00BC68 8000B068 E7B50010 */ swc1 $f21, 0x10($sp) +/* 00BC6C 8000B06C E7B40014 */ swc1 $f20, 0x14($sp) +/* 00BC70 8000B070 01C02025 */ move $a0, $t6 +/* 00BC74 8000B074 0C01C327 */ jal func_80070C9C +/* 00BC78 8000B078 3405FFFF */ li $a1, 65535 +/* 00BC7C 8000B07C 3C03800E */ lui $v1, %hi(D_800DC754) # $v1, 0x800e +/* 00BC80 8000B080 3C05800E */ lui $a1, %hi(D_800DC74C) # $a1, 0x800e +/* 00BC84 8000B084 0050C021 */ addu $t8, $v0, $s0 +/* 00BC88 8000B088 24A5C74C */ addiu $a1, %lo(D_800DC74C) # addiu $a1, $a1, -0x38b4 +/* 00BC8C 8000B08C 2463C754 */ addiu $v1, %lo(D_800DC754) # addiu $v1, $v1, -0x38ac +/* 00BC90 8000B090 03104021 */ addu $t0, $t8, $s0 +/* 00BC94 8000B094 01115021 */ addu $t2, $t0, $s1 +/* 00BC98 8000B098 AC620000 */ sw $v0, ($v1) +/* 00BC9C 8000B09C AC780004 */ sw $t8, 4($v1) +/* 00BCA0 8000B0A0 ACA80000 */ sw $t0, ($a1) +/* 00BCA4 8000B0A4 ACAA0004 */ sw $t2, 4($a1) +/* 00BCA8 8000B0A8 3C018012 */ lui $at, %hi(D_8011AFF8) # $at, 0x8012 +/* 00BCAC 8000B0AC AC33AFF8 */ sw $s3, %lo(D_8011AFF8)($at) +/* 00BCB0 8000B0B0 3C018012 */ lui $at, %hi(D_8011AFFC) # $at, 0x8012 +/* 00BCB4 8000B0B4 AC20AFFC */ sw $zero, %lo(D_8011AFFC)($at) +/* 00BCB8 8000B0B8 3C018012 */ lui $at, %hi(D_8011B000) # $at, 0x8012 +/* 00BCBC 8000B0BC AC32B000 */ sw $s2, %lo(D_8011B000)($at) +/* 00BCC0 8000B0C0 3C018012 */ lui $at, %hi(D_8011B004) # $at, 0x8012 +/* 00BCC4 8000B0C4 AC20B004 */ sw $zero, %lo(D_8011B004)($at) +/* 00BCC8 8000B0C8 3C018012 */ lui $at, %hi(D_8011B008) # $at, 0x8012 +/* 00BCCC 8000B0CC AC20B008 */ sw $zero, %lo(D_8011B008)($at) +/* 00BCD0 8000B0D0 0C0078A7 */ jal func_8001E29C +/* 00BCD4 8000B0D4 24040014 */ li $a0, 20 +/* 00BCD8 8000B0D8 3C118012 */ lui $s1, %hi(D_8011B020) # $s1, 0x8012 +/* 00BCDC 8000B0DC 3C138012 */ lui $s3, %hi(D_8011B068) # $s3, 0x8012 +/* 00BCE0 8000B0E0 4480A000 */ mtc1 $zero, $f20 +/* 00BCE4 8000B0E4 0040A825 */ move $s5, $v0 +/* 00BCE8 8000B0E8 2673B068 */ addiu $s3, %lo(D_8011B068) # addiu $s3, $s3, -0x4f98 +/* 00BCEC 8000B0EC 2631B020 */ addiu $s1, %lo(D_8011B020) # addiu $s1, $s1, -0x4fe0 +/* 00BCF0 8000B0F0 00009025 */ move $s2, $zero +/* 00BCF4 8000B0F4 27B70058 */ addiu $s7, $sp, 0x58 +/* 00BCF8 8000B0F8 24160001 */ li $s6, 1 +.L8000B0FC: +/* 00BCFC 8000B0FC 240B007E */ li $t3, 126 +/* 00BD00 8000B100 240C000A */ li $t4, 10 +/* 00BD04 8000B104 A3AB0058 */ sb $t3, 0x58($sp) +/* 00BD08 8000B108 A3AC0059 */ sb $t4, 0x59($sp) +/* 00BD0C 8000B10C A7A0005A */ sh $zero, 0x5a($sp) +/* 00BD10 8000B110 A7A0005C */ sh $zero, 0x5c($sp) +/* 00BD14 8000B114 A7A0005E */ sh $zero, 0x5e($sp) +/* 00BD18 8000B118 A3B20060 */ sb $s2, 0x60($sp) +/* 00BD1C 8000B11C 02E02025 */ move $a0, $s7 +/* 00BD20 8000B120 0C003A95 */ jal func_8000EA54 +/* 00BD24 8000B124 24050001 */ li $a1, 1 +/* 00BD28 8000B128 1040001B */ beqz $v0, .L8000B198 +/* 00BD2C 8000B12C AE220000 */ sw $v0, ($s1) +/* 00BD30 8000B130 AC400078 */ sw $zero, 0x78($v0) +/* 00BD34 8000B134 8E2E0000 */ lw $t6, ($s1) +/* 00BD38 8000B138 001279C0 */ sll $t7, $s2, 7 +/* 00BD3C 8000B13C 02AF8021 */ addu $s0, $s5, $t7 +/* 00BD40 8000B140 3C188012 */ lui $t8, %hi(D_8011B010) # $t8, 0x8012 +/* 00BD44 8000B144 ADC0007C */ sw $zero, 0x7c($t6) +/* 00BD48 8000B148 8604006C */ lh $a0, 0x6c($s0) +/* 00BD4C 8000B14C 2718B010 */ addiu $t8, %lo(D_8011B010) # addiu $t8, $t8, -0x4ff0 +/* 00BD50 8000B150 A2000070 */ sb $zero, 0x70($s0) +/* 00BD54 8000B154 E6140074 */ swc1 $f20, 0x74($s0) +/* 00BD58 8000B158 0258A021 */ addu $s4, $s2, $t8 +/* 00BD5C 8000B15C 0C01F04B */ jal func_8007C12C +/* 00BD60 8000B160 00002825 */ move $a1, $zero +/* 00BD64 8000B164 8604006E */ lh $a0, 0x6e($s0) +/* 00BD68 8000B168 0C01EB9D */ jal func_8007AE74 +/* 00BD6C 8000B16C AE020078 */ sw $v0, 0x78($s0) +/* 00BD70 8000B170 AE02007C */ sw $v0, 0x7c($s0) +/* 00BD74 8000B174 00002025 */ move $a0, $zero +/* 00BD78 8000B178 0C01BE53 */ jal func_8006F94C +/* 00BD7C 8000B17C 240500FF */ li $a1, 255 +/* 00BD80 8000B180 A2020072 */ sb $v0, 0x72($s0) +/* 00BD84 8000B184 A2000073 */ sb $zero, 0x73($s0) +/* 00BD88 8000B188 00002025 */ move $a0, $zero +/* 00BD8C 8000B18C 0C01BE53 */ jal func_8006F94C +/* 00BD90 8000B190 240500FF */ li $a1, 255 +/* 00BD94 8000B194 A2820000 */ sb $v0, ($s4) +.L8000B198: +/* 00BD98 8000B198 26520001 */ addiu $s2, $s2, 1 +/* 00BD9C 8000B19C 2A41000A */ slti $at, $s2, 0xa +/* 00BDA0 8000B1A0 26310004 */ addiu $s1, $s1, 4 +/* 00BDA4 8000B1A4 26730001 */ addiu $s3, $s3, 1 +/* 00BDA8 8000B1A8 1420FFD4 */ bnez $at, .L8000B0FC +/* 00BDAC 8000B1AC A276FFFF */ sb $s6, -1($s3) +/* 00BDB0 8000B1B0 24190009 */ li $t9, 9 +/* 00BDB4 8000B1B4 3C01800E */ lui $at, %hi(D_800DC760) # $at, 0x800e +/* 00BDB8 8000B1B8 2408008D */ li $t0, 141 +/* 00BDBC 8000B1BC 2409000A */ li $t1, 10 +/* 00BDC0 8000B1C0 AC39C760 */ sw $t9, %lo(D_800DC760)($at) +/* 00BDC4 8000B1C4 A3A80058 */ sb $t0, 0x58($sp) +/* 00BDC8 8000B1C8 A3A90059 */ sb $t1, 0x59($sp) +/* 00BDCC 8000B1CC A7A0005A */ sh $zero, 0x5a($sp) +/* 00BDD0 8000B1D0 A7A0005C */ sh $zero, 0x5c($sp) +/* 00BDD4 8000B1D4 A7A0005E */ sh $zero, 0x5e($sp) +/* 00BDD8 8000B1D8 02E02025 */ move $a0, $s7 +/* 00BDDC 8000B1DC 0C003A95 */ jal func_8000EA54 +/* 00BDE0 8000B1E0 00002825 */ move $a1, $zero +/* 00BDE4 8000B1E4 3C01800E */ lui $at, %hi(D_800DC75C) # $at, 0x800e +/* 00BDE8 8000B1E8 3C108012 */ lui $s0, %hi(D_8011B078) # $s0, 0x8012 +/* 00BDEC 8000B1EC 3C118012 */ lui $s1, %hi(D_8011B0A0) # $s1, 0x8012 +/* 00BDF0 8000B1F0 AC22C75C */ sw $v0, %lo(D_800DC75C)($at) +/* 00BDF4 8000B1F4 2631B0A0 */ addiu $s1, %lo(D_8011B0A0) # addiu $s1, $s1, -0x4f60 +/* 00BDF8 8000B1F8 2610B078 */ addiu $s0, %lo(D_8011B078) # addiu $s0, $s0, -0x4f88 +.L8000B1FC: +/* 00BDFC 8000B1FC A2000000 */ sb $zero, ($s0) +/* 00BE00 8000B200 00002025 */ move $a0, $zero +/* 00BE04 8000B204 0C01BE53 */ jal func_8006F94C +/* 00BE08 8000B208 240500FF */ li $a1, 255 +/* 00BE0C 8000B20C A2020001 */ sb $v0, 1($s0) +/* 00BE10 8000B210 00002025 */ move $a0, $zero +/* 00BE14 8000B214 0C01BE53 */ jal func_8006F94C +/* 00BE18 8000B218 240500FF */ li $a1, 255 +/* 00BE1C 8000B21C 26100004 */ addiu $s0, $s0, 4 +/* 00BE20 8000B220 A202FFFE */ sb $v0, -2($s0) +/* 00BE24 8000B224 1611FFF5 */ bne $s0, $s1, .L8000B1FC +/* 00BE28 8000B228 A200FFFF */ sb $zero, -1($s0) +/* 00BE2C 8000B22C 240A001B */ li $t2, 27 +/* 00BE30 8000B230 240B008A */ li $t3, 138 +/* 00BE34 8000B234 A3AA0058 */ sb $t2, 0x58($sp) +/* 00BE38 8000B238 A3AB0059 */ sb $t3, 0x59($sp) +/* 00BE3C 8000B23C A7A0005A */ sh $zero, 0x5a($sp) +/* 00BE40 8000B240 A7A0005C */ sh $zero, 0x5c($sp) +/* 00BE44 8000B244 A7A0005E */ sh $zero, 0x5e($sp) +/* 00BE48 8000B248 02E02025 */ move $a0, $s7 +/* 00BE4C 8000B24C 0C003A95 */ jal func_8000EA54 +/* 00BE50 8000B250 00002825 */ move $a1, $zero +/* 00BE54 8000B254 8FBF003C */ lw $ra, 0x3c($sp) +/* 00BE58 8000B258 3C01800E */ lui $at, %hi(D_800DC764) # $at, 0x800e +/* 00BE5C 8000B25C C7B50010 */ lwc1 $f21, 0x10($sp) +/* 00BE60 8000B260 C7B40014 */ lwc1 $f20, 0x14($sp) +/* 00BE64 8000B264 8FB0001C */ lw $s0, 0x1c($sp) +/* 00BE68 8000B268 8FB10020 */ lw $s1, 0x20($sp) +/* 00BE6C 8000B26C 8FB20024 */ lw $s2, 0x24($sp) +/* 00BE70 8000B270 8FB30028 */ lw $s3, 0x28($sp) +/* 00BE74 8000B274 8FB4002C */ lw $s4, 0x2c($sp) +/* 00BE78 8000B278 8FB50030 */ lw $s5, 0x30($sp) +/* 00BE7C 8000B27C 8FB60034 */ lw $s6, 0x34($sp) +/* 00BE80 8000B280 8FB70038 */ lw $s7, 0x38($sp) +/* 00BE84 8000B284 AC22C764 */ sw $v0, %lo(D_800DC764)($at) +/* 00BE88 8000B288 03E00008 */ jr $ra +/* 00BE8C 8000B28C 27BD0068 */ addiu $sp, $sp, 0x68 + diff --git a/asm/non_matchings/unknown_005740/func_8000B290.s b/asm/non_matchings/unknown_005740/func_8000B290.s new file mode 100644 index 00000000..8e14c2f7 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000B290.s @@ -0,0 +1,71 @@ +glabel func_8000B290 +/* 00BE90 8000B290 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 00BE94 8000B294 AFB00018 */ sw $s0, 0x18($sp) +/* 00BE98 8000B298 3C10800E */ lui $s0, %hi(D_800DC754) # $s0, 0x800e +/* 00BE9C 8000B29C 2610C754 */ addiu $s0, %lo(D_800DC754) # addiu $s0, $s0, -0x38ac +/* 00BEA0 8000B2A0 8E040000 */ lw $a0, ($s0) +/* 00BEA4 8000B2A4 AFBF0024 */ sw $ra, 0x24($sp) +/* 00BEA8 8000B2A8 AFB20020 */ sw $s2, 0x20($sp) +/* 00BEAC 8000B2AC 10800009 */ beqz $a0, .L8000B2D4 +/* 00BEB0 8000B2B0 AFB1001C */ sw $s1, 0x1c($sp) +/* 00BEB4 8000B2B4 0C01C450 */ jal func_80071140 +/* 00BEB8 8000B2B8 00000000 */ nop +/* 00BEBC 8000B2BC 3C02800E */ lui $v0, %hi(D_800DC74C) # $v0, 0x800e +/* 00BEC0 8000B2C0 2442C74C */ addiu $v0, %lo(D_800DC74C) # addiu $v0, $v0, -0x38b4 +/* 00BEC4 8000B2C4 AE000000 */ sw $zero, ($s0) +/* 00BEC8 8000B2C8 AE000004 */ sw $zero, 4($s0) +/* 00BECC 8000B2CC AC400000 */ sw $zero, ($v0) +/* 00BED0 8000B2D0 AC400004 */ sw $zero, 4($v0) +.L8000B2D4: +/* 00BED4 8000B2D4 0C0078A7 */ jal func_8001E29C +/* 00BED8 8000B2D8 24040014 */ li $a0, 20 +/* 00BEDC 8000B2DC 00008825 */ move $s1, $zero +/* 00BEE0 8000B2E0 00408025 */ move $s0, $v0 +/* 00BEE4 8000B2E4 24120500 */ li $s2, 1280 +.L8000B2E8: +/* 00BEE8 8000B2E8 8E040078 */ lw $a0, 0x78($s0) +/* 00BEEC 8000B2EC 00000000 */ nop +/* 00BEF0 8000B2F0 10800004 */ beqz $a0, .L8000B304 +/* 00BEF4 8000B2F4 00000000 */ nop +/* 00BEF8 8000B2F8 0C01F32C */ jal func_8007CCB0 +/* 00BEFC 8000B2FC 00000000 */ nop +/* 00BF00 8000B300 AE000078 */ sw $zero, 0x78($s0) +.L8000B304: +/* 00BF04 8000B304 8E04007C */ lw $a0, 0x7c($s0) +/* 00BF08 8000B308 00000000 */ nop +/* 00BF0C 8000B30C 10800004 */ beqz $a0, .L8000B320 +/* 00BF10 8000B310 00000000 */ nop +/* 00BF14 8000B314 0C01ECAF */ jal func_8007B2BC +/* 00BF18 8000B318 00000000 */ nop +/* 00BF1C 8000B31C AE00007C */ sw $zero, 0x7c($s0) +.L8000B320: +/* 00BF20 8000B320 26310080 */ addiu $s1, $s1, 0x80 +/* 00BF24 8000B324 1632FFF0 */ bne $s1, $s2, .L8000B2E8 +/* 00BF28 8000B328 26100080 */ addiu $s0, $s0, 0x80 +/* 00BF2C 8000B32C 3C10800E */ lui $s0, %hi(D_800DC75C) # $s0, 0x800e +/* 00BF30 8000B330 2610C75C */ addiu $s0, %lo(D_800DC75C) # addiu $s0, $s0, -0x38a4 +/* 00BF34 8000B334 8E040000 */ lw $a0, ($s0) +/* 00BF38 8000B338 00000000 */ nop +/* 00BF3C 8000B33C 10800003 */ beqz $a0, .L8000B34C +/* 00BF40 8000B340 00000000 */ nop +/* 00BF44 8000B344 0C003FEE */ jal func_8000FFB8 +/* 00BF48 8000B348 00000000 */ nop +.L8000B34C: +/* 00BF4C 8000B34C 3C11800E */ lui $s1, %hi(D_800DC764) # $s1, 0x800e +/* 00BF50 8000B350 2631C764 */ addiu $s1, %lo(D_800DC764) # addiu $s1, $s1, -0x389c +/* 00BF54 8000B354 8E240000 */ lw $a0, ($s1) +/* 00BF58 8000B358 AE000000 */ sw $zero, ($s0) +/* 00BF5C 8000B35C 10800003 */ beqz $a0, .L8000B36C +/* 00BF60 8000B360 00000000 */ nop +/* 00BF64 8000B364 0C003FEE */ jal func_8000FFB8 +/* 00BF68 8000B368 00000000 */ nop +.L8000B36C: +/* 00BF6C 8000B36C 0C004013 */ jal func_8001004C +/* 00BF70 8000B370 AE200000 */ sw $zero, ($s1) +/* 00BF74 8000B374 8FBF0024 */ lw $ra, 0x24($sp) +/* 00BF78 8000B378 8FB00018 */ lw $s0, 0x18($sp) +/* 00BF7C 8000B37C 8FB1001C */ lw $s1, 0x1c($sp) +/* 00BF80 8000B380 8FB20020 */ lw $s2, 0x20($sp) +/* 00BF84 8000B384 03E00008 */ jr $ra +/* 00BF88 8000B388 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_005740/func_8000B38C.s b/asm/non_matchings/unknown_005740/func_8000B38C.s new file mode 100644 index 00000000..2ee707d3 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000B38C.s @@ -0,0 +1,246 @@ +glabel func_8000B38C +/* 00BF8C 8000B38C 27BDFF60 */ addiu $sp, $sp, -0xa0 +/* 00BF90 8000B390 C7A400B0 */ lwc1 $f4, 0xb0($sp) +/* 00BF94 8000B394 AFB60040 */ sw $s6, 0x40($sp) +/* 00BF98 8000B398 AFB5003C */ sw $s5, 0x3c($sp) +/* 00BF9C 8000B39C E7B4001C */ swc1 $f20, 0x1c($sp) +/* 00BFA0 8000B3A0 4487A000 */ mtc1 $a3, $f20 +/* 00BFA4 8000B3A4 27B50064 */ addiu $s5, $sp, 0x64 +/* 00BFA8 8000B3A8 0080B025 */ move $s6, $a0 +/* 00BFAC 8000B3AC AFBF0044 */ sw $ra, 0x44($sp) +/* 00BFB0 8000B3B0 AFB30034 */ sw $s3, 0x34($sp) +/* 00BFB4 8000B3B4 AFA500A4 */ sw $a1, 0xa4($sp) +/* 00BFB8 8000B3B8 46002187 */ neg.s $f6, $f4 +/* 00BFBC 8000B3BC 00C09825 */ move $s3, $a2 +/* 00BFC0 8000B3C0 AFB40038 */ sw $s4, 0x38($sp) +/* 00BFC4 8000B3C4 AFB20030 */ sw $s2, 0x30($sp) +/* 00BFC8 8000B3C8 AFB1002C */ sw $s1, 0x2c($sp) +/* 00BFCC 8000B3CC AFB00028 */ sw $s0, 0x28($sp) +/* 00BFD0 8000B3D0 E7B70020 */ swc1 $f23, 0x20($sp) +/* 00BFD4 8000B3D4 E7B60024 */ swc1 $f22, 0x24($sp) +/* 00BFD8 8000B3D8 E7B50018 */ swc1 $f21, 0x18($sp) +/* 00BFDC 8000B3DC E7A6006C */ swc1 $f6, 0x6c($sp) +/* 00BFE0 8000B3E0 02A02825 */ move $a1, $s5 +/* 00BFE4 8000B3E4 0C01C124 */ jal func_80070490 +/* 00BFE8 8000B3E8 00C02025 */ move $a0, $a2 +/* 00BFEC 8000B3EC C7A80064 */ lwc1 $f8, 0x64($sp) +/* 00BFF0 8000B3F0 C66A000C */ lwc1 $f10, 0xc($s3) +/* 00BFF4 8000B3F4 02C08025 */ move $s0, $s6 +/* 00BFF8 8000B3F8 460A4400 */ add.s $f16, $f8, $f10 +/* 00BFFC 8000B3FC 2414FFFF */ li $s4, -1 +/* 00C000 8000B400 444EF800 */ cfc1 $t6, $31 +/* 00C004 8000B404 3C12800E */ lui $s2, %hi(D_800DC768) # $s2, 0x800e +/* 00C008 8000B408 35C10003 */ ori $at, $t6, 3 +/* 00C00C 8000B40C 38210002 */ xori $at, $at, 2 +/* 00C010 8000B410 44C1F800 */ ctc1 $at, $31 +/* 00C014 8000B414 4480B000 */ mtc1 $zero, $f22 +/* 00C018 8000B418 460084A4 */ cvt.w.s $f18, $f16 +/* 00C01C 8000B41C 2610000A */ addiu $s0, $s0, 0xa +/* 00C020 8000B420 440F9000 */ mfc1 $t7, $f18 +/* 00C024 8000B424 44CEF800 */ ctc1 $t6, $31 +/* 00C028 8000B428 A6CF0000 */ sh $t7, ($s6) +/* 00C02C 8000B42C C6660010 */ lwc1 $f6, 0x10($s3) +/* 00C030 8000B430 C7A40068 */ lwc1 $f4, 0x68($sp) +/* 00C034 8000B434 2652C768 */ addiu $s2, %lo(D_800DC768) # addiu $s2, $s2, -0x3898 +/* 00C038 8000B438 46062200 */ add.s $f8, $f4, $f6 +/* 00C03C 8000B43C 00008825 */ move $s1, $zero +/* 00C040 8000B440 4458F800 */ cfc1 $t8, $31 +/* 00C044 8000B444 00000000 */ nop +/* 00C048 8000B448 37010003 */ ori $at, $t8, 3 +/* 00C04C 8000B44C 38210002 */ xori $at, $at, 2 +/* 00C050 8000B450 44C1F800 */ ctc1 $at, $31 +/* 00C054 8000B454 35C10003 */ ori $at, $t6, 3 +/* 00C058 8000B458 460042A4 */ cvt.w.s $f10, $f8 +/* 00C05C 8000B45C 38210002 */ xori $at, $at, 2 +/* 00C060 8000B460 44195000 */ mfc1 $t9, $f10 +/* 00C064 8000B464 44D8F800 */ ctc1 $t8, $31 +/* 00C068 8000B468 A619FFF8 */ sh $t9, -8($s0) +/* 00C06C 8000B46C C6720014 */ lwc1 $f18, 0x14($s3) +/* 00C070 8000B470 C7B0006C */ lwc1 $f16, 0x6c($sp) +/* 00C074 8000B474 A614FFFC */ sh $s4, -4($s0) +/* 00C078 8000B478 46128100 */ add.s $f4, $f16, $f18 +/* 00C07C 8000B47C A614FFFE */ sh $s4, -2($s0) +/* 00C080 8000B480 44C1F800 */ ctc1 $at, $31 +/* 00C084 8000B484 00000000 */ nop +/* 00C088 8000B488 460021A4 */ cvt.w.s $f6, $f4 +/* 00C08C 8000B48C 440F3000 */ mfc1 $t7, $f6 +/* 00C090 8000B490 44CEF800 */ ctc1 $t6, $31 +/* 00C094 8000B494 A60FFFFA */ sh $t7, -6($s0) +/* 00C098 8000B498 00000000 */ nop +.L8000B49C: +/* 00C09C 8000B49C C6480000 */ lwc1 $f8, ($s2) +/* 00C0A0 8000B4A0 26520008 */ addiu $s2, $s2, 8 +/* 00C0A4 8000B4A4 46144282 */ mul.s $f10, $f8, $f20 +/* 00C0A8 8000B4A8 02602025 */ move $a0, $s3 +/* 00C0AC 8000B4AC 02A02825 */ move $a1, $s5 +/* 00C0B0 8000B4B0 E7AA0064 */ swc1 $f10, 0x64($sp) +/* 00C0B4 8000B4B4 C650FFFC */ lwc1 $f16, -4($s2) +/* 00C0B8 8000B4B8 E7B6006C */ swc1 $f22, 0x6c($sp) +/* 00C0BC 8000B4BC 46148482 */ mul.s $f18, $f16, $f20 +/* 00C0C0 8000B4C0 0C01C0C8 */ jal func_80070320 +/* 00C0C4 8000B4C4 E7B20068 */ swc1 $f18, 0x68($sp) +/* 00C0C8 8000B4C8 C7A40064 */ lwc1 $f4, 0x64($sp) +/* 00C0CC 8000B4CC C666000C */ lwc1 $f6, 0xc($s3) +/* 00C0D0 8000B4D0 26310001 */ addiu $s1, $s1, 1 +/* 00C0D4 8000B4D4 46062200 */ add.s $f8, $f4, $f6 +/* 00C0D8 8000B4D8 2610000A */ addiu $s0, $s0, 0xa +/* 00C0DC 8000B4DC 4458F800 */ cfc1 $t8, $31 +/* 00C0E0 8000B4E0 00000000 */ nop +/* 00C0E4 8000B4E4 37010003 */ ori $at, $t8, 3 +/* 00C0E8 8000B4E8 38210002 */ xori $at, $at, 2 +/* 00C0EC 8000B4EC 44C1F800 */ ctc1 $at, $31 +/* 00C0F0 8000B4F0 00000000 */ nop +/* 00C0F4 8000B4F4 460042A4 */ cvt.w.s $f10, $f8 +/* 00C0F8 8000B4F8 44195000 */ mfc1 $t9, $f10 +/* 00C0FC 8000B4FC 44D8F800 */ ctc1 $t8, $31 +/* 00C100 8000B500 A619FFF6 */ sh $t9, -0xa($s0) +/* 00C104 8000B504 C6720010 */ lwc1 $f18, 0x10($s3) +/* 00C108 8000B508 C7B00068 */ lwc1 $f16, 0x68($sp) +/* 00C10C 8000B50C 00000000 */ nop +/* 00C110 8000B510 46128100 */ add.s $f4, $f16, $f18 +/* 00C114 8000B514 444EF800 */ cfc1 $t6, $31 +/* 00C118 8000B518 00000000 */ nop +/* 00C11C 8000B51C 35C10003 */ ori $at, $t6, 3 +/* 00C120 8000B520 38210002 */ xori $at, $at, 2 +/* 00C124 8000B524 44C1F800 */ ctc1 $at, $31 +/* 00C128 8000B528 37010003 */ ori $at, $t8, 3 +/* 00C12C 8000B52C 460021A4 */ cvt.w.s $f6, $f4 +/* 00C130 8000B530 38210002 */ xori $at, $at, 2 +/* 00C134 8000B534 440F3000 */ mfc1 $t7, $f6 +/* 00C138 8000B538 44CEF800 */ ctc1 $t6, $31 +/* 00C13C 8000B53C A60FFFF8 */ sh $t7, -8($s0) +/* 00C140 8000B540 C66A0014 */ lwc1 $f10, 0x14($s3) +/* 00C144 8000B544 C7A8006C */ lwc1 $f8, 0x6c($sp) +/* 00C148 8000B548 A614FFFC */ sh $s4, -4($s0) +/* 00C14C 8000B54C 460A4400 */ add.s $f16, $f8, $f10 +/* 00C150 8000B550 A614FFFE */ sh $s4, -2($s0) +/* 00C154 8000B554 44C1F800 */ ctc1 $at, $31 +/* 00C158 8000B558 2A210008 */ slti $at, $s1, 8 +/* 00C15C 8000B55C 460084A4 */ cvt.w.s $f18, $f16 +/* 00C160 8000B560 44199000 */ mfc1 $t9, $f18 +/* 00C164 8000B564 44D8F800 */ ctc1 $t8, $31 +/* 00C168 8000B568 1420FFCC */ bnez $at, .L8000B49C +/* 00C16C 8000B56C A619FFFA */ sh $t9, -6($s0) +/* 00C170 8000B570 8FA200B8 */ lw $v0, 0xb8($sp) +/* 00C174 8000B574 87B100B6 */ lh $s1, 0xb6($sp) +/* 00C178 8000B578 90560001 */ lbu $s6, 1($v0) +/* 00C17C 8000B57C 90520000 */ lbu $s2, ($v0) +/* 00C180 8000B580 26D6FFFF */ addiu $s6, $s6, -1 +/* 00C184 8000B584 00167900 */ sll $t7, $s6, 4 +/* 00C188 8000B588 2652FFFF */ addiu $s2, $s2, -1 +/* 00C18C 8000B58C 00127100 */ sll $t6, $s2, 4 +/* 00C190 8000B590 01C09025 */ move $s2, $t6 +/* 00C194 8000B594 01E0B025 */ move $s6, $t7 +/* 00C198 8000B598 000F9C00 */ sll $s3, $t7, 0x10 +/* 00C19C 8000B59C 27B00080 */ addiu $s0, $sp, 0x80 +/* 00C1A0 8000B5A0 27B500A0 */ addiu $s5, $sp, 0xa0 +/* 00C1A4 8000B5A4 3C14FFFF */ lui $s4, 0xffff +.L8000B5A8: +/* 00C1A8 8000B5A8 00112400 */ sll $a0, $s1, 0x10 +/* 00C1AC 8000B5AC 0004C403 */ sra $t8, $a0, 0x10 +/* 00C1B0 8000B5B0 0C01C20C */ jal func_80070830 +/* 00C1B4 8000B5B4 03002025 */ move $a0, $t8 +/* 00C1B8 8000B5B8 00520019 */ multu $v0, $s2 +/* 00C1BC 8000B5BC 00112400 */ sll $a0, $s1, 0x10 +/* 00C1C0 8000B5C0 0004C403 */ sra $t8, $a0, 0x10 +/* 00C1C4 8000B5C4 03002025 */ move $a0, $t8 +/* 00C1C8 8000B5C8 0000C812 */ mflo $t9 +/* 00C1CC 8000B5CC 00197403 */ sra $t6, $t9, 0x10 +/* 00C1D0 8000B5D0 01D27821 */ addu $t7, $t6, $s2 +/* 00C1D4 8000B5D4 0C01C20B */ jal func_8007082C +/* 00C1D8 8000B5D8 AE0F0000 */ sw $t7, ($s0) +/* 00C1DC 8000B5DC 02C20019 */ multu $s6, $v0 +/* 00C1E0 8000B5E0 8E190000 */ lw $t9, ($s0) +/* 00C1E4 8000B5E4 26312000 */ addiu $s1, $s1, 0x2000 +/* 00C1E8 8000B5E8 26100004 */ addiu $s0, $s0, 4 +/* 00C1EC 8000B5EC 0215082B */ sltu $at, $s0, $s5 +/* 00C1F0 8000B5F0 00007012 */ mflo $t6 +/* 00C1F4 8000B5F4 026E7821 */ addu $t7, $s3, $t6 +/* 00C1F8 8000B5F8 01F4C024 */ and $t8, $t7, $s4 +/* 00C1FC 8000B5FC 00117C00 */ sll $t7, $s1, 0x10 +/* 00C200 8000B600 03387025 */ or $t6, $t9, $t8 +/* 00C204 8000B604 000FCC03 */ sra $t9, $t7, 0x10 +/* 00C208 8000B608 AE0EFFFC */ sw $t6, -4($s0) +/* 00C20C 8000B60C 1420FFE6 */ bnez $at, .L8000B5A8 +/* 00C210 8000B610 03208825 */ move $s1, $t9 +/* 00C214 8000B614 00127400 */ sll $t6, $s2, 0x10 +/* 00C218 8000B618 32CFFFFF */ andi $t7, $s6, 0xffff +/* 00C21C 8000B61C 8FA200A4 */ lw $v0, 0xa4($sp) +/* 00C220 8000B620 A7B900B6 */ sh $t9, 0xb6($sp) +/* 00C224 8000B624 01CF6025 */ or $t4, $t6, $t7 +/* 00C228 8000B628 00008825 */ move $s1, $zero +/* 00C22C 8000B62C 27B00080 */ addiu $s0, $sp, 0x80 +/* 00C230 8000B630 240D0008 */ li $t5, 8 +/* 00C234 8000B634 27A40080 */ addiu $a0, $sp, 0x80 +.L8000B638: +/* 00C238 8000B638 26250001 */ addiu $a1, $s1, 1 +/* 00C23C 8000B63C 30A60007 */ andi $a2, $a1, 7 +/* 00C240 8000B640 24D80001 */ addiu $t8, $a2, 1 +/* 00C244 8000B644 0005CA00 */ sll $t9, $a1, 8 +/* 00C248 8000B648 03387025 */ or $t6, $t9, $t8 +/* 00C24C 8000B64C AC4E0000 */ sw $t6, ($v0) +/* 00C250 8000B650 AC4C0004 */ sw $t4, 4($v0) +/* 00C254 8000B654 8E0F0000 */ lw $t7, ($s0) +/* 00C258 8000B658 0006C880 */ sll $t9, $a2, 2 +/* 00C25C 8000B65C 0099C021 */ addu $t8, $a0, $t9 +/* 00C260 8000B660 AC4F0008 */ sw $t7, 8($v0) +/* 00C264 8000B664 8F0E0000 */ lw $t6, ($t8) +/* 00C268 8000B668 26270002 */ addiu $a3, $s1, 2 +/* 00C26C 8000B66C 30E80007 */ andi $t0, $a3, 7 +/* 00C270 8000B670 25190001 */ addiu $t9, $t0, 1 +/* 00C274 8000B674 00077A00 */ sll $t7, $a3, 8 +/* 00C278 8000B678 01F9C025 */ or $t8, $t7, $t9 +/* 00C27C 8000B67C AC580010 */ sw $t8, 0x10($v0) +/* 00C280 8000B680 AC4C0014 */ sw $t4, 0x14($v0) +/* 00C284 8000B684 AC4E000C */ sw $t6, 0xc($v0) +/* 00C288 8000B688 8E0E0004 */ lw $t6, 4($s0) +/* 00C28C 8000B68C 00087880 */ sll $t7, $t0, 2 +/* 00C290 8000B690 008FC821 */ addu $t9, $a0, $t7 +/* 00C294 8000B694 AC4E0018 */ sw $t6, 0x18($v0) +/* 00C298 8000B698 8F380000 */ lw $t8, ($t9) +/* 00C29C 8000B69C 26290003 */ addiu $t1, $s1, 3 +/* 00C2A0 8000B6A0 312A0007 */ andi $t2, $t1, 7 +/* 00C2A4 8000B6A4 254F0001 */ addiu $t7, $t2, 1 +/* 00C2A8 8000B6A8 00097200 */ sll $t6, $t1, 8 +/* 00C2AC 8000B6AC 01CFC825 */ or $t9, $t6, $t7 +/* 00C2B0 8000B6B0 AC590020 */ sw $t9, 0x20($v0) +/* 00C2B4 8000B6B4 AC4C0024 */ sw $t4, 0x24($v0) +/* 00C2B8 8000B6B8 AC58001C */ sw $t8, 0x1c($v0) +/* 00C2BC 8000B6BC 8E180008 */ lw $t8, 8($s0) +/* 00C2C0 8000B6C0 000A7080 */ sll $t6, $t2, 2 +/* 00C2C4 8000B6C4 008E7821 */ addu $t7, $a0, $t6 +/* 00C2C8 8000B6C8 AC580028 */ sw $t8, 0x28($v0) +/* 00C2CC 8000B6CC 8DF90000 */ lw $t9, ($t7) +/* 00C2D0 8000B6D0 26230004 */ addiu $v1, $s1, 4 +/* 00C2D4 8000B6D4 306B0007 */ andi $t3, $v1, 7 +/* 00C2D8 8000B6D8 256E0001 */ addiu $t6, $t3, 1 +/* 00C2DC 8000B6DC 0003C200 */ sll $t8, $v1, 8 +/* 00C2E0 8000B6E0 030E7825 */ or $t7, $t8, $t6 +/* 00C2E4 8000B6E4 AC4F0030 */ sw $t7, 0x30($v0) +/* 00C2E8 8000B6E8 AC4C0034 */ sw $t4, 0x34($v0) +/* 00C2EC 8000B6EC AC59002C */ sw $t9, 0x2c($v0) +/* 00C2F0 8000B6F0 8E19000C */ lw $t9, 0xc($s0) +/* 00C2F4 8000B6F4 000BC080 */ sll $t8, $t3, 2 +/* 00C2F8 8000B6F8 00987021 */ addu $t6, $a0, $t8 +/* 00C2FC 8000B6FC AC590038 */ sw $t9, 0x38($v0) +/* 00C300 8000B700 8DCF0000 */ lw $t7, ($t6) +/* 00C304 8000B704 00608825 */ move $s1, $v1 +/* 00C308 8000B708 24420040 */ addiu $v0, $v0, 0x40 +/* 00C30C 8000B70C 26100010 */ addiu $s0, $s0, 0x10 +/* 00C310 8000B710 146DFFC9 */ bne $v1, $t5, .L8000B638 +/* 00C314 8000B714 AC4FFFFC */ sw $t7, -4($v0) +/* 00C318 8000B718 8FBF0044 */ lw $ra, 0x44($sp) +/* 00C31C 8000B71C C7B50018 */ lwc1 $f21, 0x18($sp) +/* 00C320 8000B720 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 00C324 8000B724 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 00C328 8000B728 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 00C32C 8000B72C 8FB00028 */ lw $s0, 0x28($sp) +/* 00C330 8000B730 8FB1002C */ lw $s1, 0x2c($sp) +/* 00C334 8000B734 8FB20030 */ lw $s2, 0x30($sp) +/* 00C338 8000B738 8FB30034 */ lw $s3, 0x34($sp) +/* 00C33C 8000B73C 8FB40038 */ lw $s4, 0x38($sp) +/* 00C340 8000B740 8FB5003C */ lw $s5, 0x3c($sp) +/* 00C344 8000B744 8FB60040 */ lw $s6, 0x40($sp) +/* 00C348 8000B748 03E00008 */ jr $ra +/* 00C34C 8000B74C 27BD00A0 */ addiu $sp, $sp, 0xa0 + diff --git a/asm/non_matchings/unknown_005740/func_8000B750.s b/asm/non_matchings/unknown_005740/func_8000B750.s new file mode 100644 index 00000000..268c266a --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000B750.s @@ -0,0 +1,241 @@ +glabel func_8000B750 +/* 00C350 8000B750 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 00C354 8000B754 AFB00028 */ sw $s0, 0x28($sp) +/* 00C358 8000B758 2401FFFF */ li $at, -1 +/* 00C35C 8000B75C 00A08025 */ move $s0, $a1 +/* 00C360 8000B760 AFBF002C */ sw $ra, 0x2c($sp) +/* 00C364 8000B764 AFA40080 */ sw $a0, 0x80($sp) +/* 00C368 8000B768 14A10007 */ bne $a1, $at, .L8000B788 +/* 00C36C 8000B76C AFA7008C */ sw $a3, 0x8c($sp) +/* 00C370 8000B770 3C03800E */ lui $v1, %hi(D_800DC760) # $v1, 0x800e +/* 00C374 8000B774 2463C760 */ addiu $v1, %lo(D_800DC760) # addiu $v1, $v1, -0x38a0 +/* 00C378 8000B778 8C700000 */ lw $s0, ($v1) +/* 00C37C 8000B77C 00000000 */ nop +/* 00C380 8000B780 260EFFFF */ addiu $t6, $s0, -1 +/* 00C384 8000B784 AC6E0000 */ sw $t6, ($v1) +.L8000B788: +/* 00C388 8000B788 3C03800E */ lui $v1, %hi(D_800DC760) # $v1, 0x800e +/* 00C38C 8000B78C 2463C760 */ addiu $v1, %lo(D_800DC760) # addiu $v1, $v1, -0x38a0 +/* 00C390 8000B790 8C6F0000 */ lw $t7, ($v1) +/* 00C394 8000B794 2A01000A */ slti $at, $s0, 0xa +/* 00C398 8000B798 05E10002 */ bgez $t7, .L8000B7A4 +/* 00C39C 8000B79C 00000000 */ nop +/* 00C3A0 8000B7A0 AC600000 */ sw $zero, ($v1) +.L8000B7A4: +/* 00C3A4 8000B7A4 060000CA */ bltz $s0, .L8000BAD0 +/* 00C3A8 8000B7A8 8FBF002C */ lw $ra, 0x2c($sp) +/* 00C3AC 8000B7AC 102000C7 */ beqz $at, .L8000BACC +/* 00C3B0 8000B7B0 24040014 */ li $a0, 20 +/* 00C3B4 8000B7B4 0C0078A7 */ jal func_8001E29C +/* 00C3B8 8000B7B8 AFA60088 */ sw $a2, 0x88($sp) +/* 00C3BC 8000B7BC 3C0E8012 */ lui $t6, %hi(D_8011B020) # $t6, 0x8012 +/* 00C3C0 8000B7C0 25CEB020 */ addiu $t6, %lo(D_8011B020) # addiu $t6, $t6, -0x4fe0 +/* 00C3C4 8000B7C4 00106880 */ sll $t5, $s0, 2 +/* 00C3C8 8000B7C8 8FA5008C */ lw $a1, 0x8c($sp) +/* 00C3CC 8000B7CC 01AE5021 */ addu $t2, $t5, $t6 +/* 00C3D0 8000B7D0 8D470000 */ lw $a3, ($t2) +/* 00C3D4 8000B7D4 0010C9C0 */ sll $t9, $s0, 7 +/* 00C3D8 8000B7D8 8FA60088 */ lw $a2, 0x88($sp) +/* 00C3DC 8000B7DC 03221821 */ addu $v1, $t9, $v0 +/* 00C3E0 8000B7E0 0005C1C0 */ sll $t8, $a1, 7 +/* 00C3E4 8000B7E4 03026021 */ addu $t4, $t8, $v0 +/* 00C3E8 8000B7E8 10E000B8 */ beqz $a3, .L8000BACC +/* 00C3EC 8000B7EC 00605825 */ move $t3, $v1 +/* 00C3F0 8000B7F0 10C00009 */ beqz $a2, .L8000B818 +/* 00C3F4 8000B7F4 24010001 */ li $at, 1 +/* 00C3F8 8000B7F8 10C10009 */ beq $a2, $at, .L8000B820 +/* 00C3FC 8000B7FC 24010002 */ li $at, 2 +/* 00C400 8000B800 10C10009 */ beq $a2, $at, .L8000B828 +/* 00C404 8000B804 2401000D */ li $at, 13 +/* 00C408 8000B808 10C10009 */ beq $a2, $at, .L8000B830 +/* 00C40C 8000B80C 24620048 */ addiu $v0, $v1, 0x48 +/* 00C410 8000B810 10000007 */ b .L8000B830 +/* 00C414 8000B814 00001025 */ move $v0, $zero +.L8000B818: +/* 00C418 8000B818 10000005 */ b .L8000B830 +/* 00C41C 8000B81C 00601025 */ move $v0, $v1 +.L8000B820: +/* 00C420 8000B820 10000003 */ b .L8000B830 +/* 00C424 8000B824 24620024 */ addiu $v0, $v1, 0x24 +.L8000B828: +/* 00C428 8000B828 10000001 */ b .L8000B830 +/* 00C42C 8000B82C 24620048 */ addiu $v0, $v1, 0x48 +.L8000B830: +/* 00C430 8000B830 104000A1 */ beqz $v0, .L8000BAB8 +/* 00C434 8000B834 3C018012 */ lui $at, 0x8012 +/* 00C438 8000B838 00300821 */ addu $at, $at, $s0 +/* 00C43C 8000B83C A026B048 */ sb $a2, -0x4fb8($at) +/* 00C440 8000B840 3C018012 */ lui $at, 0x8012 +/* 00C444 8000B844 00300821 */ addu $at, $at, $s0 +/* 00C448 8000B848 A025B058 */ sb $a1, -0x4fa8($at) +/* 00C44C 8000B84C 906F0070 */ lbu $t7, 0x70($v1) +/* 00C450 8000B850 24010002 */ li $at, 2 +/* 00C454 8000B854 15E10070 */ bne $t7, $at, .L8000BA18 +/* 00C458 8000B858 8FA40080 */ lw $a0, 0x80($sp) +/* 00C45C 8000B85C 91780072 */ lbu $t8, 0x72($t3) +/* 00C460 8000B860 AFAC0048 */ sw $t4, 0x48($sp) +/* 00C464 8000B864 0018CF00 */ sll $t9, $t8, 0x1c +/* 00C468 8000B868 00192403 */ sra $a0, $t9, 0x10 +/* 00C46C 8000B86C AFAB004C */ sw $t3, 0x4c($sp) +/* 00C470 8000B870 AFAA0038 */ sw $t2, 0x38($sp) +/* 00C474 8000B874 0C01C1FE */ jal func_800707F8 +/* 00C478 8000B878 AFA20044 */ sw $v0, 0x44($sp) +/* 00C47C 8000B87C 8FA20044 */ lw $v0, 0x44($sp) +/* 00C480 8000B880 8FAB004C */ lw $t3, 0x4c($sp) +/* 00C484 8000B884 C4460018 */ lwc1 $f6, 0x18($v0) +/* 00C488 8000B888 C4440014 */ lwc1 $f4, 0x14($v0) +/* 00C48C 8000B88C 46060202 */ mul.s $f8, $f0, $f6 +/* 00C490 8000B890 C56C0074 */ lwc1 $f12, 0x74($t3) +/* 00C494 8000B894 C4520020 */ lwc1 $f18, 0x20($v0) +/* 00C498 8000B898 C450001C */ lwc1 $f16, 0x1c($v0) +/* 00C49C 8000B89C 46082280 */ add.s $f10, $f4, $f8 +/* 00C4A0 8000B8A0 8FA5008C */ lw $a1, 0x8c($sp) +/* 00C4A4 8000B8A4 460C5082 */ mul.s $f2, $f10, $f12 +/* 00C4A8 8000B8A8 8FAA0038 */ lw $t2, 0x38($sp) +/* 00C4AC 8000B8AC 8FAC0048 */ lw $t4, 0x48($sp) +/* 00C4B0 8000B8B0 24010001 */ li $at, 1 +/* 00C4B4 8000B8B4 46120182 */ mul.s $f6, $f0, $f18 +/* 00C4B8 8000B8B8 3C088012 */ lui $t0, %hi(D_8011AFFC) # $t0, 0x8012 +/* 00C4BC 8000B8BC 3C098012 */ lui $t1, %hi(D_8011B004) # $t1, 0x8012 +/* 00C4C0 8000B8C0 30A30003 */ andi $v1, $a1, 3 +/* 00C4C4 8000B8C4 46068100 */ add.s $f4, $f16, $f6 +/* 00C4C8 8000B8C8 2529B004 */ addiu $t1, %lo(D_8011B004) # addiu $t1, $t1, -0x4ffc +/* 00C4CC 8000B8CC 460C2382 */ mul.s $f14, $f4, $f12 +/* 00C4D0 8000B8D0 14610008 */ bne $v1, $at, .L8000B8F4 +/* 00C4D4 8000B8D4 2508AFFC */ addiu $t0, %lo(D_8011AFFC) # addiu $t0, $t0, -0x5004 +/* 00C4D8 8000B8D8 3C01800E */ lui $at, %hi(D_800E5130) # $at, 0x800e +/* 00C4DC 8000B8DC C4205130 */ lwc1 $f0, %lo(D_800E5130)($at) +/* 00C4E0 8000B8E0 00000000 */ nop +/* 00C4E4 8000B8E4 46001082 */ mul.s $f2, $f2, $f0 +/* 00C4E8 8000B8E8 00000000 */ nop +/* 00C4EC 8000B8EC 46007382 */ mul.s $f14, $f14, $f0 +/* 00C4F0 8000B8F0 00000000 */ nop +.L8000B8F4: +/* 00C4F4 8000B8F4 28610002 */ slti $at, $v1, 2 +/* 00C4F8 8000B8F8 14200008 */ bnez $at, .L8000B91C +/* 00C4FC 8000B8FC 240E8000 */ li $t6, -32768 +/* 00C500 8000B900 3C01800E */ lui $at, %hi(D_800E5134) # $at, 0x800e +/* 00C504 8000B904 C4205134 */ lwc1 $f0, %lo(D_800E5134)($at) +/* 00C508 8000B908 00000000 */ nop +/* 00C50C 8000B90C 46001082 */ mul.s $f2, $f2, $f0 +/* 00C510 8000B910 00000000 */ nop +/* 00C514 8000B914 46007382 */ mul.s $f14, $f14, $f0 +/* 00C518 8000B918 00000000 */ nop +.L8000B91C: +/* 00C51C 8000B91C C4480000 */ lwc1 $f8, ($v0) +/* 00C520 8000B920 3C038012 */ lui $v1, %hi(D_8011B008) # $v1, 0x8012 +/* 00C524 8000B924 E7A8005C */ swc1 $f8, 0x5c($sp) +/* 00C528 8000B928 C44A0004 */ lwc1 $f10, 4($v0) +/* 00C52C 8000B92C 8C63B008 */ lw $v1, %lo(D_8011B008)($v1) +/* 00C530 8000B930 E7AA0060 */ swc1 $f10, 0x60($sp) +/* 00C534 8000B934 C4520008 */ lwc1 $f18, 8($v0) +/* 00C538 8000B938 8D190000 */ lw $t9, ($t0) +/* 00C53C 8000B93C 3C18800E */ lui $t8, 0x800e +/* 00C540 8000B940 00037880 */ sll $t7, $v1, 2 +/* 00C544 8000B944 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 00C548 8000B948 030FC021 */ addu $t8, $t8, $t7 +/* 00C54C 8000B94C 00196880 */ sll $t5, $t9, 2 +/* 00C550 8000B950 44818000 */ mtc1 $at, $f16 +/* 00C554 8000B954 8F18C74C */ lw $t8, -0x38b4($t8) +/* 00C558 8000B958 01B96821 */ addu $t5, $t5, $t9 +/* 00C55C 8000B95C A7AE0050 */ sh $t6, 0x50($sp) +/* 00C560 8000B960 000D6840 */ sll $t5, $t5, 1 +/* 00C564 8000B964 A7A00052 */ sh $zero, 0x52($sp) +/* 00C568 8000B968 A7A00054 */ sh $zero, 0x54($sp) +/* 00C56C 8000B96C 3C0E800E */ lui $t6, 0x800e +/* 00C570 8000B970 E7AE0010 */ swc1 $f14, 0x10($sp) +/* 00C574 8000B974 E7B20064 */ swc1 $f18, 0x64($sp) +/* 00C578 8000B978 E7B00058 */ swc1 $f16, 0x58($sp) +/* 00C57C 8000B97C 030D2021 */ addu $a0, $t8, $t5 +/* 00C580 8000B980 91780072 */ lbu $t8, 0x72($t3) +/* 00C584 8000B984 01CF7021 */ addu $t6, $t6, $t7 +/* 00C588 8000B988 01E01825 */ move $v1, $t7 +/* 00C58C 8000B98C 8D2F0000 */ lw $t7, ($t1) +/* 00C590 8000B990 00186B00 */ sll $t5, $t8, 0xc +/* 00C594 8000B994 AFAD0014 */ sw $t5, 0x14($sp) +/* 00C598 8000B998 000FC900 */ sll $t9, $t7, 4 +/* 00C59C 8000B99C 8D8F007C */ lw $t7, 0x7c($t4) +/* 00C5A0 8000B9A0 8DCEC754 */ lw $t6, -0x38ac($t6) +/* 00C5A4 8000B9A4 44071000 */ mfc1 $a3, $f2 +/* 00C5A8 8000B9A8 AFAA0038 */ sw $t2, 0x38($sp) +/* 00C5AC 8000B9AC AFA20044 */ sw $v0, 0x44($sp) +/* 00C5B0 8000B9B0 27A60050 */ addiu $a2, $sp, 0x50 +/* 00C5B4 8000B9B4 AFAF0018 */ sw $t7, 0x18($sp) +/* 00C5B8 8000B9B8 0C002CE3 */ jal func_8000B38C +/* 00C5BC 8000B9BC 01D92821 */ addu $a1, $t6, $t9 +/* 00C5C0 8000B9C0 3C088012 */ lui $t0, %hi(D_8011AFFC) # $t0, 0x8012 +/* 00C5C4 8000B9C4 2508AFFC */ addiu $t0, %lo(D_8011AFFC) # addiu $t0, $t0, -0x5004 +/* 00C5C8 8000B9C8 8D190000 */ lw $t9, ($t0) +/* 00C5CC 8000B9CC 3C098012 */ lui $t1, %hi(D_8011B004) # $t1, 0x8012 +/* 00C5D0 8000B9D0 8FAA0038 */ lw $t2, 0x38($sp) +/* 00C5D4 8000B9D4 2529B004 */ addiu $t1, %lo(D_8011B004) # addiu $t1, $t1, -0x4ffc +/* 00C5D8 8000B9D8 00107700 */ sll $t6, $s0, 0x1c +/* 00C5DC 8000B9DC 0019C380 */ sll $t8, $t9, 0xe +/* 00C5E0 8000B9E0 8D2F0000 */ lw $t7, ($t1) +/* 00C5E4 8000B9E4 01D86825 */ or $t5, $t6, $t8 +/* 00C5E8 8000B9E8 8D4E0000 */ lw $t6, ($t2) +/* 00C5EC 8000B9EC 8FA20044 */ lw $v0, 0x44($sp) +/* 00C5F0 8000B9F0 01AFC825 */ or $t9, $t5, $t7 +/* 00C5F4 8000B9F4 ADD9007C */ sw $t9, 0x7c($t6) +/* 00C5F8 8000B9F8 8D180000 */ lw $t8, ($t0) +/* 00C5FC 8000B9FC 8D2F0000 */ lw $t7, ($t1) +/* 00C600 8000BA00 270D0009 */ addiu $t5, $t8, 9 +/* 00C604 8000BA04 25F90008 */ addiu $t9, $t7, 8 +/* 00C608 8000BA08 8D470000 */ lw $a3, ($t2) +/* 00C60C 8000BA0C AD0D0000 */ sw $t5, ($t0) +/* 00C610 8000BA10 AD390000 */ sw $t9, ($t1) +/* 00C614 8000BA14 8FA40080 */ lw $a0, 0x80($sp) +.L8000BA18: +/* 00C618 8000BA18 44800000 */ mtc1 $zero, $f0 +/* 00C61C 8000BA1C ACE40078 */ sw $a0, 0x78($a3) +/* 00C620 8000BA20 8D4E0000 */ lw $t6, ($t2) +/* 00C624 8000BA24 27A50074 */ addiu $a1, $sp, 0x74 +/* 00C628 8000BA28 E5C0000C */ swc1 $f0, 0xc($t6) +/* 00C62C 8000BA2C 8D580000 */ lw $t8, ($t2) +/* 00C630 8000BA30 00000000 */ nop +/* 00C634 8000BA34 E7000010 */ swc1 $f0, 0x10($t8) +/* 00C638 8000BA38 8D4D0000 */ lw $t5, ($t2) +/* 00C63C 8000BA3C 00000000 */ nop +/* 00C640 8000BA40 E5A00014 */ swc1 $f0, 0x14($t5) +/* 00C644 8000BA44 C4460000 */ lwc1 $f6, ($v0) +/* 00C648 8000BA48 00000000 */ nop +/* 00C64C 8000BA4C E7A60074 */ swc1 $f6, 0x74($sp) +/* 00C650 8000BA50 C4440004 */ lwc1 $f4, 4($v0) +/* 00C654 8000BA54 00000000 */ nop +/* 00C658 8000BA58 E7A40078 */ swc1 $f4, 0x78($sp) +/* 00C65C 8000BA5C C4480008 */ lwc1 $f8, 8($v0) +/* 00C660 8000BA60 AFAA0038 */ sw $t2, 0x38($sp) +/* 00C664 8000BA64 0C01C0C8 */ jal func_80070320 +/* 00C668 8000BA68 E7A8007C */ swc1 $f8, 0x7c($sp) +/* 00C66C 8000BA6C 0C004558 */ jal func_80011560 +/* 00C670 8000BA70 00000000 */ nop +/* 00C674 8000BA74 8FA20080 */ lw $v0, 0x80($sp) +/* 00C678 8000BA78 C7AA0074 */ lwc1 $f10, 0x74($sp) +/* 00C67C 8000BA7C C452000C */ lwc1 $f18, 0xc($v0) +/* 00C680 8000BA80 C7A60078 */ lwc1 $f6, 0x78($sp) +/* 00C684 8000BA84 46125400 */ add.s $f16, $f10, $f18 +/* 00C688 8000BA88 C7AA007C */ lwc1 $f10, 0x7c($sp) +/* 00C68C 8000BA8C C4520014 */ lwc1 $f18, 0x14($v0) +/* 00C690 8000BA90 C4440010 */ lwc1 $f4, 0x10($v0) +/* 00C694 8000BA94 44058000 */ mfc1 $a1, $f16 +/* 00C698 8000BA98 8FAA0038 */ lw $t2, 0x38($sp) +/* 00C69C 8000BA9C 46125400 */ add.s $f16, $f10, $f18 +/* 00C6A0 8000BAA0 8D440000 */ lw $a0, ($t2) +/* 00C6A4 8000BAA4 46043200 */ add.s $f8, $f6, $f4 +/* 00C6A8 8000BAA8 44078000 */ mfc1 $a3, $f16 +/* 00C6AC 8000BAAC 44064000 */ mfc1 $a2, $f8 +/* 00C6B0 8000BAB0 0C00455C */ jal func_80011570 +/* 00C6B4 8000BAB4 00000000 */ nop +.L8000BAB8: +/* 00C6B8 8000BAB8 8FAF0090 */ lw $t7, 0x90($sp) +/* 00C6BC 8000BABC 3C018012 */ lui $at, 0x8012 +/* 00C6C0 8000BAC0 11E00002 */ beqz $t7, .L8000BACC +/* 00C6C4 8000BAC4 00300821 */ addu $at, $at, $s0 +/* 00C6C8 8000BAC8 A020B068 */ sb $zero, -0x4f98($at) +.L8000BACC: +/* 00C6CC 8000BACC 8FBF002C */ lw $ra, 0x2c($sp) +.L8000BAD0: +/* 00C6D0 8000BAD0 8FB00028 */ lw $s0, 0x28($sp) +/* 00C6D4 8000BAD4 03E00008 */ jr $ra +/* 00C6D8 8000BAD8 27BD0080 */ addiu $sp, $sp, 0x80 + diff --git a/asm/non_matchings/unknown_005740/func_8000BADC.s b/asm/non_matchings/unknown_005740/func_8000BADC.s new file mode 100644 index 00000000..6a7fe438 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000BADC.s @@ -0,0 +1,305 @@ +glabel func_8000BADC +/* 00C6DC 8000BADC 3C028012 */ lui $v0, %hi(D_8011B008) # $v0, 0x8012 +/* 00C6E0 8000BAE0 2442B008 */ addiu $v0, %lo(D_8011B008) # addiu $v0, $v0, -0x4ff8 +/* 00C6E4 8000BAE4 8C4E0000 */ lw $t6, ($v0) +/* 00C6E8 8000BAE8 240F0001 */ li $t7, 1 +/* 00C6EC 8000BAEC 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 00C6F0 8000BAF0 01EEC023 */ subu $t8, $t7, $t6 +/* 00C6F4 8000BAF4 AC580000 */ sw $t8, ($v0) +/* 00C6F8 8000BAF8 3C018012 */ lui $at, %hi(D_8011AFFC) # $at, 0x8012 +/* 00C6FC 8000BAFC AFB10020 */ sw $s1, 0x20($sp) +/* 00C700 8000BB00 AC20AFFC */ sw $zero, %lo(D_8011AFFC)($at) +/* 00C704 8000BB04 00808825 */ move $s1, $a0 +/* 00C708 8000BB08 AFBF002C */ sw $ra, 0x2c($sp) +/* 00C70C 8000BB0C 3C018012 */ lui $at, %hi(D_8011B004) # $at, 0x8012 +/* 00C710 8000BB10 AFB30028 */ sw $s3, 0x28($sp) +/* 00C714 8000BB14 AFB20024 */ sw $s2, 0x24($sp) +/* 00C718 8000BB18 AFB0001C */ sw $s0, 0x1c($sp) +/* 00C71C 8000BB1C AC20B004 */ sw $zero, %lo(D_8011B004)($at) +/* 00C720 8000BB20 0C0078A7 */ jal func_8001E29C +/* 00C724 8000BB24 24040014 */ li $a0, 20 +/* 00C728 8000BB28 24190009 */ li $t9, 9 +/* 00C72C 8000BB2C 3C01800E */ lui $at, %hi(D_800DC760) # $at, 0x800e +/* 00C730 8000BB30 3C038012 */ lui $v1, %hi(D_8011B068) # $v1, 0x8012 +/* 00C734 8000BB34 3C048012 */ lui $a0, %hi(D_8011B020) # $a0, 0x8012 +/* 00C738 8000BB38 00405825 */ move $t3, $v0 +/* 00C73C 8000BB3C AC39C760 */ sw $t9, %lo(D_800DC760)($at) +/* 00C740 8000BB40 2484B020 */ addiu $a0, %lo(D_8011B020) # addiu $a0, $a0, -0x4fe0 +/* 00C744 8000BB44 2463B068 */ addiu $v1, %lo(D_8011B068) # addiu $v1, $v1, -0x4f98 +/* 00C748 8000BB48 00004025 */ move $t0, $zero +/* 00C74C 8000BB4C 240A0001 */ li $t2, 1 +.L8000BB50: +/* 00C750 8000BB50 906C0000 */ lbu $t4, ($v1) +/* 00C754 8000BB54 00086880 */ sll $t5, $t0, 2 +/* 00C758 8000BB58 11800006 */ beqz $t4, .L8000BB74 +/* 00C75C 8000BB5C 008D7821 */ addu $t7, $a0, $t5 +/* 00C760 8000BB60 8DE20000 */ lw $v0, ($t7) +/* 00C764 8000BB64 00000000 */ nop +/* 00C768 8000BB68 10400002 */ beqz $v0, .L8000BB74 +/* 00C76C 8000BB6C 00000000 */ nop +/* 00C770 8000BB70 AC400078 */ sw $zero, 0x78($v0) +.L8000BB74: +/* 00C774 8000BB74 25080001 */ addiu $t0, $t0, 1 +/* 00C778 8000BB78 2901000A */ slti $at, $t0, 0xa +/* 00C77C 8000BB7C 24630001 */ addiu $v1, $v1, 1 +/* 00C780 8000BB80 1420FFF3 */ bnez $at, .L8000BB50 +/* 00C784 8000BB84 A06AFFFF */ sb $t2, -1($v1) +/* 00C788 8000BB88 3C0E8012 */ lui $t6, %hi(D_8011AEF0) # $t6, 0x8012 +/* 00C78C 8000BB8C 8DCEAEF0 */ lw $t6, %lo(D_8011AEF0)($t6) +/* 00C790 8000BB90 00004025 */ move $t0, $zero +/* 00C794 8000BB94 19C000DD */ blez $t6, .L8000BF0C +/* 00C798 8000BB98 00009025 */ move $s2, $zero +/* 00C79C 8000BB9C 3C013E80 */ li $at, 0x3E800000 # 0.250000 +/* 00C7A0 8000BBA0 44819000 */ mtc1 $at, $f18 +/* 00C7A4 8000BBA4 44912000 */ mtc1 $s1, $f4 +/* 00C7A8 8000BBA8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 00C7AC 8000BBAC 3C138012 */ lui $s3, %hi(D_8011AEE4) # $s3, 0x8012 +/* 00C7B0 8000BBB0 44817000 */ mtc1 $at, $f14 +/* 00C7B4 8000BBB4 44806000 */ mtc1 $zero, $f12 +/* 00C7B8 8000BBB8 2673AEE4 */ addiu $s3, %lo(D_8011AEE4) # addiu $s3, $s3, -0x511c +/* 00C7BC 8000BBBC 24090002 */ li $t1, 2 +/* 00C7C0 8000BBC0 46802420 */ cvt.s.w $f16, $f4 +.L8000BBC4: +/* 00C7C4 8000BBC4 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 +/* 00C7C8 8000BBC8 8F180300 */ lw $t8, %lo(D_80000300)($t8) +/* 00C7CC 8000BBCC 46008086 */ mov.s $f2, $f16 +/* 00C7D0 8000BBD0 17000005 */ bnez $t8, .L8000BBE8 +/* 00C7D4 8000BBD4 3C01800E */ lui $at, %hi(D_800E5138) # $at, 0x800e +/* 00C7D8 8000BBD8 C4265138 */ lwc1 $f6, %lo(D_800E5138)($at) +/* 00C7DC 8000BBDC 00000000 */ nop +/* 00C7E0 8000BBE0 46068082 */ mul.s $f2, $f16, $f6 +/* 00C7E4 8000BBE4 00000000 */ nop +.L8000BBE8: +/* 00C7E8 8000BBE8 8E790000 */ lw $t9, ($s3) +/* 00C7EC 8000BBEC 3C188012 */ lui $t8, %hi(D_8011B010) # $t8, 0x8012 +/* 00C7F0 8000BBF0 03326021 */ addu $t4, $t9, $s2 +/* 00C7F4 8000BBF4 8D8D0000 */ lw $t5, ($t4) +/* 00C7F8 8000BBF8 2718B010 */ addiu $t8, %lo(D_8011B010) # addiu $t8, $t8, -0x4ff0 +/* 00C7FC 8000BBFC 8DB00064 */ lw $s0, 0x64($t5) +/* 00C800 8000BC00 00000000 */ nop +/* 00C804 8000BC04 82040002 */ lb $a0, 2($s0) +/* 00C808 8000BC08 860E018E */ lh $t6, 0x18e($s0) +/* 00C80C 8000BC0C 000479C0 */ sll $t7, $a0, 7 +/* 00C810 8000BC10 11C00006 */ beqz $t6, .L8000BC2C +/* 00C814 8000BC14 01EB1021 */ addu $v0, $t7, $t3 +/* 00C818 8000BC18 00981821 */ addu $v1, $a0, $t8 +/* 00C81C 8000BC1C 90790000 */ lbu $t9, ($v1) +/* 00C820 8000BC20 00000000 */ nop +/* 00C824 8000BC24 03316021 */ addu $t4, $t9, $s1 +/* 00C828 8000BC28 A06C0000 */ sb $t4, ($v1) +.L8000BC2C: +/* 00C82C 8000BC2C 904D0072 */ lbu $t5, 0x72($v0) +/* 00C830 8000BC30 00000000 */ nop +/* 00C834 8000BC34 01B17821 */ addu $t7, $t5, $s1 +/* 00C838 8000BC38 A04F0072 */ sb $t7, 0x72($v0) +/* 00C83C 8000BC3C 820E01D3 */ lb $t6, 0x1d3($s0) +/* 00C840 8000BC40 00000000 */ nop +/* 00C844 8000BC44 11C00041 */ beqz $t6, .L8000BD4C +/* 00C848 8000BC48 00000000 */ nop +/* 00C84C 8000BC4C 90590070 */ lbu $t9, 0x70($v0) +/* 00C850 8000BC50 24180014 */ li $t8, 20 +/* 00C854 8000BC54 17200011 */ bnez $t9, .L8000BC9C +/* 00C858 8000BC58 A0580073 */ sb $t8, 0x73($v0) +/* 00C85C 8000BC5C 46121282 */ mul.s $f10, $f2, $f18 +/* 00C860 8000BC60 C4480074 */ lwc1 $f8, 0x74($v0) +/* 00C864 8000BC64 3C01800E */ lui $at, %hi(D_800E513C) # $at, 0x800e +/* 00C868 8000BC68 460A4100 */ add.s $f4, $f8, $f10 +/* 00C86C 8000BC6C E4440074 */ swc1 $f4, 0x74($v0) +/* 00C870 8000BC70 C426513C */ lwc1 $f6, %lo(D_800E513C)($at) +/* 00C874 8000BC74 C4400074 */ lwc1 $f0, 0x74($v0) +/* 00C878 8000BC78 46006086 */ mov.s $f2, $f12 +/* 00C87C 8000BC7C 4600303C */ c.lt.s $f6, $f0 +/* 00C880 8000BC80 3C01800E */ lui $at, %hi(D_800E5140) # $at, 0x800e +/* 00C884 8000BC84 45000005 */ bc1f .L8000BC9C +/* 00C888 8000BC88 00000000 */ nop +/* 00C88C 8000BC8C C4285140 */ lwc1 $f8, %lo(D_800E5140)($at) +/* 00C890 8000BC90 A04A0070 */ sb $t2, 0x70($v0) +/* 00C894 8000BC94 46004281 */ sub.s $f10, $f8, $f0 +/* 00C898 8000BC98 E44A0074 */ swc1 $f10, 0x74($v0) +.L8000BC9C: +/* 00C89C 8000BC9C 904C0070 */ lbu $t4, 0x70($v0) +/* 00C8A0 8000BCA0 24010001 */ li $at, 1 +/* 00C8A4 8000BCA4 15810010 */ bne $t4, $at, .L8000BCE8 +/* 00C8A8 8000BCA8 00000000 */ nop +/* 00C8AC 8000BCAC 46121182 */ mul.s $f6, $f2, $f18 +/* 00C8B0 8000BCB0 C4440074 */ lwc1 $f4, 0x74($v0) +/* 00C8B4 8000BCB4 46006086 */ mov.s $f2, $f12 +/* 00C8B8 8000BCB8 240D0002 */ li $t5, 2 +/* 00C8BC 8000BCBC 46062201 */ sub.s $f8, $f4, $f6 +/* 00C8C0 8000BCC0 E4480074 */ swc1 $f8, 0x74($v0) +/* 00C8C4 8000BCC4 C4400074 */ lwc1 $f0, 0x74($v0) +/* 00C8C8 8000BCC8 00000000 */ nop +/* 00C8CC 8000BCCC 460E003C */ c.lt.s $f0, $f14 +/* 00C8D0 8000BCD0 00000000 */ nop +/* 00C8D4 8000BCD4 45000004 */ bc1f .L8000BCE8 +/* 00C8D8 8000BCD8 00000000 */ nop +/* 00C8DC 8000BCDC 46007281 */ sub.s $f10, $f14, $f0 +/* 00C8E0 8000BCE0 A04D0070 */ sb $t5, 0x70($v0) +/* 00C8E4 8000BCE4 E44A0074 */ swc1 $f10, 0x74($v0) +.L8000BCE8: +/* 00C8E8 8000BCE8 904F0070 */ lbu $t7, 0x70($v0) +/* 00C8EC 8000BCEC 00000000 */ nop +/* 00C8F0 8000BCF0 152F0013 */ bne $t1, $t7, .L8000BD40 +/* 00C8F4 8000BCF4 00000000 */ nop +/* 00C8F8 8000BCF8 C4400074 */ lwc1 $f0, 0x74($v0) +/* 00C8FC 8000BCFC 3C013E00 */ li $at, 0x3E000000 # 0.125000 +/* 00C900 8000BD00 460E003C */ c.lt.s $f0, $f14 +/* 00C904 8000BD04 00000000 */ nop +/* 00C908 8000BD08 4500000D */ bc1f .L8000BD40 +/* 00C90C 8000BD0C 00000000 */ nop +/* 00C910 8000BD10 44812000 */ mtc1 $at, $f4 +/* 00C914 8000BD14 00000000 */ nop +/* 00C918 8000BD18 46041182 */ mul.s $f6, $f2, $f4 +/* 00C91C 8000BD1C 46060200 */ add.s $f8, $f0, $f6 +/* 00C920 8000BD20 E4480074 */ swc1 $f8, 0x74($v0) +/* 00C924 8000BD24 C44A0074 */ lwc1 $f10, 0x74($v0) +/* 00C928 8000BD28 00000000 */ nop +/* 00C92C 8000BD2C 460A703C */ c.lt.s $f14, $f10 +/* 00C930 8000BD30 00000000 */ nop +/* 00C934 8000BD34 45000002 */ bc1f .L8000BD40 +/* 00C938 8000BD38 00000000 */ nop +/* 00C93C 8000BD3C E44E0074 */ swc1 $f14, 0x74($v0) +.L8000BD40: +/* 00C940 8000BD40 90430070 */ lbu $v1, 0x70($v0) +/* 00C944 8000BD44 1000002E */ b .L8000BE00 +/* 00C948 8000BD48 00000000 */ nop +.L8000BD4C: +/* 00C94C 8000BD4C 80440073 */ lb $a0, 0x73($v0) +/* 00C950 8000BD50 00000000 */ nop +/* 00C954 8000BD54 18800004 */ blez $a0, .L8000BD68 +/* 00C958 8000BD58 00917023 */ subu $t6, $a0, $s1 +/* 00C95C 8000BD5C 90430070 */ lbu $v1, 0x70($v0) +/* 00C960 8000BD60 10000027 */ b .L8000BE00 +/* 00C964 8000BD64 A04E0073 */ sb $t6, 0x73($v0) +.L8000BD68: +/* 00C968 8000BD68 90580070 */ lbu $t8, 0x70($v0) +/* 00C96C 8000BD6C 3C01800E */ lui $at, %hi(D_800E5144) # $at, 0x800e +/* 00C970 8000BD70 15380010 */ bne $t1, $t8, .L8000BDB4 +/* 00C974 8000BD74 00000000 */ nop +/* 00C978 8000BD78 C4265144 */ lwc1 $f6, %lo(D_800E5144)($at) +/* 00C97C 8000BD7C C4440074 */ lwc1 $f4, 0x74($v0) +/* 00C980 8000BD80 46061202 */ mul.s $f8, $f2, $f6 +/* 00C984 8000BD84 46006086 */ mov.s $f2, $f12 +/* 00C988 8000BD88 46082281 */ sub.s $f10, $f4, $f8 +/* 00C98C 8000BD8C E44A0074 */ swc1 $f10, 0x74($v0) +/* 00C990 8000BD90 C4400074 */ lwc1 $f0, 0x74($v0) +/* 00C994 8000BD94 00000000 */ nop +/* 00C998 8000BD98 460C003C */ c.lt.s $f0, $f12 +/* 00C99C 8000BD9C 00000000 */ nop +/* 00C9A0 8000BDA0 45000004 */ bc1f .L8000BDB4 +/* 00C9A4 8000BDA4 00000000 */ nop +/* 00C9A8 8000BDA8 460E0180 */ add.s $f6, $f0, $f14 +/* 00C9AC 8000BDAC A0400070 */ sb $zero, 0x70($v0) +/* 00C9B0 8000BDB0 E4460074 */ swc1 $f6, 0x74($v0) +.L8000BDB4: +/* 00C9B4 8000BDB4 90430070 */ lbu $v1, 0x70($v0) +/* 00C9B8 8000BDB8 00000000 */ nop +/* 00C9BC 8000BDBC 28610002 */ slti $at, $v1, 2 +/* 00C9C0 8000BDC0 1020000F */ beqz $at, .L8000BE00 +/* 00C9C4 8000BDC4 3C01800E */ lui $at, %hi(D_800E5148) # $at, 0x800e +/* 00C9C8 8000BDC8 C4285148 */ lwc1 $f8, %lo(D_800E5148)($at) +/* 00C9CC 8000BDCC C4440074 */ lwc1 $f4, 0x74($v0) +/* 00C9D0 8000BDD0 46081282 */ mul.s $f10, $f2, $f8 +/* 00C9D4 8000BDD4 300300FF */ andi $v1, $zero, 0xff +/* 00C9D8 8000BDD8 460A2181 */ sub.s $f6, $f4, $f10 +/* 00C9DC 8000BDDC E4460074 */ swc1 $f6, 0x74($v0) +/* 00C9E0 8000BDE0 C4480074 */ lwc1 $f8, 0x74($v0) +/* 00C9E4 8000BDE4 00000000 */ nop +/* 00C9E8 8000BDE8 460C403C */ c.lt.s $f8, $f12 +/* 00C9EC 8000BDEC 00000000 */ nop +/* 00C9F0 8000BDF0 45000002 */ bc1f .L8000BDFC +/* 00C9F4 8000BDF4 00000000 */ nop +/* 00C9F8 8000BDF8 E44C0074 */ swc1 $f12, 0x74($v0) +.L8000BDFC: +/* 00C9FC 8000BDFC A0400070 */ sb $zero, 0x70($v0) +.L8000BE00: +/* 00CA00 8000BE00 1C600007 */ bgtz $v1, .L8000BE20 +/* 00CA04 8000BE04 00000000 */ nop +/* 00CA08 8000BE08 C4440074 */ lwc1 $f4, 0x74($v0) +/* 00CA0C 8000BE0C 00000000 */ nop +/* 00CA10 8000BE10 4604603C */ c.lt.s $f12, $f4 +/* 00CA14 8000BE14 00000000 */ nop +/* 00CA18 8000BE18 45000016 */ bc1f .L8000BE74 +/* 00CA1C 8000BE1C 00000000 */ nop +.L8000BE20: +/* 00CA20 8000BE20 8E790000 */ lw $t9, ($s3) +/* 00CA24 8000BE24 82050002 */ lb $a1, 2($s0) +/* 00CA28 8000BE28 03326021 */ addu $t4, $t9, $s2 +/* 00CA2C 8000BE2C 8D840000 */ lw $a0, ($t4) +/* 00CA30 8000BE30 820601D7 */ lb $a2, 0x1d7($s0) +/* 00CA34 8000BE34 82070203 */ lb $a3, 0x203($s0) +/* 00CA38 8000BE38 E7B00030 */ swc1 $f16, 0x30($sp) +/* 00CA3C 8000BE3C AFAB0040 */ sw $t3, 0x40($sp) +/* 00CA40 8000BE40 AFA8004C */ sw $t0, 0x4c($sp) +/* 00CA44 8000BE44 0C002DD4 */ jal func_8000B750 +/* 00CA48 8000BE48 AFA00010 */ sw $zero, 0x10($sp) +/* 00CA4C 8000BE4C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 00CA50 8000BE50 44817000 */ mtc1 $at, $f14 +/* 00CA54 8000BE54 3C013E80 */ li $at, 0x3E800000 # 0.250000 +/* 00CA58 8000BE58 44819000 */ mtc1 $at, $f18 +/* 00CA5C 8000BE5C 8FA8004C */ lw $t0, 0x4c($sp) +/* 00CA60 8000BE60 8FAB0040 */ lw $t3, 0x40($sp) +/* 00CA64 8000BE64 44806000 */ mtc1 $zero, $f12 +/* 00CA68 8000BE68 C7B00030 */ lwc1 $f16, 0x30($sp) +/* 00CA6C 8000BE6C 24090002 */ li $t1, 2 +/* 00CA70 8000BE70 240A0001 */ li $t2, 1 +.L8000BE74: +/* 00CA74 8000BE74 82030002 */ lb $v1, 2($s0) +/* 00CA78 8000BE78 3C0F8012 */ lui $t7, %hi(D_8011B078) # $t7, 0x8012 +/* 00CA7C 8000BE7C 25EFB078 */ addiu $t7, %lo(D_8011B078) # addiu $t7, $t7, -0x4f88 +/* 00CA80 8000BE80 00036880 */ sll $t5, $v1, 2 +/* 00CA84 8000BE84 01AF1021 */ addu $v0, $t5, $t7 +/* 00CA88 8000BE88 904E0001 */ lbu $t6, 1($v0) +/* 00CA8C 8000BE8C 90590002 */ lbu $t9, 2($v0) +/* 00CA90 8000BE90 01D1C021 */ addu $t8, $t6, $s1 +/* 00CA94 8000BE94 03316021 */ addu $t4, $t9, $s1 +/* 00CA98 8000BE98 A0580001 */ sb $t8, 1($v0) +/* 00CA9C 8000BE9C A04C0002 */ sb $t4, 2($v0) +/* 00CAA0 8000BEA0 820D0175 */ lb $t5, 0x175($s0) +/* 00CAA4 8000BEA4 3C0C8012 */ lui $t4, %hi(D_8011AEF0) # $t4, 0x8012 +/* 00CAA8 8000BEA8 11A0000B */ beqz $t5, .L8000BED8 +/* 00CAAC 8000BEAC 00000000 */ nop +/* 00CAB0 8000BEB0 904F0003 */ lbu $t7, 3($v0) +/* 00CAB4 8000BEB4 00117080 */ sll $t6, $s1, 2 +/* 00CAB8 8000BEB8 01EE1821 */ addu $v1, $t7, $t6 +/* 00CABC 8000BEBC 28610020 */ slti $at, $v1, 0x20 +/* 00CAC0 8000BEC0 10200003 */ beqz $at, .L8000BED0 +/* 00CAC4 8000BEC4 24180020 */ li $t8, 32 +/* 00CAC8 8000BEC8 1000000B */ b .L8000BEF8 +/* 00CACC 8000BECC A0430003 */ sb $v1, 3($v0) +.L8000BED0: +/* 00CAD0 8000BED0 10000009 */ b .L8000BEF8 +/* 00CAD4 8000BED4 A0580003 */ sb $t8, 3($v0) +.L8000BED8: +/* 00CAD8 8000BED8 90590003 */ lbu $t9, 3($v0) +/* 00CADC 8000BEDC 00000000 */ nop +/* 00CAE0 8000BEE0 03311823 */ subu $v1, $t9, $s1 +/* 00CAE4 8000BEE4 18600003 */ blez $v1, .L8000BEF4 +/* 00CAE8 8000BEE8 00000000 */ nop +/* 00CAEC 8000BEEC 10000002 */ b .L8000BEF8 +/* 00CAF0 8000BEF0 A0430003 */ sb $v1, 3($v0) +.L8000BEF4: +/* 00CAF4 8000BEF4 A0400003 */ sb $zero, 3($v0) +.L8000BEF8: +/* 00CAF8 8000BEF8 8D8CAEF0 */ lw $t4, %lo(D_8011AEF0)($t4) +/* 00CAFC 8000BEFC 25080001 */ addiu $t0, $t0, 1 +/* 00CB00 8000BF00 010C082A */ slt $at, $t0, $t4 +/* 00CB04 8000BF04 1420FF2F */ bnez $at, .L8000BBC4 +/* 00CB08 8000BF08 26520004 */ addiu $s2, $s2, 4 +.L8000BF0C: +/* 00CB0C 8000BF0C 3C04800E */ lui $a0, %hi(D_800DC764) # $a0, 0x800e +/* 00CB10 8000BF10 8C84C764 */ lw $a0, %lo(D_800DC764)($a0) +/* 00CB14 8000BF14 00000000 */ nop +/* 00CB18 8000BF18 10800004 */ beqz $a0, .L8000BF2C +/* 00CB1C 8000BF1C 8FBF002C */ lw $ra, 0x2c($sp) +/* 00CB20 8000BF20 0C00444D */ jal func_80011134 +/* 00CB24 8000BF24 02202825 */ move $a1, $s1 +/* 00CB28 8000BF28 8FBF002C */ lw $ra, 0x2c($sp) +.L8000BF2C: +/* 00CB2C 8000BF2C 8FB0001C */ lw $s0, 0x1c($sp) +/* 00CB30 8000BF30 8FB10020 */ lw $s1, 0x20($sp) +/* 00CB34 8000BF34 8FB20024 */ lw $s2, 0x24($sp) +/* 00CB38 8000BF38 8FB30028 */ lw $s3, 0x28($sp) +/* 00CB3C 8000BF3C 03E00008 */ jr $ra +/* 00CB40 8000BF40 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_005740/func_8000BF44.s b/asm/non_matchings/unknown_005740/func_8000BF44.s new file mode 100644 index 00000000..48de5053 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000BF44.s @@ -0,0 +1,24 @@ +glabel func_8000BF44 +/* 00CB44 8000BF44 2401FFFF */ li $at, -1 +/* 00CB48 8000BF48 14810004 */ bne $a0, $at, .L8000BF5C +/* 00CB4C 8000BF4C 00000000 */ nop +/* 00CB50 8000BF50 3C04800E */ lui $a0, %hi(D_800DC760) # $a0, 0x800e +/* 00CB54 8000BF54 8C84C760 */ lw $a0, %lo(D_800DC760)($a0) +/* 00CB58 8000BF58 00000000 */ nop +.L8000BF5C: +/* 00CB5C 8000BF5C 04800003 */ bltz $a0, .L8000BF6C +/* 00CB60 8000BF60 2881000A */ slti $at, $a0, 0xa +/* 00CB64 8000BF64 14200003 */ bnez $at, .L8000BF74 +/* 00CB68 8000BF68 00047080 */ sll $t6, $a0, 2 +.L8000BF6C: +/* 00CB6C 8000BF6C 03E00008 */ jr $ra +/* 00CB70 8000BF70 00001025 */ move $v0, $zero + +.L8000BF74: +/* 00CB74 8000BF74 3C028012 */ lui $v0, 0x8012 +/* 00CB78 8000BF78 004E1021 */ addu $v0, $v0, $t6 +/* 00CB7C 8000BF7C 8C42B020 */ lw $v0, -0x4fe0($v0) +/* 00CB80 8000BF80 00000000 */ nop +/* 00CB84 8000BF84 03E00008 */ jr $ra +/* 00CB88 8000BF88 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000BF8C.s b/asm/non_matchings/unknown_005740/func_8000BF8C.s new file mode 100644 index 00000000..71e4d4b6 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000BF8C.s @@ -0,0 +1,221 @@ +glabel func_8000BF8C +/* 00CB8C 8000BF8C 3C01800E */ lui $at, %hi(D_800E514C) # $at, 0x800e +/* 00CB90 8000BF90 C42C514C */ lwc1 $f12, %lo(D_800E514C)($at) +/* 00CB94 8000BF94 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 00CB98 8000BF98 3C01800E */ lui $at, %hi(D_800E5150) # $at, 0x800e +/* 00CB9C 8000BF9C AFBF001C */ sw $ra, 0x1c($sp) +/* 00CBA0 8000BFA0 C42E5150 */ lwc1 $f14, %lo(D_800E5150)($at) +/* 00CBA4 8000BFA4 AFA00010 */ sw $zero, 0x10($sp) +/* 00CBA8 8000BFA8 00003025 */ move $a2, $zero +/* 00CBAC 8000BFAC 0C007496 */ jal func_8001D258 +/* 00CBB0 8000BFB0 2407E000 */ li $a3, -8192 +/* 00CBB4 8000BFB4 3C040001 */ lui $a0, (0x00015800 >> 16) # lui $a0, 1 +/* 00CBB8 8000BFB8 34845800 */ ori $a0, (0x00015800 & 0xFFFF) # ori $a0, $a0, 0x5800 +/* 00CBBC 8000BFBC 0C01C2DE */ jal func_80070B78 +/* 00CBC0 8000BFC0 24050200 */ li $a1, 512 +/* 00CBC4 8000BFC4 3C018012 */ lui $at, %hi(D_8011AE68) # $at, 0x8012 +/* 00CBC8 8000BFC8 AC22AE68 */ sw $v0, %lo(D_8011AE68)($at) +/* 00CBCC 8000BFCC 24040320 */ li $a0, 800 +/* 00CBD0 8000BFD0 0C01C327 */ jal func_80070C9C +/* 00CBD4 8000BFD4 3405FFFF */ li $a1, 65535 +/* 00CBD8 8000BFD8 3C018012 */ lui $at, %hi(D_8011AEC4) # $at, 0x8012 +/* 00CBDC 8000BFDC AC22AEC4 */ sw $v0, %lo(D_8011AEC4)($at) +/* 00CBE0 8000BFE0 24040050 */ li $a0, 80 +/* 00CBE4 8000BFE4 0C01C327 */ jal func_80070C9C +/* 00CBE8 8000BFE8 3405FFFF */ li $a1, 65535 +/* 00CBEC 8000BFEC 3C018012 */ lui $at, %hi(D_8011AE6C) # $at, 0x8012 +/* 00CBF0 8000BFF0 AC22AE6C */ sw $v0, %lo(D_8011AE6C)($at) +/* 00CBF4 8000BFF4 24040200 */ li $a0, 512 +/* 00CBF8 8000BFF8 0C01C327 */ jal func_80070C9C +/* 00CBFC 8000BFFC 3405FFFF */ li $a1, 65535 +/* 00CC00 8000C000 3C018012 */ lui $at, %hi(D_8011AE74) # $at, 0x8012 +/* 00CC04 8000C004 AC22AE74 */ sw $v0, %lo(D_8011AE74)($at) +/* 00CC08 8000C008 24040E10 */ li $a0, 3600 +/* 00CC0C 8000C00C 0C01C327 */ jal func_80070C9C +/* 00CC10 8000C010 3405FFFF */ li $a1, 65535 +/* 00CC14 8000C014 3C018012 */ lui $at, %hi(D_8011AECC) # $at, 0x8012 +/* 00CC18 8000C018 AC22AECC */ sw $v0, %lo(D_8011AECC)($at) +/* 00CC1C 8000C01C 24040050 */ li $a0, 80 +/* 00CC20 8000C020 0C01C327 */ jal func_80070C9C +/* 00CC24 8000C024 3405FFFF */ li $a1, 65535 +/* 00CC28 8000C028 3C018012 */ lui $at, %hi(D_8011AEDC) # $at, 0x8012 +/* 00CC2C 8000C02C AC22AEDC */ sw $v0, %lo(D_8011AEDC)($at) +/* 00CC30 8000C030 24040028 */ li $a0, 40 +/* 00CC34 8000C034 0C01C327 */ jal func_80070C9C +/* 00CC38 8000C038 3405FFFF */ li $a1, 65535 +/* 00CC3C 8000C03C 3C018012 */ lui $at, %hi(D_8011AEE4) # $at, 0x8012 +/* 00CC40 8000C040 AC22AEE4 */ sw $v0, %lo(D_8011AEE4)($at) +/* 00CC44 8000C044 24040028 */ li $a0, 40 +/* 00CC48 8000C048 0C01C327 */ jal func_80070C9C +/* 00CC4C 8000C04C 3405FFFF */ li $a1, 65535 +/* 00CC50 8000C050 3C018012 */ lui $at, %hi(D_8011AEEC) # $at, 0x8012 +/* 00CC54 8000C054 AC22AEEC */ sw $v0, %lo(D_8011AEEC)($at) +/* 00CC58 8000C058 24040028 */ li $a0, 40 +/* 00CC5C 8000C05C 0C01C327 */ jal func_80070C9C +/* 00CC60 8000C060 3405FFFF */ li $a1, 65535 +/* 00CC64 8000C064 3C018012 */ lui $at, %hi(D_8011AEE8) # $at, 0x8012 +/* 00CC68 8000C068 AC22AEE8 */ sw $v0, %lo(D_8011AEE8)($at) +/* 00CC6C 8000C06C 24040200 */ li $a0, 512 +/* 00CC70 8000C070 0C01C327 */ jal func_80070C9C +/* 00CC74 8000C074 3405FFFF */ li $a1, 65535 +/* 00CC78 8000C078 3C018012 */ lui $at, %hi(D_8011AF04) # $at, 0x8012 +/* 00CC7C 8000C07C AC22AF04 */ sw $v0, %lo(D_8011AF04)($at) +/* 00CC80 8000C080 24040008 */ li $a0, 8 +/* 00CC84 8000C084 0C01C327 */ jal func_80070C9C +/* 00CC88 8000C088 3405FFFF */ li $a1, 65535 +/* 00CC8C 8000C08C 3C018012 */ lui $at, %hi(D_8011ADCC) # $at, 0x8012 +/* 00CC90 8000C090 AC22ADCC */ sw $v0, %lo(D_8011ADCC)($at) +/* 00CC94 8000C094 24040400 */ li $a0, 1024 +/* 00CC98 8000C098 0C01C327 */ jal func_80070C9C +/* 00CC9C 8000C09C 3405FFFF */ li $a1, 65535 +/* 00CCA0 8000C0A0 3C018012 */ lui $at, %hi(D_8011AFF4) # $at, 0x8012 +/* 00CCA4 8000C0A4 AC22AFF4 */ sw $v0, %lo(D_8011AFF4)($at) +/* 00CCA8 8000C0A8 0C01DB16 */ jal func_80076C58 +/* 00CCAC 8000C0AC 24040023 */ li $a0, 35 +/* 00CCB0 8000C0B0 3C018012 */ lui $at, %hi(D_8011AEB8) # $at, 0x8012 +/* 00CCB4 8000C0B4 AC22AEB8 */ sw $v0, %lo(D_8011AEB8)($at) +/* 00CCB8 8000C0B8 0C01DBCC */ jal func_80076F30 +/* 00CCBC 8000C0BC 24040023 */ li $a0, 35 +/* 00CCC0 8000C0C0 3C048012 */ lui $a0, %hi(D_8011AEBC) # $a0, 0x8012 +/* 00CCC4 8000C0C4 00027043 */ sra $t6, $v0, 1 +/* 00CCC8 8000C0C8 25C3FFFF */ addiu $v1, $t6, -1 +/* 00CCCC 8000C0CC 2484AEBC */ addiu $a0, %lo(D_8011AEBC) # addiu $a0, $a0, -0x5144 +/* 00CCD0 8000C0D0 AC830000 */ sw $v1, ($a0) +/* 00CCD4 8000C0D4 3C058012 */ lui $a1, %hi(D_8011AEB8) # $a1, 0x8012 +/* 00CCD8 8000C0D8 8CA5AEB8 */ lw $a1, %lo(D_8011AEB8)($a1) +/* 00CCDC 8000C0DC 0003C040 */ sll $t8, $v1, 1 +/* 00CCE0 8000C0E0 00B8C821 */ addu $t9, $a1, $t8 +/* 00CCE4 8000C0E4 87280000 */ lh $t0, ($t9) +/* 00CCE8 8000C0E8 00000000 */ nop +/* 00CCEC 8000C0EC 15000008 */ bnez $t0, .L8000C110 +/* 00CCF0 8000C0F0 2469FFFF */ addiu $t1, $v1, -1 +.L8000C0F4: +/* 00CCF4 8000C0F4 00095040 */ sll $t2, $t1, 1 +/* 00CCF8 8000C0F8 00AA5821 */ addu $t3, $a1, $t2 +/* 00CCFC 8000C0FC AC890000 */ sw $t1, ($a0) +/* 00CD00 8000C100 856C0000 */ lh $t4, ($t3) +/* 00CD04 8000C104 01201825 */ move $v1, $t1 +/* 00CD08 8000C108 1180FFFA */ beqz $t4, .L8000C0F4 +/* 00CD0C 8000C10C 2469FFFF */ addiu $t1, $v1, -1 +.L8000C110: +/* 00CD10 8000C110 24040800 */ li $a0, 2048 +/* 00CD14 8000C114 0C01C327 */ jal func_80070C9C +/* 00CD18 8000C118 3405FFFF */ li $a1, 65535 +/* 00CD1C 8000C11C 3C018012 */ lui $at, %hi(D_8011AD58) # $at, 0x8012 +/* 00CD20 8000C120 AC22AD58 */ sw $v0, %lo(D_8011AD58)($at) +/* 00CD24 8000C124 0C01DB16 */ jal func_80076C58 +/* 00CD28 8000C128 24040021 */ li $a0, 33 +/* 00CD2C 8000C12C 3C058012 */ lui $a1, %hi(D_8011AD64) # $a1, 0x8012 +/* 00CD30 8000C130 3C068012 */ lui $a2, %hi(D_8011AD68) # $a2, 0x8012 +/* 00CD34 8000C134 24C6AD68 */ addiu $a2, %lo(D_8011AD68) # addiu $a2, $a2, -0x5298 +/* 00CD38 8000C138 24A5AD64 */ addiu $a1, %lo(D_8011AD64) # addiu $a1, $a1, -0x529c +/* 00CD3C 8000C13C 00006880 */ sll $t5, $zero, 2 +/* 00CD40 8000C140 ACA20000 */ sw $v0, ($a1) +/* 00CD44 8000C144 ACC00000 */ sw $zero, ($a2) +/* 00CD48 8000C148 004D7021 */ addu $t6, $v0, $t5 +/* 00CD4C 8000C14C 8DCF0000 */ lw $t7, ($t6) +/* 00CD50 8000C150 2407FFFF */ li $a3, -1 +/* 00CD54 8000C154 00402025 */ move $a0, $v0 +/* 00CD58 8000C158 10EF0009 */ beq $a3, $t7, .L8000C180 +/* 00CD5C 8000C15C 00001825 */ move $v1, $zero +/* 00CD60 8000C160 24780001 */ addiu $t8, $v1, 1 +.L8000C164: +/* 00CD64 8000C164 0018C880 */ sll $t9, $t8, 2 +/* 00CD68 8000C168 00994021 */ addu $t0, $a0, $t9 +/* 00CD6C 8000C16C ACD80000 */ sw $t8, ($a2) +/* 00CD70 8000C170 8D090000 */ lw $t1, ($t0) +/* 00CD74 8000C174 03001825 */ move $v1, $t8 +/* 00CD78 8000C178 14E9FFFA */ bne $a3, $t1, .L8000C164 +/* 00CD7C 8000C17C 24780001 */ addiu $t8, $v1, 1 +.L8000C180: +/* 00CD80 8000C180 246AFFFF */ addiu $t2, $v1, -1 +/* 00CD84 8000C184 ACCA0000 */ sw $t2, ($a2) +/* 00CD88 8000C188 000A2080 */ sll $a0, $t2, 2 +/* 00CD8C 8000C18C 0C01C327 */ jal func_80070C9C +/* 00CD90 8000C190 2405FFFF */ li $a1, -1 +/* 00CD94 8000C194 3C068012 */ lui $a2, %hi(D_8011AD68) # $a2, 0x8012 +/* 00CD98 8000C198 3C018012 */ lui $at, %hi(D_8011AE48) # $at, 0x8012 +/* 00CD9C 8000C19C AC22AE48 */ sw $v0, %lo(D_8011AE48)($at) +/* 00CDA0 8000C1A0 24C6AD68 */ addiu $a2, %lo(D_8011AD68) # addiu $a2, $a2, -0x5298 +/* 00CDA4 8000C1A4 8CC40000 */ lw $a0, ($a2) +/* 00CDA8 8000C1A8 0C01C327 */ jal func_80070C9C +/* 00CDAC 8000C1AC 2405FFFF */ li $a1, -1 +/* 00CDB0 8000C1B0 3C068012 */ lui $a2, %hi(D_8011AD68) # $a2, 0x8012 +/* 00CDB4 8000C1B4 24C6AD68 */ addiu $a2, %lo(D_8011AD68) # addiu $a2, $a2, -0x5298 +/* 00CDB8 8000C1B8 8CCC0000 */ lw $t4, ($a2) +/* 00CDBC 8000C1BC 3C048012 */ lui $a0, %hi(D_8011AE4C) # $a0, 0x8012 +/* 00CDC0 8000C1C0 2484AE4C */ addiu $a0, %lo(D_8011AE4C) # addiu $a0, $a0, -0x51b4 +/* 00CDC4 8000C1C4 AC820000 */ sw $v0, ($a0) +/* 00CDC8 8000C1C8 1980000A */ blez $t4, .L8000C1F4 +/* 00CDCC 8000C1CC 00001825 */ move $v1, $zero +.L8000C1D0: +/* 00CDD0 8000C1D0 8C8D0000 */ lw $t5, ($a0) +/* 00CDD4 8000C1D4 00000000 */ nop +/* 00CDD8 8000C1D8 01A37021 */ addu $t6, $t5, $v1 +/* 00CDDC 8000C1DC A1C00000 */ sb $zero, ($t6) +/* 00CDE0 8000C1E0 8CCF0000 */ lw $t7, ($a2) +/* 00CDE4 8000C1E4 24630001 */ addiu $v1, $v1, 1 +/* 00CDE8 8000C1E8 006F082A */ slt $at, $v1, $t7 +/* 00CDEC 8000C1EC 1420FFF8 */ bnez $at, .L8000C1D0 +/* 00CDF0 8000C1F0 00000000 */ nop +.L8000C1F4: +/* 00CDF4 8000C1F4 0C01DB16 */ jal func_80076C58 +/* 00CDF8 8000C1F8 2404000F */ li $a0, 15 +/* 00CDFC 8000C1FC 3C018012 */ lui $at, %hi(D_8011AD6C) # $at, 0x8012 +/* 00CE00 8000C200 AC22AD6C */ sw $v0, %lo(D_8011AD6C)($at) +/* 00CE04 8000C204 0C01DB16 */ jal func_80076C58 +/* 00CE08 8000C208 24040010 */ li $a0, 16 +/* 00CE0C 8000C20C 3C048012 */ lui $a0, %hi(D_8011ADA0) # $a0, 0x8012 +/* 00CE10 8000C210 3C058012 */ lui $a1, %hi(D_8011AD70) # $a1, 0x8012 +/* 00CE14 8000C214 24A5AD70 */ addiu $a1, %lo(D_8011AD70) # addiu $a1, $a1, -0x5290 +/* 00CE18 8000C218 2484ADA0 */ addiu $a0, %lo(D_8011ADA0) # addiu $a0, $a0, -0x5260 +/* 00CE1C 8000C21C 0000C080 */ sll $t8, $zero, 2 +/* 00CE20 8000C220 ACA20000 */ sw $v0, ($a1) +/* 00CE24 8000C224 AC800000 */ sw $zero, ($a0) +/* 00CE28 8000C228 0058C821 */ addu $t9, $v0, $t8 +/* 00CE2C 8000C22C 8F280000 */ lw $t0, ($t9) +/* 00CE30 8000C230 2407FFFF */ li $a3, -1 +/* 00CE34 8000C234 00403025 */ move $a2, $v0 +/* 00CE38 8000C238 10E80009 */ beq $a3, $t0, .L8000C260 +/* 00CE3C 8000C23C 00001825 */ move $v1, $zero +/* 00CE40 8000C240 24690001 */ addiu $t1, $v1, 1 +.L8000C244: +/* 00CE44 8000C244 00095080 */ sll $t2, $t1, 2 +/* 00CE48 8000C248 00CA5821 */ addu $t3, $a2, $t2 +/* 00CE4C 8000C24C AC890000 */ sw $t1, ($a0) +/* 00CE50 8000C250 8D6C0000 */ lw $t4, ($t3) +/* 00CE54 8000C254 01201825 */ move $v1, $t1 +/* 00CE58 8000C258 14ECFFFA */ bne $a3, $t4, .L8000C244 +/* 00CE5C 8000C25C 24690001 */ addiu $t1, $v1, 1 +.L8000C260: +/* 00CE60 8000C260 8CC20104 */ lw $v0, 0x104($a2) +/* 00CE64 8000C264 8CCF0108 */ lw $t7, 0x108($a2) +/* 00CE68 8000C268 3C0E8012 */ lui $t6, %hi(D_8011AD6C) # $t6, 0x8012 +/* 00CE6C 8000C26C 8DCEAD6C */ lw $t6, %lo(D_8011AD6C)($t6) +/* 00CE70 8000C270 01E22823 */ subu $a1, $t7, $v0 +/* 00CE74 8000C274 0005C080 */ sll $t8, $a1, 2 +/* 00CE78 8000C278 00026880 */ sll $t5, $v0, 2 +/* 00CE7C 8000C27C 03002825 */ move $a1, $t8 +/* 00CE80 8000C280 0C0030B6 */ jal func_8000C2D8 +/* 00CE84 8000C284 01AE2021 */ addu $a0, $t5, $t6 +/* 00CE88 8000C288 24040800 */ li $a0, 2048 +/* 00CE8C 8000C28C 0C01C327 */ jal func_80070C9C +/* 00CE90 8000C290 3405FFFF */ li $a1, 65535 +/* 00CE94 8000C294 3C018012 */ lui $at, %hi(D_8011AE58) # $at, 0x8012 +/* 00CE98 8000C298 AC22AE58 */ sw $v0, %lo(D_8011AE58)($at) +/* 00CE9C 8000C29C 3C018012 */ lui $at, %hi(D_8011ADC4) # $at, 0x8012 +/* 00CEA0 8000C2A0 A020ADC4 */ sb $zero, %lo(D_8011ADC4)($at) +/* 00CEA4 8000C2A4 3C018012 */ lui $at, %hi(D_8011AEF4) # $at, 0x8012 +/* 00CEA8 8000C2A8 A020AEF4 */ sb $zero, %lo(D_8011AEF4)($at) +/* 00CEAC 8000C2AC 3C018012 */ lui $at, %hi(D_8011AEF5) # $at, 0x8012 +/* 00CEB0 8000C2B0 A020AEF5 */ sb $zero, %lo(D_8011AEF5)($at) +/* 00CEB4 8000C2B4 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 00CEB8 8000C2B8 44812000 */ mtc1 $at, $f4 +/* 00CEBC 8000C2BC 3C018012 */ lui $at, %hi(D_8011ADA8) # $at, 0x8012 +/* 00CEC0 8000C2C0 0C003118 */ jal func_8000C460 +/* 00CEC4 8000C2C4 E424ADA8 */ swc1 $f4, %lo(D_8011ADA8)($at) +/* 00CEC8 8000C2C8 8FBF001C */ lw $ra, 0x1c($sp) +/* 00CECC 8000C2CC 27BD0020 */ addiu $sp, $sp, 0x20 +/* 00CED0 8000C2D0 03E00008 */ jr $ra +/* 00CED4 8000C2D4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000C2D8.s b/asm/non_matchings/unknown_005740/func_8000C2D8.s new file mode 100644 index 00000000..fb74dd74 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000C2D8.s @@ -0,0 +1,102 @@ +glabel func_8000C2D8 +/* 00CED8 8000C2D8 00053083 */ sra $a2, $a1, 2 +/* 00CEDC 8000C2DC 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 00CEE0 8000C2E0 00801025 */ move $v0, $a0 +/* 00CEE4 8000C2E4 18C0005C */ blez $a2, .L8000C458 +/* 00CEE8 8000C2E8 00001825 */ move $v1, $zero +.L8000C2EC: +/* 00CEEC 8000C2EC 904E0003 */ lbu $t6, 3($v0) +/* 00CEF0 8000C2F0 90590000 */ lbu $t9, ($v0) +/* 00CEF4 8000C2F4 31CF00C0 */ andi $t7, $t6, 0xc0 +/* 00CEF8 8000C2F8 904B0001 */ lbu $t3, 1($v0) +/* 00CEFC 8000C2FC 000FC183 */ sra $t8, $t7, 6 +/* 00CF00 8000C300 904F0002 */ lbu $t7, 2($v0) +/* 00CF04 8000C304 332900C0 */ andi $t1, $t9, 0xc0 +/* 00CF08 8000C308 03095025 */ or $t2, $t8, $t1 +/* 00CF0C 8000C30C 316C00C0 */ andi $t4, $t3, 0xc0 +/* 00CF10 8000C310 000C6883 */ sra $t5, $t4, 2 +/* 00CF14 8000C314 31F900C0 */ andi $t9, $t7, 0xc0 +/* 00CF18 8000C318 0019C103 */ sra $t8, $t9, 4 +/* 00CF1C 8000C31C 014D7025 */ or $t6, $t2, $t5 +/* 00CF20 8000C320 01D84825 */ or $t1, $t6, $t8 +/* 00CF24 8000C324 A3A90000 */ sb $t1, ($sp) +/* 00CF28 8000C328 904B0003 */ lbu $t3, 3($v0) +/* 00CF2C 8000C32C 904D0000 */ lbu $t5, ($v0) +/* 00CF30 8000C330 316C0030 */ andi $t4, $t3, 0x30 +/* 00CF34 8000C334 000C5103 */ sra $t2, $t4, 4 +/* 00CF38 8000C338 904C0002 */ lbu $t4, 2($v0) +/* 00CF3C 8000C33C 90580001 */ lbu $t8, 1($v0) +/* 00CF40 8000C340 31AF0030 */ andi $t7, $t5, 0x30 +/* 00CF44 8000C344 000FC880 */ sll $t9, $t7, 2 +/* 00CF48 8000C348 01597025 */ or $t6, $t2, $t9 +/* 00CF4C 8000C34C 318D0030 */ andi $t5, $t4, 0x30 +/* 00CF50 8000C350 33090030 */ andi $t1, $t8, 0x30 +/* 00CF54 8000C354 01C95825 */ or $t3, $t6, $t1 +/* 00CF58 8000C358 000D7883 */ sra $t7, $t5, 2 +/* 00CF5C 8000C35C 016F5025 */ or $t2, $t3, $t7 +/* 00CF60 8000C360 A3AA0001 */ sb $t2, 1($sp) +/* 00CF64 8000C364 90490000 */ lbu $t1, ($v0) +/* 00CF68 8000C368 90590003 */ lbu $t9, 3($v0) +/* 00CF6C 8000C36C 904F0001 */ lbu $t7, 1($v0) +/* 00CF70 8000C370 312C000C */ andi $t4, $t1, 0xc +/* 00CF74 8000C374 3338000C */ andi $t8, $t9, 0xc +/* 00CF78 8000C378 90490002 */ lbu $t1, 2($v0) +/* 00CF7C 8000C37C 00187083 */ sra $t6, $t8, 2 +/* 00CF80 8000C380 000C6900 */ sll $t5, $t4, 4 +/* 00CF84 8000C384 31EA000C */ andi $t2, $t7, 0xc +/* 00CF88 8000C388 000AC880 */ sll $t9, $t2, 2 +/* 00CF8C 8000C38C 01CD5825 */ or $t3, $t6, $t5 +/* 00CF90 8000C390 0179C025 */ or $t8, $t3, $t9 +/* 00CF94 8000C394 312C000C */ andi $t4, $t1, 0xc +/* 00CF98 8000C398 030C7025 */ or $t6, $t8, $t4 +/* 00CF9C 8000C39C A3AE0002 */ sb $t6, 2($sp) +/* 00CFA0 8000C3A0 904D0003 */ lbu $t5, 3($v0) +/* 00CFA4 8000C3A4 90580001 */ lbu $t8, 1($v0) +/* 00CFA8 8000C3A8 904B0000 */ lbu $t3, ($v0) +/* 00CFAC 8000C3AC 31AF0003 */ andi $t7, $t5, 3 +/* 00CFB0 8000C3B0 330C0003 */ andi $t4, $t8, 3 +/* 00CFB4 8000C3B4 000BC980 */ sll $t9, $t3, 6 +/* 00CFB8 8000C3B8 904A0002 */ lbu $t2, 2($v0) +/* 00CFBC 8000C3BC 93A40000 */ lbu $a0, ($sp) +/* 00CFC0 8000C3C0 01F94825 */ or $t1, $t7, $t9 +/* 00CFC4 8000C3C4 000C7100 */ sll $t6, $t4, 4 +/* 00CFC8 8000C3C8 012E6825 */ or $t5, $t1, $t6 +/* 00CFCC 8000C3CC 314B0003 */ andi $t3, $t2, 3 +/* 00CFD0 8000C3D0 000B7880 */ sll $t7, $t3, 2 +/* 00CFD4 8000C3D4 308900AA */ andi $t1, $a0, 0xaa +/* 00CFD8 8000C3D8 30980055 */ andi $t8, $a0, 0x55 +/* 00CFDC 8000C3DC 01AFC825 */ or $t9, $t5, $t7 +/* 00CFE0 8000C3E0 00186040 */ sll $t4, $t8, 1 +/* 00CFE4 8000C3E4 00097043 */ sra $t6, $t1, 1 +/* 00CFE8 8000C3E8 A3B90003 */ sb $t9, 3($sp) +/* 00CFEC 8000C3EC 018E5025 */ or $t2, $t4, $t6 +/* 00CFF0 8000C3F0 A04A0000 */ sb $t2, ($v0) +/* 00CFF4 8000C3F4 93A50001 */ lbu $a1, 1($sp) +/* 00CFF8 8000C3F8 24630001 */ addiu $v1, $v1, 1 +/* 00CFFC 8000C3FC 30AB0055 */ andi $t3, $a1, 0x55 +/* 00D000 8000C400 30AF00AA */ andi $t7, $a1, 0xaa +/* 00D004 8000C404 000FC843 */ sra $t9, $t7, 1 +/* 00D008 8000C408 000B6840 */ sll $t5, $t3, 1 +/* 00D00C 8000C40C 01B9C025 */ or $t8, $t5, $t9 +/* 00D010 8000C410 A0580001 */ sb $t8, 1($v0) +/* 00D014 8000C414 93A70002 */ lbu $a3, 2($sp) +/* 00D018 8000C418 24420004 */ addiu $v0, $v0, 4 +/* 00D01C 8000C41C 30E90055 */ andi $t1, $a3, 0x55 +/* 00D020 8000C420 30EE00AA */ andi $t6, $a3, 0xaa +/* 00D024 8000C424 000E5043 */ sra $t2, $t6, 1 +/* 00D028 8000C428 00096040 */ sll $t4, $t1, 1 +/* 00D02C 8000C42C 018A5825 */ or $t3, $t4, $t2 +/* 00D030 8000C430 A04BFFFE */ sb $t3, -2($v0) +/* 00D034 8000C434 93A80003 */ lbu $t0, 3($sp) +/* 00D038 8000C438 00000000 */ nop +/* 00D03C 8000C43C 310F0055 */ andi $t7, $t0, 0x55 +/* 00D040 8000C440 311900AA */ andi $t9, $t0, 0xaa +/* 00D044 8000C444 0019C043 */ sra $t8, $t9, 1 +/* 00D048 8000C448 000F6840 */ sll $t5, $t7, 1 +/* 00D04C 8000C44C 01B84825 */ or $t1, $t5, $t8 +/* 00D050 8000C450 1466FFA6 */ bne $v1, $a2, .L8000C2EC +/* 00D054 8000C454 A049FFFF */ sb $t1, -1($v0) +.L8000C458: +/* 00D058 8000C458 03E00008 */ jr $ra +/* 00D05C 8000C45C 27BD0010 */ addiu $sp, $sp, 0x10 + diff --git a/asm/non_matchings/unknown_005740/func_8000C460.s b/asm/non_matchings/unknown_005740/func_8000C460.s new file mode 100644 index 00000000..d8679f69 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000C460.s @@ -0,0 +1,110 @@ +glabel func_8000C460 +/* 00D060 8000C460 24020001 */ li $v0, 1 +/* 00D064 8000C464 3C018012 */ lui $at, %hi(D_8011AD26) # $at, 0x8012 +/* 00D068 8000C468 A022AD26 */ sb $v0, %lo(D_8011AD26)($at) +/* 00D06C 8000C46C 3C018012 */ lui $at, %hi(D_8011AD5C) # $at, 0x8012 +/* 00D070 8000C470 AC20AD5C */ sw $zero, %lo(D_8011AD5C)($at) +/* 00D074 8000C474 3C018012 */ lui $at, %hi(D_8011AD60) # $at, 0x8012 +/* 00D078 8000C478 AC20AD60 */ sw $zero, %lo(D_8011AD60)($at) +/* 00D07C 8000C47C 3C018012 */ lui $at, %hi(D_8011AEC8) # $at, 0x8012 +/* 00D080 8000C480 AC20AEC8 */ sw $zero, %lo(D_8011AEC8)($at) +/* 00D084 8000C484 3C018012 */ lui $at, %hi(D_8011AE70) # $at, 0x8012 +/* 00D088 8000C488 AC20AE70 */ sw $zero, %lo(D_8011AE70)($at) +/* 00D08C 8000C48C 3C018012 */ lui $at, %hi(D_8011AED0) # $at, 0x8012 +/* 00D090 8000C490 AC20AED0 */ sw $zero, %lo(D_8011AED0)($at) +/* 00D094 8000C494 3C018012 */ lui $at, %hi(D_8011AED4) # $at, 0x8012 +/* 00D098 8000C498 AC20AED4 */ sw $zero, %lo(D_8011AED4)($at) +/* 00D09C 8000C49C 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 +/* 00D0A0 8000C4A0 AC20AEF0 */ sw $zero, %lo(D_8011AEF0)($at) +/* 00D0A4 8000C4A4 3C018012 */ lui $at, %hi(D_8011AE78) # $at, 0x8012 +/* 00D0A8 8000C4A8 A420AE78 */ sh $zero, %lo(D_8011AE78)($at) +/* 00D0AC 8000C4AC 3C058012 */ lui $a1, %hi(D_8011AD22) # $a1, 0x8012 +/* 00D0B0 8000C4B0 3C018012 */ lui $at, %hi(D_8011AD21) # $at, 0x8012 +/* 00D0B4 8000C4B4 24A5AD22 */ addiu $a1, %lo(D_8011AD22) # addiu $a1, $a1, -0x52de +/* 00D0B8 8000C4B8 A020AD21 */ sb $zero, %lo(D_8011AD21)($at) +/* 00D0BC 8000C4BC 3C038012 */ lui $v1, %hi(D_8011AF04) # $v1, 0x8012 +/* 00D0C0 8000C4C0 A0A00000 */ sb $zero, ($a1) +/* 00D0C4 8000C4C4 A0A00001 */ sb $zero, 1($a1) +/* 00D0C8 8000C4C8 2463AF04 */ addiu $v1, %lo(D_8011AF04) # addiu $v1, $v1, -0x50fc +/* 00D0CC 8000C4CC 00002025 */ move $a0, $zero +.L8000C4D0: +/* 00D0D0 8000C4D0 8C6E0000 */ lw $t6, ($v1) +/* 00D0D4 8000C4D4 00000000 */ nop +/* 00D0D8 8000C4D8 01C47821 */ addu $t7, $t6, $a0 +/* 00D0DC 8000C4DC 24840004 */ addiu $a0, $a0, 4 +/* 00D0E0 8000C4E0 28810200 */ slti $at, $a0, 0x200 +/* 00D0E4 8000C4E4 1420FFFA */ bnez $at, .L8000C4D0 +/* 00D0E8 8000C4E8 ADE00000 */ sw $zero, ($t7) +/* 00D0EC 8000C4EC 3C048012 */ lui $a0, %hi(D_8011ADCC) # $a0, 0x8012 +/* 00D0F0 8000C4F0 2484ADCC */ addiu $a0, %lo(D_8011ADCC) # addiu $a0, $a0, -0x5234 +/* 00D0F4 8000C4F4 00001825 */ move $v1, $zero +.L8000C4F8: +/* 00D0F8 8000C4F8 8C980000 */ lw $t8, ($a0) +/* 00D0FC 8000C4FC 00000000 */ nop +/* 00D100 8000C500 0303C821 */ addu $t9, $t8, $v1 +/* 00D104 8000C504 24630001 */ addiu $v1, $v1, 1 +/* 00D108 8000C508 28610008 */ slti $at, $v1, 8 +/* 00D10C 8000C50C 1420FFFA */ bnez $at, .L8000C4F8 +/* 00D110 8000C510 A3200000 */ sb $zero, ($t9) +/* 00D114 8000C514 3C038012 */ lui $v1, %hi(D_8011AFF4) # $v1, 0x8012 +/* 00D118 8000C518 2463AFF4 */ addiu $v1, %lo(D_8011AFF4) # addiu $v1, $v1, -0x500c +/* 00D11C 8000C51C 00002025 */ move $a0, $zero +/* 00D120 8000C520 24050400 */ li $a1, 1024 +.L8000C524: +/* 00D124 8000C524 8C680000 */ lw $t0, ($v1) +/* 00D128 8000C528 00000000 */ nop +/* 00D12C 8000C52C 01044821 */ addu $t1, $t0, $a0 +/* 00D130 8000C530 AD200000 */ sw $zero, ($t1) +/* 00D134 8000C534 8C6A0000 */ lw $t2, ($v1) +/* 00D138 8000C538 00000000 */ nop +/* 00D13C 8000C53C 01445821 */ addu $t3, $t2, $a0 +/* 00D140 8000C540 AD600040 */ sw $zero, 0x40($t3) +/* 00D144 8000C544 8C6C0000 */ lw $t4, ($v1) +/* 00D148 8000C548 00000000 */ nop +/* 00D14C 8000C54C 01846821 */ addu $t5, $t4, $a0 +/* 00D150 8000C550 ADA00080 */ sw $zero, 0x80($t5) +/* 00D154 8000C554 8C6E0000 */ lw $t6, ($v1) +/* 00D158 8000C558 00000000 */ nop +/* 00D15C 8000C55C 01C47821 */ addu $t7, $t6, $a0 +/* 00D160 8000C560 24840100 */ addiu $a0, $a0, 0x100 +/* 00D164 8000C564 1485FFEF */ bne $a0, $a1, .L8000C524 +/* 00D168 8000C568 ADE000C0 */ sw $zero, 0xc0($t7) +/* 00D16C 8000C56C 3C038012 */ lui $v1, %hi(D_8011AF08) # $v1, 0x8012 +/* 00D170 8000C570 2463AF08 */ addiu $v1, %lo(D_8011AF08) # addiu $v1, $v1, -0x50f8 +/* 00D174 8000C574 240400FF */ li $a0, 255 +/* 00D178 8000C578 AC640000 */ sw $a0, ($v1) +/* 00D17C 8000C57C AC640004 */ sw $a0, 4($v1) +/* 00D180 8000C580 3C018012 */ lui $at, %hi(D_8011AE5C) # $at, 0x8012 +/* 00D184 8000C584 AC20AE5C */ sw $zero, %lo(D_8011AE5C)($at) +/* 00D188 8000C588 3C018012 */ lui $at, %hi(D_8011AE60) # $at, 0x8012 +/* 00D18C 8000C58C AC20AE60 */ sw $zero, %lo(D_8011AE60)($at) +/* 00D190 8000C590 3C018012 */ lui $at, %hi(D_8011AE64) # $at, 0x8012 +/* 00D194 8000C594 AC20AE64 */ sw $zero, %lo(D_8011AE64)($at) +/* 00D198 8000C598 3C018012 */ lui $at, %hi(D_8011AE88) # $at, 0x8012 +/* 00D19C 8000C59C AC20AE88 */ sw $zero, %lo(D_8011AE88)($at) +/* 00D1A0 8000C5A0 3C018012 */ lui $at, %hi(D_8011ADD4) # $at, 0x8012 +/* 00D1A4 8000C5A4 A020ADD4 */ sb $zero, %lo(D_8011ADD4)($at) +/* 00D1A8 8000C5A8 3C018012 */ lui $at, %hi(D_8011AE7A) # $at, 0x8012 +/* 00D1AC 8000C5AC A420AE7A */ sh $zero, %lo(D_8011AE7A)($at) +/* 00D1B0 8000C5B0 3C018012 */ lui $at, %hi(D_8011AE7E) # $at, 0x8012 +/* 00D1B4 8000C5B4 A022AE7E */ sb $v0, %lo(D_8011AE7E)($at) +/* 00D1B8 8000C5B8 3C018012 */ lui $at, %hi(D_8011AE7C) # $at, 0x8012 +/* 00D1BC 8000C5BC A420AE7C */ sh $zero, %lo(D_8011AE7C)($at) +/* 00D1C0 8000C5C0 3C018012 */ lui $at, %hi(D_8011AD44) # $at, 0x8012 +/* 00D1C4 8000C5C4 A020AD44 */ sb $zero, %lo(D_8011AD44)($at) +/* 00D1C8 8000C5C8 3C018012 */ lui $at, %hi(D_8011AEF6) # $at, 0x8012 +/* 00D1CC 8000C5CC A020AEF6 */ sb $zero, %lo(D_8011AEF6)($at) +/* 00D1D0 8000C5D0 3C018012 */ lui $at, %hi(D_8011AEF7) # $at, 0x8012 +/* 00D1D4 8000C5D4 A020AEF7 */ sb $zero, %lo(D_8011AEF7)($at) +/* 00D1D8 8000C5D8 3C018012 */ lui $at, %hi(D_8011AF60) # $at, 0x8012 +/* 00D1DC 8000C5DC AC20AF60 */ sw $zero, %lo(D_8011AF60)($at) +/* 00D1E0 8000C5E0 3C018012 */ lui $at, %hi(D_8011AE00) # $at, 0x8012 +/* 00D1E4 8000C5E4 A020AE00 */ sb $zero, %lo(D_8011AE00)($at) +/* 00D1E8 8000C5E8 3C018012 */ lui $at, %hi(D_8011AE01) # $at, 0x8012 +/* 00D1EC 8000C5EC A022AE01 */ sb $v0, %lo(D_8011AE01)($at) +/* 00D1F0 8000C5F0 3C018012 */ lui $at, %hi(D_8011AD53) # $at, 0x8012 +/* 00D1F4 8000C5F4 A020AD53 */ sb $zero, %lo(D_8011AD53)($at) +/* 00D1F8 8000C5F8 3C018012 */ lui $at, 0x8012 +/* 00D1FC 8000C5FC 03E00008 */ jr $ra +/* 00D200 8000C600 A020ADD5 */ sb $zero, -0x522b($at) + diff --git a/asm/non_matchings/unknown_005740/func_8000C604.s b/asm/non_matchings/unknown_005740/func_8000C604.s new file mode 100644 index 00000000..af94f967 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000C604.s @@ -0,0 +1,75 @@ +glabel func_8000C604 +/* 00D204 8000C604 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 00D208 8000C608 AFBF0024 */ sw $ra, 0x24($sp) +/* 00D20C 8000C60C AFB30020 */ sw $s3, 0x20($sp) +/* 00D210 8000C610 AFB2001C */ sw $s2, 0x1c($sp) +/* 00D214 8000C614 AFB10018 */ sw $s1, 0x18($sp) +/* 00D218 8000C618 0C0166D3 */ jal func_80059B4C +/* 00D21C 8000C61C AFB00014 */ sw $s0, 0x14($sp) +/* 00D220 8000C620 3C10800E */ lui $s0, %hi(D_800DC71C) # $s0, 0x800e +/* 00D224 8000C624 3C01800E */ lui $at, %hi(D_800DC748) # $at, 0x800e +/* 00D228 8000C628 2610C71C */ addiu $s0, %lo(D_800DC71C) # addiu $s0, $s0, -0x38e4 +/* 00D22C 8000C62C A020C748 */ sb $zero, %lo(D_800DC748)($at) +/* 00D230 8000C630 820E0000 */ lb $t6, ($s0) +/* 00D234 8000C634 00000000 */ nop +/* 00D238 8000C638 11C00003 */ beqz $t6, .L8000C648 +/* 00D23C 8000C63C 00000000 */ nop +/* 00D240 8000C640 0C01C8A6 */ jal func_80072298 +/* 00D244 8000C644 24040001 */ li $a0, 1 +.L8000C648: +/* 00D248 8000C648 3C11800E */ lui $s1, %hi(D_800DC744) # $s1, 0x800e +/* 00D24C 8000C64C 2631C744 */ addiu $s1, %lo(D_800DC744) # addiu $s1, $s1, -0x38bc +/* 00D250 8000C650 822F0000 */ lb $t7, ($s1) +/* 00D254 8000C654 A2000000 */ sb $zero, ($s0) +/* 00D258 8000C658 11E00007 */ beqz $t7, .L8000C678 +/* 00D25C 8000C65C 00000000 */ nop +/* 00D260 8000C660 0C027B20 */ jal func_8009EC80 +/* 00D264 8000C664 00000000 */ nop +/* 00D268 8000C668 10400003 */ beqz $v0, .L8000C678 +/* 00D26C 8000C66C 00000000 */ nop +/* 00D270 8000C670 0C01BCE6 */ jal func_8006F398 +/* 00D274 8000C674 A2200000 */ sb $zero, ($s1) +.L8000C678: +/* 00D278 8000C678 0C004013 */ jal func_8001004C +/* 00D27C 8000C67C 00000000 */ nop +/* 00D280 8000C680 3C128012 */ lui $s2, %hi(D_8011AE5C) # $s2, 0x8012 +/* 00D284 8000C684 8E52AE5C */ lw $s2, %lo(D_8011AE5C)($s2) +/* 00D288 8000C688 00008025 */ move $s0, $zero +/* 00D28C 8000C68C 1A40000C */ blez $s2, .L8000C6C0 +/* 00D290 8000C690 00008825 */ move $s1, $zero +/* 00D294 8000C694 3C138012 */ lui $s3, %hi(D_8011AE58) # $s3, 0x8012 +/* 00D298 8000C698 2673AE58 */ addiu $s3, %lo(D_8011AE58) # addiu $s3, $s3, -0x51a8 +.L8000C69C: +/* 00D29C 8000C69C 8E780000 */ lw $t8, ($s3) +/* 00D2A0 8000C6A0 24050001 */ li $a1, 1 +/* 00D2A4 8000C6A4 0311C821 */ addu $t9, $t8, $s1 +/* 00D2A8 8000C6A8 8F240000 */ lw $a0, ($t9) +/* 00D2AC 8000C6AC 0C00406B */ jal func_800101AC +/* 00D2B0 8000C6B0 00000000 */ nop +/* 00D2B4 8000C6B4 26100001 */ addiu $s0, $s0, 1 +/* 00D2B8 8000C6B8 1612FFF8 */ bne $s0, $s2, .L8000C69C +/* 00D2BC 8000C6BC 26310004 */ addiu $s1, $s1, 4 +.L8000C6C0: +/* 00D2C0 8000C6C0 3C018012 */ lui $at, %hi(D_8011AEC8) # $at, 0x8012 +/* 00D2C4 8000C6C4 AC20AEC8 */ sw $zero, %lo(D_8011AEC8)($at) +/* 00D2C8 8000C6C8 3C018012 */ lui $at, %hi(D_8011AE5C) # $at, 0x8012 +/* 00D2CC 8000C6CC AC20AE5C */ sw $zero, %lo(D_8011AE5C)($at) +/* 00D2D0 8000C6D0 3C018012 */ lui $at, %hi(D_8011AE60) # $at, 0x8012 +/* 00D2D4 8000C6D4 0C003118 */ jal func_8000C460 +/* 00D2D8 8000C6D8 AC20AE60 */ sw $zero, %lo(D_8011AE60)($at) +/* 00D2DC 8000C6DC 3C108012 */ lui $s0, %hi(D_8011AEB0) # $s0, 0x8012 +/* 00D2E0 8000C6E0 2610AEB0 */ addiu $s0, %lo(D_8011AEB0) # addiu $s0, $s0, -0x5150 +/* 00D2E4 8000C6E4 8E040000 */ lw $a0, ($s0) +/* 00D2E8 8000C6E8 0C01C450 */ jal func_80071140 +/* 00D2EC 8000C6EC 00000000 */ nop +/* 00D2F0 8000C6F0 8E040004 */ lw $a0, 4($s0) +/* 00D2F4 8000C6F4 0C01C450 */ jal func_80071140 +/* 00D2F8 8000C6F8 00000000 */ nop +/* 00D2FC 8000C6FC 8FBF0024 */ lw $ra, 0x24($sp) +/* 00D300 8000C700 8FB00014 */ lw $s0, 0x14($sp) +/* 00D304 8000C704 8FB10018 */ lw $s1, 0x18($sp) +/* 00D308 8000C708 8FB2001C */ lw $s2, 0x1c($sp) +/* 00D30C 8000C70C 8FB30020 */ lw $s3, 0x20($sp) +/* 00D310 8000C710 03E00008 */ jr $ra +/* 00D314 8000C714 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_005740/func_8000C718.s b/asm/non_matchings/unknown_005740/func_8000C718.s new file mode 100644 index 00000000..6b3a0632 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000C718.s @@ -0,0 +1,82 @@ +glabel func_8000C718 +/* 00D318 8000C718 3C0E8012 */ lui $t6, %hi(D_8011AE4C) # $t6, 0x8012 +/* 00D31C 8000C71C 8DCEAE4C */ lw $t6, %lo(D_8011AE4C)($t6) +/* 00D320 8000C720 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 00D324 8000C724 AFBF0014 */ sw $ra, 0x14($sp) +/* 00D328 8000C728 AFA40028 */ sw $a0, 0x28($sp) +/* 00D32C 8000C72C 01C41821 */ addu $v1, $t6, $a0 +/* 00D330 8000C730 90650000 */ lbu $a1, ($v1) +/* 00D334 8000C734 3C0C8012 */ lui $t4, %hi(D_8011AD64) # $t4, 0x8012 +/* 00D338 8000C738 10A0000B */ beqz $a1, .L8000C768 +/* 00D33C 8000C73C 3C048012 */ lui $a0, %hi(D_8011AE68) # $a0, 0x8012 +/* 00D340 8000C740 24B80001 */ addiu $t8, $a1, 1 +/* 00D344 8000C744 A0780000 */ sb $t8, ($v1) +/* 00D348 8000C748 8FA80028 */ lw $t0, 0x28($sp) +/* 00D34C 8000C74C 3C198012 */ lui $t9, %hi(D_8011AE48) # $t9, 0x8012 +/* 00D350 8000C750 8F39AE48 */ lw $t9, %lo(D_8011AE48)($t9) +/* 00D354 8000C754 00084880 */ sll $t1, $t0, 2 +/* 00D358 8000C758 03295021 */ addu $t2, $t9, $t1 +/* 00D35C 8000C75C 8D420000 */ lw $v0, ($t2) +/* 00D360 8000C760 10000035 */ b .L8000C838 +/* 00D364 8000C764 8FBF0014 */ lw $ra, 0x14($sp) +.L8000C768: +/* 00D368 8000C768 8FA30028 */ lw $v1, 0x28($sp) +/* 00D36C 8000C76C 8D8CAD64 */ lw $t4, %lo(D_8011AD64)($t4) +/* 00D370 8000C770 00035880 */ sll $t3, $v1, 2 +/* 00D374 8000C774 018B1021 */ addu $v0, $t4, $t3 +/* 00D378 8000C778 8C460000 */ lw $a2, ($v0) +/* 00D37C 8000C77C 8C4D0004 */ lw $t5, 4($v0) +/* 00D380 8000C780 8C84AE68 */ lw $a0, %lo(D_8011AE68)($a0) +/* 00D384 8000C784 01A62823 */ subu $a1, $t5, $a2 +/* 00D388 8000C788 AFA50020 */ sw $a1, 0x20($sp) +/* 00D38C 8000C78C AFAB0018 */ sw $t3, 0x18($sp) +/* 00D390 8000C790 0C01C3A4 */ jal func_80070E90 +/* 00D394 8000C794 AFA60024 */ sw $a2, 0x24($sp) +/* 00D398 8000C798 8FA60024 */ lw $a2, 0x24($sp) +/* 00D39C 8000C79C 8FA70020 */ lw $a3, 0x20($sp) +/* 00D3A0 8000C7A0 10400021 */ beqz $v0, .L8000C828 +/* 00D3A4 8000C7A4 00402825 */ move $a1, $v0 +/* 00D3A8 8000C7A8 24040022 */ li $a0, 34 +/* 00D3AC 8000C7AC 0C01DB9A */ jal func_80076E68 +/* 00D3B0 8000C7B0 AFA2001C */ sw $v0, 0x1c($sp) +/* 00D3B4 8000C7B4 8FA5001C */ lw $a1, 0x1c($sp) +/* 00D3B8 8000C7B8 00000000 */ nop +/* 00D3BC 8000C7BC 8CAE0024 */ lw $t6, 0x24($a1) +/* 00D3C0 8000C7C0 8CB8001C */ lw $t8, 0x1c($a1) +/* 00D3C4 8000C7C4 8CB90014 */ lw $t9, 0x14($a1) +/* 00D3C8 8000C7C8 8CAA0018 */ lw $t2, 0x18($a1) +/* 00D3CC 8000C7CC 8CAC0010 */ lw $t4, 0x10($a1) +/* 00D3D0 8000C7D0 00AE7821 */ addu $t7, $a1, $t6 +/* 00D3D4 8000C7D4 00B84021 */ addu $t0, $a1, $t8 +/* 00D3D8 8000C7D8 00B94821 */ addu $t1, $a1, $t9 +/* 00D3DC 8000C7DC 00AA5821 */ addu $t3, $a1, $t2 +/* 00D3E0 8000C7E0 00AC6821 */ addu $t5, $a1, $t4 +/* 00D3E4 8000C7E4 ACAF0024 */ sw $t7, 0x24($a1) +/* 00D3E8 8000C7E8 ACA8001C */ sw $t0, 0x1c($a1) +/* 00D3EC 8000C7EC ACA90014 */ sw $t1, 0x14($a1) +/* 00D3F0 8000C7F0 ACAB0018 */ sw $t3, 0x18($a1) +/* 00D3F4 8000C7F4 ACAD0010 */ sw $t5, 0x10($a1) +/* 00D3F8 8000C7F8 3C0E8012 */ lui $t6, %hi(D_8011AE48) # $t6, 0x8012 +/* 00D3FC 8000C7FC 8DCEAE48 */ lw $t6, %lo(D_8011AE48)($t6) +/* 00D400 8000C800 8FAF0018 */ lw $t7, 0x18($sp) +/* 00D404 8000C804 3C198012 */ lui $t9, %hi(D_8011AE4C) # $t9, 0x8012 +/* 00D408 8000C808 01CFC021 */ addu $t8, $t6, $t7 +/* 00D40C 8000C80C AF050000 */ sw $a1, ($t8) +/* 00D410 8000C810 8FA90028 */ lw $t1, 0x28($sp) +/* 00D414 8000C814 8F39AE4C */ lw $t9, %lo(D_8011AE4C)($t9) +/* 00D418 8000C818 24080001 */ li $t0, 1 +/* 00D41C 8000C81C 03295021 */ addu $t2, $t9, $t1 +/* 00D420 8000C820 10000003 */ b .L8000C830 +/* 00D424 8000C824 A1480000 */ sb $t0, ($t2) +.L8000C828: +/* 00D428 8000C828 10000002 */ b .L8000C834 +/* 00D42C 8000C82C 00001025 */ move $v0, $zero +.L8000C830: +/* 00D430 8000C830 00A01025 */ move $v0, $a1 +.L8000C834: +/* 00D434 8000C834 8FBF0014 */ lw $ra, 0x14($sp) +.L8000C838: +/* 00D438 8000C838 27BD0028 */ addiu $sp, $sp, 0x28 +/* 00D43C 8000C83C 03E00008 */ jr $ra +/* 00D440 8000C840 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000C844.s b/asm/non_matchings/unknown_005740/func_8000C844.s new file mode 100644 index 00000000..2b9faea5 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000C844.s @@ -0,0 +1,32 @@ +glabel func_8000C844 +/* 00D444 8000C844 3C068012 */ lui $a2, %hi(D_8011AE4C) # $a2, 0x8012 +/* 00D448 8000C848 24C6AE4C */ addiu $a2, %lo(D_8011AE4C) # addiu $a2, $a2, -0x51b4 +/* 00D44C 8000C84C 8CCE0000 */ lw $t6, ($a2) +/* 00D450 8000C850 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 00D454 8000C854 AFBF0014 */ sw $ra, 0x14($sp) +/* 00D458 8000C858 01C41021 */ addu $v0, $t6, $a0 +/* 00D45C 8000C85C 90430000 */ lbu $v1, ($v0) +/* 00D460 8000C860 00000000 */ nop +/* 00D464 8000C864 1060000F */ beqz $v1, .L8000C8A4 +/* 00D468 8000C868 246FFFFF */ addiu $t7, $v1, -1 +/* 00D46C 8000C86C A04F0000 */ sb $t7, ($v0) +/* 00D470 8000C870 8CD80000 */ lw $t8, ($a2) +/* 00D474 8000C874 3C098012 */ lui $t1, %hi(D_8011AE48) # $t1, 0x8012 +/* 00D478 8000C878 0304C821 */ addu $t9, $t8, $a0 +/* 00D47C 8000C87C 93280000 */ lbu $t0, ($t9) +/* 00D480 8000C880 00000000 */ nop +/* 00D484 8000C884 15000008 */ bnez $t0, .L8000C8A8 +/* 00D488 8000C888 8FBF0014 */ lw $ra, 0x14($sp) +/* 00D48C 8000C88C 8D29AE48 */ lw $t1, %lo(D_8011AE48)($t1) +/* 00D490 8000C890 00045080 */ sll $t2, $a0, 2 +/* 00D494 8000C894 012A5821 */ addu $t3, $t1, $t2 +/* 00D498 8000C898 8D640000 */ lw $a0, ($t3) +/* 00D49C 8000C89C 0C01C450 */ jal func_80071140 +/* 00D4A0 8000C8A0 00000000 */ nop +.L8000C8A4: +/* 00D4A4 8000C8A4 8FBF0014 */ lw $ra, 0x14($sp) +.L8000C8A8: +/* 00D4A8 8000C8A8 27BD0018 */ addiu $sp, $sp, 0x18 +/* 00D4AC 8000C8AC 03E00008 */ jr $ra +/* 00D4B0 8000C8B0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000C8B4.s b/asm/non_matchings/unknown_005740/func_8000C8B4.s new file mode 100644 index 00000000..7f6b4417 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000C8B4.s @@ -0,0 +1,22 @@ +glabel func_8000C8B4 +/* 00D4B4 8000C8B4 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 00D4B8 8000C8B8 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 00D4BC 8000C8BC 00000000 */ nop +/* 00D4C0 8000C8C0 15C00003 */ bnez $t6, .L8000C8D0 +/* 00D4C4 8000C8C4 00000000 */ nop +/* 00D4C8 8000C8C8 04810003 */ bgez $a0, .L8000C8D8 +/* 00D4CC 8000C8CC 00041080 */ sll $v0, $a0, 2 +.L8000C8D0: +/* 00D4D0 8000C8D0 03E00008 */ jr $ra +/* 00D4D4 8000C8D4 00801025 */ move $v0, $a0 + +.L8000C8D8: +/* 00D4D8 8000C8D8 00441021 */ addu $v0, $v0, $a0 +/* 00D4DC 8000C8DC 24010006 */ li $at, 6 +/* 00D4E0 8000C8E0 0041001A */ div $zero, $v0, $at +/* 00D4E4 8000C8E4 00001012 */ mflo $v0 +/* 00D4E8 8000C8E8 00000000 */ nop +/* 00D4EC 8000C8EC 00000000 */ nop +/* 00D4F0 8000C8F0 03E00008 */ jr $ra +/* 00D4F4 8000C8F4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000C8F8.s b/asm/non_matchings/unknown_005740/func_8000C8F8.s new file mode 100644 index 00000000..9558481e --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000C8F8.s @@ -0,0 +1,191 @@ +glabel func_8000C8F8 +/* 00D4F8 8000C8F8 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 00D4FC 8000C8FC AFBF0024 */ sw $ra, 0x24($sp) +/* 00D500 8000C900 AFB20020 */ sw $s2, 0x20($sp) +/* 00D504 8000C904 AFB1001C */ sw $s1, 0x1c($sp) +/* 00D508 8000C908 AFB00018 */ sw $s0, 0x18($sp) +/* 00D50C 8000C90C AFA40058 */ sw $a0, 0x58($sp) +/* 00D510 8000C910 0C01BAA4 */ jal func_8006EA90 +/* 00D514 8000C914 AFA5005C */ sw $a1, 0x5c($sp) +/* 00D518 8000C918 90580049 */ lbu $t8, 0x49($v0) +/* 00D51C 8000C91C 8C4F0004 */ lw $t7, 4($v0) +/* 00D520 8000C920 0018C880 */ sll $t9, $t8, 2 +/* 00D524 8000C924 01F94021 */ addu $t0, $t7, $t9 +/* 00D528 8000C928 8D030000 */ lw $v1, ($t0) +/* 00D52C 8000C92C 9450000C */ lhu $s0, 0xc($v0) +/* 00D530 8000C930 30690004 */ andi $t1, $v1, 4 +/* 00D534 8000C934 2D230001 */ sltiu $v1, $t1, 1 +/* 00D538 8000C938 10600007 */ beqz $v1, .L8000C958 +/* 00D53C 8000C93C 360E0820 */ ori $t6, $s0, 0x820 +/* 00D540 8000C940 904B0048 */ lbu $t3, 0x48($v0) +/* 00D544 8000C944 240C0001 */ li $t4, 1 +/* 00D548 8000C948 016C6804 */ sllv $t5, $t4, $t3 +/* 00D54C 8000C94C 01AE1824 */ and $v1, $t5, $t6 +/* 00D550 8000C950 0003702B */ sltu $t6, $zero, $v1 +/* 00D554 8000C954 01C01825 */ move $v1, $t6 +.L8000C958: +/* 00D558 8000C958 3C108012 */ lui $s0, %hi(D_8011AE03) # $s0, 0x8012 +/* 00D55C 8000C95C 2610AE03 */ addiu $s0, %lo(D_8011AE03) # addiu $s0, $s0, -0x51fd +/* 00D560 8000C960 A2030000 */ sb $v1, ($s0) +/* 00D564 8000C964 904F0049 */ lbu $t7, 0x49($v0) +/* 00D568 8000C968 8C580004 */ lw $t8, 4($v0) +/* 00D56C 8000C96C 000FC880 */ sll $t9, $t7, 2 +/* 00D570 8000C970 03194021 */ addu $t0, $t8, $t9 +/* 00D574 8000C974 8D090000 */ lw $t1, ($t0) +/* 00D578 8000C978 00000000 */ nop +/* 00D57C 8000C97C 312A0002 */ andi $t2, $t1, 2 +/* 00D580 8000C980 15400002 */ bnez $t2, .L8000C98C +/* 00D584 8000C984 00000000 */ nop +/* 00D588 8000C988 A2000000 */ sb $zero, ($s0) +.L8000C98C: +/* 00D58C 8000C98C 0C0270B4 */ jal func_8009C2D0 +/* 00D590 8000C990 00000000 */ nop +/* 00D594 8000C994 10400002 */ beqz $v0, .L8000C9A0 +/* 00D598 8000C998 00000000 */ nop +/* 00D59C 8000C99C A2000000 */ sb $zero, ($s0) +.L8000C9A0: +/* 00D5A0 8000C9A0 0C01AF66 */ jal func_8006BD98 +/* 00D5A4 8000C9A4 00000000 */ nop +/* 00D5A8 8000C9A8 10400002 */ beqz $v0, .L8000C9B4 +/* 00D5AC 8000C9AC 3C018012 */ lui $at, %hi(D_8011AD3E) # $at, 0x8012 +/* 00D5B0 8000C9B0 A2000000 */ sb $zero, ($s0) +.L8000C9B4: +/* 00D5B4 8000C9B4 A020AD3E */ sb $zero, %lo(D_8011AD3E)($at) +/* 00D5B8 8000C9B8 24043000 */ li $a0, 12288 +/* 00D5BC 8000C9BC 0C01C327 */ jal func_80070C9C +/* 00D5C0 8000C9C0 3405FFFF */ li $a1, 65535 +/* 00D5C4 8000C9C4 8FA3005C */ lw $v1, 0x5c($sp) +/* 00D5C8 8000C9C8 3C0B8012 */ lui $t3, %hi(D_8011AEB0) # $t3, 0x8012 +/* 00D5CC 8000C9CC 00036080 */ sll $t4, $v1, 2 +/* 00D5D0 8000C9D0 3C0D8012 */ lui $t5, %hi(D_8011AE98) # $t5, 0x8012 +/* 00D5D4 8000C9D4 3C0F8012 */ lui $t7, %hi(D_8011AEA0) # $t7, 0x8012 +/* 00D5D8 8000C9D8 256BAEB0 */ addiu $t3, %lo(D_8011AEB0) # addiu $t3, $t3, -0x5150 +/* 00D5DC 8000C9DC 25ADAE98 */ addiu $t5, %lo(D_8011AE98) # addiu $t5, $t5, -0x5168 +/* 00D5E0 8000C9E0 25EFAEA0 */ addiu $t7, %lo(D_8011AEA0) # addiu $t7, $t7, -0x5160 +/* 00D5E4 8000C9E4 8FB80058 */ lw $t8, 0x58($sp) +/* 00D5E8 8000C9E8 018B2821 */ addu $a1, $t4, $t3 +/* 00D5EC 8000C9EC 018D8821 */ addu $s1, $t4, $t5 +/* 00D5F0 8000C9F0 244E0010 */ addiu $t6, $v0, 0x10 +/* 00D5F4 8000C9F4 018F9021 */ addu $s2, $t4, $t7 +/* 00D5F8 8000C9F8 3C018012 */ lui $at, 0x8012 +/* 00D5FC 8000C9FC ACA20000 */ sw $v0, ($a1) +/* 00D600 8000CA00 AE2E0000 */ sw $t6, ($s1) +/* 00D604 8000CA04 AE400000 */ sw $zero, ($s2) +/* 00D608 8000CA08 002C0821 */ addu $at, $at, $t4 +/* 00D60C 8000CA0C AFA20048 */ sw $v0, 0x48($sp) +/* 00D610 8000CA10 AFA50028 */ sw $a1, 0x28($sp) +/* 00D614 8000CA14 24040014 */ li $a0, 20 +/* 00D618 8000CA18 0C01DB16 */ jal func_80076C58 +/* 00D61C 8000CA1C AC38AEA8 */ sw $t8, -0x5158($at) +/* 00D620 8000CA20 8C590000 */ lw $t9, ($v0) +/* 00D624 8000CA24 2405FFFF */ li $a1, -1 +/* 00D628 8000CA28 00403025 */ move $a2, $v0 +/* 00D62C 8000CA2C 10B90006 */ beq $a1, $t9, .L8000CA48 +/* 00D630 8000CA30 00002025 */ move $a0, $zero +/* 00D634 8000CA34 00C01825 */ move $v1, $a2 +.L8000CA38: +/* 00D638 8000CA38 8C680004 */ lw $t0, 4($v1) +/* 00D63C 8000CA3C 24840001 */ addiu $a0, $a0, 1 +/* 00D640 8000CA40 14A8FFFD */ bne $a1, $t0, .L8000CA38 +/* 00D644 8000CA44 24630004 */ addiu $v1, $v1, 4 +.L8000CA48: +/* 00D648 8000CA48 8FA90058 */ lw $t1, 0x58($sp) +/* 00D64C 8000CA4C 2484FFFF */ addiu $a0, $a0, -1 +/* 00D650 8000CA50 0124082A */ slt $at, $t1, $a0 +/* 00D654 8000CA54 14200002 */ bnez $at, .L8000CA60 +/* 00D658 8000CA58 24040015 */ li $a0, 21 +/* 00D65C 8000CA5C AFA00058 */ sw $zero, 0x58($sp) +.L8000CA60: +/* 00D660 8000CA60 8FAA0058 */ lw $t2, 0x58($sp) +/* 00D664 8000CA64 00000000 */ nop +/* 00D668 8000CA68 000A6080 */ sll $t4, $t2, 2 +/* 00D66C 8000CA6C 004C1821 */ addu $v1, $v0, $t4 +/* 00D670 8000CA70 8C700000 */ lw $s0, ($v1) +/* 00D674 8000CA74 8C6B0004 */ lw $t3, 4($v1) +/* 00D678 8000CA78 02002825 */ move $a1, $s0 +/* 00D67C 8000CA7C 01703823 */ subu $a3, $t3, $s0 +/* 00D680 8000CA80 10E0004A */ beqz $a3, .L8000CBAC +/* 00D684 8000CA84 8FBF0024 */ lw $ra, 0x24($sp) +/* 00D688 8000CA88 AFA6003C */ sw $a2, 0x3c($sp) +/* 00D68C 8000CA8C 0C031877 */ jal func_800C61DC +/* 00D690 8000CA90 AFA70054 */ sw $a3, 0x54($sp) +/* 00D694 8000CA94 8FAD0048 */ lw $t5, 0x48($sp) +/* 00D698 8000CA98 8FA70054 */ lw $a3, 0x54($sp) +/* 00D69C 8000CA9C 01A27021 */ addu $t6, $t5, $v0 +/* 00D6A0 8000CAA0 01C72823 */ subu $a1, $t6, $a3 +/* 00D6A4 8000CAA4 24A50020 */ addiu $a1, $a1, 0x20 +/* 00D6A8 8000CAA8 AFA50034 */ sw $a1, 0x34($sp) +/* 00D6AC 8000CAAC 24040015 */ li $a0, 21 +/* 00D6B0 8000CAB0 0C01DB9A */ jal func_80076E68 +/* 00D6B4 8000CAB4 02003025 */ move $a2, $s0 +/* 00D6B8 8000CAB8 8FA40034 */ lw $a0, 0x34($sp) +/* 00D6BC 8000CABC 8FA50048 */ lw $a1, 0x48($sp) +/* 00D6C0 8000CAC0 0C031886 */ jal func_800C6218 +/* 00D6C4 8000CAC4 00000000 */ nop +/* 00D6C8 8000CAC8 8FA4003C */ lw $a0, 0x3c($sp) +/* 00D6CC 8000CACC 0C01C450 */ jal func_80071140 +/* 00D6D0 8000CAD0 00000000 */ nop +/* 00D6D4 8000CAD4 8FAF0028 */ lw $t7, 0x28($sp) +/* 00D6D8 8000CAD8 8FA80048 */ lw $t0, 0x48($sp) +/* 00D6DC 8000CADC 8DF80000 */ lw $t8, ($t7) +/* 00D6E0 8000CAE0 8FAA005C */ lw $t2, 0x5c($sp) +/* 00D6E4 8000CAE4 27190010 */ addiu $t9, $t8, 0x10 +/* 00D6E8 8000CAE8 AE390000 */ sw $t9, ($s1) +/* 00D6EC 8000CAEC 8D090000 */ lw $t1, ($t0) +/* 00D6F0 8000CAF0 3C018012 */ lui $at, %hi(D_8011AEC0) # $at, 0x8012 +/* 00D6F4 8000CAF4 AE490000 */ sw $t1, ($s2) +/* 00D6F8 8000CAF8 AC2AAEC0 */ sw $t2, %lo(D_8011AEC0)($at) +/* 00D6FC 8000CAFC 8E4C0000 */ lw $t4, ($s2) +/* 00D700 8000CB00 00008025 */ move $s0, $zero +/* 00D704 8000CB04 19800014 */ blez $t4, .L8000CB58 +/* 00D708 8000CB08 00000000 */ nop +.L8000CB0C: +/* 00D70C 8000CB0C 8E240000 */ lw $a0, ($s1) +/* 00D710 8000CB10 0C003A95 */ jal func_8000EA54 +/* 00D714 8000CB14 24050001 */ li $a1, 1 +/* 00D718 8000CB18 8E230000 */ lw $v1, ($s1) +/* 00D71C 8000CB1C 8E4E0000 */ lw $t6, ($s2) +/* 00D720 8000CB20 90640001 */ lbu $a0, 1($v1) +/* 00D724 8000CB24 00000000 */ nop +/* 00D728 8000CB28 308B003F */ andi $t3, $a0, 0x3f +/* 00D72C 8000CB2C 020B8021 */ addu $s0, $s0, $t3 +/* 00D730 8000CB30 01636821 */ addu $t5, $t3, $v1 +/* 00D734 8000CB34 020E082A */ slt $at, $s0, $t6 +/* 00D738 8000CB38 1420FFF4 */ bnez $at, .L8000CB0C +/* 00D73C 8000CB3C AE2D0000 */ sw $t5, ($s1) +/* 00D740 8000CB40 8FAF0028 */ lw $t7, 0x28($sp) +/* 00D744 8000CB44 00000000 */ nop +/* 00D748 8000CB48 8DF80000 */ lw $t8, ($t7) +/* 00D74C 8000CB4C 00000000 */ nop +/* 00D750 8000CB50 27190010 */ addiu $t9, $t8, 0x10 +/* 00D754 8000CB54 AE390000 */ sw $t9, ($s1) +.L8000CB58: +/* 00D758 8000CB58 3C018012 */ lui $at, %hi(D_8011AE70) # $at, 0x8012 +/* 00D75C 8000CB5C AC20AE70 */ sw $zero, %lo(D_8011AE70)($at) +/* 00D760 8000CB60 24100001 */ li $s0, 1 +/* 00D764 8000CB64 3C118012 */ lui $s1, %hi(D_8011ADAC) # $s1, 0x8012 +/* 00D768 8000CB68 3C018012 */ lui $at, %hi(D_8011ADC0) # $at, 0x8012 +/* 00D76C 8000CB6C 2631ADAC */ addiu $s1, %lo(D_8011ADAC) # addiu $s1, $s1, -0x5254 +/* 00D770 8000CB70 AC30ADC0 */ sw $s0, %lo(D_8011ADC0)($at) +/* 00D774 8000CB74 8E280000 */ lw $t0, ($s1) +/* 00D778 8000CB78 00000000 */ nop +/* 00D77C 8000CB7C 15000009 */ bnez $t0, .L8000CBA4 +/* 00D780 8000CB80 00000000 */ nop +/* 00D784 8000CB84 0C004013 */ jal func_8001004C +/* 00D788 8000CB88 00000000 */ nop +/* 00D78C 8000CB8C 0C005FA6 */ jal func_80017E98 +/* 00D790 8000CB90 00000000 */ nop +/* 00D794 8000CB94 0C006F15 */ jal func_8001BC54 +/* 00D798 8000CB98 00000000 */ nop +/* 00D79C 8000CB9C 0C007A4F */ jal func_8001E93C +/* 00D7A0 8000CBA0 00000000 */ nop +.L8000CBA4: +/* 00D7A4 8000CBA4 AE300000 */ sw $s0, ($s1) +/* 00D7A8 8000CBA8 8FBF0024 */ lw $ra, 0x24($sp) +.L8000CBAC: +/* 00D7AC 8000CBAC 8FB00018 */ lw $s0, 0x18($sp) +/* 00D7B0 8000CBB0 8FB1001C */ lw $s1, 0x1c($sp) +/* 00D7B4 8000CBB4 8FB20020 */ lw $s2, 0x20($sp) +/* 00D7B8 8000CBB8 03E00008 */ jr $ra +/* 00D7BC 8000CBBC 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/unknown_005740/func_8000CBC0.s b/asm/non_matchings/unknown_005740/func_8000CBC0.s new file mode 100644 index 00000000..68c71fcf --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000CBC0.s @@ -0,0 +1,15 @@ +glabel func_8000CBC0 +/* 00D7C0 8000CBC0 3C038012 */ lui $v1, %hi(D_8011AE08) # $v1, 0x8012 +/* 00D7C4 8000CBC4 3C028012 */ lui $v0, %hi(D_8011AE48) # $v0, 0x8012 +/* 00D7C8 8000CBC8 2442AE48 */ addiu $v0, %lo(D_8011AE48) # addiu $v0, $v0, -0x51b8 +/* 00D7CC 8000CBCC 2463AE08 */ addiu $v1, %lo(D_8011AE08) # addiu $v1, $v1, -0x51f8 +.L8000CBD0: +/* 00D7D0 8000CBD0 24630010 */ addiu $v1, $v1, 0x10 +/* 00D7D4 8000CBD4 AC60FFF0 */ sw $zero, -0x10($v1) +/* 00D7D8 8000CBD8 AC60FFF4 */ sw $zero, -0xc($v1) +/* 00D7DC 8000CBDC AC60FFF8 */ sw $zero, -8($v1) +/* 00D7E0 8000CBE0 1462FFFB */ bne $v1, $v0, .L8000CBD0 +/* 00D7E4 8000CBE4 AC60FFFC */ sw $zero, -4($v1) +/* 00D7E8 8000CBE8 03E00008 */ jr $ra +/* 00D7EC 8000CBEC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000CBF0.s b/asm/non_matchings/unknown_005740/func_8000CBF0.s new file mode 100644 index 00000000..da655f37 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000CBF0.s @@ -0,0 +1,16 @@ +glabel func_8000CBF0 +/* 00D7F0 8000CBF0 3C0F8012 */ lui $t7, %hi(D_8011AE08) # $t7, 0x8012 +/* 00D7F4 8000CBF4 25EFAE08 */ addiu $t7, %lo(D_8011AE08) # addiu $t7, $t7, -0x51f8 +/* 00D7F8 8000CBF8 00057080 */ sll $t6, $a1, 2 +/* 00D7FC 8000CBFC 01CF1021 */ addu $v0, $t6, $t7 +/* 00D800 8000CC00 8C430000 */ lw $v1, ($v0) +/* 00D804 8000CC04 00000000 */ nop +/* 00D808 8000CC08 14600003 */ bnez $v1, .L8000CC18 +/* 00D80C 8000CC0C 00000000 */ nop +/* 00D810 8000CC10 03E00008 */ jr $ra +/* 00D814 8000CC14 AC440000 */ sw $a0, ($v0) + +.L8000CC18: +/* 00D818 8000CC18 03E00008 */ jr $ra +/* 00D81C 8000CC1C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000CC20.s b/asm/non_matchings/unknown_005740/func_8000CC20.s new file mode 100644 index 00000000..b6f6218f --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000CC20.s @@ -0,0 +1,28 @@ +glabel func_8000CC20 +/* 00D820 8000CC20 3C058012 */ lui $a1, %hi(D_8011AE08) # $a1, 0x8012 +/* 00D824 8000CC24 2403FFFF */ li $v1, -1 +/* 00D828 8000CC28 24A5AE08 */ addiu $a1, %lo(D_8011AE08) # addiu $a1, $a1, -0x51f8 +/* 00D82C 8000CC2C 00001025 */ move $v0, $zero +/* 00D830 8000CC30 00027080 */ sll $t6, $v0, 2 +.L8000CC34: +/* 00D834 8000CC34 00AE7821 */ addu $t7, $a1, $t6 +/* 00D838 8000CC38 8DF80000 */ lw $t8, ($t7) +/* 00D83C 8000CC3C 00000000 */ nop +/* 00D840 8000CC40 17000003 */ bnez $t8, .L8000CC50 +/* 00D844 8000CC44 00000000 */ nop +/* 00D848 8000CC48 00401825 */ move $v1, $v0 +/* 00D84C 8000CC4C 24020010 */ li $v0, 16 +.L8000CC50: +/* 00D850 8000CC50 24420001 */ addiu $v0, $v0, 1 +/* 00D854 8000CC54 28410010 */ slti $at, $v0, 0x10 +/* 00D858 8000CC58 1420FFF6 */ bnez $at, .L8000CC34 +/* 00D85C 8000CC5C 00027080 */ sll $t6, $v0, 2 +/* 00D860 8000CC60 2401FFFF */ li $at, -1 +/* 00D864 8000CC64 10610003 */ beq $v1, $at, .L8000CC74 +/* 00D868 8000CC68 0003C880 */ sll $t9, $v1, 2 +/* 00D86C 8000CC6C 00B94021 */ addu $t0, $a1, $t9 +/* 00D870 8000CC70 AD040000 */ sw $a0, ($t0) +.L8000CC74: +/* 00D874 8000CC74 03E00008 */ jr $ra +/* 00D878 8000CC78 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_005740/func_8000CC7C.s b/asm/non_matchings/unknown_005740/func_8000CC7C.s new file mode 100644 index 00000000..089ae44f --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000CC7C.s @@ -0,0 +1,1421 @@ +glabel func_8000CC7C +/* 00D87C 8000CC7C 27BDFEB0 */ addiu $sp, $sp, -0x150 +/* 00D880 8000CC80 3C018012 */ lui $at, %hi(D_8011AD20) # $at, 0x8012 +/* 00D884 8000CC84 A020AD20 */ sb $zero, %lo(D_8011AD20)($at) +/* 00D888 8000CC88 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012 +/* 00D88C 8000CC8C AC20ADB0 */ sw $zero, %lo(D_8011ADB0)($at) +/* 00D890 8000CC90 3C018012 */ lui $at, %hi(D_8011ADC4) # $at, 0x8012 +/* 00D894 8000CC94 AFB1001C */ sw $s1, 0x1c($sp) +/* 00D898 8000CC98 A020ADC4 */ sb $zero, %lo(D_8011ADC4)($at) +/* 00D89C 8000CC9C 3C118012 */ lui $s1, %hi(D_8011AF00) # $s1, 0x8012 +/* 00D8A0 8000CCA0 AFBE0038 */ sw $fp, 0x38($sp) +/* 00D8A4 8000CCA4 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 +/* 00D8A8 8000CCA8 0080F025 */ move $fp, $a0 +/* 00D8AC 8000CCAC 2631AF00 */ addiu $s1, %lo(D_8011AF00) # addiu $s1, $s1, -0x5100 +/* 00D8B0 8000CCB0 AFBF003C */ sw $ra, 0x3c($sp) +/* 00D8B4 8000CCB4 AFB30024 */ sw $s3, 0x24($sp) +/* 00D8B8 8000CCB8 AFB00018 */ sw $s0, 0x18($sp) +/* 00D8BC 8000CCBC AC20AEF0 */ sw $zero, %lo(D_8011AEF0)($at) +/* 00D8C0 8000CCC0 00A08025 */ move $s0, $a1 +/* 00D8C4 8000CCC4 00C09825 */ move $s3, $a2 +/* 00D8C8 8000CCC8 AFB70034 */ sw $s7, 0x34($sp) +/* 00D8CC 8000CCCC AFB60030 */ sw $s6, 0x30($sp) +/* 00D8D0 8000CCD0 AFB5002C */ sw $s5, 0x2c($sp) +/* 00D8D4 8000CCD4 AFB40028 */ sw $s4, 0x28($sp) +/* 00D8D8 8000CCD8 AFB20020 */ sw $s2, 0x20($sp) +/* 00D8DC 8000CCDC A2200000 */ sb $zero, ($s1) +/* 00D8E0 8000CCE0 0C01486E */ jal func_800521B8 +/* 00D8E4 8000CCE4 00002025 */ move $a0, $zero +/* 00D8E8 8000CCE8 0C01AF6C */ jal func_8006BDB0 +/* 00D8EC 8000CCEC 00000000 */ nop +/* 00D8F0 8000CCF0 AFA20078 */ sw $v0, 0x78($sp) +/* 00D8F4 8000CCF4 9043004C */ lbu $v1, 0x4c($v0) +/* 00D8F8 8000CCF8 24160006 */ li $s6, 6 +/* 00D8FC 8000CCFC 12C304E0 */ beq $s6, $v1, .L8000E080 +/* 00D900 8000CD00 00602025 */ move $a0, $v1 +/* 00D904 8000CD04 24010007 */ li $at, 7 +/* 00D908 8000CD08 106104DD */ beq $v1, $at, .L8000E080 +/* 00D90C 8000CD0C 240FFFFF */ li $t7, -1 +/* 00D910 8000CD10 24010008 */ li $at, 8 +/* 00D914 8000CD14 10610002 */ beq $v1, $at, .L8000CD20 +/* 00D918 8000CD18 306E0040 */ andi $t6, $v1, 0x40 +/* 00D91C 8000CD1C 11C00005 */ beqz $t6, .L8000CD34 +.L8000CD20: +/* 00D920 8000CD20 3C148012 */ lui $s4, %hi(D_8011AEF4) # $s4, 0x8012 +/* 00D924 8000CD24 3C018012 */ lui $at, %hi(D_8011AEF5) # $at, 0x8012 +/* 00D928 8000CD28 2694AEF4 */ addiu $s4, %lo(D_8011AEF4) # addiu $s4, $s4, -0x510c +/* 00D92C 8000CD2C A020AEF5 */ sb $zero, %lo(D_8011AEF5)($at) +/* 00D930 8000CD30 A2800000 */ sb $zero, ($s4) +.L8000CD34: +/* 00D934 8000CD34 3C148012 */ lui $s4, %hi(D_8011AEF4) # $s4, 0x8012 +/* 00D938 8000CD38 2694AEF4 */ addiu $s4, %lo(D_8011AEF4) # addiu $s4, $s4, -0x510c +/* 00D93C 8000CD3C AFAF0130 */ sw $t7, 0x130($sp) +/* 00D940 8000CD40 0C003932 */ jal func_8000E4C8 +/* 00D944 8000CD44 AFA40068 */ sw $a0, 0x68($sp) +/* 00D948 8000CD48 1040000C */ beqz $v0, .L8000CD7C +/* 00D94C 8000CD4C 00000000 */ nop +/* 00D950 8000CD50 8FB80068 */ lw $t8, 0x68($sp) +/* 00D954 8000CD54 00000000 */ nop +/* 00D958 8000CD58 17000008 */ bnez $t8, .L8000CD7C +/* 00D95C 8000CD5C 00000000 */ nop +/* 00D960 8000CD60 0C01A75F */ jal func_80069D7C +/* 00D964 8000CD64 00000000 */ nop +/* 00D968 8000CD68 AFA20074 */ sw $v0, 0x74($sp) +/* 00D96C 8000CD6C 9059003B */ lbu $t9, 0x3b($v0) +/* 00D970 8000CD70 240D0001 */ li $t5, 1 +/* 00D974 8000CD74 AFB90130 */ sw $t9, 0x130($sp) +/* 00D978 8000CD78 A04D003B */ sb $t5, 0x3b($v0) +.L8000CD7C: +/* 00D97C 8000CD7C 0C01B683 */ jal func_8006DA0C +/* 00D980 8000CD80 00000000 */ nop +/* 00D984 8000CD84 0C01BAA4 */ jal func_8006EA90 +/* 00D988 8000CD88 AFA20138 */ sw $v0, 0x138($sp) +/* 00D98C 8000CD8C 0040B825 */ move $s7, $v0 +/* 00D990 8000CD90 0C0078A7 */ jal func_8001E29C +/* 00D994 8000CD94 24040003 */ li $a0, 3 +/* 00D998 8000CD98 3C0B8012 */ lui $t3, %hi(D_8011ADC5) # $t3, 0x8012 +/* 00D99C 8000CD9C 256BADC5 */ addiu $t3, %lo(D_8011ADC5) # addiu $t3, $t3, -0x523b +/* 00D9A0 8000CDA0 816E0000 */ lb $t6, ($t3) +/* 00D9A4 8000CDA4 3C0C8012 */ lui $t4, %hi(D_8011AE82) # $t4, 0x8012 +/* 00D9A8 8000CDA8 258CAE82 */ addiu $t4, %lo(D_8011AE82) # addiu $t4, $t4, -0x517e +/* 00D9AC 8000CDAC AFA20128 */ sw $v0, 0x128($sp) +/* 00D9B0 8000CDB0 A58E0000 */ sh $t6, ($t4) +/* 00D9B4 8000CDB4 92F80049 */ lbu $t8, 0x49($s7) +/* 00D9B8 8000CDB8 8EEF0004 */ lw $t7, 4($s7) +/* 00D9BC 8000CDBC 0018C880 */ sll $t9, $t8, 2 +/* 00D9C0 8000CDC0 01F91821 */ addu $v1, $t7, $t9 +/* 00D9C4 8000CDC4 8C640000 */ lw $a0, ($v1) +/* 00D9C8 8000CDC8 27A200B4 */ addiu $v0, $sp, 0xb4 +/* 00D9CC 8000CDCC 308D0001 */ andi $t5, $a0, 1 +/* 00D9D0 8000CDD0 15A00005 */ bnez $t5, .L8000CDE8 +/* 00D9D4 8000CDD4 27A500D4 */ addiu $a1, $sp, 0xd4 +/* 00D9D8 8000CDD8 348E0001 */ ori $t6, $a0, 1 +/* 00D9DC 8000CDDC AC6E0000 */ sw $t6, ($v1) +/* 00D9E0 8000CDE0 24180002 */ li $t8, 2 +/* 00D9E4 8000CDE4 A2380000 */ sb $t8, ($s1) +.L8000CDE8: +/* 00D9E8 8000CDE8 8FAF0068 */ lw $t7, 0x68($sp) +/* 00D9EC 8000CDEC 27A300F4 */ addiu $v1, $sp, 0xf4 +/* 00D9F0 8000CDF0 11E00003 */ beqz $t7, .L8000CE00 +/* 00D9F4 8000CDF4 27A400D4 */ addiu $a0, $sp, 0xd4 +/* 00D9F8 8000CDF8 24190002 */ li $t9, 2 +/* 00D9FC 8000CDFC A2390000 */ sb $t9, ($s1) +.L8000CE00: +/* 00DA00 8000CE00 24420004 */ addiu $v0, $v0, 4 +/* 00DA04 8000CE04 0045082B */ sltu $at, $v0, $a1 +/* 00DA08 8000CE08 24630004 */ addiu $v1, $v1, 4 +/* 00DA0C 8000CE0C 24840004 */ addiu $a0, $a0, 4 +/* 00DA10 8000CE10 AC60FFFC */ sw $zero, -4($v1) +/* 00DA14 8000CE14 AC80FFFC */ sw $zero, -4($a0) +/* 00DA18 8000CE18 1420FFF9 */ bnez $at, .L8000CE00 +/* 00DA1C 8000CE1C AC40FFFC */ sw $zero, -4($v0) +/* 00DA20 8000CE20 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 +/* 00DA24 8000CE24 8C42AE5C */ lw $v0, %lo(D_8011AE5C)($v0) +/* 00DA28 8000CE28 00009025 */ move $s2, $zero +/* 00DA2C 8000CE2C 18400050 */ blez $v0, .L8000CF70 +/* 00DA30 8000CE30 0000A825 */ move $s5, $zero +/* 00DA34 8000CE34 3C048012 */ lui $a0, %hi(D_8011AE58) # $a0, 0x8012 +/* 00DA38 8000CE38 8C84AE58 */ lw $a0, %lo(D_8011AE58)($a0) +/* 00DA3C 8000CE3C 00022880 */ sll $a1, $v0, 2 +/* 00DA40 8000CE40 27AA0094 */ addiu $t2, $sp, 0x94 +/* 00DA44 8000CE44 27A900B4 */ addiu $t1, $sp, 0xb4 +/* 00DA48 8000CE48 27A800D4 */ addiu $t0, $sp, 0xd4 +/* 00DA4C 8000CE4C 27A700F4 */ addiu $a3, $sp, 0xf4 +/* 00DA50 8000CE50 2406000B */ li $a2, 11 +.L8000CE54: +/* 00DA54 8000CE54 8C910000 */ lw $s1, ($a0) +/* 00DA58 8000CE58 26B50004 */ addiu $s5, $s5, 4 +/* 00DA5C 8000CE5C 862D0006 */ lh $t5, 6($s1) +/* 00DA60 8000CE60 00000000 */ nop +/* 00DA64 8000CE64 31AE8000 */ andi $t6, $t5, 0x8000 +/* 00DA68 8000CE68 15C0003E */ bnez $t6, .L8000CF64 +/* 00DA6C 8000CE6C 02A5082A */ slt $at, $s5, $a1 +/* 00DA70 8000CE70 86380048 */ lh $t8, 0x48($s1) +/* 00DA74 8000CE74 00000000 */ nop +/* 00DA78 8000CE78 14D8003A */ bne $a2, $t8, .L8000CF64 +/* 00DA7C 8000CE7C 02A5082A */ slt $at, $s5, $a1 +/* 00DA80 8000CE80 8E2F007C */ lw $t7, 0x7c($s1) +/* 00DA84 8000CE84 00000000 */ nop +/* 00DA88 8000CE88 160F0036 */ bne $s0, $t7, .L8000CF64 +/* 00DA8C 8000CE8C 02A5082A */ slt $at, $s5, $a1 +/* 00DA90 8000CE90 8E220078 */ lw $v0, 0x78($s1) +/* 00DA94 8000CE94 00000000 */ nop +/* 00DA98 8000CE98 28410008 */ slti $at, $v0, 8 +/* 00DA9C 8000CE9C 10200029 */ beqz $at, .L8000CF44 +/* 00DAA0 8000CEA0 00000000 */ nop +/* 00DAA4 8000CEA4 4459F800 */ cfc1 $t9, $31 +/* 00DAA8 8000CEA8 C624000C */ lwc1 $f4, 0xc($s1) +/* 00DAAC 8000CEAC 37210003 */ ori $at, $t9, 3 +/* 00DAB0 8000CEB0 38210002 */ xori $at, $at, 2 +/* 00DAB4 8000CEB4 44C1F800 */ ctc1 $at, $31 +/* 00DAB8 8000CEB8 00027080 */ sll $t6, $v0, 2 +/* 00DABC 8000CEBC 460021A4 */ cvt.w.s $f6, $f4 +/* 00DAC0 8000CEC0 00EEC021 */ addu $t8, $a3, $t6 +/* 00DAC4 8000CEC4 44D9F800 */ ctc1 $t9, $31 +/* 00DAC8 8000CEC8 440D3000 */ mfc1 $t5, $f6 +/* 00DACC 8000CECC 00000000 */ nop +/* 00DAD0 8000CED0 444FF800 */ cfc1 $t7, $31 +/* 00DAD4 8000CED4 AF0D0000 */ sw $t5, ($t8) +/* 00DAD8 8000CED8 35E10003 */ ori $at, $t7, 3 +/* 00DADC 8000CEDC 38210002 */ xori $at, $at, 2 +/* 00DAE0 8000CEE0 44C1F800 */ ctc1 $at, $31 +/* 00DAE4 8000CEE4 C6280010 */ lwc1 $f8, 0x10($s1) +/* 00DAE8 8000CEE8 8E2E0078 */ lw $t6, 0x78($s1) +/* 00DAEC 8000CEEC 460042A4 */ cvt.w.s $f10, $f8 +/* 00DAF0 8000CEF0 000E6880 */ sll $t5, $t6, 2 +/* 00DAF4 8000CEF4 44195000 */ mfc1 $t9, $f10 +/* 00DAF8 8000CEF8 010DC021 */ addu $t8, $t0, $t5 +/* 00DAFC 8000CEFC 35E10003 */ ori $at, $t7, 3 +/* 00DB00 8000CF00 38210002 */ xori $at, $at, 2 +/* 00DB04 8000CF04 44CFF800 */ ctc1 $t7, $31 +/* 00DB08 8000CF08 AF190000 */ sw $t9, ($t8) +/* 00DB0C 8000CF0C C6300014 */ lwc1 $f16, 0x14($s1) +/* 00DB10 8000CF10 44C1F800 */ ctc1 $at, $31 +/* 00DB14 8000CF14 8E2D0078 */ lw $t5, 0x78($s1) +/* 00DB18 8000CF18 460084A4 */ cvt.w.s $f18, $f16 +/* 00DB1C 8000CF1C 000DC880 */ sll $t9, $t5, 2 +/* 00DB20 8000CF20 440E9000 */ mfc1 $t6, $f18 +/* 00DB24 8000CF24 0139C021 */ addu $t8, $t1, $t9 +/* 00DB28 8000CF28 AF0E0000 */ sw $t6, ($t8) +/* 00DB2C 8000CF2C 8E2D0078 */ lw $t5, 0x78($s1) +/* 00DB30 8000CF30 44CFF800 */ ctc1 $t7, $31 +/* 00DB34 8000CF34 862F0000 */ lh $t7, ($s1) +/* 00DB38 8000CF38 000DC880 */ sll $t9, $t5, 2 +/* 00DB3C 8000CF3C 01597021 */ addu $t6, $t2, $t9 +/* 00DB40 8000CF40 ADCF0000 */ sw $t7, ($t6) +.L8000CF44: +/* 00DB44 8000CF44 8E22003C */ lw $v0, 0x3c($s1) +/* 00DB48 8000CF48 2401FFFF */ li $at, -1 +/* 00DB4C 8000CF4C 8043000B */ lb $v1, 0xb($v0) +/* 00DB50 8000CF50 00000000 */ nop +/* 00DB54 8000CF54 10610003 */ beq $v1, $at, .L8000CF64 +/* 00DB58 8000CF58 02A5082A */ slt $at, $s5, $a1 +/* 00DB5C 8000CF5C 0060F025 */ move $fp, $v1 +/* 00DB60 8000CF60 02A5082A */ slt $at, $s5, $a1 +.L8000CF64: +/* 00DB64 8000CF64 1420FFBB */ bnez $at, .L8000CE54 +/* 00DB68 8000CF68 24840004 */ addiu $a0, $a0, 4 +/* 00DB6C 8000CF6C 00009025 */ move $s2, $zero +.L8000CF70: +/* 00DB70 8000CF70 A17E0000 */ sb $fp, ($t3) +/* 00DB74 8000CF74 81780000 */ lb $t8, ($t3) +/* 00DB78 8000CF78 3C10800E */ lui $s0, %hi(D_800DC740) # $s0, 0x800e +/* 00DB7C 8000CF7C 240D0008 */ li $t5, 8 +/* 00DB80 8000CF80 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 +/* 00DB84 8000CF84 A5980000 */ sh $t8, ($t4) +/* 00DB88 8000CF88 2610C740 */ addiu $s0, %lo(D_800DC740) # addiu $s0, $s0, -0x38c0 +/* 00DB8C 8000CF8C 26620001 */ addiu $v0, $s3, 1 +/* 00DB90 8000CF90 AC2DAEF0 */ sw $t5, %lo(D_8011AEF0)($at) +/* 00DB94 8000CF94 AFA20144 */ sw $v0, 0x144($sp) +/* 00DB98 8000CF98 A2000000 */ sb $zero, ($s0) +/* 00DB9C 8000CF9C 0C01B067 */ jal func_8006C19C +/* 00DBA0 8000CFA0 AFA20058 */ sw $v0, 0x58($sp) +/* 00DBA4 8000CFA4 10400006 */ beqz $v0, .L8000CFC0 +/* 00DBA8 8000CFA8 24190002 */ li $t9, 2 +/* 00DBAC 8000CFAC 240F0001 */ li $t7, 1 +/* 00DBB0 8000CFB0 AFB90144 */ sw $t9, 0x144($sp) +/* 00DBB4 8000CFB4 A20F0000 */ sb $t7, ($s0) +/* 00DBB8 8000CFB8 0C009278 */ jal func_800249E0 +/* 00DBBC 8000CFBC 24040001 */ li $a0, 1 +.L8000CFC0: +/* 00DBC0 8000CFC0 8FAE0068 */ lw $t6, 0x68($sp) +/* 00DBC4 8000CFC4 24010005 */ li $at, 5 +/* 00DBC8 8000CFC8 15C10002 */ bne $t6, $at, .L8000CFD4 +/* 00DBCC 8000CFCC 3C0D8012 */ lui $t5, %hi(D_8011AEF5) # $t5, 0x8012 +/* 00DBD0 8000CFD0 A2800000 */ sb $zero, ($s4) +.L8000CFD4: +/* 00DBD4 8000CFD4 92980000 */ lbu $t8, ($s4) +/* 00DBD8 8000CFD8 3C018012 */ lui $at, %hi(D_8011AEF5) # $at, 0x8012 +/* 00DBDC 8000CFDC A038AEF5 */ sb $t8, %lo(D_8011AEF5)($at) +/* 00DBE0 8000CFE0 91ADAEF5 */ lbu $t5, %lo(D_8011AEF5)($t5) +/* 00DBE4 8000CFE4 24190005 */ li $t9, 5 +/* 00DBE8 8000CFE8 11A00003 */ beqz $t5, .L8000CFF8 +/* 00DBEC 8000CFEC 8FAF0068 */ lw $t7, 0x68($sp) +/* 00DBF0 8000CFF0 AFB90068 */ sw $t9, 0x68($sp) +/* 00DBF4 8000CFF4 8FAF0068 */ lw $t7, 0x68($sp) +.L8000CFF8: +/* 00DBF8 8000CFF8 24010005 */ li $at, 5 +/* 00DBFC 8000CFFC 31EE0040 */ andi $t6, $t7, 0x40 +/* 00DC00 8000D000 11E10006 */ beq $t7, $at, .L8000D01C +/* 00DC04 8000D004 AFAE0064 */ sw $t6, 0x64($sp) +/* 00DC08 8000D008 8FB80144 */ lw $t8, 0x144($sp) +/* 00DC0C 8000D00C 8FAF0144 */ lw $t7, 0x144($sp) +/* 00DC10 8000D010 2B010003 */ slti $at, $t8, 3 +/* 00DC14 8000D014 14200010 */ bnez $at, .L8000D058 +/* 00DC18 8000D018 24010002 */ li $at, 2 +.L8000D01C: +/* 00DC1C 8000D01C 8FAD0144 */ lw $t5, 0x144($sp) +/* 00DC20 8000D020 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 +/* 00DC24 8000D024 0C01B0BC */ jal func_8006C2F0 +/* 00DC28 8000D028 AC2DAEF0 */ sw $t5, %lo(D_8011AEF0)($at) +/* 00DC2C 8000D02C 14400010 */ bnez $v0, .L8000D070 +/* 00DC30 8000D030 3C03800E */ lui $v1, %hi(D_800DC708) # $v1, 0x800e +/* 00DC34 8000D034 2463C708 */ addiu $v1, %lo(D_800DC708) # addiu $v1, $v1, -0x38f8 +/* 00DC38 8000D038 84620000 */ lh $v0, ($v1) +/* 00DC3C 8000D03C 8FB90094 */ lw $t9, 0x94($sp) +/* 00DC40 8000D040 1040000B */ beqz $v0, .L8000D070 +/* 00DC44 8000D044 03227021 */ addu $t6, $t9, $v0 +/* 00DC48 8000D048 AFAE0094 */ sw $t6, 0x94($sp) +/* 00DC4C 8000D04C 10000008 */ b .L8000D070 +/* 00DC50 8000D050 A4600000 */ sh $zero, ($v1) +/* 00DC54 8000D054 24010002 */ li $at, 2 +.L8000D058: +/* 00DC58 8000D058 15E10006 */ bne $t7, $at, .L8000D074 +/* 00DC5C 8000D05C 8FB80064 */ lw $t8, 0x64($sp) +/* 00DC60 8000D060 0C027110 */ jal func_8009C440 +/* 00DC64 8000D064 00000000 */ nop +/* 00DC68 8000D068 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 +/* 00DC6C 8000D06C AC22AEF0 */ sw $v0, %lo(D_8011AEF0)($at) +.L8000D070: +/* 00DC70 8000D070 8FB80064 */ lw $t8, 0x64($sp) +.L8000D074: +/* 00DC74 8000D074 3C058012 */ lui $a1, %hi(D_8011AD3C) # $a1, 0x8012 +/* 00DC78 8000D078 13000005 */ beqz $t8, .L8000D090 +/* 00DC7C 8000D07C 24A5AD3C */ addiu $a1, %lo(D_8011AD3C) # addiu $a1, $a1, -0x52c4 +/* 00DC80 8000D080 3C068012 */ lui $a2, %hi(D_8011AEF0) # $a2, 0x8012 +/* 00DC84 8000D084 24C6AEF0 */ addiu $a2, %lo(D_8011AEF0) # addiu $a2, $a2, -0x5110 +/* 00DC88 8000D088 240D0004 */ li $t5, 4 +/* 00DC8C 8000D08C ACCD0000 */ sw $t5, ($a2) +.L8000D090: +/* 00DC90 8000D090 8FB90068 */ lw $t9, 0x68($sp) +/* 00DC94 8000D094 3C068012 */ lui $a2, %hi(D_8011AEF0) # $a2, 0x8012 +/* 00DC98 8000D098 24010008 */ li $at, 8 +/* 00DC9C 8000D09C 24C6AEF0 */ addiu $a2, %lo(D_8011AEF0) # addiu $a2, $a2, -0x5110 +/* 00DCA0 8000D0A0 17210006 */ bne $t9, $at, .L8000D0BC +/* 00DCA4 8000D0A4 A0A00000 */ sb $zero, ($a1) +/* 00DCA8 8000D0A8 24070001 */ li $a3, 1 +/* 00DCAC 8000D0AC 240E0002 */ li $t6, 2 +/* 00DCB0 8000D0B0 ACCE0000 */ sw $t6, ($a2) +/* 00DCB4 8000D0B4 AFA70144 */ sw $a3, 0x144($sp) +/* 00DCB8 8000D0B8 A0A70000 */ sb $a3, ($a1) +.L8000D0BC: +/* 00DCBC 8000D0BC 8FAF0138 */ lw $t7, 0x138($sp) +/* 00DCC0 8000D0C0 3C02800E */ lui $v0, %hi(D_800DC71C) # $v0, 0x800e +/* 00DCC4 8000D0C4 2442C71C */ addiu $v0, %lo(D_800DC71C) # addiu $v0, $v0, -0x38e4 +/* 00DCC8 8000D0C8 24070001 */ li $a3, 1 +/* 00DCCC 8000D0CC 15E70008 */ bne $t7, $a3, .L8000D0F0 +/* 00DCD0 8000D0D0 A0400000 */ sb $zero, ($v0) +/* 00DCD4 8000D0D4 8FB80068 */ lw $t8, 0x68($sp) +/* 00DCD8 8000D0D8 240D0002 */ li $t5, 2 +/* 00DCDC 8000D0DC 17000004 */ bnez $t8, .L8000D0F0 +/* 00DCE0 8000D0E0 00000000 */ nop +/* 00DCE4 8000D0E4 ACD60000 */ sw $s6, ($a2) +/* 00DCE8 8000D0E8 A0470000 */ sb $a3, ($v0) +/* 00DCEC 8000D0EC A0AD0000 */ sb $t5, ($a1) +.L8000D0F0: +/* 00DCF0 8000D0F0 8CC30000 */ lw $v1, ($a2) +/* 00DCF4 8000D0F4 00008025 */ move $s0, $zero +/* 00DCF8 8000D0F8 18600007 */ blez $v1, .L8000D118 +/* 00DCFC 8000D0FC 27A2011C */ addiu $v0, $sp, 0x11c +/* 00DD00 8000D100 00622021 */ addu $a0, $v1, $v0 +.L8000D104: +/* 00DD04 8000D104 24420001 */ addiu $v0, $v0, 1 +/* 00DD08 8000D108 0044082B */ sltu $at, $v0, $a0 +/* 00DD0C 8000D10C 1420FFFD */ bnez $at, .L8000D104 +/* 00DD10 8000D110 A040FFFF */ sb $zero, -1($v0) +/* 00DD14 8000D114 00008025 */ move $s0, $zero +.L8000D118: +/* 00DD18 8000D118 8FAE0144 */ lw $t6, 0x144($sp) +/* 00DD1C 8000D11C 00002825 */ move $a1, $zero +/* 00DD20 8000D120 19C0006F */ blez $t6, .L8000D2E0 +/* 00DD24 8000D124 01C01025 */ move $v0, $t6 +/* 00DD28 8000D128 31C20003 */ andi $v0, $t6, 3 +/* 00DD2C 8000D12C 1040001D */ beqz $v0, .L8000D1A4 +/* 00DD30 8000D130 00404825 */ move $t1, $v0 +/* 00DD34 8000D134 00107880 */ sll $t7, $s0, 2 +/* 00DD38 8000D138 01F07823 */ subu $t7, $t7, $s0 +/* 00DD3C 8000D13C 000F78C0 */ sll $t7, $t7, 3 +/* 00DD40 8000D140 02EF3021 */ addu $a2, $s7, $t7 +/* 00DD44 8000D144 27A80114 */ addiu $t0, $sp, 0x114 +/* 00DD48 8000D148 27A7011C */ addiu $a3, $sp, 0x11c +.L8000D14C: +/* 00DD4C 8000D14C 80C2005A */ lb $v0, 0x5a($a2) +/* 00DD50 8000D150 00000000 */ nop +/* 00DD54 8000D154 0043082A */ slt $at, $v0, $v1 +/* 00DD58 8000D158 10200007 */ beqz $at, .L8000D178 +/* 00DD5C 8000D15C 00E22021 */ addu $a0, $a3, $v0 +/* 00DD60 8000D160 80980000 */ lb $t8, ($a0) +/* 00DD64 8000D164 240D0001 */ li $t5, 1 +/* 00DD68 8000D168 17000004 */ bnez $t8, .L8000D17C +/* 00DD6C 8000D16C 0105C821 */ addu $t9, $t0, $a1 +/* 00DD70 8000D170 10000006 */ b .L8000D18C +/* 00DD74 8000D174 A08D0000 */ sb $t5, ($a0) +.L8000D178: +/* 00DD78 8000D178 0105C821 */ addu $t9, $t0, $a1 +.L8000D17C: +/* 00DD7C 8000D17C 24A50001 */ addiu $a1, $a1, 1 +/* 00DD80 8000D180 30AE00FF */ andi $t6, $a1, 0xff +/* 00DD84 8000D184 01C02825 */ move $a1, $t6 +/* 00DD88 8000D188 A3300000 */ sb $s0, ($t9) +.L8000D18C: +/* 00DD8C 8000D18C 26100001 */ addiu $s0, $s0, 1 +/* 00DD90 8000D190 1530FFEE */ bne $t1, $s0, .L8000D14C +/* 00DD94 8000D194 24C60018 */ addiu $a2, $a2, 0x18 +/* 00DD98 8000D198 8FAF0144 */ lw $t7, 0x144($sp) +/* 00DD9C 8000D19C 00000000 */ nop +/* 00DDA0 8000D1A0 120F004D */ beq $s0, $t7, .L8000D2D8 +.L8000D1A4: +/* 00DDA4 8000D1A4 0010C080 */ sll $t8, $s0, 2 +/* 00DDA8 8000D1A8 0310C023 */ subu $t8, $t8, $s0 +/* 00DDAC 8000D1AC 0018C0C0 */ sll $t8, $t8, 3 +/* 00DDB0 8000D1B0 02F83021 */ addu $a2, $s7, $t8 +/* 00DDB4 8000D1B4 27A7011C */ addiu $a3, $sp, 0x11c +/* 00DDB8 8000D1B8 27A80114 */ addiu $t0, $sp, 0x114 +.L8000D1BC: +/* 00DDBC 8000D1BC 80C2005A */ lb $v0, 0x5a($a2) +/* 00DDC0 8000D1C0 00000000 */ nop +/* 00DDC4 8000D1C4 0043082A */ slt $at, $v0, $v1 +/* 00DDC8 8000D1C8 10200007 */ beqz $at, .L8000D1E8 +/* 00DDCC 8000D1CC 00E22021 */ addu $a0, $a3, $v0 +/* 00DDD0 8000D1D0 808D0000 */ lb $t5, ($a0) +/* 00DDD4 8000D1D4 24190001 */ li $t9, 1 +/* 00DDD8 8000D1D8 15A00004 */ bnez $t5, .L8000D1EC +/* 00DDDC 8000D1DC 01057021 */ addu $t6, $t0, $a1 +/* 00DDE0 8000D1E0 10000006 */ b .L8000D1FC +/* 00DDE4 8000D1E4 A0990000 */ sb $t9, ($a0) +.L8000D1E8: +/* 00DDE8 8000D1E8 01057021 */ addu $t6, $t0, $a1 +.L8000D1EC: +/* 00DDEC 8000D1EC 24A50001 */ addiu $a1, $a1, 1 +/* 00DDF0 8000D1F0 30AF00FF */ andi $t7, $a1, 0xff +/* 00DDF4 8000D1F4 01E02825 */ move $a1, $t7 +/* 00DDF8 8000D1F8 A1D00000 */ sb $s0, ($t6) +.L8000D1FC: +/* 00DDFC 8000D1FC 80C20072 */ lb $v0, 0x72($a2) +/* 00DE00 8000D200 00000000 */ nop +/* 00DE04 8000D204 0043082A */ slt $at, $v0, $v1 +/* 00DE08 8000D208 10200007 */ beqz $at, .L8000D228 +/* 00DE0C 8000D20C 00E22021 */ addu $a0, $a3, $v0 +/* 00DE10 8000D210 80980000 */ lb $t8, ($a0) +/* 00DE14 8000D214 240D0001 */ li $t5, 1 +/* 00DE18 8000D218 17000004 */ bnez $t8, .L8000D22C +/* 00DE1C 8000D21C 01057021 */ addu $t6, $t0, $a1 +/* 00DE20 8000D220 10000007 */ b .L8000D240 +/* 00DE24 8000D224 A08D0000 */ sb $t5, ($a0) +.L8000D228: +/* 00DE28 8000D228 01057021 */ addu $t6, $t0, $a1 +.L8000D22C: +/* 00DE2C 8000D22C 24A50001 */ addiu $a1, $a1, 1 +/* 00DE30 8000D230 30AF00FF */ andi $t7, $a1, 0xff +/* 00DE34 8000D234 26190001 */ addiu $t9, $s0, 1 +/* 00DE38 8000D238 A1D90000 */ sb $t9, ($t6) +/* 00DE3C 8000D23C 01E02825 */ move $a1, $t7 +.L8000D240: +/* 00DE40 8000D240 80C2008A */ lb $v0, 0x8a($a2) +/* 00DE44 8000D244 00000000 */ nop +/* 00DE48 8000D248 0043082A */ slt $at, $v0, $v1 +/* 00DE4C 8000D24C 10200007 */ beqz $at, .L8000D26C +/* 00DE50 8000D250 00E22021 */ addu $a0, $a3, $v0 +/* 00DE54 8000D254 80980000 */ lb $t8, ($a0) +/* 00DE58 8000D258 240D0001 */ li $t5, 1 +/* 00DE5C 8000D25C 17000004 */ bnez $t8, .L8000D270 +/* 00DE60 8000D260 01057021 */ addu $t6, $t0, $a1 +/* 00DE64 8000D264 10000007 */ b .L8000D284 +/* 00DE68 8000D268 A08D0000 */ sb $t5, ($a0) +.L8000D26C: +/* 00DE6C 8000D26C 01057021 */ addu $t6, $t0, $a1 +.L8000D270: +/* 00DE70 8000D270 24A50001 */ addiu $a1, $a1, 1 +/* 00DE74 8000D274 30AF00FF */ andi $t7, $a1, 0xff +/* 00DE78 8000D278 26190002 */ addiu $t9, $s0, 2 +/* 00DE7C 8000D27C A1D90000 */ sb $t9, ($t6) +/* 00DE80 8000D280 01E02825 */ move $a1, $t7 +.L8000D284: +/* 00DE84 8000D284 80C200A2 */ lb $v0, 0xa2($a2) +/* 00DE88 8000D288 00000000 */ nop +/* 00DE8C 8000D28C 0043082A */ slt $at, $v0, $v1 +/* 00DE90 8000D290 10200007 */ beqz $at, .L8000D2B0 +/* 00DE94 8000D294 00E22021 */ addu $a0, $a3, $v0 +/* 00DE98 8000D298 80980000 */ lb $t8, ($a0) +/* 00DE9C 8000D29C 240D0001 */ li $t5, 1 +/* 00DEA0 8000D2A0 17000004 */ bnez $t8, .L8000D2B4 +/* 00DEA4 8000D2A4 01057021 */ addu $t6, $t0, $a1 +/* 00DEA8 8000D2A8 10000007 */ b .L8000D2C8 +/* 00DEAC 8000D2AC A08D0000 */ sb $t5, ($a0) +.L8000D2B0: +/* 00DEB0 8000D2B0 01057021 */ addu $t6, $t0, $a1 +.L8000D2B4: +/* 00DEB4 8000D2B4 24A50001 */ addiu $a1, $a1, 1 +/* 00DEB8 8000D2B8 30AF00FF */ andi $t7, $a1, 0xff +/* 00DEBC 8000D2BC 26190003 */ addiu $t9, $s0, 3 +/* 00DEC0 8000D2C0 A1D90000 */ sb $t9, ($t6) +/* 00DEC4 8000D2C4 01E02825 */ move $a1, $t7 +.L8000D2C8: +/* 00DEC8 8000D2C8 8FB80144 */ lw $t8, 0x144($sp) +/* 00DECC 8000D2CC 26100004 */ addiu $s0, $s0, 4 +/* 00DED0 8000D2D0 1618FFBA */ bne $s0, $t8, .L8000D1BC +/* 00DED4 8000D2D4 24C60060 */ addiu $a2, $a2, 0x60 +.L8000D2D8: +/* 00DED8 8000D2D8 8FA20144 */ lw $v0, 0x144($sp) +/* 00DEDC 8000D2DC 00000000 */ nop +.L8000D2E0: +/* 00DEE0 8000D2E0 0043082A */ slt $at, $v0, $v1 +/* 00DEE4 8000D2E4 27A7011C */ addiu $a3, $sp, 0x11c +/* 00DEE8 8000D2E8 27A80114 */ addiu $t0, $sp, 0x114 +/* 00DEEC 8000D2EC 10200019 */ beqz $at, .L8000D354 +/* 00DEF0 8000D2F0 00408025 */ move $s0, $v0 +/* 00DEF4 8000D2F4 00026880 */ sll $t5, $v0, 2 +/* 00DEF8 8000D2F8 01A26823 */ subu $t5, $t5, $v0 +/* 00DEFC 8000D2FC 000D68C0 */ sll $t5, $t5, 3 +/* 00DF00 8000D300 02ED3021 */ addu $a2, $s7, $t5 +.L8000D304: +/* 00DF04 8000D304 80C2005A */ lb $v0, 0x5a($a2) +/* 00DF08 8000D308 00000000 */ nop +/* 00DF0C 8000D30C 0043082A */ slt $at, $v0, $v1 +/* 00DF10 8000D310 10200007 */ beqz $at, .L8000D330 +/* 00DF14 8000D314 00E22021 */ addu $a0, $a3, $v0 +/* 00DF18 8000D318 80990000 */ lb $t9, ($a0) +/* 00DF1C 8000D31C 240E0001 */ li $t6, 1 +/* 00DF20 8000D320 17200004 */ bnez $t9, .L8000D334 +/* 00DF24 8000D324 01057821 */ addu $t7, $t0, $a1 +/* 00DF28 8000D328 10000006 */ b .L8000D344 +/* 00DF2C 8000D32C A08E0000 */ sb $t6, ($a0) +.L8000D330: +/* 00DF30 8000D330 01057821 */ addu $t7, $t0, $a1 +.L8000D334: +/* 00DF34 8000D334 24A50001 */ addiu $a1, $a1, 1 +/* 00DF38 8000D338 30B800FF */ andi $t8, $a1, 0xff +/* 00DF3C 8000D33C 03002825 */ move $a1, $t8 +/* 00DF40 8000D340 A1F00000 */ sb $s0, ($t7) +.L8000D344: +/* 00DF44 8000D344 26100001 */ addiu $s0, $s0, 1 +/* 00DF48 8000D348 0203082A */ slt $at, $s0, $v1 +/* 00DF4C 8000D34C 1420FFED */ bnez $at, .L8000D304 +/* 00DF50 8000D350 24C60018 */ addiu $a2, $a2, 0x18 +.L8000D354: +/* 00DF54 8000D354 00008025 */ move $s0, $zero +/* 00DF58 8000D358 18A0001C */ blez $a1, .L8000D3CC +/* 00DF5C 8000D35C 00A02025 */ move $a0, $a1 +/* 00DF60 8000D360 24150018 */ li $s5, 24 +.L8000D364: +/* 00DF64 8000D364 18600015 */ blez $v1, .L8000D3BC +/* 00DF68 8000D368 00F21021 */ addu $v0, $a3, $s2 +.L8000D36C: +/* 00DF6C 8000D36C 804D0000 */ lb $t5, ($v0) +/* 00DF70 8000D370 01107021 */ addu $t6, $t0, $s0 +/* 00DF74 8000D374 15A0000C */ bnez $t5, .L8000D3A8 +/* 00DF78 8000D378 00000000 */ nop +/* 00DF7C 8000D37C 81CF0000 */ lb $t7, ($t6) +/* 00DF80 8000D380 24190001 */ li $t9, 1 +/* 00DF84 8000D384 01F50019 */ multu $t7, $s5 +/* 00DF88 8000D388 A0590000 */ sb $t9, ($v0) +/* 00DF8C 8000D38C 3C038012 */ lui $v1, %hi(D_8011AEF0) # $v1, 0x8012 +/* 00DF90 8000D390 0000C012 */ mflo $t8 +/* 00DF94 8000D394 02F86821 */ addu $t5, $s7, $t8 +/* 00DF98 8000D398 A1B2005A */ sb $s2, 0x5a($t5) +/* 00DF9C 8000D39C 8C63AEF0 */ lw $v1, %lo(D_8011AEF0)($v1) +/* 00DFA0 8000D3A0 00000000 */ nop +/* 00DFA4 8000D3A4 00609025 */ move $s2, $v1 +.L8000D3A8: +/* 00DFA8 8000D3A8 26520001 */ addiu $s2, $s2, 1 +/* 00DFAC 8000D3AC 0243082A */ slt $at, $s2, $v1 +/* 00DFB0 8000D3B0 1420FFEE */ bnez $at, .L8000D36C +/* 00DFB4 8000D3B4 00F21021 */ addu $v0, $a3, $s2 +/* 00DFB8 8000D3B8 00009025 */ move $s2, $zero +.L8000D3BC: +/* 00DFBC 8000D3BC 26100001 */ addiu $s0, $s0, 1 +/* 00DFC0 8000D3C0 1604FFE8 */ bne $s0, $a0, .L8000D364 +/* 00DFC4 8000D3C4 00000000 */ nop +/* 00DFC8 8000D3C8 00008025 */ move $s0, $zero +.L8000D3CC: +/* 00DFCC 8000D3CC 3C05FFFF */ lui $a1, (0xFFFF00FF >> 16) # lui $a1, 0xffff +/* 00DFD0 8000D3D0 24150018 */ li $s5, 24 +/* 00DFD4 8000D3D4 34A500FF */ ori $a1, (0xFFFF00FF & 0xFFFF) # ori $a1, $a1, 0xff +/* 00DFD8 8000D3D8 0C01C327 */ jal func_80070C9C +/* 00DFDC 8000D3DC 24040010 */ li $a0, 16 +/* 00DFE0 8000D3E0 A440000C */ sh $zero, 0xc($v0) +/* 00DFE4 8000D3E4 A440000A */ sh $zero, 0xa($v0) +/* 00DFE8 8000D3E8 A4400008 */ sh $zero, 8($v0) +/* 00DFEC 8000D3EC 8FB90078 */ lw $t9, 0x78($sp) +/* 00DFF0 8000D3F0 0040B025 */ move $s6, $v0 +/* 00DFF4 8000D3F4 832E004D */ lb $t6, 0x4d($t9) +/* 00DFF8 8000D3F8 2419FFFF */ li $t9, -1 +/* 00DFFC 8000D3FC 15C00004 */ bnez $t6, .L8000D410 +/* 00E000 8000D400 3C038012 */ lui $v1, %hi(D_8011AEF0) # $v1, 0x8012 +/* 00E004 8000D404 3C018012 */ lui $at, %hi(D_8011AE02) # $at, 0x8012 +/* 00E008 8000D408 10000004 */ b .L8000D41C +/* 00E00C 8000D40C A020AE02 */ sb $zero, %lo(D_8011AE02)($at) +.L8000D410: +/* 00E010 8000D410 240F0001 */ li $t7, 1 +/* 00E014 8000D414 3C018012 */ lui $at, %hi(D_8011AE02) # $at, 0x8012 +/* 00E018 8000D418 A02FAE02 */ sb $t7, %lo(D_8011AE02)($at) +.L8000D41C: +/* 00E01C 8000D41C 8FB80078 */ lw $t8, 0x78($sp) +/* 00E020 8000D420 8C63AEF0 */ lw $v1, %lo(D_8011AEF0)($v1) +/* 00E024 8000D424 830D00B8 */ lb $t5, 0xb8($t8) +/* 00E028 8000D428 3C018012 */ lui $at, %hi(D_8011AD25) # $at, 0x8012 +/* 00E02C 8000D42C A3B90127 */ sb $t9, 0x127($sp) +/* 00E030 8000D430 1860015E */ blez $v1, .L8000D9AC +/* 00E034 8000D434 A02DAD25 */ sb $t5, %lo(D_8011AD25)($at) +/* 00E038 8000D438 8FA40068 */ lw $a0, 0x68($sp) +/* 00E03C 8000D43C 24020005 */ li $v0, 5 +.L8000D440: +/* 00E040 8000D440 10440019 */ beq $v0, $a0, .L8000D4A8 +/* 00E044 8000D444 0200A025 */ move $s4, $s0 +/* 00E048 8000D448 8FAE0064 */ lw $t6, 0x64($sp) +/* 00E04C 8000D44C 3C0F8012 */ lui $t7, %hi(D_8011AD3C) # $t7, 0x8012 +/* 00E050 8000D450 15C00015 */ bnez $t6, .L8000D4A8 +/* 00E054 8000D454 00000000 */ nop +/* 00E058 8000D458 81EFAD3C */ lb $t7, %lo(D_8011AD3C)($t7) +/* 00E05C 8000D45C 00000000 */ nop +/* 00E060 8000D460 15E00011 */ bnez $t7, .L8000D4A8 +/* 00E064 8000D464 00000000 */ nop +/* 00E068 8000D468 0000A025 */ move $s4, $zero +.L8000D46C: +/* 00E06C 8000D46C 02550019 */ multu $s2, $s5 +/* 00E070 8000D470 0000C012 */ mflo $t8 +/* 00E074 8000D474 02F86821 */ addu $t5, $s7, $t8 +/* 00E078 8000D478 81B9005A */ lb $t9, 0x5a($t5) +/* 00E07C 8000D47C 00000000 */ nop +/* 00E080 8000D480 16190003 */ bne $s0, $t9, .L8000D490 +/* 00E084 8000D484 00000000 */ nop +/* 00E088 8000D488 0240A025 */ move $s4, $s2 +/* 00E08C 8000D48C 00609025 */ move $s2, $v1 +.L8000D490: +/* 00E090 8000D490 26520001 */ addiu $s2, $s2, 1 +/* 00E094 8000D494 0243082A */ slt $at, $s2, $v1 +/* 00E098 8000D498 1420FFF4 */ bnez $at, .L8000D46C +/* 00E09C 8000D49C 00000000 */ nop +/* 00E0A0 8000D4A0 10000001 */ b .L8000D4A8 +/* 00E0A4 8000D4A4 00009025 */ move $s2, $zero +.L8000D4A8: +/* 00E0A8 8000D4A8 8FAE0144 */ lw $t6, 0x144($sp) +/* 00E0AC 8000D4AC 240F0004 */ li $t7, 4 +/* 00E0B0 8000D4B0 028E082A */ slt $at, $s4, $t6 +/* 00E0B4 8000D4B4 10200003 */ beqz $at, .L8000D4C4 +/* 00E0B8 8000D4B8 00103080 */ sll $a2, $s0, 2 +/* 00E0BC 8000D4BC 10000002 */ b .L8000D4C8 +/* 00E0C0 8000D4C0 A6D4000E */ sh $s4, 0xe($s6) +.L8000D4C4: +/* 00E0C4 8000D4C4 A6CF000E */ sh $t7, 0xe($s6) +.L8000D4C8: +/* 00E0C8 8000D4C8 14440005 */ bne $v0, $a0, .L8000D4E0 +/* 00E0CC 8000D4CC 27AD00F4 */ addiu $t5, $sp, 0xf4 +/* 00E0D0 8000D4D0 86D8000E */ lh $t8, 0xe($s6) +/* 00E0D4 8000D4D4 24010004 */ li $at, 4 +/* 00E0D8 8000D4D8 1301012E */ beq $t8, $at, .L8000D994 +/* 00E0DC 8000D4DC 00000000 */ nop +.L8000D4E0: +/* 00E0E0 8000D4E0 3C028012 */ lui $v0, %hi(D_8011AD3C) # $v0, 0x8012 +/* 00E0E4 8000D4E4 00CD9821 */ addu $s3, $a2, $t5 +/* 00E0E8 8000D4E8 27B900D4 */ addiu $t9, $sp, 0xd4 +/* 00E0EC 8000D4EC 8042AD3C */ lb $v0, %lo(D_8011AD3C)($v0) +/* 00E0F0 8000D4F0 00D97021 */ addu $t6, $a2, $t9 +/* 00E0F4 8000D4F4 27AD0094 */ addiu $t5, $sp, 0x94 +/* 00E0F8 8000D4F8 27AF00B4 */ addiu $t7, $sp, 0xb4 +/* 00E0FC 8000D4FC 00CFC021 */ addu $t8, $a2, $t7 +/* 00E100 8000D500 00CDC821 */ addu $t9, $a2, $t5 +/* 00E104 8000D504 24010001 */ li $at, 1 +/* 00E108 8000D508 AFB90044 */ sw $t9, 0x44($sp) +/* 00E10C 8000D50C AFB80048 */ sw $t8, 0x48($sp) +/* 00E110 8000D510 AFAE004C */ sw $t6, 0x4c($sp) +/* 00E114 8000D514 14410012 */ bne $v0, $at, .L8000D560 +/* 00E118 8000D518 24110001 */ li $s1, 1 +/* 00E11C 8000D51C 16000009 */ bnez $s0, .L8000D544 +/* 00E120 8000D520 3C188012 */ lui $t8, %hi(D_8011AD25) # $t8, 0x8012 +/* 00E124 8000D524 3C0E8012 */ lui $t6, %hi(D_8011AD25) # $t6, 0x8012 +/* 00E128 8000D528 81CEAD25 */ lb $t6, %lo(D_8011AD25)($t6) +/* 00E12C 8000D52C 3C1E800E */ lui $fp, 0x800e +/* 00E130 8000D530 000E7840 */ sll $t7, $t6, 1 +/* 00E134 8000D534 03CFF021 */ addu $fp, $fp, $t7 +/* 00E138 8000D538 83DEC820 */ lb $fp, -0x37e0($fp) +/* 00E13C 8000D53C 10000028 */ b .L8000D5E0 +/* 00E140 8000D540 00000000 */ nop +.L8000D544: +/* 00E144 8000D544 8318AD25 */ lb $t8, %lo(D_8011AD25)($t8) +/* 00E148 8000D548 3C1E800E */ lui $fp, 0x800e +/* 00E14C 8000D54C 00186840 */ sll $t5, $t8, 1 +/* 00E150 8000D550 03CDF021 */ addu $fp, $fp, $t5 +/* 00E154 8000D554 83DEC821 */ lb $fp, -0x37df($fp) +/* 00E158 8000D558 10000021 */ b .L8000D5E0 +/* 00E15C 8000D55C 00000000 */ nop +.L8000D560: +/* 00E160 8000D560 24010002 */ li $at, 2 +/* 00E164 8000D564 14410006 */ bne $v0, $at, .L8000D580 +/* 00E168 8000D568 00000000 */ nop +/* 00E16C 8000D56C 8FB90078 */ lw $t9, 0x78($sp) +/* 00E170 8000D570 00000000 */ nop +/* 00E174 8000D574 833E004D */ lb $fp, 0x4d($t9) +/* 00E178 8000D578 10000019 */ b .L8000D5E0 +/* 00E17C 8000D57C 00000000 */ nop +.L8000D580: +/* 00E180 8000D580 86CE000E */ lh $t6, 0xe($s6) +/* 00E184 8000D584 24010004 */ li $at, 4 +/* 00E188 8000D588 11C10006 */ beq $t6, $at, .L8000D5A4 +/* 00E18C 8000D58C 00002025 */ move $a0, $zero +/* 00E190 8000D590 0C01B067 */ jal func_8006C19C +/* 00E194 8000D594 AFA60054 */ sw $a2, 0x54($sp) +/* 00E198 8000D598 8FA60054 */ lw $a2, 0x54($sp) +/* 00E19C 8000D59C 10400006 */ beqz $v0, .L8000D5B8 +/* 00E1A0 8000D5A0 00002025 */ move $a0, $zero +.L8000D5A4: +/* 00E1A4 8000D5A4 0C027094 */ jal func_8009C250 +/* 00E1A8 8000D5A8 AFA60054 */ sw $a2, 0x54($sp) +/* 00E1AC 8000D5AC 8FA60054 */ lw $a2, 0x54($sp) +/* 00E1B0 8000D5B0 1000000B */ b .L8000D5E0 +/* 00E1B4 8000D5B4 0040F025 */ move $fp, $v0 +.L8000D5B8: +/* 00E1B8 8000D5B8 8FAF0144 */ lw $t7, 0x144($sp) +/* 00E1BC 8000D5BC 00000000 */ nop +/* 00E1C0 8000D5C0 29E10002 */ slti $at, $t7, 2 +/* 00E1C4 8000D5C4 14200006 */ bnez $at, .L8000D5E0 +/* 00E1C8 8000D5C8 00000000 */ nop +/* 00E1CC 8000D5CC 86C4000E */ lh $a0, 0xe($s6) +/* 00E1D0 8000D5D0 0C027094 */ jal func_8009C250 +/* 00E1D4 8000D5D4 AFA60054 */ sw $a2, 0x54($sp) +/* 00E1D8 8000D5D8 8FA60054 */ lw $a2, 0x54($sp) +/* 00E1DC 8000D5DC 0040F025 */ move $fp, $v0 +.L8000D5E0: +/* 00E1E0 8000D5E0 3C188012 */ lui $t8, %hi(D_8011AD3C) # $t8, 0x8012 +/* 00E1E4 8000D5E4 8318AD3C */ lb $t8, %lo(D_8011AD3C)($t8) +/* 00E1E8 8000D5E8 86C3000E */ lh $v1, 0xe($s6) +/* 00E1EC 8000D5EC 24010002 */ li $at, 2 +/* 00E1F0 8000D5F0 17010010 */ bne $t8, $at, .L8000D634 +/* 00E1F4 8000D5F4 3C0D800E */ lui $t5, 0x800e +/* 00E1F8 8000D5F8 01B06821 */ addu $t5, $t5, $s0 +/* 00E1FC 8000D5FC 81ADC840 */ lb $t5, -0x37c0($t5) +/* 00E200 8000D600 001E7080 */ sll $t6, $fp, 2 +/* 00E204 8000D604 01DE7021 */ addu $t6, $t6, $fp +/* 00E208 8000D608 000DC840 */ sll $t9, $t5, 1 +/* 00E20C 8000D60C 000E7880 */ sll $t7, $t6, 2 +/* 00E210 8000D610 032FC021 */ addu $t8, $t9, $t7 +/* 00E214 8000D614 00146880 */ sll $t5, $s4, 2 +/* 00E218 8000D618 3C02800E */ lui $v0, 0x800e +/* 00E21C 8000D61C 00581021 */ addu $v0, $v0, $t8 +/* 00E220 8000D620 01B46823 */ subu $t5, $t5, $s4 +/* 00E224 8000D624 000D68C0 */ sll $t5, $t5, 3 +/* 00E228 8000D628 8442C7A8 */ lh $v0, -0x3858($v0) +/* 00E22C 8000D62C 1000001A */ b .L8000D698 +/* 00E230 8000D630 02ED3821 */ addu $a3, $s7, $t5 +.L8000D634: +/* 00E234 8000D634 2BC10005 */ slti $at, $fp, 5 +/* 00E238 8000D638 10200010 */ beqz $at, .L8000D67C +/* 00E23C 8000D63C 001EC840 */ sll $t9, $fp, 1 +/* 00E240 8000D640 02950019 */ multu $s4, $s5 +/* 00E244 8000D644 001EC080 */ sll $t8, $fp, 2 +/* 00E248 8000D648 031EC021 */ addu $t8, $t8, $fp +/* 00E24C 8000D64C 00186880 */ sll $t5, $t8, 2 +/* 00E250 8000D650 3C02800E */ lui $v0, 0x800e +/* 00E254 8000D654 00007012 */ mflo $t6 +/* 00E258 8000D658 02EE3821 */ addu $a3, $s7, $t6 +/* 00E25C 8000D65C 80F90059 */ lb $t9, 0x59($a3) +/* 00E260 8000D660 00000000 */ nop +/* 00E264 8000D664 00197840 */ sll $t7, $t9, 1 +/* 00E268 8000D668 01ED7021 */ addu $t6, $t7, $t5 +/* 00E26C 8000D66C 004E1021 */ addu $v0, $v0, $t6 +/* 00E270 8000D670 8442C7A8 */ lh $v0, -0x3858($v0) +/* 00E274 8000D674 10000009 */ b .L8000D69C +/* 00E278 8000D678 304F0100 */ andi $t7, $v0, 0x100 +.L8000D67C: +/* 00E27C 8000D67C 3C02800E */ lui $v0, 0x800e +/* 00E280 8000D680 0014C080 */ sll $t8, $s4, 2 +/* 00E284 8000D684 0314C023 */ subu $t8, $t8, $s4 +/* 00E288 8000D688 00591021 */ addu $v0, $v0, $t9 +/* 00E28C 8000D68C 0018C0C0 */ sll $t8, $t8, 3 +/* 00E290 8000D690 8442C802 */ lh $v0, -0x37fe($v0) +/* 00E294 8000D694 02F83821 */ addu $a3, $s7, $t8 +.L8000D698: +/* 00E298 8000D698 304F0100 */ andi $t7, $v0, 0x100 +.L8000D69C: +/* 00E29C 8000D69C 000F6843 */ sra $t5, $t7, 1 +/* 00E2A0 8000D6A0 35AE0010 */ ori $t6, $t5, 0x10 +/* 00E2A4 8000D6A4 A2C20000 */ sb $v0, ($s6) +/* 00E2A8 8000D6A8 A2CE0001 */ sb $t6, 1($s6) +/* 00E2AC 8000D6AC 8E790000 */ lw $t9, ($s3) +/* 00E2B0 8000D6B0 24010004 */ li $at, 4 +/* 00E2B4 8000D6B4 A6D90002 */ sh $t9, 2($s6) +/* 00E2B8 8000D6B8 8FB8004C */ lw $t8, 0x4c($sp) +/* 00E2BC 8000D6BC 24040001 */ li $a0, 1 +/* 00E2C0 8000D6C0 8F0F0000 */ lw $t7, ($t8) +/* 00E2C4 8000D6C4 00000000 */ nop +/* 00E2C8 8000D6C8 A6CF0004 */ sh $t7, 4($s6) +/* 00E2CC 8000D6CC 8FAD0048 */ lw $t5, 0x48($sp) +/* 00E2D0 8000D6D0 00000000 */ nop +/* 00E2D4 8000D6D4 8DAE0000 */ lw $t6, ($t5) +/* 00E2D8 8000D6D8 00000000 */ nop +/* 00E2DC 8000D6DC A6CE0006 */ sh $t6, 6($s6) +/* 00E2E0 8000D6E0 8FB90044 */ lw $t9, 0x44($sp) +/* 00E2E4 8000D6E4 00000000 */ nop +/* 00E2E8 8000D6E8 8F380000 */ lw $t8, ($t9) +/* 00E2EC 8000D6EC 14610008 */ bne $v1, $at, .L8000D710 +/* 00E2F0 8000D6F0 A6D8000C */ sh $t8, 0xc($s6) +/* 00E2F4 8000D6F4 AFA60054 */ sw $a2, 0x54($sp) +/* 00E2F8 8000D6F8 0C01867D */ jal func_800619F4 +/* 00E2FC 8000D6FC AFA7005C */ sw $a3, 0x5c($sp) +/* 00E300 8000D700 8FA60054 */ lw $a2, 0x54($sp) +/* 00E304 8000D704 8FA7005C */ lw $a3, 0x5c($sp) +/* 00E308 8000D708 86C3000E */ lh $v1, 0xe($s6) +/* 00E30C 8000D70C 00000000 */ nop +.L8000D710: +/* 00E310 8000D710 24010004 */ li $at, 4 +/* 00E314 8000D714 14610007 */ bne $v1, $at, .L8000D734 +/* 00E318 8000D718 00002025 */ move $a0, $zero +/* 00E31C 8000D71C 8FAF0144 */ lw $t7, 0x144($sp) +/* 00E320 8000D720 24110005 */ li $s1, 5 +/* 00E324 8000D724 29E10002 */ slti $at, $t7, 2 +/* 00E328 8000D728 14200002 */ bnez $at, .L8000D734 +/* 00E32C 8000D72C 362D0008 */ ori $t5, $s1, 8 +/* 00E330 8000D730 01A08825 */ move $s1, $t5 +.L8000D734: +/* 00E334 8000D734 24010004 */ li $at, 4 +/* 00E338 8000D738 10610007 */ beq $v1, $at, .L8000D758 +/* 00E33C 8000D73C 2BC10005 */ slti $at, $fp, 5 +/* 00E340 8000D740 8FAE0144 */ lw $t6, 0x144($sp) +/* 00E344 8000D744 24010001 */ li $at, 1 +/* 00E348 8000D748 15C10002 */ bne $t6, $at, .L8000D754 +/* 00E34C 8000D74C 36390010 */ ori $t9, $s1, 0x10 +/* 00E350 8000D750 03208825 */ move $s1, $t9 +.L8000D754: +/* 00E354 8000D754 2BC10005 */ slti $at, $fp, 5 +.L8000D758: +/* 00E358 8000D758 14200008 */ bnez $at, .L8000D77C +/* 00E35C 8000D75C 00000000 */ nop +/* 00E360 8000D760 24110001 */ li $s1, 1 +/* 00E364 8000D764 AFA60054 */ sw $a2, 0x54($sp) +/* 00E368 8000D768 0C01867D */ jal func_800619F4 +/* 00E36C 8000D76C AFA7005C */ sw $a3, 0x5c($sp) +/* 00E370 8000D770 8FA60054 */ lw $a2, 0x54($sp) +/* 00E374 8000D774 8FA7005C */ lw $a3, 0x5c($sp) +/* 00E378 8000D778 00000000 */ nop +.L8000D77C: +/* 00E37C 8000D77C 02C02025 */ move $a0, $s6 +/* 00E380 8000D780 02202825 */ move $a1, $s1 +/* 00E384 8000D784 AFA60054 */ sw $a2, 0x54($sp) +/* 00E388 8000D788 0C003A95 */ jal func_8000EA54 +/* 00E38C 8000D78C AFA7005C */ sw $a3, 0x5c($sp) +/* 00E390 8000D790 8FB80044 */ lw $t8, 0x44($sp) +/* 00E394 8000D794 8FA60054 */ lw $a2, 0x54($sp) +/* 00E398 8000D798 8F0F0000 */ lw $t7, ($t8) +/* 00E39C 8000D79C 8FA7005C */ lw $a3, 0x5c($sp) +/* 00E3A0 8000D7A0 3C0D8012 */ lui $t5, %hi(D_8011AEE4) # $t5, 0x8012 +/* 00E3A4 8000D7A4 A44F0000 */ sh $t7, ($v0) +/* 00E3A8 8000D7A8 8DADAEE4 */ lw $t5, %lo(D_8011AEE4)($t5) +/* 00E3AC 8000D7AC 3C198012 */ lui $t9, %hi(D_8011AEE8) # $t9, 0x8012 +/* 00E3B0 8000D7B0 01A67021 */ addu $t6, $t5, $a2 +/* 00E3B4 8000D7B4 ADC20000 */ sw $v0, ($t6) +/* 00E3B8 8000D7B8 8F39AEE8 */ lw $t9, %lo(D_8011AEE8)($t9) +/* 00E3BC 8000D7BC 3C0F8012 */ lui $t7, %hi(D_8011AEEC) # $t7, 0x8012 +/* 00E3C0 8000D7C0 0326C021 */ addu $t8, $t9, $a2 +/* 00E3C4 8000D7C4 AF020000 */ sw $v0, ($t8) +/* 00E3C8 8000D7C8 8DEFAEEC */ lw $t7, %lo(D_8011AEEC)($t7) +/* 00E3CC 8000D7CC 00146880 */ sll $t5, $s4, 2 +/* 00E3D0 8000D7D0 01ED7021 */ addu $t6, $t7, $t5 +/* 00E3D4 8000D7D4 ADC20000 */ sw $v0, ($t6) +/* 00E3D8 8000D7D8 8C530064 */ lw $s3, 0x64($v0) +/* 00E3DC 8000D7DC AC40003C */ sw $zero, 0x3c($v0) +/* 00E3E0 8000D7E0 A27E01D6 */ sb $fp, 0x1d6($s3) +/* 00E3E4 8000D7E4 A27E01D7 */ sb $fp, 0x1d7($s3) +/* 00E3E8 8000D7E8 83B90127 */ lb $t9, 0x127($sp) +/* 00E3EC 8000D7EC 2401FFFF */ li $at, -1 +/* 00E3F0 8000D7F0 13210005 */ beq $t9, $at, .L8000D808 +/* 00E3F4 8000D7F4 00408825 */ move $s1, $v0 +/* 00E3F8 8000D7F8 133E0003 */ beq $t9, $fp, .L8000D808 +/* 00E3FC 8000D7FC 24180001 */ li $t8, 1 +/* 00E400 8000D800 3C018012 */ lui $at, %hi(D_8011AD20) # $at, 0x8012 +/* 00E404 8000D804 A038AD20 */ sb $t8, %lo(D_8011AD20)($at) +.L8000D808: +/* 00E408 8000D808 A3BE0127 */ sb $fp, 0x127($sp) +/* 00E40C 8000D80C 826201D6 */ lb $v0, 0x1d6($s3) +/* 00E410 8000D810 24010002 */ li $at, 2 +/* 00E414 8000D814 10410005 */ beq $v0, $at, .L8000D82C +/* 00E418 8000D818 240F0001 */ li $t7, 1 +/* 00E41C 8000D81C 24010007 */ li $at, 7 +/* 00E420 8000D820 10410002 */ beq $v0, $at, .L8000D82C +/* 00E424 8000D824 24010008 */ li $at, 8 +/* 00E428 8000D828 14410002 */ bne $v0, $at, .L8000D834 +.L8000D82C: +/* 00E42C 8000D82C 3C018012 */ lui $at, %hi(D_8011AE02) # $at, 0x8012 +/* 00E430 8000D830 A02FAE02 */ sb $t7, %lo(D_8011AE02)($at) +.L8000D834: +/* 00E434 8000D834 A27E01CB */ sb $fp, 0x1cb($s3) +/* 00E438 8000D838 826201CB */ lb $v0, 0x1cb($s3) +/* 00E43C 8000D83C 3C19800E */ lui $t9, 0x800e +/* 00E440 8000D840 04400003 */ bltz $v0, .L8000D850 +/* 00E444 8000D844 28410003 */ slti $at, $v0, 3 +/* 00E448 8000D848 14200002 */ bnez $at, .L8000D854 +/* 00E44C 8000D84C 00000000 */ nop +.L8000D850: +/* 00E450 8000D850 A26001CB */ sb $zero, 0x1cb($s3) +.L8000D854: +/* 00E454 8000D854 A2740002 */ sb $s4, 2($s3) +/* 00E458 8000D858 80ED0059 */ lb $t5, 0x59($a3) +/* 00E45C 8000D85C 3C0E8012 */ lui $t6, %hi(D_8011AD3C) # $t6, 0x8012 +/* 00E460 8000D860 A26D0003 */ sb $t5, 3($s3) +/* 00E464 8000D864 81CEAD3C */ lb $t6, %lo(D_8011AD3C)($t6) +/* 00E468 8000D868 24010002 */ li $at, 2 +/* 00E46C 8000D86C 15C10004 */ bne $t6, $at, .L8000D880 +/* 00E470 8000D870 0330C821 */ addu $t9, $t9, $s0 +/* 00E474 8000D874 8339C840 */ lb $t9, -0x37c0($t9) +/* 00E478 8000D878 10000004 */ b .L8000D88C +/* 00E47C 8000D87C A2790003 */ sb $t9, 3($s3) +.L8000D880: +/* 00E480 8000D880 80F80059 */ lb $t8, 0x59($a3) +/* 00E484 8000D884 00000000 */ nop +/* 00E488 8000D888 A2780003 */ sb $t8, 3($s3) +.L8000D88C: +/* 00E48C 8000D88C 8FAF0068 */ lw $t7, 0x68($sp) +/* 00E490 8000D890 24010040 */ li $at, 64 +/* 00E494 8000D894 15E10003 */ bne $t7, $at, .L8000D8A4 +/* 00E498 8000D898 240D0008 */ li $t5, 8 +/* 00E49C 8000D89C 10000002 */ b .L8000D8A8 +/* 00E4A0 8000D8A0 A26D0185 */ sb $t5, 0x185($s3) +.L8000D8A4: +/* 00E4A4 8000D8A4 A2600185 */ sb $zero, 0x185($s3) +.L8000D8A8: +/* 00E4A8 8000D8A8 0C0270C3 */ jal func_8009C30C +/* 00E4AC 8000D8AC 00000000 */ nop +/* 00E4B0 8000D8B0 304E0080 */ andi $t6, $v0, 0x80 +/* 00E4B4 8000D8B4 11C0000B */ beqz $t6, .L8000D8E4 +/* 00E4B8 8000D8B8 8FAD0138 */ lw $t5, 0x138($sp) +/* 00E4BC 8000D8BC 8FB90064 */ lw $t9, 0x64($sp) +/* 00E4C0 8000D8C0 00000000 */ nop +/* 00E4C4 8000D8C4 17200007 */ bnez $t9, .L8000D8E4 +/* 00E4C8 8000D8C8 8FAD0138 */ lw $t5, 0x138($sp) +/* 00E4CC 8000D8CC 86780000 */ lh $t8, ($s3) +/* 00E4D0 8000D8D0 2401FFFF */ li $at, -1 +/* 00E4D4 8000D8D4 13010002 */ beq $t8, $at, .L8000D8E0 +/* 00E4D8 8000D8D8 240F000A */ li $t7, 10 +/* 00E4DC 8000D8DC A26F0185 */ sb $t7, 0x185($s3) +.L8000D8E0: +/* 00E4E0 8000D8E0 8FAD0138 */ lw $t5, 0x138($sp) +.L8000D8E4: +/* 00E4E4 8000D8E4 24010001 */ li $at, 1 +/* 00E4E8 8000D8E8 15A10004 */ bne $t5, $at, .L8000D8FC +/* 00E4EC 8000D8EC 3C0E8012 */ lui $t6, %hi(D_8011AD3C) # $t6, 0x8012 +/* 00E4F0 8000D8F0 81CEAD3C */ lb $t6, %lo(D_8011AD3C)($t6) +/* 00E4F4 8000D8F4 24010002 */ li $at, 2 +/* 00E4F8 8000D8F8 15C10009 */ bne $t6, $at, .L8000D920 +.L8000D8FC: +/* 00E4FC 8000D8FC 2BC10005 */ slti $at, $fp, 5 +/* 00E500 8000D900 10200007 */ beqz $at, .L8000D920 +/* 00E504 8000D904 00000000 */ nop +/* 00E508 8000D908 82640003 */ lb $a0, 3($s3) +/* 00E50C 8000D90C 826501D6 */ lb $a1, 0x1d6($s3) +/* 00E510 8000D910 0C0012D0 */ jal func_80004B40 +/* 00E514 8000D914 00000000 */ nop +/* 00E518 8000D918 10000002 */ b .L8000D924 +/* 00E51C 8000D91C AE620118 */ sw $v0, 0x118($s3) +.L8000D920: +/* 00E520 8000D920 AE600118 */ sw $zero, 0x118($s3) +.L8000D924: +/* 00E524 8000D924 82790003 */ lb $t9, 3($s3) +/* 00E528 8000D928 8FB80128 */ lw $t8, 0x128($sp) +/* 00E52C 8000D92C 00000000 */ nop +/* 00E530 8000D930 03387821 */ addu $t7, $t9, $t8 +/* 00E534 8000D934 81ED0000 */ lb $t5, ($t7) +/* 00E538 8000D938 8E39004C */ lw $t9, 0x4c($s1) +/* 00E53C 8000D93C 25AE0001 */ addiu $t6, $t5, 1 +/* 00E540 8000D940 A32E0012 */ sb $t6, 0x12($t9) +/* 00E544 8000D944 827801D6 */ lb $t8, 0x1d6($s3) +/* 00E548 8000D948 00000000 */ nop +/* 00E54C 8000D94C 270FFFFB */ addiu $t7, $t8, -5 +/* 00E550 8000D950 2DE10009 */ sltiu $at, $t7, 9 +/* 00E554 8000D954 1020000D */ beqz $at, .L8000D98C +/* 00E558 8000D958 000F7880 */ sll $t7, $t7, 2 +/* 00E55C 8000D95C 3C01800E */ lui $at, 0x800e +/* 00E560 8000D960 002F0821 */ addu $at, $at, $t7 +/* 00E564 8000D964 8C2F5154 */ lw $t7, 0x5154($at) +/* 00E568 8000D968 00000000 */ nop +/* 00E56C 8000D96C 01E00008 */ jr $t7 +/* 00E570 8000D970 00000000 */ nop +/* 00E574 8000D974 02202025 */ move $a0, $s1 +/* 00E578 8000D978 0C0170BC */ jal func_8005C2F0 +/* 00E57C 8000D97C 02602825 */ move $a1, $s3 +/* 00E580 8000D980 8FA40068 */ lw $a0, 0x68($sp) +/* 00E584 8000D984 10000003 */ b .L8000D994 +/* 00E588 8000D988 24020005 */ li $v0, 5 +.L8000D98C: +/* 00E58C 8000D98C 8FA40068 */ lw $a0, 0x68($sp) +/* 00E590 8000D990 24020005 */ li $v0, 5 +.L8000D994: +/* 00E594 8000D994 3C038012 */ lui $v1, %hi(D_8011AEF0) # $v1, 0x8012 +/* 00E598 8000D998 8C63AEF0 */ lw $v1, %lo(D_8011AEF0)($v1) +/* 00E59C 8000D99C 26100001 */ addiu $s0, $s0, 1 +/* 00E5A0 8000D9A0 0203082A */ slt $at, $s0, $v1 +/* 00E5A4 8000D9A4 1420FEA6 */ bnez $at, .L8000D440 +/* 00E5A8 8000D9A8 00000000 */ nop +.L8000D9AC: +/* 00E5AC 8000D9AC 8FA40068 */ lw $a0, 0x68($sp) +/* 00E5B0 8000D9B0 24010008 */ li $at, 8 +/* 00E5B4 8000D9B4 10810003 */ beq $a0, $at, .L8000D9C4 +/* 00E5B8 8000D9B8 0000A025 */ move $s4, $zero +/* 00E5BC 8000D9BC 3C018012 */ lui $at, %hi(D_8011AD3C) # $at, 0x8012 +/* 00E5C0 8000D9C0 A020AD3C */ sb $zero, %lo(D_8011AD3C)($at) +.L8000D9C4: +/* 00E5C4 8000D9C4 3C0D8012 */ lui $t5, %hi(D_8011AD3C) # $t5, 0x8012 +/* 00E5C8 8000D9C8 81ADAD3C */ lb $t5, %lo(D_8011AD3C)($t5) +/* 00E5CC 8000D9CC 00000000 */ nop +/* 00E5D0 8000D9D0 11A00002 */ beqz $t5, .L8000D9DC +/* 00E5D4 8000D9D4 3C018012 */ lui $at, %hi(D_8011AD20) # $at, 0x8012 +/* 00E5D8 8000D9D8 A020AD20 */ sb $zero, %lo(D_8011AD20)($at) +.L8000D9DC: +/* 00E5DC 8000D9DC 0C01B683 */ jal func_8006DA0C +/* 00E5E0 8000D9E0 00000000 */ nop +/* 00E5E4 8000D9E4 1440002D */ bnez $v0, .L8000DA9C +/* 00E5E8 8000D9E8 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 +/* 00E5EC 8000D9EC 8C42AE5C */ lw $v0, %lo(D_8011AE5C)($v0) +/* 00E5F0 8000D9F0 0000A825 */ move $s5, $zero +/* 00E5F4 8000D9F4 18400029 */ blez $v0, .L8000DA9C +/* 00E5F8 8000D9F8 3C138012 */ lui $s3, %hi(D_8011AE58) # $s3, 0x8012 +/* 00E5FC 8000D9FC 2673AE58 */ addiu $s3, %lo(D_8011AE58) # addiu $s3, $s3, -0x51a8 +.L8000DA00: +/* 00E600 8000DA00 8E6E0000 */ lw $t6, ($s3) +/* 00E604 8000DA04 3C0D8012 */ lui $t5, %hi(D_8011AEF5) # $t5, 0x8012 +/* 00E608 8000DA08 01D5C821 */ addu $t9, $t6, $s5 +/* 00E60C 8000DA0C 8F310000 */ lw $s1, ($t9) +/* 00E610 8000DA10 00000000 */ nop +/* 00E614 8000DA14 8E380040 */ lw $t8, 0x40($s1) +/* 00E618 8000DA18 00000000 */ nop +/* 00E61C 8000DA1C 97100030 */ lhu $s0, 0x30($t8) +/* 00E620 8000DA20 00000000 */ nop +/* 00E624 8000DA24 320F0020 */ andi $t7, $s0, 0x20 +/* 00E628 8000DA28 11E0000B */ beqz $t7, .L8000DA58 +/* 00E62C 8000DA2C 320E0040 */ andi $t6, $s0, 0x40 +/* 00E630 8000DA30 91ADAEF5 */ lbu $t5, %lo(D_8011AEF5)($t5) +/* 00E634 8000DA34 00000000 */ nop +/* 00E638 8000DA38 11A00007 */ beqz $t5, .L8000DA58 +/* 00E63C 8000DA3C 00000000 */ nop +/* 00E640 8000DA40 0C003FEE */ jal func_8000FFB8 +/* 00E644 8000DA44 02202025 */ move $a0, $s1 +/* 00E648 8000DA48 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 +/* 00E64C 8000DA4C 8C42AE5C */ lw $v0, %lo(D_8011AE5C)($v0) +/* 00E650 8000DA50 1000000E */ b .L8000DA8C +/* 00E654 8000DA54 26520001 */ addiu $s2, $s2, 1 +.L8000DA58: +/* 00E658 8000DA58 11C0000B */ beqz $t6, .L8000DA88 +/* 00E65C 8000DA5C 00000000 */ nop +/* 00E660 8000DA60 8FB90144 */ lw $t9, 0x144($sp) +/* 00E664 8000DA64 00000000 */ nop +/* 00E668 8000DA68 2B210002 */ slti $at, $t9, 2 +/* 00E66C 8000DA6C 14200006 */ bnez $at, .L8000DA88 +/* 00E670 8000DA70 00000000 */ nop +/* 00E674 8000DA74 0C003FEE */ jal func_8000FFB8 +/* 00E678 8000DA78 02202025 */ move $a0, $s1 +/* 00E67C 8000DA7C 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 +/* 00E680 8000DA80 8C42AE5C */ lw $v0, %lo(D_8011AE5C)($v0) +/* 00E684 8000DA84 00000000 */ nop +.L8000DA88: +/* 00E688 8000DA88 26520001 */ addiu $s2, $s2, 1 +.L8000DA8C: +/* 00E68C 8000DA8C 0242082A */ slt $at, $s2, $v0 +/* 00E690 8000DA90 1420FFDB */ bnez $at, .L8000DA00 +/* 00E694 8000DA94 26B50004 */ addiu $s5, $s5, 4 +/* 00E698 8000DA98 00009025 */ move $s2, $zero +.L8000DA9C: +/* 00E69C 8000DA9C 3C15800E */ lui $s5, %hi(D_800DC718) # $s5, 0x800e +/* 00E6A0 8000DAA0 26B5C718 */ addiu $s5, %lo(D_800DC718) # addiu $s5, $s5, -0x38e8 +/* 00E6A4 8000DAA4 0C0166D3 */ jal func_80059B4C +/* 00E6A8 8000DAA8 AEA00000 */ sw $zero, ($s5) +/* 00E6AC 8000DAAC 3C118012 */ lui $s1, %hi(D_8011AD38) # $s1, 0x8012 +/* 00E6B0 8000DAB0 2631AD38 */ addiu $s1, %lo(D_8011AD38) # addiu $s1, $s1, -0x52c8 +/* 00E6B4 8000DAB4 2418FFFF */ li $t8, -1 +/* 00E6B8 8000DAB8 AE380000 */ sw $t8, ($s1) +/* 00E6BC 8000DABC 3C0F8012 */ lui $t7, %hi(D_8011AEF5) # $t7, 0x8012 +/* 00E6C0 8000DAC0 91EFAEF5 */ lbu $t7, %lo(D_8011AEF5)($t7) +/* 00E6C4 8000DAC4 00000000 */ nop +/* 00E6C8 8000DAC8 11E00071 */ beqz $t7, .L8000DC90 +/* 00E6CC 8000DACC 00000000 */ nop +/* 00E6D0 8000DAD0 8FAD0144 */ lw $t5, 0x144($sp) +/* 00E6D4 8000DAD4 24010001 */ li $at, 1 +/* 00E6D8 8000DAD8 15A1006D */ bne $t5, $at, .L8000DC90 +/* 00E6DC 8000DADC 00000000 */ nop +/* 00E6E0 8000DAE0 0C016651 */ jal func_80059944 +/* 00E6E4 8000DAE4 00000000 */ nop +/* 00E6E8 8000DAE8 0C006D9A */ jal func_8001B668 +/* 00E6EC 8000DAEC 00002025 */ move $a0, $zero +/* 00E6F0 8000DAF0 3C10800E */ lui $s0, %hi(D_800DC728) # $s0, 0x800e +/* 00E6F4 8000DAF4 AE220000 */ sw $v0, ($s1) +/* 00E6F8 8000DAF8 3C01800E */ lui $at, %hi(D_800DC730) # $at, 0x800e +/* 00E6FC 8000DAFC 2610C728 */ addiu $s0, %lo(D_800DC728) # addiu $s0, $s0, -0x38d8 +/* 00E700 8000DB00 A020C730 */ sb $zero, %lo(D_800DC730)($at) +/* 00E704 8000DB04 860E0000 */ lh $t6, ($s0) +/* 00E708 8000DB08 00000000 */ nop +/* 00E70C 8000DB0C 29C10005 */ slti $at, $t6, 5 +/* 00E710 8000DB10 14200002 */ bnez $at, .L8000DB1C +/* 00E714 8000DB14 00000000 */ nop +/* 00E718 8000DB18 A6000000 */ sh $zero, ($s0) +.L8000DB1C: +/* 00E71C 8000DB1C 0C006CA2 */ jal func_8001B288 +/* 00E720 8000DB20 00000000 */ nop +/* 00E724 8000DB24 1040002C */ beqz $v0, .L8000DBD8 +/* 00E728 8000DB28 3C19800E */ lui $t9, %hi(D_800DC72C) # $t9, 0x800e +/* 00E72C 8000DB2C 860F0000 */ lh $t7, ($s0) +/* 00E730 8000DB30 8739C72C */ lh $t9, %lo(D_800DC72C)($t9) +/* 00E734 8000DB34 000F6880 */ sll $t5, $t7, 2 +/* 00E738 8000DB38 01AF6821 */ addu $t5, $t5, $t7 +/* 00E73C 8000DB3C 000D7080 */ sll $t6, $t5, 2 +/* 00E740 8000DB40 0019C040 */ sll $t8, $t9, 1 +/* 00E744 8000DB44 030EC821 */ addu $t9, $t8, $t6 +/* 00E748 8000DB48 3C02800E */ lui $v0, 0x800e +/* 00E74C 8000DB4C 00591021 */ addu $v0, $v0, $t9 +/* 00E750 8000DB50 8442C7A8 */ lh $v0, -0x3858($v0) +/* 00E754 8000DB54 02C02025 */ move $a0, $s6 +/* 00E758 8000DB58 304F0100 */ andi $t7, $v0, 0x100 +/* 00E75C 8000DB5C 000F6843 */ sra $t5, $t7, 1 +/* 00E760 8000DB60 35B80010 */ ori $t8, $t5, 0x10 +/* 00E764 8000DB64 A2D80001 */ sb $t8, 1($s6) +/* 00E768 8000DB68 A2C20000 */ sb $v0, ($s6) +/* 00E76C 8000DB6C 8FAE00F4 */ lw $t6, 0xf4($sp) +/* 00E770 8000DB70 24050001 */ li $a1, 1 +/* 00E774 8000DB74 A6CE0002 */ sh $t6, 2($s6) +/* 00E778 8000DB78 8FB900D4 */ lw $t9, 0xd4($sp) +/* 00E77C 8000DB7C 00000000 */ nop +/* 00E780 8000DB80 A6D90004 */ sh $t9, 4($s6) +/* 00E784 8000DB84 8FAF00B4 */ lw $t7, 0xb4($sp) +/* 00E788 8000DB88 00000000 */ nop +/* 00E78C 8000DB8C A6CF0006 */ sh $t7, 6($s6) +/* 00E790 8000DB90 8FAD0094 */ lw $t5, 0x94($sp) +/* 00E794 8000DB94 0C003A95 */ jal func_8000EA54 +/* 00E798 8000DB98 A6CD000C */ sh $t5, 0xc($s6) +/* 00E79C 8000DB9C 2418003A */ li $t8, 58 +/* 00E7A0 8000DBA0 AC40003C */ sw $zero, 0x3c($v0) +/* 00E7A4 8000DBA4 A4580048 */ sh $t8, 0x48($v0) +/* 00E7A8 8000DBA8 3C01800E */ lui $at, %hi(D_800E5178) # $at, 0x800e +/* 00E7AC 8000DBAC C4245178 */ lwc1 $f4, %lo(D_800E5178)($at) +/* 00E7B0 8000DBB0 8C4E0050 */ lw $t6, 0x50($v0) +/* 00E7B4 8000DBB4 3C038012 */ lui $v1, %hi(D_8011AD34) # $v1, 0x8012 +/* 00E7B8 8000DBB8 E5C40000 */ swc1 $f4, ($t6) +/* 00E7BC 8000DBBC 8C59004C */ lw $t9, 0x4c($v0) +/* 00E7C0 8000DBC0 2463AD34 */ addiu $v1, %lo(D_8011AD34) # addiu $v1, $v1, -0x52cc +/* 00E7C4 8000DBC4 A7200014 */ sh $zero, 0x14($t9) +/* 00E7C8 8000DBC8 AC620000 */ sw $v0, ($v1) +/* 00E7CC 8000DBCC 8C530064 */ lw $s3, 0x64($v0) +/* 00E7D0 8000DBD0 240D0060 */ li $t5, 96 +/* 00E7D4 8000DBD4 A26D01F7 */ sb $t5, 0x1f7($s3) +.L8000DBD8: +/* 00E7D8 8000DBD8 0C01AF62 */ jal func_8006BD88 +/* 00E7DC 8000DBDC 00000000 */ nop +/* 00E7E0 8000DBE0 0C006D3F */ jal func_8001B4FC +/* 00E7E4 8000DBE4 00402025 */ move $a0, $v0 +/* 00E7E8 8000DBE8 10400029 */ beqz $v0, .L8000DC90 +/* 00E7EC 8000DBEC 3C188012 */ lui $t8, %hi(D_8011AE84) # $t8, 0x8012 +/* 00E7F0 8000DBF0 8718AE84 */ lh $t8, %lo(D_8011AE84)($t8) +/* 00E7F4 8000DBF4 3C02800E */ lui $v0, 0x800e +/* 00E7F8 8000DBF8 00187080 */ sll $t6, $t8, 2 +/* 00E7FC 8000DBFC 01D87021 */ addu $t6, $t6, $t8 +/* 00E800 8000DC00 000EC880 */ sll $t9, $t6, 2 +/* 00E804 8000DC04 00591021 */ addu $v0, $v0, $t9 +/* 00E808 8000DC08 8442C7B8 */ lh $v0, -0x3848($v0) +/* 00E80C 8000DC0C 02C02025 */ move $a0, $s6 +/* 00E810 8000DC10 304F0100 */ andi $t7, $v0, 0x100 +/* 00E814 8000DC14 000F6843 */ sra $t5, $t7, 1 +/* 00E818 8000DC18 35B80010 */ ori $t8, $t5, 0x10 +/* 00E81C 8000DC1C A2D80001 */ sb $t8, 1($s6) +/* 00E820 8000DC20 A2C20000 */ sb $v0, ($s6) +/* 00E824 8000DC24 8FAE00F4 */ lw $t6, 0xf4($sp) +/* 00E828 8000DC28 24050001 */ li $a1, 1 +/* 00E82C 8000DC2C A6CE0002 */ sh $t6, 2($s6) +/* 00E830 8000DC30 8FB900D4 */ lw $t9, 0xd4($sp) +/* 00E834 8000DC34 00000000 */ nop +/* 00E838 8000DC38 A6D90004 */ sh $t9, 4($s6) +/* 00E83C 8000DC3C 8FAF00B4 */ lw $t7, 0xb4($sp) +/* 00E840 8000DC40 00000000 */ nop +/* 00E844 8000DC44 A6CF0006 */ sh $t7, 6($s6) +/* 00E848 8000DC48 8FAD0094 */ lw $t5, 0x94($sp) +/* 00E84C 8000DC4C 0C003A95 */ jal func_8000EA54 +/* 00E850 8000DC50 A6CD000C */ sh $t5, 0xc($s6) +/* 00E854 8000DC54 2418003A */ li $t8, 58 +/* 00E858 8000DC58 AC40003C */ sw $zero, 0x3c($v0) +/* 00E85C 8000DC5C A4580048 */ sh $t8, 0x48($v0) +/* 00E860 8000DC60 3C01800E */ lui $at, %hi(D_800E517C) # $at, 0x800e +/* 00E864 8000DC64 C426517C */ lwc1 $f6, %lo(D_800E517C)($at) +/* 00E868 8000DC68 8C4E0050 */ lw $t6, 0x50($v0) +/* 00E86C 8000DC6C 240D0060 */ li $t5, 96 +/* 00E870 8000DC70 E5C60000 */ swc1 $f6, ($t6) +/* 00E874 8000DC74 8C59004C */ lw $t9, 0x4c($v0) +/* 00E878 8000DC78 00000000 */ nop +/* 00E87C 8000DC7C A7200014 */ sh $zero, 0x14($t9) +/* 00E880 8000DC80 AEA20000 */ sw $v0, ($s5) +/* 00E884 8000DC84 8C530064 */ lw $s3, 0x64($v0) +/* 00E888 8000DC88 00000000 */ nop +/* 00E88C 8000DC8C A26D01F7 */ sb $t5, 0x1f7($s3) +.L8000DC90: +/* 00E890 8000DC90 3C0E8012 */ lui $t6, %hi(D_8011AEF0) # $t6, 0x8012 +/* 00E894 8000DC94 8DCEAEF0 */ lw $t6, %lo(D_8011AEF0)($t6) +/* 00E898 8000DC98 24180064 */ li $t8, 100 +/* 00E89C 8000DC9C 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012 +/* 00E8A0 8000DCA0 19C00068 */ blez $t6, .L8000DE44 +/* 00E8A4 8000DCA4 AC38ADB0 */ sw $t8, %lo(D_8011ADB0)($at) +/* 00E8A8 8000DCA8 0000A825 */ move $s5, $zero +.L8000DCAC: +/* 00E8AC 8000DCAC 3C198012 */ lui $t9, %hi(D_8011AEE4) # $t9, 0x8012 +/* 00E8B0 8000DCB0 8F39AEE4 */ lw $t9, %lo(D_8011AEE4)($t9) +/* 00E8B4 8000DCB4 00008025 */ move $s0, $zero +/* 00E8B8 8000DCB8 03357821 */ addu $t7, $t9, $s5 +/* 00E8BC 8000DCBC 8DF10000 */ lw $s1, ($t7) +/* 00E8C0 8000DCC0 00000000 */ nop +/* 00E8C4 8000DCC4 8E330064 */ lw $s3, 0x64($s1) +/* 00E8C8 8000DCC8 00000000 */ nop +/* 00E8CC 8000DCCC 02202025 */ move $a0, $s1 +.L8000DCD0: +/* 00E8D0 8000DCD0 0C01378E */ jal func_8004DE38 +/* 00E8D4 8000DCD4 24050002 */ li $a1, 2 +/* 00E8D8 8000DCD8 26100001 */ addiu $s0, $s0, 1 +/* 00E8DC 8000DCDC 2A01000A */ slti $at, $s0, 0xa +/* 00E8E0 8000DCE0 1420FFFB */ bnez $at, .L8000DCD0 +/* 00E8E4 8000DCE4 02202025 */ move $a0, $s1 +/* 00E8E8 8000DCE8 866D0000 */ lh $t5, ($s3) +/* 00E8EC 8000DCEC 2401FFFF */ li $at, -1 +/* 00E8F0 8000DCF0 15A1001D */ bne $t5, $at, .L8000DD68 +/* 00E8F4 8000DCF4 00008025 */ move $s0, $zero +/* 00E8F8 8000DCF8 8E2E0040 */ lw $t6, 0x40($s1) +/* 00E8FC 8000DCFC 26940001 */ addiu $s4, $s4, 1 +/* 00E900 8000DD00 81C40055 */ lb $a0, 0x55($t6) +/* 00E904 8000DD04 32980001 */ andi $t8, $s4, 1 +/* 00E908 8000DD08 18800030 */ blez $a0, .L8000DDCC +/* 00E90C 8000DD0C 0300A025 */ move $s4, $t8 +/* 00E910 8000DD10 00001825 */ move $v1, $zero +.L8000DD14: +/* 00E914 8000DD14 8E390068 */ lw $t9, 0x68($s1) +/* 00E918 8000DD18 26100001 */ addiu $s0, $s0, 1 +/* 00E91C 8000DD1C 03237821 */ addu $t7, $t9, $v1 +/* 00E920 8000DD20 8DE20000 */ lw $v0, ($t7) +/* 00E924 8000DD24 00000000 */ nop +/* 00E928 8000DD28 1040000B */ beqz $v0, .L8000DD58 +/* 00E92C 8000DD2C 0204082A */ slt $at, $s0, $a0 +/* 00E930 8000DD30 804D0020 */ lb $t5, 0x20($v0) +/* 00E934 8000DD34 0014C040 */ sll $t8, $s4, 1 +/* 00E938 8000DD38 11A00007 */ beqz $t5, .L8000DD58 +/* 00E93C 8000DD3C 0204082A */ slt $at, $s0, $a0 +/* 00E940 8000DD40 A0580020 */ sb $t8, 0x20($v0) +/* 00E944 8000DD44 8E2E0040 */ lw $t6, 0x40($s1) +/* 00E948 8000DD48 00000000 */ nop +/* 00E94C 8000DD4C 81C40055 */ lb $a0, 0x55($t6) +/* 00E950 8000DD50 00000000 */ nop +/* 00E954 8000DD54 0204082A */ slt $at, $s0, $a0 +.L8000DD58: +/* 00E958 8000DD58 1420FFEE */ bnez $at, .L8000DD14 +/* 00E95C 8000DD5C 24630004 */ addiu $v1, $v1, 4 +/* 00E960 8000DD60 1000001A */ b .L8000DDCC +/* 00E964 8000DD64 00000000 */ nop +.L8000DD68: +/* 00E968 8000DD68 8E390040 */ lw $t9, 0x40($s1) +/* 00E96C 8000DD6C 00008025 */ move $s0, $zero +/* 00E970 8000DD70 83240055 */ lb $a0, 0x55($t9) +/* 00E974 8000DD74 00001825 */ move $v1, $zero +/* 00E978 8000DD78 18800014 */ blez $a0, .L8000DDCC +/* 00E97C 8000DD7C 00000000 */ nop +.L8000DD80: +/* 00E980 8000DD80 8E2F0068 */ lw $t7, 0x68($s1) +/* 00E984 8000DD84 26100001 */ addiu $s0, $s0, 1 +/* 00E988 8000DD88 01E36821 */ addu $t5, $t7, $v1 +/* 00E98C 8000DD8C 8DA20000 */ lw $v0, ($t5) +/* 00E990 8000DD90 00000000 */ nop +/* 00E994 8000DD94 1040000B */ beqz $v0, .L8000DDC4 +/* 00E998 8000DD98 0204082A */ slt $at, $s0, $a0 +/* 00E99C 8000DD9C 80580020 */ lb $t8, 0x20($v0) +/* 00E9A0 8000DDA0 00000000 */ nop +/* 00E9A4 8000DDA4 13000007 */ beqz $t8, .L8000DDC4 +/* 00E9A8 8000DDA8 0204082A */ slt $at, $s0, $a0 +/* 00E9AC 8000DDAC A0400020 */ sb $zero, 0x20($v0) +/* 00E9B0 8000DDB0 8E2E0040 */ lw $t6, 0x40($s1) +/* 00E9B4 8000DDB4 00000000 */ nop +/* 00E9B8 8000DDB8 81C40055 */ lb $a0, 0x55($t6) +/* 00E9BC 8000DDBC 00000000 */ nop +/* 00E9C0 8000DDC0 0204082A */ slt $at, $s0, $a0 +.L8000DDC4: +/* 00E9C4 8000DDC4 1420FFEE */ bnez $at, .L8000DD80 +/* 00E9C8 8000DDC8 24630004 */ addiu $v1, $v1, 4 +.L8000DDCC: +/* 00E9CC 8000DDCC 0C0270C3 */ jal func_8009C30C +/* 00E9D0 8000DDD0 00000000 */ nop +/* 00E9D4 8000DDD4 30590010 */ andi $t9, $v0, 0x10 +/* 00E9D8 8000DDD8 13200006 */ beqz $t9, .L8000DDF4 +/* 00E9DC 8000DDDC 3C01800E */ lui $at, %hi(D_800E5180) # $at, 0x800e +/* 00E9E0 8000DDE0 C6280008 */ lwc1 $f8, 8($s1) +/* 00E9E4 8000DDE4 C42A5180 */ lwc1 $f10, %lo(D_800E5180)($at) +/* 00E9E8 8000DDE8 00000000 */ nop +/* 00E9EC 8000DDEC 460A4402 */ mul.s $f16, $f8, $f10 +/* 00E9F0 8000DDF0 E6300008 */ swc1 $f16, 8($s1) +.L8000DDF4: +/* 00E9F4 8000DDF4 0C0270C3 */ jal func_8009C30C +/* 00E9F8 8000DDF8 00000000 */ nop +/* 00E9FC 8000DDFC 304F0020 */ andi $t7, $v0, 0x20 +/* 00EA00 8000DE00 11E00006 */ beqz $t7, .L8000DE1C +/* 00EA04 8000DE04 3C01800E */ lui $at, %hi(D_800E5184) # $at, 0x800e +/* 00EA08 8000DE08 C6320008 */ lwc1 $f18, 8($s1) +/* 00EA0C 8000DE0C C4245184 */ lwc1 $f4, %lo(D_800E5184)($at) +/* 00EA10 8000DE10 00000000 */ nop +/* 00EA14 8000DE14 46049182 */ mul.s $f6, $f18, $f4 +/* 00EA18 8000DE18 E6260008 */ swc1 $f6, 8($s1) +.L8000DE1C: +/* 00EA1C 8000DE1C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 00EA20 8000DE20 44810000 */ mtc1 $at, $f0 +/* 00EA24 8000DE24 3C0D8012 */ lui $t5, %hi(D_8011AEF0) # $t5, 0x8012 +/* 00EA28 8000DE28 E6600090 */ swc1 $f0, 0x90($s3) +/* 00EA2C 8000DE2C E660008C */ swc1 $f0, 0x8c($s3) +/* 00EA30 8000DE30 8DADAEF0 */ lw $t5, %lo(D_8011AEF0)($t5) +/* 00EA34 8000DE34 26520001 */ addiu $s2, $s2, 1 +/* 00EA38 8000DE38 024D082A */ slt $at, $s2, $t5 +/* 00EA3C 8000DE3C 1420FF9B */ bnez $at, .L8000DCAC +/* 00EA40 8000DE40 26B50004 */ addiu $s5, $s5, 4 +.L8000DE44: +/* 00EA44 8000DE44 8FB80068 */ lw $t8, 0x68($sp) +/* 00EA48 8000DE48 8FAE0064 */ lw $t6, 0x64($sp) +/* 00EA4C 8000DE4C 1300000B */ beqz $t8, .L8000DE7C +/* 00EA50 8000DE50 240D0050 */ li $t5, 80 +/* 00EA54 8000DE54 15C00009 */ bnez $t6, .L8000DE7C +/* 00EA58 8000DE58 3C198012 */ lui $t9, %hi(D_8011AEF5) # $t9, 0x8012 +/* 00EA5C 8000DE5C 9339AEF5 */ lbu $t9, %lo(D_8011AEF5)($t9) +/* 00EA60 8000DE60 3C0F8012 */ lui $t7, %hi(D_8011AD3C) # $t7, 0x8012 +/* 00EA64 8000DE64 17200005 */ bnez $t9, .L8000DE7C +/* 00EA68 8000DE68 00000000 */ nop +/* 00EA6C 8000DE6C 81EFAD3C */ lb $t7, %lo(D_8011AD3C)($t7) +/* 00EA70 8000DE70 3C018012 */ lui $at, 0x8012 +/* 00EA74 8000DE74 11E00004 */ beqz $t7, .L8000DE88 +/* 00EA78 8000DE78 00000000 */ nop +.L8000DE7C: +/* 00EA7C 8000DE7C 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012 +/* 00EA80 8000DE80 10000002 */ b .L8000DE8C +/* 00EA84 8000DE84 AC2DADB0 */ sw $t5, %lo(D_8011ADB0)($at) +.L8000DE88: +/* 00EA88 8000DE88 AC20ADB0 */ sw $zero, %lo(D_8011ADB0)($at) +.L8000DE8C: +/* 00EA8C 8000DE8C 8FB80068 */ lw $t8, 0x68($sp) +/* 00EA90 8000DE90 8FAE0058 */ lw $t6, 0x58($sp) +/* 00EA94 8000DE94 1700001A */ bnez $t8, .L8000DF00 +/* 00EA98 8000DE98 24010001 */ li $at, 1 +/* 00EA9C 8000DE9C 15C10018 */ bne $t6, $at, .L8000DF00 +/* 00EAA0 8000DEA0 00000000 */ nop +/* 00EAA4 8000DEA4 0C027B1C */ jal func_8009EC70 +/* 00EAA8 8000DEA8 00000000 */ nop +/* 00EAAC 8000DEAC 14400014 */ bnez $v0, .L8000DF00 +/* 00EAB0 8000DEB0 00000000 */ nop +/* 00EAB4 8000DEB4 0C01B067 */ jal func_8006C19C +/* 00EAB8 8000DEB8 00000000 */ nop +/* 00EABC 8000DEBC 14400010 */ bnez $v0, .L8000DF00 +/* 00EAC0 8000DEC0 00009025 */ move $s2, $zero +/* 00EAC4 8000DEC4 24130003 */ li $s3, 3 +/* 00EAC8 8000DEC8 24110008 */ li $s1, 8 +/* 00EACC 8000DECC 24100032 */ li $s0, 50 +.L8000DED0: +/* 00EAD0 8000DED0 A2D00000 */ sb $s0, ($s6) +/* 00EAD4 8000DED4 A2D10001 */ sb $s1, 1($s6) +/* 00EAD8 8000DED8 A6C00002 */ sh $zero, 2($s6) +/* 00EADC 8000DEDC A6C00004 */ sh $zero, 4($s6) +/* 00EAE0 8000DEE0 A6C00006 */ sh $zero, 6($s6) +/* 00EAE4 8000DEE4 02C02025 */ move $a0, $s6 +/* 00EAE8 8000DEE8 0C003A95 */ jal func_8000EA54 +/* 00EAEC 8000DEEC 24050001 */ li $a1, 1 +/* 00EAF0 8000DEF0 AC520078 */ sw $s2, 0x78($v0) +/* 00EAF4 8000DEF4 26520001 */ addiu $s2, $s2, 1 +/* 00EAF8 8000DEF8 1653FFF5 */ bne $s2, $s3, .L8000DED0 +/* 00EAFC 8000DEFC AC40003C */ sw $zero, 0x3c($v0) +.L8000DF00: +/* 00EB00 8000DF00 3C018012 */ lui $at, %hi(D_8011AD4E) # $at, 0x8012 +/* 00EB04 8000DF04 A420AD4E */ sh $zero, %lo(D_8011AD4E)($at) +/* 00EB08 8000DF08 3C018012 */ lui $at, %hi(D_8011ADB4) # $at, 0x8012 +/* 00EB0C 8000DF0C AC20ADB4 */ sw $zero, %lo(D_8011ADB4)($at) +/* 00EB10 8000DF10 0C0274CC */ jal func_8009D330 +/* 00EB14 8000DF14 00002025 */ move $a0, $zero +/* 00EB18 8000DF18 92F90048 */ lbu $t9, 0x48($s7) +/* 00EB1C 8000DF1C 00000000 */ nop +/* 00EB20 8000DF20 1720003D */ bnez $t9, .L8000E018 +/* 00EB24 8000DF24 8FAE0130 */ lw $t6, 0x130($sp) +/* 00EB28 8000DF28 0C0270B4 */ jal func_8009C2D0 +/* 00EB2C 8000DF2C 00000000 */ nop +/* 00EB30 8000DF30 14400038 */ bnez $v0, .L8000E014 +/* 00EB34 8000DF34 24040010 */ li $a0, 16 +/* 00EB38 8000DF38 0C0078A7 */ jal func_8001E29C +/* 00EB3C 8000DF3C 00009025 */ move $s2, $zero +/* 00EB40 8000DF40 96E30014 */ lhu $v1, 0x14($s7) +/* 00EB44 8000DF44 00000000 */ nop +/* 00EB48 8000DF48 306F0001 */ andi $t7, $v1, 1 +/* 00EB4C 8000DF4C 15E0000A */ bnez $t7, .L8000DF78 +/* 00EB50 8000DF50 30790002 */ andi $t9, $v1, 2 +/* 00EB54 8000DF54 8EED0000 */ lw $t5, ($s7) +/* 00EB58 8000DF58 804E0000 */ lb $t6, ($v0) +/* 00EB5C 8000DF5C 85B80000 */ lh $t8, ($t5) +/* 00EB60 8000DF60 00000000 */ nop +/* 00EB64 8000DF64 030E082A */ slt $at, $t8, $t6 +/* 00EB68 8000DF68 14200003 */ bnez $at, .L8000DF78 +/* 00EB6C 8000DF6C 00000000 */ nop +/* 00EB70 8000DF70 10000016 */ b .L8000DFCC +/* 00EB74 8000DF74 24120001 */ li $s2, 1 +.L8000DF78: +/* 00EB78 8000DF78 1720000A */ bnez $t9, .L8000DFA4 +/* 00EB7C 8000DF7C 306E0004 */ andi $t6, $v1, 4 +/* 00EB80 8000DF80 8EEF0000 */ lw $t7, ($s7) +/* 00EB84 8000DF84 80580001 */ lb $t8, 1($v0) +/* 00EB88 8000DF88 85ED0000 */ lh $t5, ($t7) +/* 00EB8C 8000DF8C 00000000 */ nop +/* 00EB90 8000DF90 01B8082A */ slt $at, $t5, $t8 +/* 00EB94 8000DF94 14200003 */ bnez $at, .L8000DFA4 +/* 00EB98 8000DF98 00000000 */ nop +/* 00EB9C 8000DF9C 1000000B */ b .L8000DFCC +/* 00EBA0 8000DFA0 24120002 */ li $s2, 2 +.L8000DFA4: +/* 00EBA4 8000DFA4 15C00009 */ bnez $t6, .L8000DFCC +/* 00EBA8 8000DFA8 00000000 */ nop +/* 00EBAC 8000DFAC 8EF90000 */ lw $t9, ($s7) +/* 00EBB0 8000DFB0 804D0002 */ lb $t5, 2($v0) +/* 00EBB4 8000DFB4 872F0000 */ lh $t7, ($t9) +/* 00EBB8 8000DFB8 00000000 */ nop +/* 00EBBC 8000DFBC 01ED082A */ slt $at, $t7, $t5 +/* 00EBC0 8000DFC0 14200002 */ bnez $at, .L8000DFCC +/* 00EBC4 8000DFC4 00000000 */ nop +/* 00EBC8 8000DFC8 24120003 */ li $s2, 3 +.L8000DFCC: +/* 00EBCC 8000DFCC 12400012 */ beqz $s2, .L8000E018 +/* 00EBD0 8000DFD0 8FAE0130 */ lw $t6, 0x130($sp) +/* 00EBD4 8000DFD4 0C00E4C8 */ jal func_80039320 +/* 00EBD8 8000DFD8 24040250 */ li $a0, 592 +/* 00EBDC 8000DFDC 96F80014 */ lhu $t8, 0x14($s7) +/* 00EBE0 8000DFE0 264E001F */ addiu $t6, $s2, 0x1f +/* 00EBE4 8000DFE4 24190001 */ li $t9, 1 +/* 00EBE8 8000DFE8 01D97804 */ sllv $t7, $t9, $t6 +/* 00EBEC 8000DFEC 030F6825 */ or $t5, $t8, $t7 +/* 00EBF0 8000DFF0 A6ED0014 */ sh $t5, 0x14($s7) +/* 00EBF4 8000DFF4 0C01486E */ jal func_800521B8 +/* 00EBF8 8000DFF8 24040002 */ li $a0, 2 +/* 00EBFC 8000DFFC 0C0274CC */ jal func_8009D330 +/* 00EC00 8000E000 02402025 */ move $a0, $s2 +/* 00EC04 8000E004 0C027068 */ jal func_8009C1A0 +/* 00EC08 8000E008 00000000 */ nop +/* 00EC0C 8000E00C 0C01BB12 */ jal func_8006EC48 +/* 00EC10 8000E010 00402025 */ move $a0, $v0 +.L8000E014: +/* 00EC14 8000E014 8FAE0130 */ lw $t6, 0x130($sp) +.L8000E018: +/* 00EC18 8000E018 24190001 */ li $t9, 1 +/* 00EC1C 8000E01C 3C018012 */ lui $at, %hi(D_8011AD24) # $at, 0x8012 +/* 00EC20 8000E020 05C00005 */ bltz $t6, .L8000E038 +/* 00EC24 8000E024 A039AD24 */ sb $t9, %lo(D_8011AD24)($at) +/* 00EC28 8000E028 8FB80130 */ lw $t8, 0x130($sp) +/* 00EC2C 8000E02C 8FAF0074 */ lw $t7, 0x74($sp) +/* 00EC30 8000E030 00000000 */ nop +/* 00EC34 8000E034 A1F8003B */ sb $t8, 0x3b($t7) +.L8000E038: +/* 00EC38 8000E038 0C003852 */ jal func_8000E148 +/* 00EC3C 8000E03C 00000000 */ nop +/* 00EC40 8000E040 10400009 */ beqz $v0, .L8000E068 +/* 00EC44 8000E044 00000000 */ nop +/* 00EC48 8000E048 0C01C8A6 */ jal func_80072298 +/* 00EC4C 8000E04C 00002025 */ move $a0, $zero +/* 00EC50 8000E050 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012 +/* 00EC54 8000E054 AC20ADB0 */ sw $zero, %lo(D_8011ADB0)($at) +/* 00EC58 8000E058 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 00EC5C 8000E05C 44816000 */ mtc1 $at, $f12 +/* 00EC60 8000E060 0C01AF44 */ jal func_8006BD10 +/* 00EC64 8000E064 00000000 */ nop +.L8000E068: +/* 00EC68 8000E068 0C01C42C */ jal func_800710B0 +/* 00EC6C 8000E06C 00002025 */ move $a0, $zero +/* 00EC70 8000E070 0C01C450 */ jal func_80071140 +/* 00EC74 8000E074 02C02025 */ move $a0, $s6 +/* 00EC78 8000E078 0C01C42C */ jal func_800710B0 +/* 00EC7C 8000E07C 24040002 */ li $a0, 2 +.L8000E080: +/* 00EC80 8000E080 8FBF003C */ lw $ra, 0x3c($sp) +/* 00EC84 8000E084 8FB00018 */ lw $s0, 0x18($sp) +/* 00EC88 8000E088 8FB1001C */ lw $s1, 0x1c($sp) +/* 00EC8C 8000E08C 8FB20020 */ lw $s2, 0x20($sp) +/* 00EC90 8000E090 8FB30024 */ lw $s3, 0x24($sp) +/* 00EC94 8000E094 8FB40028 */ lw $s4, 0x28($sp) +/* 00EC98 8000E098 8FB5002C */ lw $s5, 0x2c($sp) +/* 00EC9C 8000E09C 8FB60030 */ lw $s6, 0x30($sp) +/* 00ECA0 8000E0A0 8FB70034 */ lw $s7, 0x34($sp) +/* 00ECA4 8000E0A4 8FBE0038 */ lw $fp, 0x38($sp) +/* 00ECA8 8000E0A8 03E00008 */ jr $ra +/* 00ECAC 8000E0AC 27BD0150 */ addiu $sp, $sp, 0x150 + diff --git a/asm/non_matchings/unknown_005740/func_8000E0B0.s b/asm/non_matchings/unknown_005740/func_8000E0B0.s new file mode 100644 index 00000000..ca593536 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E0B0.s @@ -0,0 +1,35 @@ +glabel func_8000E0B0 +/* 00ECB0 8000E0B0 3C0E8012 */ lui $t6, %hi(D_8011AD38) # $t6, 0x8012 +/* 00ECB4 8000E0B4 8DCEAD38 */ lw $t6, %lo(D_8011AD38)($t6) +/* 00ECB8 8000E0B8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 00ECBC 8000E0BC 2DC10009 */ sltiu $at, $t6, 9 +/* 00ECC0 8000E0C0 10200014 */ beqz $at, .L8000E114 +/* 00ECC4 8000E0C4 AFBF0014 */ sw $ra, 0x14($sp) +/* 00ECC8 8000E0C8 000E7080 */ sll $t6, $t6, 2 +/* 00ECCC 8000E0CC 3C01800E */ lui $at, 0x800e +/* 00ECD0 8000E0D0 002E0821 */ addu $at, $at, $t6 +/* 00ECD4 8000E0D4 8C2E5188 */ lw $t6, 0x5188($at) +/* 00ECD8 8000E0D8 00000000 */ nop +/* 00ECDC 8000E0DC 01C00008 */ jr $t6 +/* 00ECE0 8000E0E0 00000000 */ nop +/* 00ECE4 8000E0E4 1000000C */ b .L8000E118 +/* 00ECE8 8000E0E8 2402FFFF */ li $v0, -1 +/* 00ECEC 8000E0EC 1000000A */ b .L8000E118 +/* 00ECF0 8000E0F0 00001025 */ move $v0, $zero +/* 00ECF4 8000E0F4 10000008 */ b .L8000E118 +/* 00ECF8 8000E0F8 24020003 */ li $v0, 3 +/* 00ECFC 8000E0FC 10000006 */ b .L8000E118 +/* 00ED00 8000E100 24020002 */ li $v0, 2 +/* 00ED04 8000E104 0C016788 */ jal func_80059E20 +/* 00ED08 8000E108 00000000 */ nop +/* 00ED0C 8000E10C 10000003 */ b .L8000E11C +/* 00ED10 8000E110 8FBF0014 */ lw $ra, 0x14($sp) +.L8000E114: +/* 00ED14 8000E114 00001025 */ move $v0, $zero +.L8000E118: +/* 00ED18 8000E118 8FBF0014 */ lw $ra, 0x14($sp) +.L8000E11C: +/* 00ED1C 8000E11C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 00ED20 8000E120 03E00008 */ jr $ra +/* 00ED24 8000E124 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000E128.s b/asm/non_matchings/unknown_005740/func_8000E128.s new file mode 100644 index 00000000..9621130b --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E128.s @@ -0,0 +1,6 @@ +glabel func_8000E128 +/* 00ED28 8000E128 240E8000 */ li $t6, -32768 +/* 00ED2C 8000E12C 3C01800E */ lui $at, 0x800e +/* 00ED30 8000E130 03E00008 */ jr $ra +/* 00ED34 8000E134 A42EC708 */ sh $t6, -0x38f8($at) + diff --git a/asm/non_matchings/unknown_005740/func_8000E138.s b/asm/non_matchings/unknown_005740/func_8000E138.s new file mode 100644 index 00000000..400c530f --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E138.s @@ -0,0 +1,6 @@ +glabel func_8000E138 +/* 00ED38 8000E138 3C028012 */ lui $v0, %hi(D_8011AD20) # $v0, 0x8012 +/* 00ED3C 8000E13C 8042AD20 */ lb $v0, %lo(D_8011AD20)($v0) +/* 00ED40 8000E140 03E00008 */ jr $ra +/* 00ED44 8000E144 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000E148.s b/asm/non_matchings/unknown_005740/func_8000E148.s new file mode 100644 index 00000000..e96ad81a --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E148.s @@ -0,0 +1,6 @@ +glabel func_8000E148 +/* 00ED48 8000E148 3C02800E */ lui $v0, %hi(D_800DC71C) # $v0, 0x800e +/* 00ED4C 8000E14C 8042C71C */ lb $v0, %lo(D_800DC71C)($v0) +/* 00ED50 8000E150 03E00008 */ jr $ra +/* 00ED54 8000E154 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000E158.s b/asm/non_matchings/unknown_005740/func_8000E158.s new file mode 100644 index 00000000..07339ea0 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E158.s @@ -0,0 +1,15 @@ +glabel func_8000E158 +/* 00ED58 8000E158 3C0E800E */ lui $t6, %hi(D_800DC740) # $t6, 0x800e +/* 00ED5C 8000E15C 81CEC740 */ lb $t6, %lo(D_800DC740)($t6) +/* 00ED60 8000E160 00001025 */ move $v0, $zero +/* 00ED64 8000E164 11C00005 */ beqz $t6, .L8000E17C +/* 00ED68 8000E168 00000000 */ nop +/* 00ED6C 8000E16C 3C02800E */ lui $v0, %hi(D_800DC73C) # $v0, 0x800e +/* 00ED70 8000E170 8042C73C */ lb $v0, %lo(D_800DC73C)($v0) +/* 00ED74 8000E174 03E00008 */ jr $ra +/* 00ED78 8000E178 00000000 */ nop + +.L8000E17C: +/* 00ED7C 8000E17C 03E00008 */ jr $ra +/* 00ED80 8000E180 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000E184.s b/asm/non_matchings/unknown_005740/func_8000E184.s new file mode 100644 index 00000000..a783a4e1 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E184.s @@ -0,0 +1,6 @@ +glabel func_8000E184 +/* 00ED84 8000E184 3C02800E */ lui $v0, %hi(D_800DC748) # $v0, 0x800e +/* 00ED88 8000E188 8042C748 */ lb $v0, %lo(D_800DC748)($v0) +/* 00ED8C 8000E18C 03E00008 */ jr $ra +/* 00ED90 8000E190 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000E194.s b/asm/non_matchings/unknown_005740/func_8000E194.s new file mode 100644 index 00000000..bf397a9b --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E194.s @@ -0,0 +1,11 @@ +glabel func_8000E194 +/* 00ED94 8000E194 3C02800E */ lui $v0, %hi(D_800DC73C) # $v0, 0x800e +/* 00ED98 8000E198 2442C73C */ addiu $v0, %lo(D_800DC73C) # addiu $v0, $v0, -0x38c4 +/* 00ED9C 8000E19C 804E0000 */ lb $t6, ($v0) +/* 00EDA0 8000E1A0 240F0001 */ li $t7, 1 +/* 00EDA4 8000E1A4 01EEC023 */ subu $t8, $t7, $t6 +/* 00EDA8 8000E1A8 A0580000 */ sb $t8, ($v0) +/* 00EDAC 8000E1AC 3C01800E */ lui $at, 0x800e +/* 00EDB0 8000E1B0 03E00008 */ jr $ra +/* 00EDB4 8000E1B4 A020C740 */ sb $zero, -0x38c0($at) + diff --git a/asm/non_matchings/unknown_005740/func_8000E1B8.s b/asm/non_matchings/unknown_005740/func_8000E1B8.s new file mode 100644 index 00000000..7132fb54 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E1B8.s @@ -0,0 +1,7 @@ +glabel func_8000E1B8 +/* 00EDB8 8000E1B8 3C01800E */ lui $at, %hi(D_800DC73C) # $at, 0x800e +/* 00EDBC 8000E1BC A020C73C */ sb $zero, %lo(D_800DC73C)($at) +/* 00EDC0 8000E1C0 3C01800E */ lui $at, 0x800e +/* 00EDC4 8000E1C4 03E00008 */ jr $ra +/* 00EDC8 8000E1C8 A020C740 */ sb $zero, -0x38c0($at) + diff --git a/asm/non_matchings/unknown_005740/func_8000E1CC.s b/asm/non_matchings/unknown_005740/func_8000E1CC.s new file mode 100644 index 00000000..59b141f0 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E1CC.s @@ -0,0 +1,6 @@ +glabel func_8000E1CC +/* 00EDCC 8000E1CC 3C028012 */ lui $v0, %hi(D_8011AE02) # $v0, 0x8012 +/* 00EDD0 8000E1D0 8042AE02 */ lb $v0, %lo(D_8011AE02)($v0) +/* 00EDD4 8000E1D4 03E00008 */ jr $ra +/* 00EDD8 8000E1D8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000E1DC.s b/asm/non_matchings/unknown_005740/func_8000E1DC.s new file mode 100644 index 00000000..1063e640 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E1DC.s @@ -0,0 +1,6 @@ +glabel func_8000E1DC +/* 00EDDC 8000E1DC 3C028012 */ lui $v0, %hi(D_8011AE03) # $v0, 0x8012 +/* 00EDE0 8000E1E0 8042AE03 */ lb $v0, %lo(D_8011AE03)($v0) +/* 00EDE4 8000E1E4 03E00008 */ jr $ra +/* 00EDE8 8000E1E8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000E1EC.s b/asm/non_matchings/unknown_005740/func_8000E1EC.s new file mode 100644 index 00000000..f15d121b --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E1EC.s @@ -0,0 +1,52 @@ +glabel func_8000E1EC +/* 00EDEC 8000E1EC 3C018012 */ lui $at, %hi(D_8011AD40) # $at, 0x8012 +/* 00EDF0 8000E1F0 AC24AD40 */ sw $a0, %lo(D_8011AD40)($at) +/* 00EDF4 8000E1F4 3C018012 */ lui $at, %hi(D_8011AD44) # $at, 0x8012 +/* 00EDF8 8000E1F8 240E0004 */ li $t6, 4 +/* 00EDFC 8000E1FC A02EAD44 */ sb $t6, %lo(D_8011AD44)($at) +/* 00EE00 8000E200 444FF800 */ cfc1 $t7, $31 +/* 00EE04 8000E204 3C018012 */ lui $at, %hi(D_8011AD45) # $at, 0x8012 +/* 00EE08 8000E208 A025AD45 */ sb $a1, %lo(D_8011AD45)($at) +/* 00EE0C 8000E20C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 00EE10 8000E210 35E10003 */ ori $at, $t7, 3 +/* 00EE14 8000E214 AFBF0014 */ sw $ra, 0x14($sp) +/* 00EE18 8000E218 38210002 */ xori $at, $at, 2 +/* 00EE1C 8000E21C 44C1F800 */ ctc1 $at, $31 +/* 00EE20 8000E220 C484000C */ lwc1 $f4, 0xc($a0) +/* 00EE24 8000E224 3C018012 */ lui $at, %hi(D_8011AD46) # $at, 0x8012 +/* 00EE28 8000E228 460021A4 */ cvt.w.s $f6, $f4 +/* 00EE2C 8000E22C 44CFF800 */ ctc1 $t7, $31 +/* 00EE30 8000E230 44183000 */ mfc1 $t8, $f6 +/* 00EE34 8000E234 00000000 */ nop +/* 00EE38 8000E238 4459F800 */ cfc1 $t9, $31 +/* 00EE3C 8000E23C A438AD46 */ sh $t8, %lo(D_8011AD46)($at) +/* 00EE40 8000E240 37210003 */ ori $at, $t9, 3 +/* 00EE44 8000E244 38210002 */ xori $at, $at, 2 +/* 00EE48 8000E248 44C1F800 */ ctc1 $at, $31 +/* 00EE4C 8000E24C C4880010 */ lwc1 $f8, 0x10($a0) +/* 00EE50 8000E250 3C018012 */ lui $at, %hi(D_8011AD48) # $at, 0x8012 +/* 00EE54 8000E254 460042A4 */ cvt.w.s $f10, $f8 +/* 00EE58 8000E258 44D9F800 */ ctc1 $t9, $31 +/* 00EE5C 8000E25C 44085000 */ mfc1 $t0, $f10 +/* 00EE60 8000E260 00000000 */ nop +/* 00EE64 8000E264 4449F800 */ cfc1 $t1, $31 +/* 00EE68 8000E268 A428AD48 */ sh $t0, %lo(D_8011AD48)($at) +/* 00EE6C 8000E26C 35210003 */ ori $at, $t1, 3 +/* 00EE70 8000E270 38210002 */ xori $at, $at, 2 +/* 00EE74 8000E274 44C1F800 */ ctc1 $at, $31 +/* 00EE78 8000E278 C4900014 */ lwc1 $f16, 0x14($a0) +/* 00EE7C 8000E27C 3C018012 */ lui $at, %hi(D_8011AD4A) # $at, 0x8012 +/* 00EE80 8000E280 460084A4 */ cvt.w.s $f18, $f16 +/* 00EE84 8000E284 440A9000 */ mfc1 $t2, $f18 +/* 00EE88 8000E288 44C9F800 */ ctc1 $t1, $31 +/* 00EE8C 8000E28C A42AAD4A */ sh $t2, %lo(D_8011AD4A)($at) +/* 00EE90 8000E290 848B0000 */ lh $t3, ($a0) +/* 00EE94 8000E294 3C018012 */ lui $at, %hi(D_8011AD4C) # $at, 0x8012 +/* 00EE98 8000E298 0C003FEE */ jal func_8000FFB8 +/* 00EE9C 8000E29C A42BAD4C */ sh $t3, %lo(D_8011AD4C)($at) +/* 00EEA0 8000E2A0 8FBF0014 */ lw $ra, 0x14($sp) +/* 00EEA4 8000E2A4 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 +/* 00EEA8 8000E2A8 AC20AEF0 */ sw $zero, %lo(D_8011AEF0)($at) +/* 00EEAC 8000E2AC 03E00008 */ jr $ra +/* 00EEB0 8000E2B0 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_005740/func_8000E2B4.s b/asm/non_matchings/unknown_005740/func_8000E2B4.s new file mode 100644 index 00000000..3c0c39d3 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E2B4.s @@ -0,0 +1,138 @@ +glabel func_8000E2B4 +/* 00EEB4 8000E2B4 3C038012 */ lui $v1, %hi(D_8011AD44) # $v1, 0x8012 +/* 00EEB8 8000E2B8 2463AD44 */ addiu $v1, %lo(D_8011AD44) # addiu $v1, $v1, -0x52bc +/* 00EEBC 8000E2BC 80620000 */ lb $v0, ($v1) +/* 00EEC0 8000E2C0 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 00EEC4 8000E2C4 10400079 */ beqz $v0, .L8000E4AC +/* 00EEC8 8000E2C8 AFBF0014 */ sw $ra, 0x14($sp) +/* 00EECC 8000E2CC 244EFFFF */ addiu $t6, $v0, -1 +/* 00EED0 8000E2D0 A06E0000 */ sb $t6, ($v1) +/* 00EED4 8000E2D4 806F0000 */ lb $t7, ($v1) +/* 00EED8 8000E2D8 00000000 */ nop +/* 00EEDC 8000E2DC 15E00074 */ bnez $t7, .L8000E4B0 +/* 00EEE0 8000E2E0 8FBF0014 */ lw $ra, 0x14($sp) +/* 00EEE4 8000E2E4 0C01BAA4 */ jal func_8006EA90 +/* 00EEE8 8000E2E8 00000000 */ nop +/* 00EEEC 8000E2EC 3C048012 */ lui $a0, %hi(D_8011AD45) # $a0, 0x8012 +/* 00EEF0 8000E2F0 8084AD45 */ lb $a0, %lo(D_8011AD45)($a0) +/* 00EEF4 8000E2F4 24180010 */ li $t8, 16 +/* 00EEF8 8000E2F8 28810005 */ slti $at, $a0, 5 +/* 00EEFC 8000E2FC AFA20028 */ sw $v0, 0x28($sp) +/* 00EF00 8000E300 A7A0003A */ sh $zero, 0x3a($sp) +/* 00EF04 8000E304 1020000C */ beqz $at, .L8000E338 +/* 00EF08 8000E308 A3B8002D */ sb $t8, 0x2d($sp) +/* 00EF0C 8000E30C 80590059 */ lb $t9, 0x59($v0) +/* 00EF10 8000E310 00044880 */ sll $t1, $a0, 2 +/* 00EF14 8000E314 01244821 */ addu $t1, $t1, $a0 +/* 00EF18 8000E318 00095080 */ sll $t2, $t1, 2 +/* 00EF1C 8000E31C 00194040 */ sll $t0, $t9, 1 +/* 00EF20 8000E320 010A5821 */ addu $t3, $t0, $t2 +/* 00EF24 8000E324 3C03800E */ lui $v1, 0x800e +/* 00EF28 8000E328 006B1821 */ addu $v1, $v1, $t3 +/* 00EF2C 8000E32C 8463C7A8 */ lh $v1, -0x3858($v1) +/* 00EF30 8000E330 10000006 */ b .L8000E34C +/* 00EF34 8000E334 00000000 */ nop +.L8000E338: +/* 00EF38 8000E338 00046040 */ sll $t4, $a0, 1 +/* 00EF3C 8000E33C 3C03800E */ lui $v1, 0x800e +/* 00EF40 8000E340 006C1821 */ addu $v1, $v1, $t4 +/* 00EF44 8000E344 8463C802 */ lh $v1, -0x37fe($v1) +/* 00EF48 8000E348 00000000 */ nop +.L8000E34C: +/* 00EF4C 8000E34C 0C01B6C5 */ jal func_8006DB14 +/* 00EF50 8000E350 A7A30022 */ sh $v1, 0x22($sp) +/* 00EF54 8000E354 87A30022 */ lh $v1, 0x22($sp) +/* 00EF58 8000E358 93AD002D */ lbu $t5, 0x2d($sp) +/* 00EF5C 8000E35C 3C198012 */ lui $t9, %hi(D_8011AD46) # $t9, 0x8012 +/* 00EF60 8000E360 3C098012 */ lui $t1, %hi(D_8011AD48) # $t1, 0x8012 +/* 00EF64 8000E364 3C088012 */ lui $t0, %hi(D_8011AD4A) # $t0, 0x8012 +/* 00EF68 8000E368 3C0A8012 */ lui $t2, %hi(D_8011AD4C) # $t2, 0x8012 +/* 00EF6C 8000E36C 306E0100 */ andi $t6, $v1, 0x100 +/* 00EF70 8000E370 8739AD46 */ lh $t9, %lo(D_8011AD46)($t9) +/* 00EF74 8000E374 8529AD48 */ lh $t1, %lo(D_8011AD48)($t1) +/* 00EF78 8000E378 8508AD4A */ lh $t0, %lo(D_8011AD4A)($t0) +/* 00EF7C 8000E37C 854AAD4C */ lh $t2, %lo(D_8011AD4C)($t2) +/* 00EF80 8000E380 000E7843 */ sra $t7, $t6, 1 +/* 00EF84 8000E384 01AFC025 */ or $t8, $t5, $t7 +/* 00EF88 8000E388 A3B8002D */ sb $t8, 0x2d($sp) +/* 00EF8C 8000E38C A7A00036 */ sh $zero, 0x36($sp) +/* 00EF90 8000E390 A7A00034 */ sh $zero, 0x34($sp) +/* 00EF94 8000E394 24040001 */ li $a0, 1 +/* 00EF98 8000E398 A3A3002C */ sb $v1, 0x2c($sp) +/* 00EF9C 8000E39C A7B9002E */ sh $t9, 0x2e($sp) +/* 00EFA0 8000E3A0 A7A90030 */ sh $t1, 0x30($sp) +/* 00EFA4 8000E3A4 A7A80032 */ sh $t0, 0x32($sp) +/* 00EFA8 8000E3A8 0C01486E */ jal func_800521B8 +/* 00EFAC 8000E3AC A7AA0038 */ sh $t2, 0x38($sp) +/* 00EFB0 8000E3B0 27A4002C */ addiu $a0, $sp, 0x2c +/* 00EFB4 8000E3B4 0C003A95 */ jal func_8000EA54 +/* 00EFB8 8000E3B8 24050011 */ li $a1, 17 +/* 00EFBC 8000E3BC 3C0C8012 */ lui $t4, %hi(D_8011AEE4) # $t4, 0x8012 +/* 00EFC0 8000E3C0 8D8CAEE4 */ lw $t4, %lo(D_8011AEE4)($t4) +/* 00EFC4 8000E3C4 240B0001 */ li $t3, 1 +/* 00EFC8 8000E3C8 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 +/* 00EFCC 8000E3CC AC2BAEF0 */ sw $t3, %lo(D_8011AEF0)($at) +/* 00EFD0 8000E3D0 3C0E8012 */ lui $t6, %hi(D_8011AEEC) # $t6, 0x8012 +/* 00EFD4 8000E3D4 AD820000 */ sw $v0, ($t4) +/* 00EFD8 8000E3D8 8DCEAEEC */ lw $t6, %lo(D_8011AEEC)($t6) +/* 00EFDC 8000E3DC 3C0D8012 */ lui $t5, %hi(D_8011AEE8) # $t5, 0x8012 +/* 00EFE0 8000E3E0 ADC20000 */ sw $v0, ($t6) +/* 00EFE4 8000E3E4 8DADAEE8 */ lw $t5, %lo(D_8011AEE8)($t5) +/* 00EFE8 8000E3E8 3C058012 */ lui $a1, %hi(D_8011AD45) # $a1, 0x8012 +/* 00EFEC 8000E3EC ADA20000 */ sw $v0, ($t5) +/* 00EFF0 8000E3F0 24A5AD45 */ addiu $a1, %lo(D_8011AD45) # addiu $a1, $a1, -0x52bb +/* 00EFF4 8000E3F4 8C430064 */ lw $v1, 0x64($v0) +/* 00EFF8 8000E3F8 80AF0000 */ lb $t7, ($a1) +/* 00EFFC 8000E3FC 00000000 */ nop +/* 00F000 8000E400 A06F01D6 */ sb $t7, 0x1d6($v1) +/* 00F004 8000E404 80B80000 */ lb $t8, ($a1) +/* 00F008 8000E408 A0600002 */ sb $zero, 2($v1) +/* 00F00C 8000E40C A07801D7 */ sb $t8, 0x1d7($v1) +/* 00F010 8000E410 8FB90028 */ lw $t9, 0x28($sp) +/* 00F014 8000E414 00000000 */ nop +/* 00F018 8000E418 83290059 */ lb $t1, 0x59($t9) +/* 00F01C 8000E41C A4600000 */ sh $zero, ($v1) +/* 00F020 8000E420 AC600118 */ sw $zero, 0x118($v1) +/* 00F024 8000E424 A0690003 */ sb $t1, 3($v1) +/* 00F028 8000E428 0C0270C3 */ jal func_8009C30C +/* 00F02C 8000E42C AFA2003C */ sw $v0, 0x3c($sp) +/* 00F030 8000E430 8FA4003C */ lw $a0, 0x3c($sp) +/* 00F034 8000E434 30480010 */ andi $t0, $v0, 0x10 +/* 00F038 8000E438 11000006 */ beqz $t0, .L8000E454 +/* 00F03C 8000E43C 3C01800E */ lui $at, %hi(D_800E51AC) # $at, 0x800e +/* 00F040 8000E440 C4840008 */ lwc1 $f4, 8($a0) +/* 00F044 8000E444 C42651AC */ lwc1 $f6, %lo(D_800E51AC)($at) +/* 00F048 8000E448 00000000 */ nop +/* 00F04C 8000E44C 46062202 */ mul.s $f8, $f4, $f6 +/* 00F050 8000E450 E4880008 */ swc1 $f8, 8($a0) +.L8000E454: +/* 00F054 8000E454 0C0270C3 */ jal func_8009C30C +/* 00F058 8000E458 AFA4003C */ sw $a0, 0x3c($sp) +/* 00F05C 8000E45C 8FA4003C */ lw $a0, 0x3c($sp) +/* 00F060 8000E460 304A0020 */ andi $t2, $v0, 0x20 +/* 00F064 8000E464 11400007 */ beqz $t2, .L8000E484 +/* 00F068 8000E468 3C0B8012 */ lui $t3, %hi(D_8011AD4C) # $t3, 0x8012 +/* 00F06C 8000E46C 3C01800E */ lui $at, %hi(D_800E51B0) # $at, 0x800e +/* 00F070 8000E470 C43051B0 */ lwc1 $f16, %lo(D_800E51B0)($at) +/* 00F074 8000E474 C48A0008 */ lwc1 $f10, 8($a0) +/* 00F078 8000E478 00000000 */ nop +/* 00F07C 8000E47C 46105482 */ mul.s $f18, $f10, $f16 +/* 00F080 8000E480 E4920008 */ swc1 $f18, 8($a0) +.L8000E484: +/* 00F084 8000E484 AC80003C */ sw $zero, 0x3c($a0) +/* 00F088 8000E488 856BAD4C */ lh $t3, %lo(D_8011AD4C)($t3) +/* 00F08C 8000E48C 3C0C8012 */ lui $t4, %hi(D_8011AD48) # $t4, 0x8012 +/* 00F090 8000E490 A48B0000 */ sh $t3, ($a0) +/* 00F094 8000E494 858CAD48 */ lh $t4, %lo(D_8011AD48)($t4) +/* 00F098 8000E498 00000000 */ nop +/* 00F09C 8000E49C 448C2000 */ mtc1 $t4, $f4 +/* 00F0A0 8000E4A0 00000000 */ nop +/* 00F0A4 8000E4A4 468021A0 */ cvt.s.w $f6, $f4 +/* 00F0A8 8000E4A8 E4860010 */ swc1 $f6, 0x10($a0) +.L8000E4AC: +/* 00F0AC 8000E4AC 8FBF0014 */ lw $ra, 0x14($sp) +.L8000E4B0: +/* 00F0B0 8000E4B0 27BD0040 */ addiu $sp, $sp, 0x40 +/* 00F0B4 8000E4B4 03E00008 */ jr $ra +/* 00F0B8 8000E4B8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000E4BC.s b/asm/non_matchings/unknown_005740/func_8000E4BC.s new file mode 100644 index 00000000..d3312a7d --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E4BC.s @@ -0,0 +1,5 @@ +glabel func_8000E4BC +/* 00F0BC 8000E4BC 3C018012 */ lui $at, 0x8012 +/* 00F0C0 8000E4C0 03E00008 */ jr $ra +/* 00F0C4 8000E4C4 A024AEF4 */ sb $a0, -0x510c($at) + diff --git a/asm/non_matchings/unknown_005740/func_8000E4C8.s b/asm/non_matchings/unknown_005740/func_8000E4C8.s new file mode 100644 index 00000000..a17e080a --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E4C8.s @@ -0,0 +1,6 @@ +glabel func_8000E4C8 +/* 00F0C8 8000E4C8 3C028012 */ lui $v0, %hi(D_8011AEF4) # $v0, 0x8012 +/* 00F0CC 8000E4CC 9042AEF4 */ lbu $v0, %lo(D_8011AEF4)($v0) +/* 00F0D0 8000E4D0 03E00008 */ jr $ra +/* 00F0D4 8000E4D4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000E4D8.s b/asm/non_matchings/unknown_005740/func_8000E4D8.s new file mode 100644 index 00000000..3799afb2 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E4D8.s @@ -0,0 +1,321 @@ +glabel func_8000E4D8 +/* 00F0D8 8000E4D8 3C028012 */ lui $v0, %hi(D_8011AEF5) # $v0, 0x8012 +/* 00F0DC 8000E4DC 9042AEF5 */ lbu $v0, %lo(D_8011AEF5)($v0) +/* 00F0E0 8000E4E0 03E00008 */ jr $ra +/* 00F0E4 8000E4E4 00000000 */ nop + +/* 00F0E8 8000E4E8 00041880 */ sll $v1, $a0, 2 +/* 00F0EC 8000E4EC 3C028012 */ lui $v0, 0x8012 +/* 00F0F0 8000E4F0 3C0E8012 */ lui $t6, %hi(D_8011AEA0) # $t6, 0x8012 +/* 00F0F4 8000E4F4 00431021 */ addu $v0, $v0, $v1 +/* 00F0F8 8000E4F8 25CEAEA0 */ addiu $t6, %lo(D_8011AEA0) # addiu $t6, $t6, -0x5160 +/* 00F0FC 8000E4FC 8C42AEB0 */ lw $v0, -0x5150($v0) +/* 00F100 8000E500 006E2821 */ addu $a1, $v1, $t6 +/* 00F104 8000E504 8CAF0000 */ lw $t7, ($a1) +/* 00F108 8000E508 3C198012 */ lui $t9, 0x8012 +/* 00F10C 8000E50C AC40000C */ sw $zero, 0xc($v0) +/* 00F110 8000E510 AC400008 */ sw $zero, 8($v0) +/* 00F114 8000E514 AC400004 */ sw $zero, 4($v0) +/* 00F118 8000E518 AC4F0000 */ sw $t7, ($v0) +/* 00F11C 8000E51C 0323C821 */ addu $t9, $t9, $v1 +/* 00F120 8000E520 8F39AE98 */ lw $t9, -0x5168($t9) +/* 00F124 8000E524 8CB80000 */ lw $t8, ($a1) +/* 00F128 8000E528 24020010 */ li $v0, 16 +/* 00F12C 8000E52C 00003825 */ move $a3, $zero +/* 00F130 8000E530 03194021 */ addu $t0, $t8, $t9 +.L8000E534: +/* 00F134 8000E534 24E70004 */ addiu $a3, $a3, 4 +/* 00F138 8000E538 A1000000 */ sb $zero, ($t0) +/* 00F13C 8000E53C A1000001 */ sb $zero, 1($t0) +/* 00F140 8000E540 A1000002 */ sb $zero, 2($t0) +/* 00F144 8000E544 A1000003 */ sb $zero, 3($t0) +/* 00F148 8000E548 14E2FFFA */ bne $a3, $v0, .L8000E534 +/* 00F14C 8000E54C 25080004 */ addiu $t0, $t0, 4 +/* 00F150 8000E550 03E00008 */ jr $ra +/* 00F154 8000E554 00000000 */ nop + +/* 00F158 8000E558 8C82003C */ lw $v0, 0x3c($a0) +/* 00F15C 8000E55C 3C058012 */ lui $a1, %hi(D_8011AE98) # $a1, 0x8012 +/* 00F160 8000E560 14400003 */ bnez $v0, .L8000E570 +/* 00F164 8000E564 24A5AE98 */ addiu $a1, %lo(D_8011AE98) # addiu $a1, $a1, -0x5168 +/* 00F168 8000E568 03E00008 */ jr $ra +/* 00F16C 8000E56C 24020001 */ li $v0, 1 + +.L8000E570: +/* 00F170 8000E570 8CA40000 */ lw $a0, ($a1) +/* 00F174 8000E574 00401825 */ move $v1, $v0 +/* 00F178 8000E578 0044082A */ slt $at, $v0, $a0 +/* 00F17C 8000E57C 1420000A */ bnez $at, .L8000E5A8 +/* 00F180 8000E580 3C0E8012 */ lui $t6, %hi(D_8011AEA0) # $t6, 0x8012 +/* 00F184 8000E584 8DCEAEA0 */ lw $t6, %lo(D_8011AEA0)($t6) +/* 00F188 8000E588 00000000 */ nop +/* 00F18C 8000E58C 000E78C0 */ sll $t7, $t6, 3 +/* 00F190 8000E590 01E4C021 */ addu $t8, $t7, $a0 +/* 00F194 8000E594 0302082A */ slt $at, $t8, $v0 +/* 00F198 8000E598 14200003 */ bnez $at, .L8000E5A8 +/* 00F19C 8000E59C 00000000 */ nop +/* 00F1A0 8000E5A0 03E00008 */ jr $ra +/* 00F1A4 8000E5A4 00001025 */ move $v0, $zero + +.L8000E5A8: +/* 00F1A8 8000E5A8 8CA20004 */ lw $v0, 4($a1) +/* 00F1AC 8000E5AC 3C198012 */ lui $t9, %hi(D_8011AEA4) # $t9, 0x8012 +/* 00F1B0 8000E5B0 0062082A */ slt $at, $v1, $v0 +/* 00F1B4 8000E5B4 1420000A */ bnez $at, .L8000E5E0 +/* 00F1B8 8000E5B8 00000000 */ nop +/* 00F1BC 8000E5BC 8F39AEA4 */ lw $t9, %lo(D_8011AEA4)($t9) +/* 00F1C0 8000E5C0 00000000 */ nop +/* 00F1C4 8000E5C4 001940C0 */ sll $t0, $t9, 3 +/* 00F1C8 8000E5C8 01024821 */ addu $t1, $t0, $v0 +/* 00F1CC 8000E5CC 0123082A */ slt $at, $t1, $v1 +/* 00F1D0 8000E5D0 14200004 */ bnez $at, .L8000E5E4 +/* 00F1D4 8000E5D4 24020001 */ li $v0, 1 +/* 00F1D8 8000E5D8 03E00008 */ jr $ra +/* 00F1DC 8000E5DC 24020001 */ li $v0, 1 + +.L8000E5E0: +/* 00F1E0 8000E5E0 24020001 */ li $v0, 1 +.L8000E5E4: +/* 00F1E4 8000E5E4 03E00008 */ jr $ra +/* 00F1E8 8000E5E8 00000000 */ nop + +/* 00F1EC 8000E5EC 3C068012 */ lui $a2, %hi(D_8011AE98) # $a2, 0x8012 +/* 00F1F0 8000E5F0 3C0B8012 */ lui $t3, %hi(D_8011AEA0) # $t3, 0x8012 +/* 00F1F4 8000E5F4 256BAEA0 */ addiu $t3, %lo(D_8011AEA0) # addiu $t3, $t3, -0x5160 +/* 00F1F8 8000E5F8 24C6AE98 */ addiu $a2, %lo(D_8011AE98) # addiu $a2, $a2, -0x5168 +/* 00F1FC 8000E5FC 90820001 */ lbu $v0, 1($a0) +/* 00F200 8000E600 8CC30000 */ lw $v1, ($a2) +/* 00F204 8000E604 8D6F0000 */ lw $t7, ($t3) +/* 00F208 8000E608 8CC50004 */ lw $a1, 4($a2) +/* 00F20C 8000E60C 8D790004 */ lw $t9, 4($t3) +/* 00F210 8000E610 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 00F214 8000E614 304E003F */ andi $t6, $v0, 0x3f +/* 00F218 8000E618 0083082A */ slt $at, $a0, $v1 +/* 00F21C 8000E61C 01E3C021 */ addu $t8, $t7, $v1 +/* 00F220 8000E620 03256021 */ addu $t4, $t9, $a1 +/* 00F224 8000E624 01C01025 */ move $v0, $t6 +/* 00F228 8000E628 AFB8002C */ sw $t8, 0x2c($sp) +/* 00F22C 8000E62C 14200006 */ bnez $at, .L8000E648 +/* 00F230 8000E630 AFAC0030 */ sw $t4, 0x30($sp) +/* 00F234 8000E634 0098082A */ slt $at, $a0, $t8 +/* 00F238 8000E638 10200004 */ beqz $at, .L8000E64C +/* 00F23C 8000E63C 0085082A */ slt $at, $a0, $a1 +/* 00F240 8000E640 1000000A */ b .L8000E66C +/* 00F244 8000E644 AFA0001C */ sw $zero, 0x1c($sp) +.L8000E648: +/* 00F248 8000E648 0085082A */ slt $at, $a0, $a1 +.L8000E64C: +/* 00F24C 8000E64C 14200008 */ bnez $at, .L8000E670 +/* 00F250 8000E650 8FA8001C */ lw $t0, 0x1c($sp) +/* 00F254 8000E654 8FAE0030 */ lw $t6, 0x30($sp) +/* 00F258 8000E658 240F0001 */ li $t7, 1 +/* 00F25C 8000E65C 008E082A */ slt $at, $a0, $t6 +/* 00F260 8000E660 10200003 */ beqz $at, .L8000E670 +/* 00F264 8000E664 8FA8001C */ lw $t0, 0x1c($sp) +/* 00F268 8000E668 AFAF001C */ sw $t7, 0x1c($sp) +.L8000E66C: +/* 00F26C 8000E66C 8FA8001C */ lw $t0, 0x1c($sp) +.L8000E670: +/* 00F270 8000E670 00823021 */ addu $a2, $a0, $v0 +/* 00F274 8000E674 0008C080 */ sll $t8, $t0, 2 +/* 00F278 8000E678 03B83821 */ addu $a3, $sp, $t8 +/* 00F27C 8000E67C 8CE7002C */ lw $a3, 0x2c($a3) +/* 00F280 8000E680 00801825 */ move $v1, $a0 +/* 00F284 8000E684 00C7082B */ sltu $at, $a2, $a3 +/* 00F288 8000E688 00C02825 */ move $a1, $a2 +/* 00F28C 8000E68C 10200018 */ beqz $at, .L8000E6F0 +/* 00F290 8000E690 03004025 */ move $t0, $t8 +/* 00F294 8000E694 00E65023 */ subu $t2, $a3, $a2 +/* 00F298 8000E698 31590003 */ andi $t9, $t2, 3 +/* 00F29C 8000E69C 13200008 */ beqz $t9, .L8000E6C0 +/* 00F2A0 8000E6A0 03264821 */ addu $t1, $t9, $a2 +.L8000E6A4: +/* 00F2A4 8000E6A4 90AC0000 */ lbu $t4, ($a1) +/* 00F2A8 8000E6A8 24A50001 */ addiu $a1, $a1, 1 +/* 00F2AC 8000E6AC 24630001 */ addiu $v1, $v1, 1 +/* 00F2B0 8000E6B0 1525FFFC */ bne $t1, $a1, .L8000E6A4 +/* 00F2B4 8000E6B4 A06CFFFF */ sb $t4, -1($v1) +/* 00F2B8 8000E6B8 10A7000D */ beq $a1, $a3, .L8000E6F0 +/* 00F2BC 8000E6BC 00000000 */ nop +.L8000E6C0: +/* 00F2C0 8000E6C0 90AD0000 */ lbu $t5, ($a1) +/* 00F2C4 8000E6C4 24A50004 */ addiu $a1, $a1, 4 +/* 00F2C8 8000E6C8 A06D0000 */ sb $t5, ($v1) +/* 00F2CC 8000E6CC 90AEFFFD */ lbu $t6, -3($a1) +/* 00F2D0 8000E6D0 24630004 */ addiu $v1, $v1, 4 +/* 00F2D4 8000E6D4 A06EFFFD */ sb $t6, -3($v1) +/* 00F2D8 8000E6D8 90AFFFFE */ lbu $t7, -2($a1) +/* 00F2DC 8000E6DC 00000000 */ nop +/* 00F2E0 8000E6E0 A06FFFFE */ sb $t7, -2($v1) +/* 00F2E4 8000E6E4 90B8FFFF */ lbu $t8, -1($a1) +/* 00F2E8 8000E6E8 14A7FFF5 */ bne $a1, $a3, .L8000E6C0 +/* 00F2EC 8000E6EC A078FFFF */ sb $t8, -1($v1) +.L8000E6F0: +/* 00F2F0 8000E6F0 01681821 */ addu $v1, $t3, $t0 +/* 00F2F4 8000E6F4 8C790000 */ lw $t9, ($v1) +/* 00F2F8 8000E6F8 3C068012 */ lui $a2, %hi(D_8011AE5C) # $a2, 0x8012 +/* 00F2FC 8000E6FC 03226023 */ subu $t4, $t9, $v0 +/* 00F300 8000E700 AC6C0000 */ sw $t4, ($v1) +/* 00F304 8000E704 8CC6AE5C */ lw $a2, %lo(D_8011AE5C)($a2) +/* 00F308 8000E708 00004025 */ move $t0, $zero +/* 00F30C 8000E70C 18C00021 */ blez $a2, .L8000E794 +/* 00F310 8000E710 00002825 */ move $a1, $zero +/* 00F314 8000E714 3C0B8012 */ lui $t3, %hi(D_8011AE58) # $t3, 0x8012 +/* 00F318 8000E718 256BAE58 */ addiu $t3, %lo(D_8011AE58) # addiu $t3, $t3, -0x51a8 +.L8000E71C: +/* 00F31C 8000E71C 8D6D0000 */ lw $t5, ($t3) +/* 00F320 8000E720 24A50001 */ addiu $a1, $a1, 1 +/* 00F324 8000E724 01A87021 */ addu $t6, $t5, $t0 +/* 00F328 8000E728 8DC30000 */ lw $v1, ($t6) +/* 00F32C 8000E72C 00000000 */ nop +/* 00F330 8000E730 10600016 */ beqz $v1, .L8000E78C +/* 00F334 8000E734 00A6082A */ slt $at, $a1, $a2 +/* 00F338 8000E738 8C69003C */ lw $t1, 0x3c($v1) +/* 00F33C 8000E73C 00000000 */ nop +/* 00F340 8000E740 11200011 */ beqz $t1, .L8000E788 +/* 00F344 8000E744 0089082A */ slt $at, $a0, $t1 +/* 00F348 8000E748 10200009 */ beqz $at, .L8000E770 +/* 00F34C 8000E74C 01205025 */ move $t2, $t1 +/* 00F350 8000E750 0127082A */ slt $at, $t1, $a3 +/* 00F354 8000E754 10200006 */ beqz $at, .L8000E770 +/* 00F358 8000E758 01227823 */ subu $t7, $t1, $v0 +/* 00F35C 8000E75C AC6F003C */ sw $t7, 0x3c($v1) +/* 00F360 8000E760 3C068012 */ lui $a2, %hi(D_8011AE5C) # $a2, 0x8012 +/* 00F364 8000E764 8CC6AE5C */ lw $a2, %lo(D_8011AE5C)($a2) +/* 00F368 8000E768 10000008 */ b .L8000E78C +/* 00F36C 8000E76C 00A6082A */ slt $at, $a1, $a2 +.L8000E770: +/* 00F370 8000E770 148A0006 */ bne $a0, $t2, .L8000E78C +/* 00F374 8000E774 00A6082A */ slt $at, $a1, $a2 +/* 00F378 8000E778 AC60003C */ sw $zero, 0x3c($v1) +/* 00F37C 8000E77C 3C068012 */ lui $a2, %hi(D_8011AE5C) # $a2, 0x8012 +/* 00F380 8000E780 8CC6AE5C */ lw $a2, %lo(D_8011AE5C)($a2) +/* 00F384 8000E784 00000000 */ nop +.L8000E788: +/* 00F388 8000E788 00A6082A */ slt $at, $a1, $a2 +.L8000E78C: +/* 00F38C 8000E78C 1420FFE3 */ bnez $at, .L8000E71C +/* 00F390 8000E790 25080004 */ addiu $t0, $t0, 4 +.L8000E794: +/* 00F394 8000E794 03E00008 */ jr $ra +/* 00F398 8000E798 27BD0040 */ addiu $sp, $sp, 0x40 + +/* 00F39C 8000E79C 3C068012 */ lui $a2, %hi(D_8011AEC0) # $a2, 0x8012 +/* 00F3A0 8000E7A0 8CC6AEC0 */ lw $a2, %lo(D_8011AEC0)($a2) +/* 00F3A4 8000E7A4 3C188012 */ lui $t8, %hi(D_8011AEA0) # $t8, 0x8012 +/* 00F3A8 8000E7A8 00064080 */ sll $t0, $a2, 2 +/* 00F3AC 8000E7AC 2718AEA0 */ addiu $t8, %lo(D_8011AEA0) # addiu $t8, $t8, -0x5160 +/* 00F3B0 8000E7B0 3C0D8012 */ lui $t5, 0x8012 +/* 00F3B4 8000E7B4 90820001 */ lbu $v0, 1($a0) +/* 00F3B8 8000E7B8 90A30001 */ lbu $v1, 1($a1) +/* 00F3BC 8000E7BC 01A86821 */ addu $t5, $t5, $t0 +/* 00F3C0 8000E7C0 01184821 */ addu $t1, $t0, $t8 +/* 00F3C4 8000E7C4 8D390000 */ lw $t9, ($t1) +/* 00F3C8 8000E7C8 8DADAEB0 */ lw $t5, -0x5150($t5) +/* 00F3CC 8000E7CC 304E003F */ andi $t6, $v0, 0x3f +/* 00F3D0 8000E7D0 306F003F */ andi $t7, $v1, 0x3f +/* 00F3D4 8000E7D4 01EE082A */ slt $at, $t7, $t6 +/* 00F3D8 8000E7D8 032D3821 */ addu $a3, $t9, $t5 +/* 00F3DC 8000E7DC 01C01025 */ move $v0, $t6 +/* 00F3E0 8000E7E0 01E01825 */ move $v1, $t7 +/* 00F3E4 8000E7E4 1020000E */ beqz $at, .L8000E820 +/* 00F3E8 8000E7E8 24E70010 */ addiu $a3, $a3, 0x10 +/* 00F3EC 8000E7EC 008E4021 */ addu $t0, $a0, $t6 +/* 00F3F0 8000E7F0 0107082B */ sltu $at, $t0, $a3 +/* 00F3F4 8000E7F4 008F3021 */ addu $a2, $a0, $t7 +/* 00F3F8 8000E7F8 10200017 */ beqz $at, .L8000E858 +/* 00F3FC 8000E7FC 00E05025 */ move $t2, $a3 +.L8000E800: +/* 00F400 8000E800 910E0000 */ lbu $t6, ($t0) +/* 00F404 8000E804 25080001 */ addiu $t0, $t0, 1 +/* 00F408 8000E808 010A082B */ sltu $at, $t0, $t2 +/* 00F40C 8000E80C 24C60001 */ addiu $a2, $a2, 1 +/* 00F410 8000E810 1420FFFB */ bnez $at, .L8000E800 +/* 00F414 8000E814 A0CEFFFF */ sb $t6, -1($a2) +/* 00F418 8000E818 10000010 */ b .L8000E85C +/* 00F41C 8000E81C 00003025 */ move $a2, $zero +.L8000E820: +/* 00F420 8000E820 0043082A */ slt $at, $v0, $v1 +/* 00F424 8000E824 1020000C */ beqz $at, .L8000E858 +/* 00F428 8000E828 00E37821 */ addu $t7, $a3, $v1 +/* 00F42C 8000E82C 01E23023 */ subu $a2, $t7, $v0 +/* 00F430 8000E830 00835021 */ addu $t2, $a0, $v1 +/* 00F434 8000E834 0146082B */ sltu $at, $t2, $a2 +/* 00F438 8000E838 10200007 */ beqz $at, .L8000E858 +/* 00F43C 8000E83C 00E04025 */ move $t0, $a3 +.L8000E840: +/* 00F440 8000E840 9118FFFF */ lbu $t8, -1($t0) +/* 00F444 8000E844 24C6FFFF */ addiu $a2, $a2, -1 +/* 00F448 8000E848 0146082B */ sltu $at, $t2, $a2 +/* 00F44C 8000E84C 2508FFFF */ addiu $t0, $t0, -1 +/* 00F450 8000E850 1420FFFB */ bnez $at, .L8000E840 +/* 00F454 8000E854 A0D80000 */ sb $t8, ($a2) +.L8000E858: +/* 00F458 8000E858 00003025 */ move $a2, $zero +.L8000E85C: +/* 00F45C 8000E85C 00803825 */ move $a3, $a0 +/* 00F460 8000E860 00A04025 */ move $t0, $a1 +.L8000E864: +/* 00F464 8000E864 91190000 */ lbu $t9, ($t0) +/* 00F468 8000E868 24C60001 */ addiu $a2, $a2, 1 +/* 00F46C 8000E86C 00C3082A */ slt $at, $a2, $v1 +/* 00F470 8000E870 24E70001 */ addiu $a3, $a3, 1 +/* 00F474 8000E874 25080001 */ addiu $t0, $t0, 1 +/* 00F478 8000E878 1420FFFA */ bnez $at, .L8000E864 +/* 00F47C 8000E87C A0F9FFFF */ sb $t9, -1($a3) +/* 00F480 8000E880 8D2D0000 */ lw $t5, ($t1) +/* 00F484 8000E884 00000000 */ nop +/* 00F488 8000E888 01A37021 */ addu $t6, $t5, $v1 +/* 00F48C 8000E88C 01C27823 */ subu $t7, $t6, $v0 +/* 00F490 8000E890 03E00008 */ jr $ra +/* 00F494 8000E894 AD2F0000 */ sw $t7, ($t1) + +/* 00F498 8000E898 3C0F8012 */ lui $t7, %hi(D_8011AEA0) # $t7, 0x8012 +/* 00F49C 8000E89C 25EFAEA0 */ addiu $t7, %lo(D_8011AEA0) # addiu $t7, $t7, -0x5160 +/* 00F4A0 8000E8A0 00053080 */ sll $a2, $a1, 2 +/* 00F4A4 8000E8A4 90820001 */ lbu $v0, 1($a0) +/* 00F4A8 8000E8A8 00CF3821 */ addu $a3, $a2, $t7 +/* 00F4AC 8000E8AC 3C188012 */ lui $t8, 0x8012 +/* 00F4B0 8000E8B0 8CE80000 */ lw $t0, ($a3) +/* 00F4B4 8000E8B4 0306C021 */ addu $t8, $t8, $a2 +/* 00F4B8 8000E8B8 8F18AE98 */ lw $t8, -0x5168($t8) +/* 00F4BC 8000E8BC 304E003F */ andi $t6, $v0, 0x3f +/* 00F4C0 8000E8C0 010EC821 */ addu $t9, $t0, $t6 +/* 00F4C4 8000E8C4 01C01025 */ move $v0, $t6 +/* 00F4C8 8000E8C8 ACF90000 */ sw $t9, ($a3) +/* 00F4CC 8000E8CC 00004825 */ move $t1, $zero +/* 00F4D0 8000E8D0 19C0001B */ blez $t6, .L8000E940 +/* 00F4D4 8000E8D4 01181821 */ addu $v1, $t0, $t8 +/* 00F4D8 8000E8D8 31C80003 */ andi $t0, $t6, 3 +/* 00F4DC 8000E8DC 1100000A */ beqz $t0, .L8000E908 +/* 00F4E0 8000E8E0 01002825 */ move $a1, $t0 +/* 00F4E4 8000E8E4 00603021 */ addu $a2, $v1, $zero +/* 00F4E8 8000E8E8 00803821 */ addu $a3, $a0, $zero +.L8000E8EC: +/* 00F4EC 8000E8EC 90EA0000 */ lbu $t2, ($a3) +/* 00F4F0 8000E8F0 25290001 */ addiu $t1, $t1, 1 +/* 00F4F4 8000E8F4 24C60001 */ addiu $a2, $a2, 1 +/* 00F4F8 8000E8F8 24E70001 */ addiu $a3, $a3, 1 +/* 00F4FC 8000E8FC 14A9FFFB */ bne $a1, $t1, .L8000E8EC +/* 00F500 8000E900 A0CAFFFF */ sb $t2, -1($a2) +/* 00F504 8000E904 1122000E */ beq $t1, $v0, .L8000E940 +.L8000E908: +/* 00F508 8000E908 00693021 */ addu $a2, $v1, $t1 +/* 00F50C 8000E90C 00893821 */ addu $a3, $a0, $t1 +.L8000E910: +/* 00F510 8000E910 90EB0000 */ lbu $t3, ($a3) +/* 00F514 8000E914 25290004 */ addiu $t1, $t1, 4 +/* 00F518 8000E918 A0CB0000 */ sb $t3, ($a2) +/* 00F51C 8000E91C 90EC0001 */ lbu $t4, 1($a3) +/* 00F520 8000E920 24C60004 */ addiu $a2, $a2, 4 +/* 00F524 8000E924 A0CCFFFD */ sb $t4, -3($a2) +/* 00F528 8000E928 90ED0002 */ lbu $t5, 2($a3) +/* 00F52C 8000E92C 24E70004 */ addiu $a3, $a3, 4 +/* 00F530 8000E930 A0CDFFFE */ sb $t5, -2($a2) +/* 00F534 8000E934 90EEFFFF */ lbu $t6, -1($a3) +/* 00F538 8000E938 1522FFF5 */ bne $t1, $v0, .L8000E910 +/* 00F53C 8000E93C A0CEFFFF */ sb $t6, -1($a2) +.L8000E940: +/* 00F540 8000E940 03E00008 */ jr $ra +/* 00F544 8000E944 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_005740/func_8000E948.s b/asm/non_matchings/unknown_005740/func_8000E948.s new file mode 100644 index 00000000..e320338a --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E948.s @@ -0,0 +1,21 @@ +glabel func_8000E948 +/* 00F548 8000E948 04800006 */ bltz $a0, .L8000E964 +/* 00F54C 8000E94C 3C0E8012 */ lui $t6, %hi(D_8011AE5C) # $t6, 0x8012 +/* 00F550 8000E950 8DCEAE5C */ lw $t6, %lo(D_8011AE5C)($t6) +/* 00F554 8000E954 3C0F8012 */ lui $t7, 0x8012 +/* 00F558 8000E958 008E082A */ slt $at, $a0, $t6 +/* 00F55C 8000E95C 14200003 */ bnez $at, .L8000E96C +/* 00F560 8000E960 00000000 */ nop +.L8000E964: +/* 00F564 8000E964 03E00008 */ jr $ra +/* 00F568 8000E968 00001025 */ move $v0, $zero + +.L8000E96C: +/* 00F56C 8000E96C 8DEFAE58 */ lw $t7, -0x51a8($t7) +/* 00F570 8000E970 0004C080 */ sll $t8, $a0, 2 +/* 00F574 8000E974 01F8C821 */ addu $t9, $t7, $t8 +/* 00F578 8000E978 8F220000 */ lw $v0, ($t9) +/* 00F57C 8000E97C 00000000 */ nop +/* 00F580 8000E980 03E00008 */ jr $ra +/* 00F584 8000E984 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000E988.s b/asm/non_matchings/unknown_005740/func_8000E988.s new file mode 100644 index 00000000..38f21924 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E988.s @@ -0,0 +1,22 @@ +glabel func_8000E988 +/* 00F588 8000E988 3C0E8012 */ lui $t6, %hi(D_8011AE60) # $t6, 0x8012 +/* 00F58C 8000E98C 8DCEAE60 */ lw $t6, %lo(D_8011AE60)($t6) +/* 00F590 8000E990 3C0F8012 */ lui $t7, %hi(D_8011AE5C) # $t7, 0x8012 +/* 00F594 8000E994 AC8E0000 */ sw $t6, ($a0) +/* 00F598 8000E998 8DEFAE5C */ lw $t7, %lo(D_8011AE5C)($t7) +/* 00F59C 8000E99C 3C028012 */ lui $v0, %hi(D_8011AE58) # $v0, 0x8012 +/* 00F5A0 8000E9A0 ACAF0000 */ sw $t7, ($a1) +/* 00F5A4 8000E9A4 8C42AE58 */ lw $v0, %lo(D_8011AE58)($v0) +/* 00F5A8 8000E9A8 03E00008 */ jr $ra +/* 00F5AC 8000E9AC 00000000 */ nop + +/* 00F5B0 8000E9B0 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 +/* 00F5B4 8000E9B4 8C42AE5C */ lw $v0, %lo(D_8011AE5C)($v0) +/* 00F5B8 8000E9B8 03E00008 */ jr $ra +/* 00F5BC 8000E9BC 00000000 */ nop + +/* 00F5C0 8000E9C0 3C028012 */ lui $v0, %hi(D_8011AE64) # $v0, 0x8012 +/* 00F5C4 8000E9C4 8C42AE64 */ lw $v0, %lo(D_8011AE64)($v0) +/* 00F5C8 8000E9C8 03E00008 */ jr $ra +/* 00F5CC 8000E9CC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8000E9D0.s b/asm/non_matchings/unknown_005740/func_8000E9D0.s new file mode 100644 index 00000000..43a02324 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000E9D0.s @@ -0,0 +1,35 @@ +glabel func_8000E9D0 +/* 00F5D0 8000E9D0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 00F5D4 8000E9D4 AFBF0014 */ sw $ra, 0x14($sp) +/* 00F5D8 8000E9D8 848E0006 */ lh $t6, 6($a0) +/* 00F5DC 8000E9DC 00802825 */ move $a1, $a0 +/* 00F5E0 8000E9E0 35CF8000 */ ori $t7, $t6, 0x8000 +/* 00F5E4 8000E9E4 A48F0006 */ sh $t7, 6($a0) +/* 00F5E8 8000E9E8 8484002C */ lh $a0, 0x2c($a0) +/* 00F5EC 8000E9EC AFA50018 */ sw $a1, 0x18($sp) +/* 00F5F0 8000E9F0 3498C000 */ ori $t8, $a0, 0xc000 +/* 00F5F4 8000E9F4 0018CC00 */ sll $t9, $t8, 0x10 +/* 00F5F8 8000E9F8 0C00916D */ jal func_800245B4 +/* 00F5FC 8000E9FC 00192403 */ sra $a0, $t9, 0x10 +/* 00F600 8000EA00 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 +/* 00F604 8000EA04 2442AE5C */ addiu $v0, %lo(D_8011AE5C) # addiu $v0, $v0, -0x51a4 +/* 00F608 8000EA08 8C4A0000 */ lw $t2, ($v0) +/* 00F60C 8000EA0C 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 +/* 00F610 8000EA10 8D29AE58 */ lw $t1, %lo(D_8011AE58)($t1) +/* 00F614 8000EA14 8FA50018 */ lw $a1, 0x18($sp) +/* 00F618 8000EA18 000A5880 */ sll $t3, $t2, 2 +/* 00F61C 8000EA1C 012B6021 */ addu $t4, $t1, $t3 +/* 00F620 8000EA20 AD850000 */ sw $a1, ($t4) +/* 00F624 8000EA24 8C4D0000 */ lw $t5, ($v0) +/* 00F628 8000EA28 00000000 */ nop +/* 00F62C 8000EA2C 25AE0001 */ addiu $t6, $t5, 1 +/* 00F630 8000EA30 AC4E0000 */ sw $t6, ($v0) +/* 00F634 8000EA34 3C028012 */ lui $v0, %hi(D_8011AE64) # $v0, 0x8012 +/* 00F638 8000EA38 2442AE64 */ addiu $v0, %lo(D_8011AE64) # addiu $v0, $v0, -0x519c +/* 00F63C 8000EA3C 8C4F0000 */ lw $t7, ($v0) +/* 00F640 8000EA40 8FBF0014 */ lw $ra, 0x14($sp) +/* 00F644 8000EA44 25F80001 */ addiu $t8, $t7, 1 +/* 00F648 8000EA48 AC580000 */ sw $t8, ($v0) +/* 00F64C 8000EA4C 03E00008 */ jr $ra +/* 00F650 8000EA50 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_005740/func_8000EA54.s b/asm/non_matchings/unknown_005740/func_8000EA54.s new file mode 100644 index 00000000..0dff26c1 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000EA54.s @@ -0,0 +1,830 @@ +glabel func_8000EA54 +/* 00F654 8000EA54 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 00F658 8000EA58 AFBF0024 */ sw $ra, 0x24($sp) +/* 00F65C 8000EA5C AFB30020 */ sw $s3, 0x20($sp) +/* 00F660 8000EA60 AFB2001C */ sw $s2, 0x1c($sp) +/* 00F664 8000EA64 AFB10018 */ sw $s1, 0x18($sp) +/* 00F668 8000EA68 AFB00014 */ sw $s0, 0x14($sp) +/* 00F66C 8000EA6C AFA40068 */ sw $a0, 0x68($sp) +/* 00F670 8000EA70 0C01BAA4 */ jal func_8006EA90 +/* 00F674 8000EA74 AFA5006C */ sw $a1, 0x6c($sp) +/* 00F678 8000EA78 8FA30068 */ lw $v1, 0x68($sp) +/* 00F67C 8000EA7C 00408825 */ move $s1, $v0 +/* 00F680 8000EA80 906F0001 */ lbu $t7, 1($v1) +/* 00F684 8000EA84 906E0000 */ lbu $t6, ($v1) +/* 00F688 8000EA88 31F80080 */ andi $t8, $t7, 0x80 +/* 00F68C 8000EA8C 0018C840 */ sll $t9, $t8, 1 +/* 00F690 8000EA90 01D92825 */ or $a1, $t6, $t9 +/* 00F694 8000EA94 AFA50064 */ sw $a1, 0x64($sp) +/* 00F698 8000EA98 0C02DDAE */ jal func_800B76B8 +/* 00F69C 8000EA9C 00002025 */ move $a0, $zero +/* 00F6A0 8000EAA0 8FA3006C */ lw $v1, 0x6c($sp) +/* 00F6A4 8000EAA4 3C0F8012 */ lui $t7, %hi(D_8011AD68) # $t7, 0x8012 +/* 00F6A8 8000EAA8 30680002 */ andi $t0, $v1, 2 +/* 00F6AC 8000EAAC 11000004 */ beqz $t0, .L8000EAC0 +/* 00F6B0 8000EAB0 01001825 */ move $v1, $t0 +/* 00F6B4 8000EAB4 87A40066 */ lh $a0, 0x66($sp) +/* 00F6B8 8000EAB8 10000009 */ b .L8000EAE0 +/* 00F6BC 8000EABC 00000000 */ nop +.L8000EAC0: +/* 00F6C0 8000EAC0 8FAA0064 */ lw $t2, 0x64($sp) +/* 00F6C4 8000EAC4 3C098012 */ lui $t1, %hi(D_8011AEB8) # $t1, 0x8012 +/* 00F6C8 8000EAC8 8D29AEB8 */ lw $t1, %lo(D_8011AEB8)($t1) +/* 00F6CC 8000EACC 000A5840 */ sll $t3, $t2, 1 +/* 00F6D0 8000EAD0 012B6021 */ addu $t4, $t1, $t3 +/* 00F6D4 8000EAD4 85840000 */ lh $a0, ($t4) +/* 00F6D8 8000EAD8 00000000 */ nop +/* 00F6DC 8000EADC A7A4004E */ sh $a0, 0x4e($sp) +.L8000EAE0: +/* 00F6E0 8000EAE0 8DEFAD68 */ lw $t7, %lo(D_8011AD68)($t7) +/* 00F6E4 8000EAE4 00008025 */ move $s0, $zero +/* 00F6E8 8000EAE8 008F082A */ slt $at, $a0, $t7 +/* 00F6EC 8000EAEC 14200002 */ bnez $at, .L8000EAF8 +/* 00F6F0 8000EAF0 3C028012 */ lui $v0, %hi(D_8011AD58) # $v0, 0x8012 +/* 00F6F4 8000EAF4 00002025 */ move $a0, $zero +.L8000EAF8: +/* 00F6F8 8000EAF8 2442AD58 */ addiu $v0, %lo(D_8011AD58) # addiu $v0, $v0, -0x52a8 +.L8000EAFC: +/* 00F6FC 8000EAFC 8C580000 */ lw $t8, ($v0) +/* 00F700 8000EB00 00000000 */ nop +/* 00F704 8000EB04 03107021 */ addu $t6, $t8, $s0 +/* 00F708 8000EB08 26100004 */ addiu $s0, $s0, 4 +/* 00F70C 8000EB0C 2A010800 */ slti $at, $s0, 0x800 +/* 00F710 8000EB10 1420FFFA */ bnez $at, .L8000EAFC +/* 00F714 8000EB14 ADC00000 */ sw $zero, ($t6) +/* 00F718 8000EB18 8C520000 */ lw $s2, ($v0) +/* 00F71C 8000EB1C 24190002 */ li $t9, 2 +/* 00F720 8000EB20 A6590006 */ sh $t9, 6($s2) +/* 00F724 8000EB24 A7A4004E */ sh $a0, 0x4e($sp) +/* 00F728 8000EB28 0C0031C6 */ jal func_8000C718 +/* 00F72C 8000EB2C AFA3002C */ sw $v1, 0x2c($sp) +/* 00F730 8000EB30 14400003 */ bnez $v0, .L8000EB40 +/* 00F734 8000EB34 AE420040 */ sw $v0, 0x40($s2) +/* 00F738 8000EB38 100002BC */ b .L8000F62C +/* 00F73C 8000EB3C 00001025 */ move $v0, $zero +.L8000EB40: +/* 00F740 8000EB40 8E500040 */ lw $s0, 0x40($s2) +/* 00F744 8000EB44 00000000 */ nop +/* 00F748 8000EB48 96080030 */ lhu $t0, 0x30($s0) +/* 00F74C 8000EB4C 00000000 */ nop +/* 00F750 8000EB50 310A0080 */ andi $t2, $t0, 0x80 +/* 00F754 8000EB54 11400005 */ beqz $t2, .L8000EB6C +/* 00F758 8000EB58 00000000 */ nop +/* 00F75C 8000EB5C 86490006 */ lh $t1, 6($s2) +/* 00F760 8000EB60 8E500040 */ lw $s0, 0x40($s2) +/* 00F764 8000EB64 352B0080 */ ori $t3, $t1, 0x80 +/* 00F768 8000EB68 A64B0006 */ sh $t3, 6($s2) +.L8000EB6C: +/* 00F76C 8000EB6C 820C0054 */ lb $t4, 0x54($s0) +/* 00F770 8000EB70 24010063 */ li $at, 99 +/* 00F774 8000EB74 1581000B */ bne $t4, $at, .L8000EBA4 +/* 00F778 8000EB78 8FA20068 */ lw $v0, 0x68($sp) +/* 00F77C 8000EB7C 8E2D0010 */ lw $t5, 0x10($s1) +/* 00F780 8000EB80 00002025 */ move $a0, $zero +/* 00F784 8000EB84 31AF0001 */ andi $t7, $t5, 1 +/* 00F788 8000EB88 11E00006 */ beqz $t7, .L8000EBA4 +/* 00F78C 8000EB8C 8FA20068 */ lw $v0, 0x68($sp) +/* 00F790 8000EB90 0C02DDAE */ jal func_800B76B8 +/* 00F794 8000EB94 2405FFFF */ li $a1, -1 +/* 00F798 8000EB98 100002A4 */ b .L8000F62C +/* 00F79C 8000EB9C 00001025 */ move $v0, $zero +/* 00F7A0 8000EBA0 8FA20068 */ lw $v0, 0x68($sp) +.L8000EBA4: +/* 00F7A4 8000EBA4 00000000 */ nop +/* 00F7A8 8000EBA8 84580002 */ lh $t8, 2($v0) +/* 00F7AC 8000EBAC 00000000 */ nop +/* 00F7B0 8000EBB0 44982000 */ mtc1 $t8, $f4 +/* 00F7B4 8000EBB4 00000000 */ nop +/* 00F7B8 8000EBB8 468021A0 */ cvt.s.w $f6, $f4 +/* 00F7BC 8000EBBC E646000C */ swc1 $f6, 0xc($s2) +/* 00F7C0 8000EBC0 844E0004 */ lh $t6, 4($v0) +/* 00F7C4 8000EBC4 C64C000C */ lwc1 $f12, 0xc($s2) +/* 00F7C8 8000EBC8 448E4000 */ mtc1 $t6, $f8 +/* 00F7CC 8000EBCC 00000000 */ nop +/* 00F7D0 8000EBD0 468042A0 */ cvt.s.w $f10, $f8 +/* 00F7D4 8000EBD4 E64A0010 */ swc1 $f10, 0x10($s2) +/* 00F7D8 8000EBD8 84590006 */ lh $t9, 6($v0) +/* 00F7DC 8000EBDC C64E0010 */ lwc1 $f14, 0x10($s2) +/* 00F7E0 8000EBE0 44998000 */ mtc1 $t9, $f16 +/* 00F7E4 8000EBE4 00000000 */ nop +/* 00F7E8 8000EBE8 468084A0 */ cvt.s.w $f18, $f16 +/* 00F7EC 8000EBEC E6520014 */ swc1 $f18, 0x14($s2) +/* 00F7F0 8000EBF0 8E460014 */ lw $a2, 0x14($s2) +/* 00F7F4 8000EBF4 0C00A7C6 */ jal func_80029F18 +/* 00F7F8 8000EBF8 00000000 */ nop +/* 00F7FC 8000EBFC A642002E */ sh $v0, 0x2e($s2) +/* 00F800 8000EC00 87A8004E */ lh $t0, 0x4e($sp) +/* 00F804 8000EC04 00000000 */ nop +/* 00F808 8000EC08 A648002C */ sh $t0, 0x2c($s2) +/* 00F80C 8000EC0C 8FAA0068 */ lw $t2, 0x68($sp) +/* 00F810 8000EC10 00000000 */ nop +/* 00F814 8000EC14 AE4A003C */ sw $t2, 0x3c($s2) +/* 00F818 8000EC18 8FA90064 */ lw $t1, 0x64($sp) +/* 00F81C 8000EC1C 00000000 */ nop +/* 00F820 8000EC20 A649004A */ sh $t1, 0x4a($s2) +/* 00F824 8000EC24 87A40066 */ lh $a0, 0x66($sp) +/* 00F828 8000EC28 0C00916D */ jal func_800245B4 +/* 00F82C 8000EC2C 00000000 */ nop +/* 00F830 8000EC30 8E500040 */ lw $s0, 0x40($s2) +/* 00F834 8000EC34 240C00FF */ li $t4, 255 +/* 00F838 8000EC38 C604000C */ lwc1 $f4, 0xc($s0) +/* 00F83C 8000EC3C 00000000 */ nop +/* 00F840 8000EC40 E6440008 */ swc1 $f4, 8($s2) +/* 00F844 8000EC44 860B0050 */ lh $t3, 0x50($s0) +/* 00F848 8000EC48 C64A0008 */ lwc1 $f10, 8($s2) +/* 00F84C 8000EC4C 448B3000 */ mtc1 $t3, $f6 +/* 00F850 8000EC50 A24C0039 */ sb $t4, 0x39($s2) +/* 00F854 8000EC54 46803220 */ cvt.s.w $f8, $f6 +/* 00F858 8000EC58 460A4402 */ mul.s $f16, $f8, $f10 +/* 00F85C 8000EC5C E6500034 */ swc1 $f16, 0x34($s2) +/* 00F860 8000EC60 82040054 */ lb $a0, 0x54($s0) +/* 00F864 8000EC64 0C008F8C */ jal func_80023E30 +/* 00F868 8000EC68 00000000 */ nop +/* 00F86C 8000EC6C AFA20050 */ sw $v0, 0x50($sp) +/* 00F870 8000EC70 8E500040 */ lw $s0, 0x40($s2) +/* 00F874 8000EC74 8FA7006C */ lw $a3, 0x6c($sp) +/* 00F878 8000EC78 820D0052 */ lb $t5, 0x52($s0) +/* 00F87C 8000EC7C 264E0080 */ addiu $t6, $s2, 0x80 +/* 00F880 8000EC80 25AF0001 */ addiu $t7, $t5, 1 +/* 00F884 8000EC84 A20F0052 */ sb $t7, 0x52($s0) +/* 00F888 8000EC88 8E500040 */ lw $s0, 0x40($s2) +/* 00F88C 8000EC8C 30F90010 */ andi $t9, $a3, 0x10 +/* 00F890 8000EC90 82180053 */ lb $t8, 0x53($s0) +/* 00F894 8000EC94 82130055 */ lb $s3, 0x55($s0) +/* 00F898 8000EC98 AFB80064 */ sw $t8, 0x64($sp) +/* 00F89C 8000EC9C 13200002 */ beqz $t9, .L8000ECA8 +/* 00F8A0 8000ECA0 AE4E0068 */ sw $t6, 0x68($s2) +/* 00F8A4 8000ECA4 24130001 */ li $s3, 1 +.L8000ECA8: +/* 00F8A8 8000ECA8 82080054 */ lb $t0, 0x54($s0) +/* 00F8AC 8000ECAC 00003025 */ move $a2, $zero +/* 00F8B0 8000ECB0 250AFFC2 */ addiu $t2, $t0, -0x3e +/* 00F8B4 8000ECB4 2D410027 */ sltiu $at, $t2, 0x27 +/* 00F8B8 8000ECB8 10200049 */ beqz $at, .L8000EDE0 +/* 00F8BC 8000ECBC 000A5080 */ sll $t2, $t2, 2 +/* 00F8C0 8000ECC0 3C01800E */ lui $at, 0x800e +/* 00F8C4 8000ECC4 002A0821 */ addu $at, $at, $t2 +/* 00F8C8 8000ECC8 8C2A51B4 */ lw $t2, 0x51b4($at) +/* 00F8CC 8000ECCC 00000000 */ nop +/* 00F8D0 8000ECD0 01400008 */ jr $t2 +/* 00F8D4 8000ECD4 00000000 */ nop +/* 00F8D8 8000ECD8 24040007 */ li $a0, 7 +/* 00F8DC 8000ECDC 0C01867D */ jal func_800619F4 +/* 00F8E0 8000ECE0 AFA6005C */ sw $a2, 0x5c($sp) +/* 00F8E4 8000ECE4 8FA6005C */ lw $a2, 0x5c($sp) +/* 00F8E8 8000ECE8 8FA7006C */ lw $a3, 0x6c($sp) +/* 00F8EC 8000ECEC 1000003D */ b .L8000EDE4 +/* 00F8F0 8000ECF0 8FAF002C */ lw $t7, 0x2c($sp) +/* 00F8F4 8000ECF4 0C02708A */ jal func_8009C228 +/* 00F8F8 8000ECF8 00002025 */ move $a0, $zero +/* 00F8FC 8000ECFC A242003A */ sb $v0, 0x3a($s2) +/* 00F900 8000ED00 8FA7006C */ lw $a3, 0x6c($sp) +/* 00F904 8000ED04 00403025 */ move $a2, $v0 +/* 00F908 8000ED08 10000035 */ b .L8000EDE0 +/* 00F90C 8000ED0C 24530001 */ addiu $s3, $v0, 1 +/* 00F910 8000ED10 922B0048 */ lbu $t3, 0x48($s1) +/* 00F914 8000ED14 9629000E */ lhu $t1, 0xe($s1) +/* 00F918 8000ED18 256CFFFF */ addiu $t4, $t3, -1 +/* 00F91C 8000ED1C 000C6840 */ sll $t5, $t4, 1 +/* 00F920 8000ED20 01A93007 */ srav $a2, $t1, $t5 +/* 00F924 8000ED24 30CF0003 */ andi $t7, $a2, 3 +/* 00F928 8000ED28 11E0002D */ beqz $t7, .L8000EDE0 +/* 00F92C 8000ED2C 01E03025 */ move $a2, $t7 +/* 00F930 8000ED30 25E6FFFF */ addiu $a2, $t7, -1 +/* 00F934 8000ED34 24D30001 */ addiu $s3, $a2, 1 +/* 00F938 8000ED38 10000029 */ b .L8000EDE0 +/* 00F93C 8000ED3C A246003A */ sb $a2, 0x3a($s2) +/* 00F940 8000ED40 92260017 */ lbu $a2, 0x17($s1) +/* 00F944 8000ED44 00000000 */ nop +/* 00F948 8000ED48 24D30001 */ addiu $s3, $a2, 1 +/* 00F94C 8000ED4C 10000024 */ b .L8000EDE0 +/* 00F950 8000ED50 A246003A */ sb $a2, 0x3a($s2) +/* 00F954 8000ED54 9638000E */ lhu $t8, 0xe($s1) +/* 00F958 8000ED58 00009825 */ move $s3, $zero +/* 00F95C 8000ED5C 24020003 */ li $v0, 3 +/* 00F960 8000ED60 AFB80064 */ sw $t8, 0x64($sp) +.L8000ED64: +/* 00F964 8000ED64 8FAE0064 */ lw $t6, 0x64($sp) +/* 00F968 8000ED68 8FA80064 */ lw $t0, 0x64($sp) +/* 00F96C 8000ED6C 31D90003 */ andi $t9, $t6, 3 +/* 00F970 8000ED70 14590002 */ bne $v0, $t9, .L8000ED7C +/* 00F974 8000ED74 00085083 */ sra $t2, $t0, 2 +/* 00F978 8000ED78 24C60001 */ addiu $a2, $a2, 1 +.L8000ED7C: +/* 00F97C 8000ED7C 26730001 */ addiu $s3, $s3, 1 +/* 00F980 8000ED80 2A610004 */ slti $at, $s3, 4 +/* 00F984 8000ED84 1420FFF7 */ bnez $at, .L8000ED64 +/* 00F988 8000ED88 AFAA0064 */ sw $t2, 0x64($sp) +/* 00F98C 8000ED8C A246003A */ sb $a2, 0x3a($s2) +/* 00F990 8000ED90 10000013 */ b .L8000EDE0 +/* 00F994 8000ED94 24D30001 */ addiu $s3, $a2, 1 +/* 00F998 8000ED98 24130001 */ li $s3, 1 +/* 00F99C 8000ED9C 0C027B1C */ jal func_8009EC70 +/* 00F9A0 8000EDA0 AFA6005C */ sw $a2, 0x5c($sp) +/* 00F9A4 8000EDA4 8FA6005C */ lw $a2, 0x5c($sp) +/* 00F9A8 8000EDA8 10400008 */ beqz $v0, .L8000EDCC +/* 00F9AC 8000EDAC 00000000 */ nop +/* 00F9B0 8000EDB0 8E4B0040 */ lw $t3, 0x40($s2) +/* 00F9B4 8000EDB4 00000000 */ nop +/* 00F9B8 8000EDB8 8D620010 */ lw $v0, 0x10($t3) +/* 00F9BC 8000EDBC 00000000 */ nop +/* 00F9C0 8000EDC0 8C4C0004 */ lw $t4, 4($v0) +/* 00F9C4 8000EDC4 00000000 */ nop +/* 00F9C8 8000EDC8 AC4C0000 */ sw $t4, ($v0) +.L8000EDCC: +/* 00F9CC 8000EDCC 8E4D0040 */ lw $t5, 0x40($s2) +/* 00F9D0 8000EDD0 24090001 */ li $t1, 1 +/* 00F9D4 8000EDD4 A1A90055 */ sb $t1, 0x55($t5) +/* 00F9D8 8000EDD8 8FA7006C */ lw $a3, 0x6c($sp) +/* 00F9DC 8000EDDC 00000000 */ nop +.L8000EDE0: +/* 00F9E0 8000EDE0 8FAF002C */ lw $t7, 0x2c($sp) +.L8000EDE4: +/* 00F9E4 8000EDE4 00000000 */ nop +/* 00F9E8 8000EDE8 15E0004B */ bnez $t7, .L8000EF18 +/* 00F9EC 8000EDEC 8FB80064 */ lw $t8, 0x64($sp) +/* 00F9F0 8000EDF0 8642004A */ lh $v0, 0x4a($s2) +/* 00F9F4 8000EDF4 24010019 */ li $at, 25 +/* 00F9F8 8000EDF8 10410016 */ beq $v0, $at, .L8000EE54 +/* 00F9FC 8000EDFC 240100CB */ li $at, 203 +/* 00FA00 8000EE00 14410045 */ bne $v0, $at, .L8000EF18 +/* 00FA04 8000EE04 8FB80064 */ lw $t8, 0x64($sp) +/* 00FA08 8000EE08 24130001 */ li $s3, 1 +/* 00FA0C 8000EE0C 0C027B1C */ jal func_8009EC70 +/* 00FA10 8000EE10 AFA6005C */ sw $a2, 0x5c($sp) +/* 00FA14 8000EE14 8FA6005C */ lw $a2, 0x5c($sp) +/* 00FA18 8000EE18 10400008 */ beqz $v0, .L8000EE3C +/* 00FA1C 8000EE1C 00000000 */ nop +/* 00FA20 8000EE20 8E580040 */ lw $t8, 0x40($s2) +/* 00FA24 8000EE24 00000000 */ nop +/* 00FA28 8000EE28 8F020010 */ lw $v0, 0x10($t8) +/* 00FA2C 8000EE2C 00000000 */ nop +/* 00FA30 8000EE30 8C4E0004 */ lw $t6, 4($v0) +/* 00FA34 8000EE34 00000000 */ nop +/* 00FA38 8000EE38 AC4E0000 */ sw $t6, ($v0) +.L8000EE3C: +/* 00FA3C 8000EE3C 8E480040 */ lw $t0, 0x40($s2) +/* 00FA40 8000EE40 24190001 */ li $t9, 1 +/* 00FA44 8000EE44 A1190055 */ sb $t9, 0x55($t0) +/* 00FA48 8000EE48 8FA7006C */ lw $a3, 0x6c($sp) +/* 00FA4C 8000EE4C 10000032 */ b .L8000EF18 +/* 00FA50 8000EE50 8FB80064 */ lw $t8, 0x64($sp) +.L8000EE54: +/* 00FA54 8000EE54 0C027B1C */ jal func_8009EC70 +/* 00FA58 8000EE58 00000000 */ nop +/* 00FA5C 8000EE5C 10400028 */ beqz $v0, .L8000EF00 +/* 00FA60 8000EE60 24130005 */ li $s3, 5 +/* 00FA64 8000EE64 8E4A0040 */ lw $t2, 0x40($s2) +/* 00FA68 8000EE68 24060001 */ li $a2, 1 +/* 00FA6C 8000EE6C 8D420010 */ lw $v0, 0x10($t2) +/* 00FA70 8000EE70 00068080 */ sll $s0, $a2, 2 +/* 00FA74 8000EE74 8C4B0014 */ lw $t3, 0x14($v0) +/* 00FA78 8000EE78 00000000 */ nop +/* 00FA7C 8000EE7C AC4B0000 */ sw $t3, ($v0) +/* 00FA80 8000EE80 8E4C0040 */ lw $t4, 0x40($s2) +/* 00FA84 8000EE84 00000000 */ nop +/* 00FA88 8000EE88 8D890010 */ lw $t1, 0x10($t4) +/* 00FA8C 8000EE8C 00000000 */ nop +/* 00FA90 8000EE90 01301021 */ addu $v0, $t1, $s0 +/* 00FA94 8000EE94 8C4D0014 */ lw $t5, 0x14($v0) +/* 00FA98 8000EE98 00000000 */ nop +/* 00FA9C 8000EE9C AC4D0000 */ sw $t5, ($v0) +/* 00FAA0 8000EEA0 8E4F0040 */ lw $t7, 0x40($s2) +/* 00FAA4 8000EEA4 00000000 */ nop +/* 00FAA8 8000EEA8 8DF80010 */ lw $t8, 0x10($t7) +/* 00FAAC 8000EEAC 00000000 */ nop +/* 00FAB0 8000EEB0 03101021 */ addu $v0, $t8, $s0 +/* 00FAB4 8000EEB4 8C4E0018 */ lw $t6, 0x18($v0) +/* 00FAB8 8000EEB8 00000000 */ nop +/* 00FABC 8000EEBC AC4E0004 */ sw $t6, 4($v0) +/* 00FAC0 8000EEC0 8E590040 */ lw $t9, 0x40($s2) +/* 00FAC4 8000EEC4 00000000 */ nop +/* 00FAC8 8000EEC8 8F280010 */ lw $t0, 0x10($t9) +/* 00FACC 8000EECC 00000000 */ nop +/* 00FAD0 8000EED0 01101021 */ addu $v0, $t0, $s0 +/* 00FAD4 8000EED4 8C4A001C */ lw $t2, 0x1c($v0) +/* 00FAD8 8000EED8 00000000 */ nop +/* 00FADC 8000EEDC AC4A0008 */ sw $t2, 8($v0) +/* 00FAE0 8000EEE0 8E4B0040 */ lw $t3, 0x40($s2) +/* 00FAE4 8000EEE4 00000000 */ nop +/* 00FAE8 8000EEE8 8D6C0010 */ lw $t4, 0x10($t3) +/* 00FAEC 8000EEEC 00000000 */ nop +/* 00FAF0 8000EEF0 01901021 */ addu $v0, $t4, $s0 +/* 00FAF4 8000EEF4 8C490020 */ lw $t1, 0x20($v0) +/* 00FAF8 8000EEF8 00000000 */ nop +/* 00FAFC 8000EEFC AC49000C */ sw $t1, 0xc($v0) +.L8000EF00: +/* 00FB00 8000EF00 8E4F0040 */ lw $t7, 0x40($s2) +/* 00FB04 8000EF04 240D0005 */ li $t5, 5 +/* 00FB08 8000EF08 A1ED0055 */ sb $t5, 0x55($t7) +/* 00FB0C 8000EF0C 8FA7006C */ lw $a3, 0x6c($sp) +/* 00FB10 8000EF10 00003025 */ move $a2, $zero +/* 00FB14 8000EF14 8FB80064 */ lw $t8, 0x64($sp) +.L8000EF18: +/* 00FB18 8000EF18 8FAB0064 */ lw $t3, 0x64($sp) +/* 00FB1C 8000EF1C 17000033 */ bnez $t8, .L8000EFEC +/* 00FB20 8000EF20 00001825 */ move $v1, $zero +/* 00FB24 8000EF24 00D3082A */ slt $at, $a2, $s3 +/* 00FB28 8000EF28 10200066 */ beqz $at, .L8000F0C4 +/* 00FB2C 8000EF2C 00068080 */ sll $s0, $a2, 2 +.L8000EF30: +/* 00FB30 8000EF30 14C00009 */ bnez $a2, .L8000EF58 +/* 00FB34 8000EF34 24D10001 */ addiu $s1, $a2, 1 +/* 00FB38 8000EF38 30EE0004 */ andi $t6, $a3, 4 +/* 00FB3C 8000EF3C 11C00007 */ beqz $t6, .L8000EF5C +/* 00FB40 8000EF40 24010001 */ li $at, 1 +/* 00FB44 8000EF44 8E590068 */ lw $t9, 0x68($s2) +/* 00FB48 8000EF48 00000000 */ nop +/* 00FB4C 8000EF4C 03304021 */ addu $t0, $t9, $s0 +/* 00FB50 8000EF50 1000001F */ b .L8000EFD0 +/* 00FB54 8000EF54 AD000000 */ sw $zero, ($t0) +.L8000EF58: +/* 00FB58 8000EF58 24010001 */ li $at, 1 +.L8000EF5C: +/* 00FB5C 8000EF5C 14C10008 */ bne $a2, $at, .L8000EF80 +/* 00FB60 8000EF60 30EA0008 */ andi $t2, $a3, 8 +/* 00FB64 8000EF64 11400006 */ beqz $t2, .L8000EF80 +/* 00FB68 8000EF68 00000000 */ nop +/* 00FB6C 8000EF6C 8E4B0068 */ lw $t3, 0x68($s2) +/* 00FB70 8000EF70 00000000 */ nop +/* 00FB74 8000EF74 01706021 */ addu $t4, $t3, $s0 +/* 00FB78 8000EF78 10000015 */ b .L8000EFD0 +/* 00FB7C 8000EF7C AD800000 */ sw $zero, ($t4) +.L8000EF80: +/* 00FB80 8000EF80 8E490040 */ lw $t1, 0x40($s2) +/* 00FB84 8000EF84 8FA50050 */ lw $a1, 0x50($sp) +/* 00FB88 8000EF88 8D2D0010 */ lw $t5, 0x10($t1) +/* 00FB8C 8000EF8C 00000000 */ nop +/* 00FB90 8000EF90 01B07821 */ addu $t7, $t5, $s0 +/* 00FB94 8000EF94 8DE40000 */ lw $a0, ($t7) +/* 00FB98 8000EF98 0C017E67 */ jal func_8005F99C +/* 00FB9C 8000EF9C A3A30037 */ sb $v1, 0x37($sp) +/* 00FBA0 8000EFA0 8E580068 */ lw $t8, 0x68($s2) +/* 00FBA4 8000EFA4 83A30037 */ lb $v1, 0x37($sp) +/* 00FBA8 8000EFA8 03107021 */ addu $t6, $t8, $s0 +/* 00FBAC 8000EFAC ADC20000 */ sw $v0, ($t6) +/* 00FBB0 8000EFB0 8E590068 */ lw $t9, 0x68($s2) +/* 00FBB4 8000EFB4 00000000 */ nop +/* 00FBB8 8000EFB8 03304021 */ addu $t0, $t9, $s0 +/* 00FBBC 8000EFBC 8D0A0000 */ lw $t2, ($t0) +/* 00FBC0 8000EFC0 00000000 */ nop +/* 00FBC4 8000EFC4 15400003 */ bnez $t2, .L8000EFD4 +/* 00FBC8 8000EFC8 8FA7006C */ lw $a3, 0x6c($sp) +/* 00FBCC 8000EFCC 24030001 */ li $v1, 1 +.L8000EFD0: +/* 00FBD0 8000EFD0 8FA7006C */ lw $a3, 0x6c($sp) +.L8000EFD4: +/* 00FBD4 8000EFD4 0233082A */ slt $at, $s1, $s3 +/* 00FBD8 8000EFD8 02203025 */ move $a2, $s1 +/* 00FBDC 8000EFDC 1420FFD4 */ bnez $at, .L8000EF30 +/* 00FBE0 8000EFE0 26100004 */ addiu $s0, $s0, 4 +/* 00FBE4 8000EFE4 10000037 */ b .L8000F0C4 +/* 00FBE8 8000EFE8 00000000 */ nop +.L8000EFEC: +/* 00FBEC 8000EFEC 24010004 */ li $at, 4 +/* 00FBF0 8000EFF0 1561001B */ bne $t3, $at, .L8000F060 +/* 00FBF4 8000EFF4 00D3082A */ slt $at, $a2, $s3 +/* 00FBF8 8000EFF8 10200032 */ beqz $at, .L8000F0C4 +/* 00FBFC 8000EFFC 00068080 */ sll $s0, $a2, 2 +.L8000F000: +/* 00FC00 8000F000 8E4C0040 */ lw $t4, 0x40($s2) +/* 00FC04 8000F004 24D10001 */ addiu $s1, $a2, 1 +/* 00FC08 8000F008 8D890010 */ lw $t1, 0x10($t4) +/* 00FC0C 8000F00C 00000000 */ nop +/* 00FC10 8000F010 01306821 */ addu $t5, $t1, $s0 +/* 00FC14 8000F014 8DA40000 */ lw $a0, ($t5) +/* 00FC18 8000F018 0C01EB9D */ jal func_8007AE74 +/* 00FC1C 8000F01C A3A30037 */ sb $v1, 0x37($sp) +/* 00FC20 8000F020 8E4F0068 */ lw $t7, 0x68($s2) +/* 00FC24 8000F024 83A30037 */ lb $v1, 0x37($sp) +/* 00FC28 8000F028 01F0C021 */ addu $t8, $t7, $s0 +/* 00FC2C 8000F02C AF020000 */ sw $v0, ($t8) +/* 00FC30 8000F030 8E4E0068 */ lw $t6, 0x68($s2) +/* 00FC34 8000F034 02203025 */ move $a2, $s1 +/* 00FC38 8000F038 01D0C821 */ addu $t9, $t6, $s0 +/* 00FC3C 8000F03C 8F280000 */ lw $t0, ($t9) +/* 00FC40 8000F040 0233082A */ slt $at, $s1, $s3 +/* 00FC44 8000F044 15000002 */ bnez $t0, .L8000F050 +/* 00FC48 8000F048 00000000 */ nop +/* 00FC4C 8000F04C 24030001 */ li $v1, 1 +.L8000F050: +/* 00FC50 8000F050 1420FFEB */ bnez $at, .L8000F000 +/* 00FC54 8000F054 26100004 */ addiu $s0, $s0, 4 +/* 00FC58 8000F058 1000001A */ b .L8000F0C4 +/* 00FC5C 8000F05C 00000000 */ nop +.L8000F060: +/* 00FC60 8000F060 00D3082A */ slt $at, $a2, $s3 +/* 00FC64 8000F064 10200017 */ beqz $at, .L8000F0C4 +/* 00FC68 8000F068 00068080 */ sll $s0, $a2, 2 +.L8000F06C: +/* 00FC6C 8000F06C 8E4A0040 */ lw $t2, 0x40($s2) +/* 00FC70 8000F070 2405000A */ li $a1, 10 +/* 00FC74 8000F074 8D4B0010 */ lw $t3, 0x10($t2) +/* 00FC78 8000F078 24D10001 */ addiu $s1, $a2, 1 +/* 00FC7C 8000F07C 01706021 */ addu $t4, $t3, $s0 +/* 00FC80 8000F080 8D840000 */ lw $a0, ($t4) +/* 00FC84 8000F084 0C01F04B */ jal func_8007C12C +/* 00FC88 8000F088 A3A30037 */ sb $v1, 0x37($sp) +/* 00FC8C 8000F08C 8E490068 */ lw $t1, 0x68($s2) +/* 00FC90 8000F090 83A30037 */ lb $v1, 0x37($sp) +/* 00FC94 8000F094 01306821 */ addu $t5, $t1, $s0 +/* 00FC98 8000F098 ADA20000 */ sw $v0, ($t5) +/* 00FC9C 8000F09C 8E4F0068 */ lw $t7, 0x68($s2) +/* 00FCA0 8000F0A0 02203025 */ move $a2, $s1 +/* 00FCA4 8000F0A4 01F0C021 */ addu $t8, $t7, $s0 +/* 00FCA8 8000F0A8 8F0E0000 */ lw $t6, ($t8) +/* 00FCAC 8000F0AC 0233082A */ slt $at, $s1, $s3 +/* 00FCB0 8000F0B0 15C00002 */ bnez $t6, .L8000F0BC +/* 00FCB4 8000F0B4 00000000 */ nop +/* 00FCB8 8000F0B8 24030001 */ li $v1, 1 +.L8000F0BC: +/* 00FCBC 8000F0BC 1420FFEB */ bnez $at, .L8000F06C +/* 00FCC0 8000F0C0 26100004 */ addiu $s0, $s0, 4 +.L8000F0C4: +/* 00FCC4 8000F0C4 10600009 */ beqz $v1, .L8000F0EC +/* 00FCC8 8000F0C8 02402025 */ move $a0, $s2 +/* 00FCCC 8000F0CC 8FA60064 */ lw $a2, 0x64($sp) +/* 00FCD0 8000F0D0 0C003D92 */ jal func_8000F648 +/* 00FCD4 8000F0D4 02602825 */ move $a1, $s3 +/* 00FCD8 8000F0D8 87A4004E */ lh $a0, 0x4e($sp) +/* 00FCDC 8000F0DC 0C003211 */ jal func_8000C844 +/* 00FCE0 8000F0E0 00000000 */ nop +/* 00FCE4 8000F0E4 10000151 */ b .L8000F62C +/* 00FCE8 8000F0E8 00001025 */ move $v0, $zero +.L8000F0EC: +/* 00FCEC 8000F0EC 8E480040 */ lw $t0, 0x40($s2) +/* 00FCF0 8000F0F0 8E590068 */ lw $t9, 0x68($s2) +/* 00FCF4 8000F0F4 810A0055 */ lb $t2, 0x55($t0) +/* 00FCF8 8000F0F8 02402025 */ move $a0, $s2 +/* 00FCFC 8000F0FC 000A5880 */ sll $t3, $t2, 2 +/* 00FD00 8000F100 032B2821 */ addu $a1, $t9, $t3 +/* 00FD04 8000F104 0C008D77 */ jal func_800235DC +/* 00FD08 8000F108 AFA50048 */ sw $a1, 0x48($sp) +/* 00FD0C 8000F10C 8FAC0050 */ lw $t4, 0x50($sp) +/* 00FD10 8000F110 3C018012 */ lui $at, %hi(D_8011AE50) # $at, 0x8012 +/* 00FD14 8000F114 8FA60048 */ lw $a2, 0x48($sp) +/* 00FD18 8000F118 AC20AE50 */ sw $zero, %lo(D_8011AE50)($at) +/* 00FD1C 8000F11C 3C018012 */ lui $at, %hi(D_8011AE54) # $at, 0x8012 +/* 00FD20 8000F120 31890001 */ andi $t1, $t4, 1 +/* 00FD24 8000F124 AC20AE54 */ sw $zero, %lo(D_8011AE54)($at) +/* 00FD28 8000F128 11200008 */ beqz $t1, .L8000F14C +/* 00FD2C 8000F12C 00C23021 */ addu $a2, $a2, $v0 +/* 00FD30 8000F130 02402025 */ move $a0, $s2 +/* 00FD34 8000F134 00C02825 */ move $a1, $a2 +/* 00FD38 8000F138 0C003DFB */ jal func_8000F7EC +/* 00FD3C 8000F13C AFA60048 */ sw $a2, 0x48($sp) +/* 00FD40 8000F140 8FA60048 */ lw $a2, 0x48($sp) +/* 00FD44 8000F144 00000000 */ nop +/* 00FD48 8000F148 00C23021 */ addu $a2, $a2, $v0 +.L8000F14C: +/* 00FD4C 8000F14C 8FAD0050 */ lw $t5, 0x50($sp) +/* 00FD50 8000F150 02402025 */ move $a0, $s2 +/* 00FD54 8000F154 31AF0002 */ andi $t7, $t5, 2 +/* 00FD58 8000F158 11E0000F */ beqz $t7, .L8000F198 +/* 00FD5C 8000F15C 00C02825 */ move $a1, $a2 +/* 00FD60 8000F160 0C003EF3 */ jal func_8000FBCC +/* 00FD64 8000F164 AFA60048 */ sw $a2, 0x48($sp) +/* 00FD68 8000F168 8FA60048 */ lw $a2, 0x48($sp) +/* 00FD6C 8000F16C 1440000A */ bnez $v0, .L8000F198 +/* 00FD70 8000F170 00C23021 */ addu $a2, $a2, $v0 +/* 00FD74 8000F174 8FA60064 */ lw $a2, 0x64($sp) +/* 00FD78 8000F178 02402025 */ move $a0, $s2 +/* 00FD7C 8000F17C 0C003D92 */ jal func_8000F648 +/* 00FD80 8000F180 02602825 */ move $a1, $s3 +/* 00FD84 8000F184 87A4004E */ lh $a0, 0x4e($sp) +/* 00FD88 8000F188 0C003211 */ jal func_8000C844 +/* 00FD8C 8000F18C 00000000 */ nop +/* 00FD90 8000F190 10000126 */ b .L8000F62C +/* 00FD94 8000F194 00001025 */ move $v0, $zero +.L8000F198: +/* 00FD98 8000F198 8FB80050 */ lw $t8, 0x50($sp) +/* 00FD9C 8000F19C 02402025 */ move $a0, $s2 +/* 00FDA0 8000F1A0 330E0004 */ andi $t6, $t8, 4 +/* 00FDA4 8000F1A4 11C00016 */ beqz $t6, .L8000F200 +/* 00FDA8 8000F1A8 00C02825 */ move $a1, $a2 +/* 00FDAC 8000F1AC 0C003F1B */ jal func_8000FC6C +/* 00FDB0 8000F1B0 AFA60048 */ sw $a2, 0x48($sp) +/* 00FDB4 8000F1B4 8FA60048 */ lw $a2, 0x48($sp) +/* 00FDB8 8000F1B8 14400011 */ bnez $v0, .L8000F200 +/* 00FDBC 8000F1BC 00C23021 */ addu $a2, $a2, $v0 +/* 00FDC0 8000F1C0 3C028012 */ lui $v0, %hi(D_8011AE50) # $v0, 0x8012 +/* 00FDC4 8000F1C4 8C42AE50 */ lw $v0, %lo(D_8011AE50)($v0) +/* 00FDC8 8000F1C8 00000000 */ nop +/* 00FDCC 8000F1CC 10400004 */ beqz $v0, .L8000F1E0 +/* 00FDD0 8000F1D0 8FA60064 */ lw $a2, 0x64($sp) +/* 00FDD4 8000F1D4 0C01ECAF */ jal func_8007B2BC +/* 00FDD8 8000F1D8 00402025 */ move $a0, $v0 +/* 00FDDC 8000F1DC 8FA60064 */ lw $a2, 0x64($sp) +.L8000F1E0: +/* 00FDE0 8000F1E0 02402025 */ move $a0, $s2 +/* 00FDE4 8000F1E4 0C003D92 */ jal func_8000F648 +/* 00FDE8 8000F1E8 02602825 */ move $a1, $s3 +/* 00FDEC 8000F1EC 87A4004E */ lh $a0, 0x4e($sp) +/* 00FDF0 8000F1F0 0C003211 */ jal func_8000C844 +/* 00FDF4 8000F1F4 00000000 */ nop +/* 00FDF8 8000F1F8 1000010C */ b .L8000F62C +/* 00FDFC 8000F1FC 00001025 */ move $v0, $zero +.L8000F200: +/* 00FE00 8000F200 8FA80050 */ lw $t0, 0x50($sp) +/* 00FE04 8000F204 02402025 */ move $a0, $s2 +/* 00FE08 8000F208 310A0010 */ andi $t2, $t0, 0x10 +/* 00FE0C 8000F20C 11400006 */ beqz $t2, .L8000F228 +/* 00FE10 8000F210 00C02825 */ move $a1, $a2 +/* 00FE14 8000F214 0C003F48 */ jal func_8000FD20 +/* 00FE18 8000F218 AFA60048 */ sw $a2, 0x48($sp) +/* 00FE1C 8000F21C 8FA60048 */ lw $a2, 0x48($sp) +/* 00FE20 8000F220 00000000 */ nop +/* 00FE24 8000F224 00C23021 */ addu $a2, $a2, $v0 +.L8000F228: +/* 00FE28 8000F228 8FB90050 */ lw $t9, 0x50($sp) +/* 00FE2C 8000F22C 02402025 */ move $a0, $s2 +/* 00FE30 8000F230 332B0020 */ andi $t3, $t9, 0x20 +/* 00FE34 8000F234 11600006 */ beqz $t3, .L8000F250 +/* 00FE38 8000F238 00C02825 */ move $a1, $a2 +/* 00FE3C 8000F23C 0C003F4D */ jal func_8000FD34 +/* 00FE40 8000F240 AFA60048 */ sw $a2, 0x48($sp) +/* 00FE44 8000F244 8FA60048 */ lw $a2, 0x48($sp) +/* 00FE48 8000F248 00000000 */ nop +/* 00FE4C 8000F24C 00C23021 */ addu $a2, $a2, $v0 +.L8000F250: +/* 00FE50 8000F250 8E500040 */ lw $s0, 0x40($s2) +/* 00FE54 8000F254 02402025 */ move $a0, $s2 +/* 00FE58 8000F258 82020056 */ lb $v0, 0x56($s0) +/* 00FE5C 8000F25C 00000000 */ nop +/* 00FE60 8000F260 18400006 */ blez $v0, .L8000F27C +/* 00FE64 8000F264 2841000A */ slti $at, $v0, 0xa +/* 00FE68 8000F268 10200004 */ beqz $at, .L8000F27C +/* 00FE6C 8000F26C 00000000 */ nop +/* 00FE70 8000F270 AE460060 */ sw $a2, 0x60($s2) +/* 00FE74 8000F274 8E500040 */ lw $s0, 0x40($s2) +/* 00FE78 8000F278 24C60030 */ addiu $a2, $a2, 0x30 +.L8000F27C: +/* 00FE7C 8000F27C 820C0057 */ lb $t4, 0x57($s0) +/* 00FE80 8000F280 00C02825 */ move $a1, $a2 +/* 00FE84 8000F284 19800006 */ blez $t4, .L8000F2A0 +/* 00FE88 8000F288 00000000 */ nop +/* 00FE8C 8000F28C 0C003EB1 */ jal func_8000FAC4 +/* 00FE90 8000F290 AFA60048 */ sw $a2, 0x48($sp) +/* 00FE94 8000F294 8FA60048 */ lw $a2, 0x48($sp) +/* 00FE98 8000F298 8E500040 */ lw $s0, 0x40($s2) +/* 00FE9C 8000F29C 00C23021 */ addu $a2, $a2, $v0 +.L8000F2A0: +/* 00FEA0 8000F2A0 8209005A */ lb $t1, 0x5a($s0) +/* 00FEA4 8000F2A4 3C048012 */ lui $a0, %hi(D_8011AE68) # $a0, 0x8012 +/* 00FEA8 8000F2A8 19200007 */ blez $t1, .L8000F2C8 +/* 00FEAC 8000F2AC 00D22823 */ subu $a1, $a2, $s2 +/* 00FEB0 8000F2B0 AE460070 */ sw $a2, 0x70($s2) +/* 00FEB4 8000F2B4 820D005A */ lb $t5, 0x5a($s0) +/* 00FEB8 8000F2B8 00000000 */ nop +/* 00FEBC 8000F2BC 000D7880 */ sll $t7, $t5, 2 +/* 00FEC0 8000F2C0 00CF3021 */ addu $a2, $a2, $t7 +/* 00FEC4 8000F2C4 00D22823 */ subu $a1, $a2, $s2 +.L8000F2C8: +/* 00FEC8 8000F2C8 8C84AE68 */ lw $a0, %lo(D_8011AE68)($a0) +/* 00FECC 8000F2CC 00A08825 */ move $s1, $a1 +/* 00FED0 8000F2D0 0C01C3A4 */ jal func_80070E90 +/* 00FED4 8000F2D4 02408025 */ move $s0, $s2 +/* 00FED8 8000F2D8 14400018 */ bnez $v0, .L8000F33C +/* 00FEDC 8000F2DC 00409025 */ move $s2, $v0 +/* 00FEE0 8000F2E0 3C028012 */ lui $v0, %hi(D_8011AE50) # $v0, 0x8012 +/* 00FEE4 8000F2E4 8C42AE50 */ lw $v0, %lo(D_8011AE50)($v0) +/* 00FEE8 8000F2E8 00000000 */ nop +/* 00FEEC 8000F2EC 10400003 */ beqz $v0, .L8000F2FC +/* 00FEF0 8000F2F0 00000000 */ nop +/* 00FEF4 8000F2F4 0C01ECAF */ jal func_8007B2BC +/* 00FEF8 8000F2F8 00402025 */ move $a0, $v0 +.L8000F2FC: +/* 00FEFC 8000F2FC 3C028012 */ lui $v0, %hi(D_8011AE54) # $v0, 0x8012 +/* 00FF00 8000F300 8C42AE54 */ lw $v0, %lo(D_8011AE54)($v0) +/* 00FF04 8000F304 00000000 */ nop +/* 00FF08 8000F308 10400004 */ beqz $v0, .L8000F31C +/* 00FF0C 8000F30C 8FA60064 */ lw $a2, 0x64($sp) +/* 00FF10 8000F310 0C01ECAF */ jal func_8007B2BC +/* 00FF14 8000F314 00402025 */ move $a0, $v0 +/* 00FF18 8000F318 8FA60064 */ lw $a2, 0x64($sp) +.L8000F31C: +/* 00FF1C 8000F31C 02002025 */ move $a0, $s0 +/* 00FF20 8000F320 0C003D92 */ jal func_8000F648 +/* 00FF24 8000F324 02602825 */ move $a1, $s3 +/* 00FF28 8000F328 87A4004E */ lh $a0, 0x4e($sp) +/* 00FF2C 8000F32C 0C003211 */ jal func_8000C844 +/* 00FF30 8000F330 00000000 */ nop +/* 00FF34 8000F334 100000BD */ b .L8000F62C +/* 00FF38 8000F338 00001025 */ move $v0, $zero +.L8000F33C: +/* 00FF3C 8000F33C 3238000F */ andi $t8, $s1, 0xf +/* 00FF40 8000F340 13000004 */ beqz $t8, .L8000F354 +/* 00FF44 8000F344 00003025 */ move $a2, $zero +/* 00FF48 8000F348 2401FFF0 */ li $at, -16 +/* 00FF4C 8000F34C 02217024 */ and $t6, $s1, $at +/* 00FF50 8000F350 25D10010 */ addiu $s1, $t6, 0x10 +.L8000F354: +/* 00FF54 8000F354 00114083 */ sra $t0, $s1, 2 +/* 00FF58 8000F358 1900000D */ blez $t0, .L8000F390 +/* 00FF5C 8000F35C 00068080 */ sll $s0, $a2, 2 +/* 00FF60 8000F360 3C058012 */ lui $a1, %hi(D_8011AD58) # $a1, 0x8012 +/* 00FF64 8000F364 24A5AD58 */ addiu $a1, %lo(D_8011AD58) # addiu $a1, $a1, -0x52a8 +/* 00FF68 8000F368 00501821 */ addu $v1, $v0, $s0 +/* 00FF6C 8000F36C 00082080 */ sll $a0, $t0, 2 +.L8000F370: +/* 00FF70 8000F370 8CAA0000 */ lw $t2, ($a1) +/* 00FF74 8000F374 24630004 */ addiu $v1, $v1, 4 +/* 00FF78 8000F378 0150C821 */ addu $t9, $t2, $s0 +/* 00FF7C 8000F37C 8F2B0000 */ lw $t3, ($t9) +/* 00FF80 8000F380 26100004 */ addiu $s0, $s0, 4 +/* 00FF84 8000F384 0204082A */ slt $at, $s0, $a0 +/* 00FF88 8000F388 1420FFF9 */ bnez $at, .L8000F370 +/* 00FF8C 8000F38C AC6BFFFC */ sw $t3, -4($v1) +.L8000F390: +/* 00FF90 8000F390 8C430058 */ lw $v1, 0x58($v0) +/* 00FF94 8000F394 3C058012 */ lui $a1, %hi(D_8011AD58) # $a1, 0x8012 +/* 00FF98 8000F398 10600005 */ beqz $v1, .L8000F3B0 +/* 00FF9C 8000F39C 24A5AD58 */ addiu $a1, %lo(D_8011AD58) # addiu $a1, $a1, -0x52a8 +/* 00FFA0 8000F3A0 8CA90000 */ lw $t1, ($a1) +/* 00FFA4 8000F3A4 00436021 */ addu $t4, $v0, $v1 +/* 00FFA8 8000F3A8 01896823 */ subu $t5, $t4, $t1 +/* 00FFAC 8000F3AC AC4D0058 */ sw $t5, 0x58($v0) +.L8000F3B0: +/* 00FFB0 8000F3B0 8C430050 */ lw $v1, 0x50($v0) +/* 00FFB4 8000F3B4 02402025 */ move $a0, $s2 +/* 00FFB8 8000F3B8 10600005 */ beqz $v1, .L8000F3D0 +/* 00FFBC 8000F3BC 00003025 */ move $a2, $zero +/* 00FFC0 8000F3C0 8CB80000 */ lw $t8, ($a1) +/* 00FFC4 8000F3C4 00437821 */ addu $t7, $v0, $v1 +/* 00FFC8 8000F3C8 01F87023 */ subu $t6, $t7, $t8 +/* 00FFCC 8000F3CC AC4E0050 */ sw $t6, 0x50($v0) +.L8000F3D0: +/* 00FFD0 8000F3D0 8C430054 */ lw $v1, 0x54($v0) +/* 00FFD4 8000F3D4 00000000 */ nop +/* 00FFD8 8000F3D8 10600005 */ beqz $v1, .L8000F3F0 +/* 00FFDC 8000F3DC 00000000 */ nop +/* 00FFE0 8000F3E0 8CAA0000 */ lw $t2, ($a1) +/* 00FFE4 8000F3E4 00434021 */ addu $t0, $v0, $v1 +/* 00FFE8 8000F3E8 010AC823 */ subu $t9, $t0, $t2 +/* 00FFEC 8000F3EC AC590054 */ sw $t9, 0x54($v0) +.L8000F3F0: +/* 00FFF0 8000F3F0 8C430064 */ lw $v1, 0x64($v0) +/* 00FFF4 8000F3F4 00000000 */ nop +/* 00FFF8 8000F3F8 10600005 */ beqz $v1, .L8000F410 +/* 00FFFC 8000F3FC 00000000 */ nop +/* 010000 8000F400 8CAC0000 */ lw $t4, ($a1) +/* 010004 8000F404 00435821 */ addu $t3, $v0, $v1 +/* 010008 8000F408 016C4823 */ subu $t1, $t3, $t4 +/* 01000C 8000F40C AC490064 */ sw $t1, 0x64($v0) +.L8000F410: +/* 010010 8000F410 8C43004C */ lw $v1, 0x4c($v0) +/* 010014 8000F414 00000000 */ nop +/* 010018 8000F418 10600005 */ beqz $v1, .L8000F430 +/* 01001C 8000F41C 00000000 */ nop +/* 010020 8000F420 8CAF0000 */ lw $t7, ($a1) +/* 010024 8000F424 00436821 */ addu $t5, $v0, $v1 +/* 010028 8000F428 01AFC023 */ subu $t8, $t5, $t7 +/* 01002C 8000F42C AC58004C */ sw $t8, 0x4c($v0) +.L8000F430: +/* 010030 8000F430 8C43005C */ lw $v1, 0x5c($v0) +/* 010034 8000F434 00000000 */ nop +/* 010038 8000F438 10600005 */ beqz $v1, .L8000F450 +/* 01003C 8000F43C 00000000 */ nop +/* 010040 8000F440 8CA80000 */ lw $t0, ($a1) +/* 010044 8000F444 00437021 */ addu $t6, $v0, $v1 +/* 010048 8000F448 01C85023 */ subu $t2, $t6, $t0 +/* 01004C 8000F44C AC4A005C */ sw $t2, 0x5c($v0) +.L8000F450: +/* 010050 8000F450 8C430060 */ lw $v1, 0x60($v0) +/* 010054 8000F454 3C108012 */ lui $s0, %hi(D_8011AE5C) # $s0, 0x8012 +/* 010058 8000F458 10600005 */ beqz $v1, .L8000F470 +/* 01005C 8000F45C 2610AE5C */ addiu $s0, %lo(D_8011AE5C) # addiu $s0, $s0, -0x51a4 +/* 010060 8000F460 8CAB0000 */ lw $t3, ($a1) +/* 010064 8000F464 0043C821 */ addu $t9, $v0, $v1 +/* 010068 8000F468 032B6023 */ subu $t4, $t9, $t3 +/* 01006C 8000F46C AC4C0060 */ sw $t4, 0x60($v0) +.L8000F470: +/* 010070 8000F470 8C430040 */ lw $v1, 0x40($v0) +/* 010074 8000F474 00000000 */ nop +/* 010078 8000F478 80690057 */ lb $t1, 0x57($v1) +/* 01007C 8000F47C 00000000 */ nop +/* 010080 8000F480 19200007 */ blez $t1, .L8000F4A0 +/* 010084 8000F484 00000000 */ nop +/* 010088 8000F488 8C4D006C */ lw $t5, 0x6c($v0) +/* 01008C 8000F48C 8CB80000 */ lw $t8, ($a1) +/* 010090 8000F490 004D7821 */ addu $t7, $v0, $t5 +/* 010094 8000F494 01F87023 */ subu $t6, $t7, $t8 +/* 010098 8000F498 8C430040 */ lw $v1, 0x40($v0) +/* 01009C 8000F49C AC4E006C */ sw $t6, 0x6c($v0) +.L8000F4A0: +/* 0100A0 8000F4A0 8068005A */ lb $t0, 0x5a($v1) +/* 0100A4 8000F4A4 24490080 */ addiu $t1, $v0, 0x80 +/* 0100A8 8000F4A8 19000006 */ blez $t0, .L8000F4C4 +/* 0100AC 8000F4AC 3C0F8012 */ lui $t7, %hi(D_8011AE58) # $t7, 0x8012 +/* 0100B0 8000F4B0 8C4A0070 */ lw $t2, 0x70($v0) +/* 0100B4 8000F4B4 8CAB0000 */ lw $t3, ($a1) +/* 0100B8 8000F4B8 004AC821 */ addu $t9, $v0, $t2 +/* 0100BC 8000F4BC 032B6023 */ subu $t4, $t9, $t3 +/* 0100C0 8000F4C0 AC4C0070 */ sw $t4, 0x70($v0) +.L8000F4C4: +/* 0100C4 8000F4C4 AC490068 */ sw $t1, 0x68($v0) +/* 0100C8 8000F4C8 8FB1006C */ lw $s1, 0x6c($sp) +/* 0100CC 8000F4CC 00000000 */ nop +/* 0100D0 8000F4D0 322D0001 */ andi $t5, $s1, 1 +/* 0100D4 8000F4D4 11A0000A */ beqz $t5, .L8000F500 +/* 0100D8 8000F4D8 01A08825 */ move $s1, $t5 +/* 0100DC 8000F4DC 8E180000 */ lw $t8, ($s0) +/* 0100E0 8000F4E0 8DEFAE58 */ lw $t7, %lo(D_8011AE58)($t7) +/* 0100E4 8000F4E4 00187080 */ sll $t6, $t8, 2 +/* 0100E8 8000F4E8 01EE4021 */ addu $t0, $t7, $t6 +/* 0100EC 8000F4EC AD020000 */ sw $v0, ($t0) +/* 0100F0 8000F4F0 8E0A0000 */ lw $t2, ($s0) +/* 0100F4 8000F4F4 00000000 */ nop +/* 0100F8 8000F4F8 25590001 */ addiu $t9, $t2, 1 +/* 0100FC 8000F4FC AE190000 */ sw $t9, ($s0) +.L8000F500: +/* 010100 8000F500 3C108012 */ lui $s0, %hi(D_8011AE5C) # $s0, 0x8012 +/* 010104 8000F504 8FA50068 */ lw $a1, 0x68($sp) +/* 010108 8000F508 0C008E2F */ jal func_800238BC +/* 01010C 8000F50C 2610AE5C */ addiu $s0, %lo(D_8011AE5C) # addiu $s0, $s0, -0x51a4 +/* 010110 8000F510 8E42004C */ lw $v0, 0x4c($s2) +/* 010114 8000F514 00000000 */ nop +/* 010118 8000F518 1040000C */ beqz $v0, .L8000F54C +/* 01011C 8000F51C 00000000 */ nop +/* 010120 8000F520 C652000C */ lwc1 $f18, 0xc($s2) +/* 010124 8000F524 00000000 */ nop +/* 010128 8000F528 E4520004 */ swc1 $f18, 4($v0) +/* 01012C 8000F52C 8E4B004C */ lw $t3, 0x4c($s2) +/* 010130 8000F530 C6440010 */ lwc1 $f4, 0x10($s2) +/* 010134 8000F534 00000000 */ nop +/* 010138 8000F538 E5640008 */ swc1 $f4, 8($t3) +/* 01013C 8000F53C 8E4C004C */ lw $t4, 0x4c($s2) +/* 010140 8000F540 C6460014 */ lwc1 $f6, 0x14($s2) +/* 010144 8000F544 00000000 */ nop +/* 010148 8000F548 E586000C */ swc1 $f6, 0xc($t4) +.L8000F54C: +/* 01014C 8000F54C 8E490040 */ lw $t1, 0x40($s2) +/* 010150 8000F550 00000000 */ nop +/* 010154 8000F554 81220056 */ lb $v0, 0x56($t1) +/* 010158 8000F558 00000000 */ nop +/* 01015C 8000F55C 18400025 */ blez $v0, .L8000F5F4 +/* 010160 8000F560 2841000A */ slti $at, $v0, 0xa +/* 010164 8000F564 10200023 */ beqz $at, .L8000F5F4 +/* 010168 8000F568 00000000 */ nop +/* 01016C 8000F56C 0C003E67 */ jal func_8000F99C +/* 010170 8000F570 02402025 */ move $a0, $s2 +/* 010174 8000F574 1040001F */ beqz $v0, .L8000F5F4 +/* 010178 8000F578 3C028012 */ lui $v0, %hi(D_8011AE50) # $v0, 0x8012 +/* 01017C 8000F57C 8C42AE50 */ lw $v0, %lo(D_8011AE50)($v0) +/* 010180 8000F580 00000000 */ nop +/* 010184 8000F584 10400003 */ beqz $v0, .L8000F594 +/* 010188 8000F588 00000000 */ nop +/* 01018C 8000F58C 0C01ECAF */ jal func_8007B2BC +/* 010190 8000F590 00402025 */ move $a0, $v0 +.L8000F594: +/* 010194 8000F594 3C028012 */ lui $v0, %hi(D_8011AE54) # $v0, 0x8012 +/* 010198 8000F598 8C42AE54 */ lw $v0, %lo(D_8011AE54)($v0) +/* 01019C 8000F59C 00000000 */ nop +/* 0101A0 8000F5A0 10400004 */ beqz $v0, .L8000F5B4 +/* 0101A4 8000F5A4 8FA60064 */ lw $a2, 0x64($sp) +/* 0101A8 8000F5A8 0C01ECAF */ jal func_8007B2BC +/* 0101AC 8000F5AC 00402025 */ move $a0, $v0 +/* 0101B0 8000F5B0 8FA60064 */ lw $a2, 0x64($sp) +.L8000F5B4: +/* 0101B4 8000F5B4 02402025 */ move $a0, $s2 +/* 0101B8 8000F5B8 0C003D92 */ jal func_8000F648 +/* 0101BC 8000F5BC 02602825 */ move $a1, $s3 +/* 0101C0 8000F5C0 87A4004E */ lh $a0, 0x4e($sp) +/* 0101C4 8000F5C4 0C003211 */ jal func_8000C844 +/* 0101C8 8000F5C8 00000000 */ nop +/* 0101CC 8000F5CC 0C01C450 */ jal func_80071140 +/* 0101D0 8000F5D0 02402025 */ move $a0, $s2 +/* 0101D4 8000F5D4 12200005 */ beqz $s1, .L8000F5EC +/* 0101D8 8000F5D8 00000000 */ nop +/* 0101DC 8000F5DC 8E0D0000 */ lw $t5, ($s0) +/* 0101E0 8000F5E0 00000000 */ nop +/* 0101E4 8000F5E4 25B8FFFF */ addiu $t8, $t5, -1 +/* 0101E8 8000F5E8 AE180000 */ sw $t8, ($s0) +.L8000F5EC: +/* 0101EC 8000F5EC 1000000F */ b .L8000F62C +/* 0101F0 8000F5F0 00001025 */ move $v0, $zero +.L8000F5F4: +/* 0101F4 8000F5F4 8E4F0040 */ lw $t7, 0x40($s2) +/* 0101F8 8000F5F8 00000000 */ nop +/* 0101FC 8000F5FC 81EE005A */ lb $t6, 0x5a($t7) +/* 010200 8000F600 00000000 */ nop +/* 010204 8000F604 19C00003 */ blez $t6, .L8000F614 +/* 010208 8000F608 00000000 */ nop +/* 01020C 8000F60C 0C003DD6 */ jal func_8000F758 +/* 010210 8000F610 02402025 */ move $a0, $s2 +.L8000F614: +/* 010214 8000F614 0C01867D */ jal func_800619F4 +/* 010218 8000F618 00002025 */ move $a0, $zero +/* 01021C 8000F61C 00002025 */ move $a0, $zero +/* 010220 8000F620 0C02DDAE */ jal func_800B76B8 +/* 010224 8000F624 2405FFFF */ li $a1, -1 +/* 010228 8000F628 02401025 */ move $v0, $s2 +.L8000F62C: +/* 01022C 8000F62C 8FBF0024 */ lw $ra, 0x24($sp) +/* 010230 8000F630 8FB00014 */ lw $s0, 0x14($sp) +/* 010234 8000F634 8FB10018 */ lw $s1, 0x18($sp) +/* 010238 8000F638 8FB2001C */ lw $s2, 0x1c($sp) +/* 01023C 8000F63C 8FB30020 */ lw $s3, 0x20($sp) +/* 010240 8000F640 03E00008 */ jr $ra +/* 010244 8000F644 27BD0068 */ addiu $sp, $sp, 0x68 + diff --git a/asm/non_matchings/unknown_005740/func_8000F648.s b/asm/non_matchings/unknown_005740/func_8000F648.s new file mode 100644 index 00000000..fd87d5b0 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000F648.s @@ -0,0 +1,80 @@ +glabel func_8000F648 +/* 010248 8000F648 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 01024C 8000F64C AFB30020 */ sw $s3, 0x20($sp) +/* 010250 8000F650 AFB2001C */ sw $s2, 0x1c($sp) +/* 010254 8000F654 00A09025 */ move $s2, $a1 +/* 010258 8000F658 00809825 */ move $s3, $a0 +/* 01025C 8000F65C AFBF0024 */ sw $ra, 0x24($sp) +/* 010260 8000F660 AFB10018 */ sw $s1, 0x18($sp) +/* 010264 8000F664 14C00012 */ bnez $a2, .L8000F6B0 +/* 010268 8000F668 AFB00014 */ sw $s0, 0x14($sp) +/* 01026C 8000F66C 18A00033 */ blez $a1, .L8000F73C +/* 010270 8000F670 00008825 */ move $s1, $zero +/* 010274 8000F674 00008025 */ move $s0, $zero +.L8000F678: +/* 010278 8000F678 8E6E0068 */ lw $t6, 0x68($s3) +/* 01027C 8000F67C 00000000 */ nop +/* 010280 8000F680 01D07821 */ addu $t7, $t6, $s0 +/* 010284 8000F684 8DE20000 */ lw $v0, ($t7) +/* 010288 8000F688 00000000 */ nop +/* 01028C 8000F68C 10400003 */ beqz $v0, .L8000F69C +/* 010290 8000F690 00000000 */ nop +/* 010294 8000F694 0C017FD0 */ jal func_8005FF40 +/* 010298 8000F698 00402025 */ move $a0, $v0 +.L8000F69C: +/* 01029C 8000F69C 26310001 */ addiu $s1, $s1, 1 +/* 0102A0 8000F6A0 1632FFF5 */ bne $s1, $s2, .L8000F678 +/* 0102A4 8000F6A4 26100004 */ addiu $s0, $s0, 4 +/* 0102A8 8000F6A8 10000025 */ b .L8000F740 +/* 0102AC 8000F6AC 8FBF0024 */ lw $ra, 0x24($sp) +.L8000F6B0: +/* 0102B0 8000F6B0 24010004 */ li $at, 4 +/* 0102B4 8000F6B4 14C10012 */ bne $a2, $at, .L8000F700 +/* 0102B8 8000F6B8 00000000 */ nop +/* 0102BC 8000F6BC 1A40001F */ blez $s2, .L8000F73C +/* 0102C0 8000F6C0 00008825 */ move $s1, $zero +/* 0102C4 8000F6C4 00008025 */ move $s0, $zero +.L8000F6C8: +/* 0102C8 8000F6C8 8E780068 */ lw $t8, 0x68($s3) +/* 0102CC 8000F6CC 00000000 */ nop +/* 0102D0 8000F6D0 0310C821 */ addu $t9, $t8, $s0 +/* 0102D4 8000F6D4 8F220000 */ lw $v0, ($t9) +/* 0102D8 8000F6D8 00000000 */ nop +/* 0102DC 8000F6DC 10400003 */ beqz $v0, .L8000F6EC +/* 0102E0 8000F6E0 00000000 */ nop +/* 0102E4 8000F6E4 0C01ECAF */ jal func_8007B2BC +/* 0102E8 8000F6E8 00402025 */ move $a0, $v0 +.L8000F6EC: +/* 0102EC 8000F6EC 26310001 */ addiu $s1, $s1, 1 +/* 0102F0 8000F6F0 1632FFF5 */ bne $s1, $s2, .L8000F6C8 +/* 0102F4 8000F6F4 26100004 */ addiu $s0, $s0, 4 +/* 0102F8 8000F6F8 10000011 */ b .L8000F740 +/* 0102FC 8000F6FC 8FBF0024 */ lw $ra, 0x24($sp) +.L8000F700: +/* 010300 8000F700 1A40000E */ blez $s2, .L8000F73C +/* 010304 8000F704 00008825 */ move $s1, $zero +/* 010308 8000F708 00008025 */ move $s0, $zero +.L8000F70C: +/* 01030C 8000F70C 8E680068 */ lw $t0, 0x68($s3) +/* 010310 8000F710 00000000 */ nop +/* 010314 8000F714 01104821 */ addu $t1, $t0, $s0 +/* 010318 8000F718 8D220000 */ lw $v0, ($t1) +/* 01031C 8000F71C 00000000 */ nop +/* 010320 8000F720 10400003 */ beqz $v0, .L8000F730 +/* 010324 8000F724 00000000 */ nop +/* 010328 8000F728 0C01F32C */ jal func_8007CCB0 +/* 01032C 8000F72C 00402025 */ move $a0, $v0 +.L8000F730: +/* 010330 8000F730 26310001 */ addiu $s1, $s1, 1 +/* 010334 8000F734 1632FFF5 */ bne $s1, $s2, .L8000F70C +/* 010338 8000F738 26100004 */ addiu $s0, $s0, 4 +.L8000F73C: +/* 01033C 8000F73C 8FBF0024 */ lw $ra, 0x24($sp) +.L8000F740: +/* 010340 8000F740 8FB00014 */ lw $s0, 0x14($sp) +/* 010344 8000F744 8FB10018 */ lw $s1, 0x18($sp) +/* 010348 8000F748 8FB2001C */ lw $s2, 0x1c($sp) +/* 01034C 8000F74C 8FB30020 */ lw $s3, 0x20($sp) +/* 010350 8000F750 03E00008 */ jr $ra +/* 010354 8000F754 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_005740/func_8000F758.s b/asm/non_matchings/unknown_005740/func_8000F758.s new file mode 100644 index 00000000..a7dc1941 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000F758.s @@ -0,0 +1,41 @@ +glabel func_8000F758 +/* 010358 8000F758 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 01035C 8000F75C AFBF002C */ sw $ra, 0x2c($sp) +/* 010360 8000F760 AFB40028 */ sw $s4, 0x28($sp) +/* 010364 8000F764 AFB30024 */ sw $s3, 0x24($sp) +/* 010368 8000F768 AFB20020 */ sw $s2, 0x20($sp) +/* 01036C 8000F76C AFB1001C */ sw $s1, 0x1c($sp) +/* 010370 8000F770 AFB00018 */ sw $s0, 0x18($sp) +/* 010374 8000F774 8C900040 */ lw $s0, 0x40($a0) +/* 010378 8000F778 00809025 */ move $s2, $a0 +/* 01037C 8000F77C 820E005A */ lb $t6, 0x5a($s0) +/* 010380 8000F780 00008825 */ move $s1, $zero +/* 010384 8000F784 19C00011 */ blez $t6, .L8000F7CC +/* 010388 8000F788 00009825 */ move $s3, $zero +/* 01038C 8000F78C 0000A025 */ move $s4, $zero +.L8000F790: +/* 010390 8000F790 8E0F0024 */ lw $t7, 0x24($s0) +/* 010394 8000F794 02402025 */ move $a0, $s2 +/* 010398 8000F798 0C00C7E2 */ jal func_80031F88 +/* 01039C 8000F79C 01F32821 */ addu $a1, $t7, $s3 +/* 0103A0 8000F7A0 8E580070 */ lw $t8, 0x70($s2) +/* 0103A4 8000F7A4 26310001 */ addiu $s1, $s1, 1 +/* 0103A8 8000F7A8 0314C821 */ addu $t9, $t8, $s4 +/* 0103AC 8000F7AC AF220000 */ sw $v0, ($t9) +/* 0103B0 8000F7B0 8E500040 */ lw $s0, 0x40($s2) +/* 0103B4 8000F7B4 26940004 */ addiu $s4, $s4, 4 +/* 0103B8 8000F7B8 8208005A */ lb $t0, 0x5a($s0) +/* 0103BC 8000F7BC 26730018 */ addiu $s3, $s3, 0x18 +/* 0103C0 8000F7C0 0228082A */ slt $at, $s1, $t0 +/* 0103C4 8000F7C4 1420FFF2 */ bnez $at, .L8000F790 +/* 0103C8 8000F7C8 00000000 */ nop +.L8000F7CC: +/* 0103CC 8000F7CC 8FBF002C */ lw $ra, 0x2c($sp) +/* 0103D0 8000F7D0 8FB00018 */ lw $s0, 0x18($sp) +/* 0103D4 8000F7D4 8FB1001C */ lw $s1, 0x1c($sp) +/* 0103D8 8000F7D8 8FB20020 */ lw $s2, 0x20($sp) +/* 0103DC 8000F7DC 8FB30024 */ lw $s3, 0x24($sp) +/* 0103E0 8000F7E0 8FB40028 */ lw $s4, 0x28($sp) +/* 0103E4 8000F7E4 03E00008 */ jr $ra +/* 0103E8 8000F7E8 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_005740/func_8000F7EC.s b/asm/non_matchings/unknown_005740/func_8000F7EC.s new file mode 100644 index 00000000..ed3f01b2 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000F7EC.s @@ -0,0 +1,116 @@ +glabel func_8000F7EC +/* 0103EC 8000F7EC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0103F0 8000F7F0 AFBF0024 */ sw $ra, 0x24($sp) +/* 0103F4 8000F7F4 AFB00020 */ sw $s0, 0x20($sp) +/* 0103F8 8000F7F8 8C880040 */ lw $t0, 0x40($a0) +/* 0103FC 8000F7FC AC850054 */ sw $a1, 0x54($a0) +/* 010400 8000F800 81020053 */ lb $v0, 0x53($t0) +/* 010404 8000F804 00808025 */ move $s0, $a0 +/* 010408 8000F808 1440004F */ bnez $v0, .L8000F948 +/* 01040C 8000F80C 00003025 */ move $a2, $zero +/* 010410 8000F810 8C840068 */ lw $a0, 0x68($a0) +/* 010414 8000F814 00001825 */ move $v1, $zero +/* 010418 8000F818 8C8E0000 */ lw $t6, ($a0) +/* 01041C 8000F81C 00801025 */ move $v0, $a0 +/* 010420 8000F820 15C00006 */ bnez $t6, .L8000F83C +/* 010424 8000F824 0003C080 */ sll $t8, $v1, 2 +.L8000F828: +/* 010428 8000F828 8C4F0004 */ lw $t7, 4($v0) +/* 01042C 8000F82C 24630001 */ addiu $v1, $v1, 1 +/* 010430 8000F830 11E0FFFD */ beqz $t7, .L8000F828 +/* 010434 8000F834 24420004 */ addiu $v0, $v0, 4 +/* 010438 8000F838 0003C080 */ sll $t8, $v1, 2 +.L8000F83C: +/* 01043C 8000F83C 0098C821 */ addu $t9, $a0, $t8 +/* 010440 8000F840 8F220000 */ lw $v0, ($t9) +/* 010444 8000F844 00000000 */ nop +/* 010448 8000F848 1040004B */ beqz $v0, .L8000F978 +/* 01044C 8000F84C 00000000 */ nop +/* 010450 8000F850 8C490000 */ lw $t1, ($v0) +/* 010454 8000F854 00003825 */ move $a3, $zero +/* 010458 8000F858 8D2A0040 */ lw $t2, 0x40($t1) +/* 01045C 8000F85C 00000000 */ nop +/* 010460 8000F860 11400045 */ beqz $t2, .L8000F978 +/* 010464 8000F864 00000000 */ nop +/* 010468 8000F868 850B003E */ lh $t3, 0x3e($t0) +/* 01046C 8000F86C 8E040054 */ lw $a0, 0x54($s0) +/* 010470 8000F870 8D050028 */ lw $a1, 0x28($t0) +/* 010474 8000F874 8D06002C */ lw $a2, 0x2c($t0) +/* 010478 8000F878 AFAB0010 */ sw $t3, 0x10($sp) +/* 01047C 8000F87C 850C0040 */ lh $t4, 0x40($t0) +/* 010480 8000F880 0C00752D */ jal func_8001D4B4 +/* 010484 8000F884 AFAC0014 */ sw $t4, 0x14($sp) +/* 010488 8000F888 8E080040 */ lw $t0, 0x40($s0) +/* 01048C 8000F88C 00000000 */ nop +/* 010490 8000F890 910D003D */ lbu $t5, 0x3d($t0) +/* 010494 8000F894 00000000 */ nop +/* 010498 8000F898 11A00029 */ beqz $t5, .L8000F940 +/* 01049C 8000F89C 00000000 */ nop +/* 0104A0 8000F8A0 910E003A */ lbu $t6, 0x3a($t0) +/* 0104A4 8000F8A4 8E0F0054 */ lw $t7, 0x54($s0) +/* 0104A8 8000F8A8 00000000 */ nop +/* 0104AC 8000F8AC A1EE0004 */ sb $t6, 4($t7) +/* 0104B0 8000F8B0 8E180040 */ lw $t8, 0x40($s0) +/* 0104B4 8000F8B4 8E090054 */ lw $t1, 0x54($s0) +/* 0104B8 8000F8B8 9319003B */ lbu $t9, 0x3b($t8) +/* 0104BC 8000F8BC 00000000 */ nop +/* 0104C0 8000F8C0 A1390005 */ sb $t9, 5($t1) +/* 0104C4 8000F8C4 8E0A0040 */ lw $t2, 0x40($s0) +/* 0104C8 8000F8C8 8E0C0054 */ lw $t4, 0x54($s0) +/* 0104CC 8000F8CC 914B003C */ lbu $t3, 0x3c($t2) +/* 0104D0 8000F8D0 00000000 */ nop +/* 0104D4 8000F8D4 A18B0006 */ sb $t3, 6($t4) +/* 0104D8 8000F8D8 8E0D0040 */ lw $t5, 0x40($s0) +/* 0104DC 8000F8DC 8E0F0054 */ lw $t7, 0x54($s0) +/* 0104E0 8000F8E0 91AE003D */ lbu $t6, 0x3d($t5) +/* 0104E4 8000F8E4 00000000 */ nop +/* 0104E8 8000F8E8 A1EE0007 */ sb $t6, 7($t7) +/* 0104EC 8000F8EC 8E020054 */ lw $v0, 0x54($s0) +/* 0104F0 8000F8F0 00000000 */ nop +/* 0104F4 8000F8F4 8458001C */ lh $t8, 0x1c($v0) +/* 0104F8 8000F8F8 00000000 */ nop +/* 0104FC 8000F8FC 0018C843 */ sra $t9, $t8, 1 +/* 010500 8000F900 00194823 */ negu $t1, $t9 +/* 010504 8000F904 A4490008 */ sh $t1, 8($v0) +/* 010508 8000F908 8E020054 */ lw $v0, 0x54($s0) +/* 01050C 8000F90C 00000000 */ nop +/* 010510 8000F910 844A001E */ lh $t2, 0x1e($v0) +/* 010514 8000F914 00000000 */ nop +/* 010518 8000F918 000A5843 */ sra $t3, $t2, 1 +/* 01051C 8000F91C 000B6023 */ negu $t4, $t3 +/* 010520 8000F920 A44C000A */ sh $t4, 0xa($v0) +/* 010524 8000F924 8E020054 */ lw $v0, 0x54($s0) +/* 010528 8000F928 00000000 */ nop +/* 01052C 8000F92C 844D0020 */ lh $t5, 0x20($v0) +/* 010530 8000F930 00000000 */ nop +/* 010534 8000F934 000D7043 */ sra $t6, $t5, 1 +/* 010538 8000F938 000E7823 */ negu $t7, $t6 +/* 01053C 8000F93C A44F000C */ sh $t7, 0xc($v0) +.L8000F940: +/* 010540 8000F940 1000000D */ b .L8000F978 +/* 010544 8000F944 24060030 */ li $a2, 48 +.L8000F948: +/* 010548 8000F948 24010001 */ li $at, 1 +/* 01054C 8000F94C 1441000A */ bne $v0, $at, .L8000F978 +/* 010550 8000F950 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 010554 8000F954 44812000 */ mtc1 $at, $f4 +/* 010558 8000F958 8E180054 */ lw $t8, 0x54($s0) +/* 01055C 8000F95C 240200FF */ li $v0, 255 +/* 010560 8000F960 E7040000 */ swc1 $f4, ($t8) +/* 010564 8000F964 A0A20004 */ sb $v0, 4($a1) +/* 010568 8000F968 A0A20005 */ sb $v0, 5($a1) +/* 01056C 8000F96C A0A20006 */ sb $v0, 6($a1) +/* 010570 8000F970 A0A00007 */ sb $zero, 7($a1) +/* 010574 8000F974 24060008 */ li $a2, 8 +.L8000F978: +/* 010578 8000F978 14C00002 */ bnez $a2, .L8000F984 +/* 01057C 8000F97C 2401FFFC */ li $at, -4 +/* 010580 8000F980 AE000054 */ sw $zero, 0x54($s0) +.L8000F984: +/* 010584 8000F984 8FBF0024 */ lw $ra, 0x24($sp) +/* 010588 8000F988 00C11024 */ and $v0, $a2, $at +/* 01058C 8000F98C 8FB00020 */ lw $s0, 0x20($sp) +/* 010590 8000F990 27BD0028 */ addiu $sp, $sp, 0x28 +/* 010594 8000F994 03E00008 */ jr $ra +/* 010598 8000F998 24420004 */ addiu $v0, $v0, 4 + diff --git a/asm/non_matchings/unknown_005740/func_8000F99C.s b/asm/non_matchings/unknown_005740/func_8000F99C.s new file mode 100644 index 00000000..c9123901 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000F99C.s @@ -0,0 +1,84 @@ +glabel func_8000F99C +/* 01059C 8000F99C 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0105A0 8000F9A0 AFBF002C */ sw $ra, 0x2c($sp) +/* 0105A4 8000F9A4 AFB40028 */ sw $s4, 0x28($sp) +/* 0105A8 8000F9A8 AFB30024 */ sw $s3, 0x24($sp) +/* 0105AC 8000F9AC AFB20020 */ sw $s2, 0x20($sp) +/* 0105B0 8000F9B0 AFB1001C */ sw $s1, 0x1c($sp) +/* 0105B4 8000F9B4 AFB00018 */ sw $s0, 0x18($sp) +/* 0105B8 8000F9B8 8C8E0040 */ lw $t6, 0x40($a0) +/* 0105BC 8000F9BC 8C930060 */ lw $s3, 0x60($a0) +/* 0105C0 8000F9C0 81C20056 */ lb $v0, 0x56($t6) +/* 0105C4 8000F9C4 00808025 */ move $s0, $a0 +/* 0105C8 8000F9C8 AE620000 */ sw $v0, ($s3) +/* 0105CC 8000F9CC 0000A025 */ move $s4, $zero +/* 0105D0 8000F9D0 00009025 */ move $s2, $zero +/* 0105D4 8000F9D4 18400012 */ blez $v0, .L8000FA20 +/* 0105D8 8000F9D8 AE620000 */ sw $v0, ($s3) +/* 0105DC 8000F9DC 02608825 */ move $s1, $s3 +.L8000F9E0: +/* 0105E0 8000F9E0 8E190040 */ lw $t9, 0x40($s0) +/* 0105E4 8000F9E4 00124880 */ sll $t1, $s2, 2 +/* 0105E8 8000F9E8 8F280014 */ lw $t0, 0x14($t9) +/* 0105EC 8000F9EC 00000000 */ nop +/* 0105F0 8000F9F0 01095021 */ addu $t2, $t0, $t1 +/* 0105F4 8000F9F4 8D440000 */ lw $a0, ($t2) +/* 0105F8 8000F9F8 0C003F55 */ jal func_8000FD54 +/* 0105FC 8000F9FC 00000000 */ nop +/* 010600 8000FA00 14400002 */ bnez $v0, .L8000FA0C +/* 010604 8000FA04 AE220004 */ sw $v0, 4($s1) +/* 010608 8000FA08 24140001 */ li $s4, 1 +.L8000FA0C: +/* 01060C 8000FA0C 8E620000 */ lw $v0, ($s3) +/* 010610 8000FA10 26520001 */ addiu $s2, $s2, 1 +/* 010614 8000FA14 0242082A */ slt $at, $s2, $v0 +/* 010618 8000FA18 1420FFF1 */ bnez $at, .L8000F9E0 +/* 01061C 8000FA1C 26310004 */ addiu $s1, $s1, 4 +.L8000FA20: +/* 010620 8000FA20 1280001B */ beqz $s4, .L8000FA90 +/* 010624 8000FA24 00000000 */ nop +/* 010628 8000FA28 18400017 */ blez $v0, .L8000FA88 +/* 01062C 8000FA2C 00009025 */ move $s2, $zero +/* 010630 8000FA30 02608825 */ move $s1, $s3 +.L8000FA34: +/* 010634 8000FA34 8E300004 */ lw $s0, 4($s1) +/* 010638 8000FA38 00000000 */ nop +/* 01063C 8000FA3C 1200000E */ beqz $s0, .L8000FA78 +/* 010640 8000FA40 00000000 */ nop +/* 010644 8000FA44 8E020040 */ lw $v0, 0x40($s0) +/* 010648 8000FA48 02002025 */ move $a0, $s0 +/* 01064C 8000FA4C 80450055 */ lb $a1, 0x55($v0) +/* 010650 8000FA50 80460053 */ lb $a2, 0x53($v0) +/* 010654 8000FA54 0C003D92 */ jal func_8000F648 +/* 010658 8000FA58 00000000 */ nop +/* 01065C 8000FA5C 8604002C */ lh $a0, 0x2c($s0) +/* 010660 8000FA60 0C003211 */ jal func_8000C844 +/* 010664 8000FA64 00000000 */ nop +/* 010668 8000FA68 0C01C450 */ jal func_80071140 +/* 01066C 8000FA6C 02002025 */ move $a0, $s0 +/* 010670 8000FA70 8E620000 */ lw $v0, ($s3) +/* 010674 8000FA74 00000000 */ nop +.L8000FA78: +/* 010678 8000FA78 26520001 */ addiu $s2, $s2, 1 +/* 01067C 8000FA7C 0242082A */ slt $at, $s2, $v0 +/* 010680 8000FA80 1420FFEC */ bnez $at, .L8000FA34 +/* 010684 8000FA84 26310004 */ addiu $s1, $s1, 4 +.L8000FA88: +/* 010688 8000FA88 10000006 */ b .L8000FAA4 +/* 01068C 8000FA8C 24020001 */ li $v0, 1 +.L8000FA90: +/* 010690 8000FA90 8E0B0040 */ lw $t3, 0x40($s0) +/* 010694 8000FA94 00001025 */ move $v0, $zero +/* 010698 8000FA98 8D6C0018 */ lw $t4, 0x18($t3) +/* 01069C 8000FA9C 00000000 */ nop +/* 0106A0 8000FAA0 AE6C002C */ sw $t4, 0x2c($s3) +.L8000FAA4: +/* 0106A4 8000FAA4 8FBF002C */ lw $ra, 0x2c($sp) +/* 0106A8 8000FAA8 8FB00018 */ lw $s0, 0x18($sp) +/* 0106AC 8000FAAC 8FB1001C */ lw $s1, 0x1c($sp) +/* 0106B0 8000FAB0 8FB20020 */ lw $s2, 0x20($sp) +/* 0106B4 8000FAB4 8FB30024 */ lw $s3, 0x24($sp) +/* 0106B8 8000FAB8 8FB40028 */ lw $s4, 0x28($sp) +/* 0106BC 8000FABC 03E00008 */ jr $ra +/* 0106C0 8000FAC0 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_005740/func_8000FAC4.s b/asm/non_matchings/unknown_005740/func_8000FAC4.s new file mode 100644 index 00000000..88b497a0 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000FAC4.s @@ -0,0 +1,72 @@ +glabel func_8000FAC4 +/* 0106C4 8000FAC4 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0106C8 8000FAC8 AFBF002C */ sw $ra, 0x2c($sp) +/* 0106CC 8000FACC AFB30028 */ sw $s3, 0x28($sp) +/* 0106D0 8000FAD0 AFB20024 */ sw $s2, 0x24($sp) +/* 0106D4 8000FAD4 AFB10020 */ sw $s1, 0x20($sp) +/* 0106D8 8000FAD8 AFB0001C */ sw $s0, 0x1c($sp) +/* 0106DC 8000FADC 8C820040 */ lw $v0, 0x40($a0) +/* 0106E0 8000FAE0 AC85006C */ sw $a1, 0x6c($a0) +/* 0106E4 8000FAE4 80430057 */ lb $v1, 0x57($v0) +/* 0106E8 8000FAE8 8C46001C */ lw $a2, 0x1c($v0) +/* 0106EC 8000FAEC 00809025 */ move $s2, $a0 +/* 0106F0 8000FAF0 1860002A */ blez $v1, .L8000FB9C +/* 0106F4 8000FAF4 00008025 */ move $s0, $zero +/* 0106F8 8000FAF8 00C08825 */ move $s1, $a2 +/* 0106FC 8000FAFC 3C13FFFF */ lui $s3, 0xffff +.L8000FB00: +/* 010700 8000FB00 8E220000 */ lw $v0, ($s1) +/* 010704 8000FB04 00104940 */ sll $t1, $s0, 5 +/* 010708 8000FB08 00537024 */ and $t6, $v0, $s3 +/* 01070C 8000FB0C 166E000B */ bne $s3, $t6, .L8000FB3C +/* 010710 8000FB10 00022E03 */ sra $a1, $v0, 0x18 +/* 010714 8000FB14 8E4F006C */ lw $t7, 0x6c($s2) +/* 010718 8000FB18 00022A03 */ sra $a1, $v0, 8 +/* 01071C 8000FB1C 30B900FF */ andi $t9, $a1, 0xff +/* 010720 8000FB20 0010C140 */ sll $t8, $s0, 5 +/* 010724 8000FB24 03202825 */ move $a1, $t9 +/* 010728 8000FB28 304600FF */ andi $a2, $v0, 0xff +/* 01072C 8000FB2C 0C02BC78 */ jal func_800AF1E0 +/* 010730 8000FB30 01F82021 */ addu $a0, $t7, $t8 +/* 010734 8000FB34 10000013 */ b .L8000FB84 +/* 010738 8000FB38 8E590040 */ lw $t9, 0x40($s2) +.L8000FB3C: +/* 01073C 8000FB3C 8E230004 */ lw $v1, 4($s1) +/* 010740 8000FB40 8E48006C */ lw $t0, 0x6c($s2) +/* 010744 8000FB44 00023403 */ sra $a2, $v0, 0x10 +/* 010748 8000FB48 00403825 */ move $a3, $v0 +/* 01074C 8000FB4C 00037403 */ sra $t6, $v1, 0x10 +/* 010750 8000FB50 31CFFFFF */ andi $t7, $t6, 0xffff +/* 010754 8000FB54 00076400 */ sll $t4, $a3, 0x10 +/* 010758 8000FB58 30CB00FF */ andi $t3, $a2, 0xff +/* 01075C 8000FB5C 30AA00FF */ andi $t2, $a1, 0xff +/* 010760 8000FB60 3078FFFF */ andi $t8, $v1, 0xffff +/* 010764 8000FB64 AFB80014 */ sw $t8, 0x14($sp) +/* 010768 8000FB68 01402825 */ move $a1, $t2 +/* 01076C 8000FB6C 01603025 */ move $a2, $t3 +/* 010770 8000FB70 000C3C03 */ sra $a3, $t4, 0x10 +/* 010774 8000FB74 AFAF0010 */ sw $t7, 0x10($sp) +/* 010778 8000FB78 0C02BCA7 */ jal func_800AF29C +/* 01077C 8000FB7C 01092021 */ addu $a0, $t0, $t1 +/* 010780 8000FB80 8E590040 */ lw $t9, 0x40($s2) +.L8000FB84: +/* 010784 8000FB84 26100001 */ addiu $s0, $s0, 1 +/* 010788 8000FB88 83230057 */ lb $v1, 0x57($t9) +/* 01078C 8000FB8C 26310008 */ addiu $s1, $s1, 8 +/* 010790 8000FB90 0203082A */ slt $at, $s0, $v1 +/* 010794 8000FB94 1420FFDA */ bnez $at, .L8000FB00 +/* 010798 8000FB98 00000000 */ nop +.L8000FB9C: +/* 01079C 8000FB9C 00031140 */ sll $v0, $v1, 5 +/* 0107A0 8000FBA0 8FBF002C */ lw $ra, 0x2c($sp) +/* 0107A4 8000FBA4 24420003 */ addiu $v0, $v0, 3 +/* 0107A8 8000FBA8 2401FFFC */ li $at, -4 +/* 0107AC 8000FBAC 00414024 */ and $t0, $v0, $at +/* 0107B0 8000FBB0 8FB0001C */ lw $s0, 0x1c($sp) +/* 0107B4 8000FBB4 8FB10020 */ lw $s1, 0x20($sp) +/* 0107B8 8000FBB8 8FB20024 */ lw $s2, 0x24($sp) +/* 0107BC 8000FBBC 8FB30028 */ lw $s3, 0x28($sp) +/* 0107C0 8000FBC0 27BD0030 */ addiu $sp, $sp, 0x30 +/* 0107C4 8000FBC4 03E00008 */ jr $ra +/* 0107C8 8000FBC8 01001025 */ move $v0, $t0 + diff --git a/asm/non_matchings/unknown_005740/func_8000FBCC.s b/asm/non_matchings/unknown_005740/func_8000FBCC.s new file mode 100644 index 00000000..d461df98 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000FBCC.s @@ -0,0 +1,44 @@ +glabel func_8000FBCC +/* 0107CC 8000FBCC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0107D0 8000FBD0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0107D4 8000FBD4 AC850050 */ sw $a1, 0x50($a0) +/* 0107D8 8000FBD8 ACA00004 */ sw $zero, 4($a1) +/* 0107DC 8000FBDC 8C830040 */ lw $v1, 0x40($a0) +/* 0107E0 8000FBE0 00803025 */ move $a2, $a0 +/* 0107E4 8000FBE4 846E0032 */ lh $t6, 0x32($v1) +/* 0107E8 8000FBE8 00000000 */ nop +/* 0107EC 8000FBEC 11C0000A */ beqz $t6, .L8000FC18 +/* 0107F0 8000FBF0 00000000 */ nop +/* 0107F4 8000FBF4 84640034 */ lh $a0, 0x34($v1) +/* 0107F8 8000FBF8 AFA60018 */ sw $a2, 0x18($sp) +/* 0107FC 8000FBFC 0C01EB9D */ jal func_8007AE74 +/* 010800 8000FC00 AFA5001C */ sw $a1, 0x1c($sp) +/* 010804 8000FC04 8FA5001C */ lw $a1, 0x1c($sp) +/* 010808 8000FC08 8FA60018 */ lw $a2, 0x18($sp) +/* 01080C 8000FC0C ACA20004 */ sw $v0, 4($a1) +/* 010810 8000FC10 8CC30040 */ lw $v1, 0x40($a2) +/* 010814 8000FC14 00000000 */ nop +.L8000FC18: +/* 010818 8000FC18 C4640004 */ lwc1 $f4, 4($v1) +/* 01081C 8000FC1C 8CB80004 */ lw $t8, 4($a1) +/* 010820 8000FC20 240FFFFF */ li $t7, -1 +/* 010824 8000FC24 A4AF0008 */ sh $t7, 8($a1) +/* 010828 8000FC28 3C018012 */ lui $at, %hi(D_8011AE50) # $at, 0x8012 +/* 01082C 8000FC2C E4A40000 */ swc1 $f4, ($a1) +/* 010830 8000FC30 AC38AE50 */ sw $t8, %lo(D_8011AE50)($at) +/* 010834 8000FC34 8CD90040 */ lw $t9, 0x40($a2) +/* 010838 8000FC38 8FBF0014 */ lw $ra, 0x14($sp) +/* 01083C 8000FC3C 87280032 */ lh $t0, 0x32($t9) +/* 010840 8000FC40 24020010 */ li $v0, 16 +/* 010844 8000FC44 11000007 */ beqz $t0, .L8000FC64 +/* 010848 8000FC48 00000000 */ nop +/* 01084C 8000FC4C 8CA90004 */ lw $t1, 4($a1) +/* 010850 8000FC50 00000000 */ nop +/* 010854 8000FC54 15200003 */ bnez $t1, .L8000FC64 +/* 010858 8000FC58 00000000 */ nop +/* 01085C 8000FC5C 10000001 */ b .L8000FC64 +/* 010860 8000FC60 00001025 */ move $v0, $zero +.L8000FC64: +/* 010864 8000FC64 03E00008 */ jr $ra +/* 010868 8000FC68 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_005740/func_8000FC6C.s b/asm/non_matchings/unknown_005740/func_8000FC6C.s new file mode 100644 index 00000000..3ca953cb --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000FC6C.s @@ -0,0 +1,49 @@ +glabel func_8000FC6C +/* 01086C 8000FC6C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 010870 8000FC70 AFBF0014 */ sw $ra, 0x14($sp) +/* 010874 8000FC74 8C8E0040 */ lw $t6, 0x40($a0) +/* 010878 8000FC78 AC850058 */ sw $a1, 0x58($a0) +/* 01087C 8000FC7C C5C40008 */ lwc1 $f4, 8($t6) +/* 010880 8000FC80 A4A0000C */ sh $zero, 0xc($a1) +/* 010884 8000FC84 E4A40000 */ swc1 $f4, ($a1) +/* 010888 8000FC88 8C8F0040 */ lw $t7, 0x40($a0) +/* 01088C 8000FC8C 00803025 */ move $a2, $a0 +/* 010890 8000FC90 8DF80000 */ lw $t8, ($t7) +/* 010894 8000FC94 ACA00004 */ sw $zero, 4($a1) +/* 010898 8000FC98 0018CA03 */ sra $t9, $t8, 8 +/* 01089C 8000FC9C A4B9000E */ sh $t9, 0xe($a1) +/* 0108A0 8000FCA0 8C820040 */ lw $v0, 0x40($a0) +/* 0108A4 8000FCA4 00000000 */ nop +/* 0108A8 8000FCA8 84480036 */ lh $t0, 0x36($v0) +/* 0108AC 8000FCAC 00000000 */ nop +/* 0108B0 8000FCB0 11000008 */ beqz $t0, .L8000FCD4 +/* 0108B4 8000FCB4 00000000 */ nop +/* 0108B8 8000FCB8 84440038 */ lh $a0, 0x38($v0) +/* 0108BC 8000FCBC AFA60018 */ sw $a2, 0x18($sp) +/* 0108C0 8000FCC0 0C01EB9D */ jal func_8007AE74 +/* 0108C4 8000FCC4 AFA5001C */ sw $a1, 0x1c($sp) +/* 0108C8 8000FCC8 8FA5001C */ lw $a1, 0x1c($sp) +/* 0108CC 8000FCCC 8FA60018 */ lw $a2, 0x18($sp) +/* 0108D0 8000FCD0 ACA20004 */ sw $v0, 4($a1) +.L8000FCD4: +/* 0108D4 8000FCD4 8CAA0004 */ lw $t2, 4($a1) +/* 0108D8 8000FCD8 2409FFFF */ li $t1, -1 +/* 0108DC 8000FCDC A4A90008 */ sh $t1, 8($a1) +/* 0108E0 8000FCE0 3C018012 */ lui $at, %hi(D_8011AE54) # $at, 0x8012 +/* 0108E4 8000FCE4 AC2AAE54 */ sw $t2, %lo(D_8011AE54)($at) +/* 0108E8 8000FCE8 8CCB0040 */ lw $t3, 0x40($a2) +/* 0108EC 8000FCEC 8FBF0014 */ lw $ra, 0x14($sp) +/* 0108F0 8000FCF0 856C0036 */ lh $t4, 0x36($t3) +/* 0108F4 8000FCF4 24020014 */ li $v0, 20 +/* 0108F8 8000FCF8 11800007 */ beqz $t4, .L8000FD18 +/* 0108FC 8000FCFC 00000000 */ nop +/* 010900 8000FD00 8CAD0004 */ lw $t5, 4($a1) +/* 010904 8000FD04 00000000 */ nop +/* 010908 8000FD08 15A00003 */ bnez $t5, .L8000FD18 +/* 01090C 8000FD0C 00000000 */ nop +/* 010910 8000FD10 10000001 */ b .L8000FD18 +/* 010914 8000FD14 00001025 */ move $v0, $zero +.L8000FD18: +/* 010918 8000FD18 03E00008 */ jr $ra +/* 01091C 8000FD1C 27BD0018 */ addiu $sp, $sp, 0x18 + diff --git a/asm/non_matchings/unknown_005740/func_8000FD20.s b/asm/non_matchings/unknown_005740/func_8000FD20.s new file mode 100644 index 00000000..2ae62a59 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000FD20.s @@ -0,0 +1,7 @@ +glabel func_8000FD20 +/* 010920 8000FD20 AC85004C */ sw $a1, 0x4c($a0) +/* 010924 8000FD24 240E00FF */ li $t6, 255 +/* 010928 8000FD28 A0AE0013 */ sb $t6, 0x13($a1) +/* 01092C 8000FD2C 03E00008 */ jr $ra +/* 010930 8000FD30 24020028 */ li $v0, 40 + diff --git a/asm/non_matchings/unknown_005740/func_8000FD34.s b/asm/non_matchings/unknown_005740/func_8000FD34.s new file mode 100644 index 00000000..e080d8f3 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000FD34.s @@ -0,0 +1,10 @@ +glabel func_8000FD34 +/* 010934 8000FD34 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 010938 8000FD38 AFBF0014 */ sw $ra, 0x14($sp) +/* 01093C 8000FD3C 0C005AF1 */ jal func_80016BC4 +/* 010940 8000FD40 AC85005C */ sw $a1, 0x5c($a0) +/* 010944 8000FD44 8FBF0014 */ lw $ra, 0x14($sp) +/* 010948 8000FD48 27BD0018 */ addiu $sp, $sp, 0x18 +/* 01094C 8000FD4C 03E00008 */ jr $ra +/* 010950 8000FD50 2402010C */ li $v0, 268 + diff --git a/asm/non_matchings/unknown_005740/func_8000FD54.s b/asm/non_matchings/unknown_005740/func_8000FD54.s new file mode 100644 index 00000000..ec4ca02a --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000FD54.s @@ -0,0 +1,171 @@ +glabel func_8000FD54 +/* 010954 8000FD54 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 010958 8000FD58 3C0E8012 */ lui $t6, %hi(D_8011AD68) # $t6, 0x8012 +/* 01095C 8000FD5C 8DCEAD68 */ lw $t6, %lo(D_8011AD68)($t6) +/* 010960 8000FD60 AFBF002C */ sw $ra, 0x2c($sp) +/* 010964 8000FD64 008E082A */ slt $at, $a0, $t6 +/* 010968 8000FD68 AFB40028 */ sw $s4, 0x28($sp) +/* 01096C 8000FD6C AFB30024 */ sw $s3, 0x24($sp) +/* 010970 8000FD70 AFB20020 */ sw $s2, 0x20($sp) +/* 010974 8000FD74 AFB1001C */ sw $s1, 0x1c($sp) +/* 010978 8000FD78 14200002 */ bnez $at, .L8000FD84 +/* 01097C 8000FD7C AFB00018 */ sw $s0, 0x18($sp) +/* 010980 8000FD80 00002025 */ move $a0, $zero +.L8000FD84: +/* 010984 8000FD84 0C0031C6 */ jal func_8000C718 +/* 010988 8000FD88 AFA40038 */ sw $a0, 0x38($sp) +/* 01098C 8000FD8C 14400003 */ bnez $v0, .L8000FD9C +/* 010990 8000FD90 00409825 */ move $s3, $v0 +/* 010994 8000FD94 10000080 */ b .L8000FF98 +/* 010998 8000FD98 00001025 */ move $v0, $zero +.L8000FD9C: +/* 01099C 8000FD9C 82700055 */ lb $s0, 0x55($s3) +/* 0109A0 8000FDA0 3405FFFF */ li $a1, 65535 +/* 0109A4 8000FDA4 00107880 */ sll $t7, $s0, 2 +/* 0109A8 8000FDA8 25F00080 */ addiu $s0, $t7, 0x80 +/* 0109AC 8000FDAC 0C01C344 */ jal func_80070D10 +/* 0109B0 8000FDB0 02002025 */ move $a0, $s0 +/* 0109B4 8000FDB4 14400006 */ bnez $v0, .L8000FDD0 +/* 0109B8 8000FDB8 00409025 */ move $s2, $v0 +/* 0109BC 8000FDBC 8FA40038 */ lw $a0, 0x38($sp) +/* 0109C0 8000FDC0 0C003211 */ jal func_8000C844 +/* 0109C4 8000FDC4 00000000 */ nop +/* 0109C8 8000FDC8 10000073 */ b .L8000FF98 +/* 0109CC 8000FDCC 00001025 */ move $v0, $zero +.L8000FDD0: +/* 0109D0 8000FDD0 1A000013 */ blez $s0, .L8000FE20 +/* 0109D4 8000FDD4 00008825 */ move $s1, $zero +/* 0109D8 8000FDD8 32050003 */ andi $a1, $s0, 3 +/* 0109DC 8000FDDC 10A00007 */ beqz $a1, .L8000FDFC +/* 0109E0 8000FDE0 00A02025 */ move $a0, $a1 +/* 0109E4 8000FDE4 00401821 */ addu $v1, $v0, $zero +.L8000FDE8: +/* 0109E8 8000FDE8 26310001 */ addiu $s1, $s1, 1 +/* 0109EC 8000FDEC A0600000 */ sb $zero, ($v1) +/* 0109F0 8000FDF0 1491FFFD */ bne $a0, $s1, .L8000FDE8 +/* 0109F4 8000FDF4 24630001 */ addiu $v1, $v1, 1 +/* 0109F8 8000FDF8 12300008 */ beq $s1, $s0, .L8000FE1C +.L8000FDFC: +/* 0109FC 8000FDFC 00511821 */ addu $v1, $v0, $s1 +.L8000FE00: +/* 010A00 8000FE00 26310004 */ addiu $s1, $s1, 4 +/* 010A04 8000FE04 A0600000 */ sb $zero, ($v1) +/* 010A08 8000FE08 A0600001 */ sb $zero, 1($v1) +/* 010A0C 8000FE0C A0600002 */ sb $zero, 2($v1) +/* 010A10 8000FE10 A0600003 */ sb $zero, 3($v1) +/* 010A14 8000FE14 1630FFFA */ bne $s1, $s0, .L8000FE00 +/* 010A18 8000FE18 24630004 */ addiu $v1, $v1, 4 +.L8000FE1C: +/* 010A1C 8000FE1C 00008825 */ move $s1, $zero +.L8000FE20: +/* 010A20 8000FE20 24180002 */ li $t8, 2 +/* 010A24 8000FE24 A4580006 */ sh $t8, 6($v0) +/* 010A28 8000FE28 AC530040 */ sw $s3, 0x40($v0) +/* 010A2C 8000FE2C 8FB90038 */ lw $t9, 0x38($sp) +/* 010A30 8000FE30 00000000 */ nop +/* 010A34 8000FE34 A459002C */ sh $t9, 0x2c($v0) +/* 010A38 8000FE38 8FA80038 */ lw $t0, 0x38($sp) +/* 010A3C 8000FE3C 00000000 */ nop +/* 010A40 8000FE40 A448004A */ sh $t0, 0x4a($v0) +/* 010A44 8000FE44 C664000C */ lwc1 $f4, 0xc($s3) +/* 010A48 8000FE48 00000000 */ nop +/* 010A4C 8000FE4C E4440008 */ swc1 $f4, 8($v0) +/* 010A50 8000FE50 96690030 */ lhu $t1, 0x30($s3) +/* 010A54 8000FE54 00000000 */ nop +/* 010A58 8000FE58 312A0080 */ andi $t2, $t1, 0x80 +/* 010A5C 8000FE5C 11400005 */ beqz $t2, .L8000FE74 +/* 010A60 8000FE60 00000000 */ nop +/* 010A64 8000FE64 844B0006 */ lh $t3, 6($v0) +/* 010A68 8000FE68 00000000 */ nop +/* 010A6C 8000FE6C 356C0080 */ ori $t4, $t3, 0x80 +/* 010A70 8000FE70 A44C0006 */ sh $t4, 6($v0) +.L8000FE74: +/* 010A74 8000FE74 8C430040 */ lw $v1, 0x40($v0) +/* 010A78 8000FE78 244E0080 */ addiu $t6, $v0, 0x80 +/* 010A7C 8000FE7C 806D0053 */ lb $t5, 0x53($v1) +/* 010A80 8000FE80 80740055 */ lb $s4, 0x55($v1) +/* 010A84 8000FE84 AFAD0034 */ sw $t5, 0x34($sp) +/* 010A88 8000FE88 AC4E0068 */ sw $t6, 0x68($v0) +/* 010A8C 8000FE8C 8FAF0034 */ lw $t7, 0x34($sp) +/* 010A90 8000FE90 00009825 */ move $s3, $zero +/* 010A94 8000FE94 15E0001B */ bnez $t7, .L8000FF04 +/* 010A98 8000FE98 00000000 */ nop +/* 010A9C 8000FE9C 1A800031 */ blez $s4, .L8000FF64 +/* 010AA0 8000FEA0 00008025 */ move $s0, $zero +.L8000FEA4: +/* 010AA4 8000FEA4 8E580040 */ lw $t8, 0x40($s2) +/* 010AA8 8000FEA8 00002825 */ move $a1, $zero +/* 010AAC 8000FEAC 8F190010 */ lw $t9, 0x10($t8) +/* 010AB0 8000FEB0 00000000 */ nop +/* 010AB4 8000FEB4 03304021 */ addu $t0, $t9, $s0 +/* 010AB8 8000FEB8 8D040000 */ lw $a0, ($t0) +/* 010ABC 8000FEBC 0C017E67 */ jal func_8005F99C +/* 010AC0 8000FEC0 00000000 */ nop +/* 010AC4 8000FEC4 8E490068 */ lw $t1, 0x68($s2) +/* 010AC8 8000FEC8 26310001 */ addiu $s1, $s1, 1 +/* 010ACC 8000FECC 01305021 */ addu $t2, $t1, $s0 +/* 010AD0 8000FED0 AD420000 */ sw $v0, ($t2) +/* 010AD4 8000FED4 8E4B0068 */ lw $t3, 0x68($s2) +/* 010AD8 8000FED8 00000000 */ nop +/* 010ADC 8000FEDC 01706021 */ addu $t4, $t3, $s0 +/* 010AE0 8000FEE0 8D8D0000 */ lw $t5, ($t4) +/* 010AE4 8000FEE4 00000000 */ nop +/* 010AE8 8000FEE8 15A00002 */ bnez $t5, .L8000FEF4 +/* 010AEC 8000FEEC 00000000 */ nop +/* 010AF0 8000FEF0 24130001 */ li $s3, 1 +.L8000FEF4: +/* 010AF4 8000FEF4 1634FFEB */ bne $s1, $s4, .L8000FEA4 +/* 010AF8 8000FEF8 26100004 */ addiu $s0, $s0, 4 +/* 010AFC 8000FEFC 10000019 */ b .L8000FF64 +/* 010B00 8000FF00 00000000 */ nop +.L8000FF04: +/* 010B04 8000FF04 1A800017 */ blez $s4, .L8000FF64 +/* 010B08 8000FF08 00008025 */ move $s0, $zero +.L8000FF0C: +/* 010B0C 8000FF0C 8E4E0040 */ lw $t6, 0x40($s2) +/* 010B10 8000FF10 2405000A */ li $a1, 10 +/* 010B14 8000FF14 8DCF0010 */ lw $t7, 0x10($t6) +/* 010B18 8000FF18 00000000 */ nop +/* 010B1C 8000FF1C 01F0C021 */ addu $t8, $t7, $s0 +/* 010B20 8000FF20 8F040000 */ lw $a0, ($t8) +/* 010B24 8000FF24 0C01F04B */ jal func_8007C12C +/* 010B28 8000FF28 00000000 */ nop +/* 010B2C 8000FF2C 8E590068 */ lw $t9, 0x68($s2) +/* 010B30 8000FF30 26310001 */ addiu $s1, $s1, 1 +/* 010B34 8000FF34 03304021 */ addu $t0, $t9, $s0 +/* 010B38 8000FF38 AD020000 */ sw $v0, ($t0) +/* 010B3C 8000FF3C 8E490068 */ lw $t1, 0x68($s2) +/* 010B40 8000FF40 00000000 */ nop +/* 010B44 8000FF44 01305021 */ addu $t2, $t1, $s0 +/* 010B48 8000FF48 8D4B0000 */ lw $t3, ($t2) +/* 010B4C 8000FF4C 00000000 */ nop +/* 010B50 8000FF50 15600002 */ bnez $t3, .L8000FF5C +/* 010B54 8000FF54 00000000 */ nop +/* 010B58 8000FF58 24130001 */ li $s3, 1 +.L8000FF5C: +/* 010B5C 8000FF5C 1634FFEB */ bne $s1, $s4, .L8000FF0C +/* 010B60 8000FF60 26100004 */ addiu $s0, $s0, 4 +.L8000FF64: +/* 010B64 8000FF64 1260000C */ beqz $s3, .L8000FF98 +/* 010B68 8000FF68 02401025 */ move $v0, $s2 +/* 010B6C 8000FF6C 8FA60034 */ lw $a2, 0x34($sp) +/* 010B70 8000FF70 02402025 */ move $a0, $s2 +/* 010B74 8000FF74 0C003D92 */ jal func_8000F648 +/* 010B78 8000FF78 02802825 */ move $a1, $s4 +/* 010B7C 8000FF7C 8FA40038 */ lw $a0, 0x38($sp) +/* 010B80 8000FF80 0C003211 */ jal func_8000C844 +/* 010B84 8000FF84 00000000 */ nop +/* 010B88 8000FF88 0C01C450 */ jal func_80071140 +/* 010B8C 8000FF8C 02402025 */ move $a0, $s2 +/* 010B90 8000FF90 10000001 */ b .L8000FF98 +/* 010B94 8000FF94 00001025 */ move $v0, $zero +.L8000FF98: +/* 010B98 8000FF98 8FBF002C */ lw $ra, 0x2c($sp) +/* 010B9C 8000FF9C 8FB00018 */ lw $s0, 0x18($sp) +/* 010BA0 8000FFA0 8FB1001C */ lw $s1, 0x1c($sp) +/* 010BA4 8000FFA4 8FB20020 */ lw $s2, 0x20($sp) +/* 010BA8 8000FFA8 8FB30024 */ lw $s3, 0x24($sp) +/* 010BAC 8000FFAC 8FB40028 */ lw $s4, 0x28($sp) +/* 010BB0 8000FFB0 03E00008 */ jr $ra +/* 010BB4 8000FFB4 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_005740/func_8000FFB8.s b/asm/non_matchings/unknown_005740/func_8000FFB8.s new file mode 100644 index 00000000..f193440f --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8000FFB8.s @@ -0,0 +1,41 @@ +glabel func_8000FFB8 +/* 010BB8 8000FFB8 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 010BBC 8000FFBC AFBF0014 */ sw $ra, 0x14($sp) +/* 010BC0 8000FFC0 AFA40018 */ sw $a0, 0x18($sp) +/* 010BC4 8000FFC4 8484004A */ lh $a0, 0x4a($a0) +/* 010BC8 8000FFC8 00000000 */ nop +/* 010BCC 8000FFCC 348F8000 */ ori $t7, $a0, 0x8000 +/* 010BD0 8000FFD0 000FC400 */ sll $t8, $t7, 0x10 +/* 010BD4 8000FFD4 0C00916D */ jal func_800245B4 +/* 010BD8 8000FFD8 00182403 */ sra $a0, $t8, 0x10 +/* 010BDC 8000FFDC 3C028012 */ lui $v0, %hi(D_8011AEC8) # $v0, 0x8012 +/* 010BE0 8000FFE0 2442AEC8 */ addiu $v0, %lo(D_8011AEC8) # addiu $v0, $v0, -0x5138 +/* 010BE4 8000FFE4 8C4A0000 */ lw $t2, ($v0) +/* 010BE8 8000FFE8 3C098012 */ lui $t1, %hi(D_8011AEC4) # $t1, 0x8012 +/* 010BEC 8000FFEC 8D29AEC4 */ lw $t1, %lo(D_8011AEC4)($t1) +/* 010BF0 8000FFF0 8FA80018 */ lw $t0, 0x18($sp) +/* 010BF4 8000FFF4 000A5880 */ sll $t3, $t2, 2 +/* 010BF8 8000FFF8 012B6021 */ addu $t4, $t1, $t3 +/* 010BFC 8000FFFC AD880000 */ sw $t0, ($t4) +/* 010C00 80010000 8C4D0000 */ lw $t5, ($v0) +/* 010C04 80010004 8FBF0014 */ lw $ra, 0x14($sp) +/* 010C08 80010008 25AE0001 */ addiu $t6, $t5, 1 +/* 010C0C 8001000C AC4E0000 */ sw $t6, ($v0) +/* 010C10 80010010 03E00008 */ jr $ra +/* 010C14 80010014 27BD0018 */ addiu $sp, $sp, 0x18 + +/* 010C18 80010018 3C028012 */ lui $v0, %hi(D_8011AEBC) # $v0, 0x8012 +/* 010C1C 8001001C 8C42AEBC */ lw $v0, %lo(D_8011AEBC)($v0) +/* 010C20 80010020 03E00008 */ jr $ra +/* 010C24 80010024 00000000 */ nop + +/* 010C28 80010028 3C0E8012 */ lui $t6, %hi(D_8011AEB8) # $t6, 0x8012 +/* 010C2C 8001002C 8DCEAEB8 */ lw $t6, %lo(D_8011AEB8)($t6) +/* 010C30 80010030 00047840 */ sll $t7, $a0, 1 +/* 010C34 80010034 3C088012 */ lui $t0, %hi(D_8011AD68) # $t0, 0x8012 +/* 010C38 80010038 01CFC021 */ addu $t8, $t6, $t7 +/* 010C3C 8001003C 87190000 */ lh $t9, ($t8) +/* 010C40 80010040 8D08AD68 */ lw $t0, %lo(D_8011AD68)($t0) +/* 010C44 80010044 03E00008 */ jr $ra +/* 010C48 80010048 0328102A */ slt $v0, $t9, $t0 + diff --git a/asm/non_matchings/unknown_005740/func_8001004C.s b/asm/non_matchings/unknown_005740/func_8001004C.s new file mode 100644 index 00000000..81aef223 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001004C.s @@ -0,0 +1,98 @@ +glabel func_8001004C +/* 010C4C 8001004C 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 010C50 80010050 AFB70030 */ sw $s7, 0x30($sp) +/* 010C54 80010054 3C178012 */ lui $s7, %hi(D_8011AEC8) # $s7, 0x8012 +/* 010C58 80010058 3C018012 */ lui $at, %hi(D_8011AE88) # $at, 0x8012 +/* 010C5C 8001005C 26F7AEC8 */ addiu $s7, %lo(D_8011AEC8) # addiu $s7, $s7, -0x5138 +/* 010C60 80010060 AC20AE88 */ sw $zero, %lo(D_8011AE88)($at) +/* 010C64 80010064 8EEE0000 */ lw $t6, ($s7) +/* 010C68 80010068 AFB30020 */ sw $s3, 0x20($sp) +/* 010C6C 8001006C AFBF0034 */ sw $ra, 0x34($sp) +/* 010C70 80010070 AFB6002C */ sw $s6, 0x2c($sp) +/* 010C74 80010074 AFB50028 */ sw $s5, 0x28($sp) +/* 010C78 80010078 AFB40024 */ sw $s4, 0x24($sp) +/* 010C7C 8001007C AFB2001C */ sw $s2, 0x1c($sp) +/* 010C80 80010080 AFB10018 */ sw $s1, 0x18($sp) +/* 010C84 80010084 AFB00014 */ sw $s0, 0x14($sp) +/* 010C88 80010088 19C0003C */ blez $t6, .L8001017C +/* 010C8C 8001008C 00009825 */ move $s3, $zero +/* 010C90 80010090 3C158012 */ lui $s5, %hi(D_8011AEC4) # $s5, 0x8012 +/* 010C94 80010094 3C148012 */ lui $s4, %hi(D_8011AE7C) # $s4, 0x8012 +/* 010C98 80010098 3C118012 */ lui $s1, %hi(D_8011AE58) # $s1, 0x8012 +/* 010C9C 8001009C 3C108012 */ lui $s0, %hi(D_8011AE5C) # $s0, 0x8012 +/* 010CA0 800100A0 2610AE5C */ addiu $s0, %lo(D_8011AE5C) # addiu $s0, $s0, -0x51a4 +/* 010CA4 800100A4 2631AE58 */ addiu $s1, %lo(D_8011AE58) # addiu $s1, $s1, -0x51a8 +/* 010CA8 800100A8 2694AE7C */ addiu $s4, %lo(D_8011AE7C) # addiu $s4, $s4, -0x5184 +/* 010CAC 800100AC 26B5AEC4 */ addiu $s5, %lo(D_8011AEC4) # addiu $s5, $s5, -0x513c +/* 010CB0 800100B0 00009025 */ move $s2, $zero +/* 010CB4 800100B4 2416FFFF */ li $s6, -1 +.L800100B8: +/* 010CB8 800100B8 8EAF0000 */ lw $t7, ($s5) +/* 010CBC 800100BC 8E050000 */ lw $a1, ($s0) +/* 010CC0 800100C0 01F2C021 */ addu $t8, $t7, $s2 +/* 010CC4 800100C4 8F060000 */ lw $a2, ($t8) +/* 010CC8 800100C8 02C02025 */ move $a0, $s6 +/* 010CCC 800100CC 18A0000C */ blez $a1, .L80010100 +/* 010CD0 800100D0 00001825 */ move $v1, $zero +/* 010CD4 800100D4 8E220000 */ lw $v0, ($s1) +/* 010CD8 800100D8 00000000 */ nop +.L800100DC: +/* 010CDC 800100DC 8C590000 */ lw $t9, ($v0) +/* 010CE0 800100E0 00000000 */ nop +/* 010CE4 800100E4 14D90002 */ bne $a2, $t9, .L800100F0 +/* 010CE8 800100E8 00000000 */ nop +/* 010CEC 800100EC 00602025 */ move $a0, $v1 +.L800100F0: +/* 010CF0 800100F0 24630001 */ addiu $v1, $v1, 1 +/* 010CF4 800100F4 0065082A */ slt $at, $v1, $a1 +/* 010CF8 800100F8 1420FFF8 */ bnez $at, .L800100DC +/* 010CFC 800100FC 24420004 */ addiu $v0, $v0, 4 +.L80010100: +/* 010D00 80010100 10960016 */ beq $a0, $s6, .L8001015C +/* 010D04 80010104 24A9FFFF */ addiu $t1, $a1, -1 +/* 010D08 80010108 86820000 */ lh $v0, ($s4) +/* 010D0C 8001010C 00801825 */ move $v1, $a0 +/* 010D10 80010110 0082082A */ slt $at, $a0, $v0 +/* 010D14 80010114 10200002 */ beqz $at, .L80010120 +/* 010D18 80010118 2448FFFF */ addiu $t0, $v0, -1 +/* 010D1C 8001011C A6880000 */ sh $t0, ($s4) +.L80010120: +/* 010D20 80010120 0089082A */ slt $at, $a0, $t1 +/* 010D24 80010124 1020000D */ beqz $at, .L8001015C +/* 010D28 80010128 AE090000 */ sw $t1, ($s0) +/* 010D2C 8001012C 00042080 */ sll $a0, $a0, 2 +.L80010130: +/* 010D30 80010130 8E2B0000 */ lw $t3, ($s1) +/* 010D34 80010134 24630001 */ addiu $v1, $v1, 1 +/* 010D38 80010138 01641021 */ addu $v0, $t3, $a0 +/* 010D3C 8001013C 8C4C0004 */ lw $t4, 4($v0) +/* 010D40 80010140 24840004 */ addiu $a0, $a0, 4 +/* 010D44 80010144 AC4C0000 */ sw $t4, ($v0) +/* 010D48 80010148 8E0D0000 */ lw $t5, ($s0) +/* 010D4C 8001014C 00000000 */ nop +/* 010D50 80010150 006D082A */ slt $at, $v1, $t5 +/* 010D54 80010154 1420FFF6 */ bnez $at, .L80010130 +/* 010D58 80010158 00000000 */ nop +.L8001015C: +/* 010D5C 8001015C 00C02025 */ move $a0, $a2 +/* 010D60 80010160 0C00406B */ jal func_800101AC +/* 010D64 80010164 00002825 */ move $a1, $zero +/* 010D68 80010168 8EEE0000 */ lw $t6, ($s7) +/* 010D6C 8001016C 26730001 */ addiu $s3, $s3, 1 +/* 010D70 80010170 026E082A */ slt $at, $s3, $t6 +/* 010D74 80010174 1420FFD0 */ bnez $at, .L800100B8 +/* 010D78 80010178 26520004 */ addiu $s2, $s2, 4 +.L8001017C: +/* 010D7C 8001017C 8FBF0034 */ lw $ra, 0x34($sp) +/* 010D80 80010180 AEE00000 */ sw $zero, ($s7) +/* 010D84 80010184 8FB70030 */ lw $s7, 0x30($sp) +/* 010D88 80010188 8FB00014 */ lw $s0, 0x14($sp) +/* 010D8C 8001018C 8FB10018 */ lw $s1, 0x18($sp) +/* 010D90 80010190 8FB2001C */ lw $s2, 0x1c($sp) +/* 010D94 80010194 8FB30020 */ lw $s3, 0x20($sp) +/* 010D98 80010198 8FB40024 */ lw $s4, 0x24($sp) +/* 010D9C 8001019C 8FB50028 */ lw $s5, 0x28($sp) +/* 010DA0 800101A0 8FB6002C */ lw $s6, 0x2c($sp) +/* 010DA4 800101A4 03E00008 */ jr $ra +/* 010DA8 800101A8 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_005740/func_800101AC.s b/asm/non_matchings/unknown_005740/func_800101AC.s new file mode 100644 index 00000000..601173ae --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800101AC.s @@ -0,0 +1,561 @@ +glabel func_800101AC +/* 010DAC 800101AC 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 010DB0 800101B0 AFBF0034 */ sw $ra, 0x34($sp) +/* 010DB4 800101B4 AFB60030 */ sw $s6, 0x30($sp) +/* 010DB8 800101B8 AFB5002C */ sw $s5, 0x2c($sp) +/* 010DBC 800101BC AFB40028 */ sw $s4, 0x28($sp) +/* 010DC0 800101C0 AFB30024 */ sw $s3, 0x24($sp) +/* 010DC4 800101C4 AFB20020 */ sw $s2, 0x20($sp) +/* 010DC8 800101C8 AFB1001C */ sw $s1, 0x1c($sp) +/* 010DCC 800101CC AFB00018 */ sw $s0, 0x18($sp) +/* 010DD0 800101D0 AFA5003C */ sw $a1, 0x3c($sp) +/* 010DD4 800101D4 848E0006 */ lh $t6, 6($a0) +/* 010DD8 800101D8 0080B025 */ move $s6, $a0 +/* 010DDC 800101DC 31CF8000 */ andi $t7, $t6, 0x8000 +/* 010DE0 800101E0 11E0000A */ beqz $t7, .L8001020C +/* 010DE4 800101E4 00000000 */ nop +/* 010DE8 800101E8 0C02C810 */ jal func_800B2040 +/* 010DEC 800101EC 00000000 */ nop +/* 010DF0 800101F0 3C028012 */ lui $v0, %hi(D_8011AE64) # $v0, 0x8012 +/* 010DF4 800101F4 2442AE64 */ addiu $v0, %lo(D_8011AE64) # addiu $v0, $v0, -0x519c +/* 010DF8 800101F8 8C580000 */ lw $t8, ($v0) +/* 010DFC 800101FC 00000000 */ nop +/* 010E00 80010200 2719FFFF */ addiu $t9, $t8, -1 +/* 010E04 80010204 100001D9 */ b .L8001096C +/* 010E08 80010208 AC590000 */ sw $t9, ($v0) +.L8001020C: +/* 010E0C 8001020C 8EC30060 */ lw $v1, 0x60($s6) +/* 010E10 80010210 00000000 */ nop +/* 010E14 80010214 10600033 */ beqz $v1, .L800102E4 +/* 010E18 80010218 00000000 */ nop +/* 010E1C 8001021C 8C680000 */ lw $t0, ($v1) +/* 010E20 80010220 0000A825 */ move $s5, $zero +/* 010E24 80010224 1900002F */ blez $t0, .L800102E4 +/* 010E28 80010228 00000000 */ nop +/* 010E2C 8001022C 0000A025 */ move $s4, $zero +/* 010E30 80010230 00744821 */ addu $t1, $v1, $s4 +.L80010234: +/* 010E34 80010234 8D310004 */ lw $s1, 4($t1) +/* 010E38 80010238 00009825 */ move $s3, $zero +/* 010E3C 8001023C 8E220040 */ lw $v0, 0x40($s1) +/* 010E40 80010240 00000000 */ nop +/* 010E44 80010244 80440053 */ lb $a0, 0x53($v0) +/* 010E48 80010248 80520055 */ lb $s2, 0x55($v0) +/* 010E4C 8001024C 1480000E */ bnez $a0, .L80010288 +/* 010E50 80010250 00000000 */ nop +/* 010E54 80010254 1A400017 */ blez $s2, .L800102B4 +/* 010E58 80010258 00008025 */ move $s0, $zero +.L8001025C: +/* 010E5C 8001025C 8E2A0068 */ lw $t2, 0x68($s1) +/* 010E60 80010260 00000000 */ nop +/* 010E64 80010264 01505821 */ addu $t3, $t2, $s0 +/* 010E68 80010268 8D640000 */ lw $a0, ($t3) +/* 010E6C 8001026C 0C017FD0 */ jal func_8005FF40 +/* 010E70 80010270 00000000 */ nop +/* 010E74 80010274 26730001 */ addiu $s3, $s3, 1 +/* 010E78 80010278 1672FFF8 */ bne $s3, $s2, .L8001025C +/* 010E7C 8001027C 26100004 */ addiu $s0, $s0, 4 +/* 010E80 80010280 1000000D */ b .L800102B8 +/* 010E84 80010284 8624002C */ lh $a0, 0x2c($s1) +.L80010288: +/* 010E88 80010288 1A40000A */ blez $s2, .L800102B4 +/* 010E8C 8001028C 00008025 */ move $s0, $zero +.L80010290: +/* 010E90 80010290 8E2C0068 */ lw $t4, 0x68($s1) +/* 010E94 80010294 00000000 */ nop +/* 010E98 80010298 01906821 */ addu $t5, $t4, $s0 +/* 010E9C 8001029C 8DA40000 */ lw $a0, ($t5) +/* 010EA0 800102A0 0C01F32C */ jal func_8007CCB0 +/* 010EA4 800102A4 00000000 */ nop +/* 010EA8 800102A8 26730001 */ addiu $s3, $s3, 1 +/* 010EAC 800102AC 1672FFF8 */ bne $s3, $s2, .L80010290 +/* 010EB0 800102B0 26100004 */ addiu $s0, $s0, 4 +.L800102B4: +/* 010EB4 800102B4 8624002C */ lh $a0, 0x2c($s1) +.L800102B8: +/* 010EB8 800102B8 0C003211 */ jal func_8000C844 +/* 010EBC 800102BC 00000000 */ nop +/* 010EC0 800102C0 0C01C450 */ jal func_80071140 +/* 010EC4 800102C4 02202025 */ move $a0, $s1 +/* 010EC8 800102C8 8EC30060 */ lw $v1, 0x60($s6) +/* 010ECC 800102CC 26B50001 */ addiu $s5, $s5, 1 +/* 010ED0 800102D0 8C6E0000 */ lw $t6, ($v1) +/* 010ED4 800102D4 26940004 */ addiu $s4, $s4, 4 +/* 010ED8 800102D8 02AE082A */ slt $at, $s5, $t6 +/* 010EDC 800102DC 1420FFD5 */ bnez $at, .L80010234 +/* 010EE0 800102E0 00744821 */ addu $t1, $v1, $s4 +.L800102E4: +/* 010EE4 800102E4 8ECF0070 */ lw $t7, 0x70($s6) +/* 010EE8 800102E8 00009825 */ move $s3, $zero +/* 010EEC 800102EC 11E00015 */ beqz $t7, .L80010344 +/* 010EF0 800102F0 00000000 */ nop +/* 010EF4 800102F4 8ED80040 */ lw $t8, 0x40($s6) +/* 010EF8 800102F8 0000A825 */ move $s5, $zero +/* 010EFC 800102FC 8319005A */ lb $t9, 0x5a($t8) +/* 010F00 80010300 00000000 */ nop +/* 010F04 80010304 1B20000F */ blez $t9, .L80010344 +/* 010F08 80010308 00000000 */ nop +/* 010F0C 8001030C 0000A025 */ move $s4, $zero +.L80010310: +/* 010F10 80010310 8EC80070 */ lw $t0, 0x70($s6) +/* 010F14 80010314 00000000 */ nop +/* 010F18 80010318 01144821 */ addu $t1, $t0, $s4 +/* 010F1C 8001031C 8D240000 */ lw $a0, ($t1) +/* 010F20 80010320 0C00CAEB */ jal func_80032BAC +/* 010F24 80010324 00000000 */ nop +/* 010F28 80010328 8ECA0040 */ lw $t2, 0x40($s6) +/* 010F2C 8001032C 26B50001 */ addiu $s5, $s5, 1 +/* 010F30 80010330 814B005A */ lb $t3, 0x5a($t2) +/* 010F34 80010334 26940004 */ addiu $s4, $s4, 4 +/* 010F38 80010338 02AB082A */ slt $at, $s5, $t3 +/* 010F3C 8001033C 1420FFF4 */ bnez $at, .L80010310 +/* 010F40 80010340 00000000 */ nop +.L80010344: +/* 010F44 80010344 86C50048 */ lh $a1, 0x48($s6) +/* 010F48 80010348 00000000 */ nop +/* 010F4C 8001034C 24ACFFFF */ addiu $t4, $a1, -1 +/* 010F50 80010350 2D810074 */ sltiu $at, $t4, 0x74 +/* 010F54 80010354 102000A8 */ beqz $at, .L800105F8 +/* 010F58 80010358 000C6080 */ sll $t4, $t4, 2 +/* 010F5C 8001035C 3C01800E */ lui $at, 0x800e +/* 010F60 80010360 002C0821 */ addu $at, $at, $t4 +/* 010F64 80010364 8C2C5250 */ lw $t4, 0x5250($at) +/* 010F68 80010368 00000000 */ nop +/* 010F6C 8001036C 01800008 */ jr $t4 +/* 010F70 80010370 00000000 */ nop +/* 010F74 80010374 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 +/* 010F78 80010378 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) +/* 010F7C 8001037C 0000A825 */ move $s5, $zero +/* 010F80 80010380 1860001D */ blez $v1, .L800103F8 +/* 010F84 80010384 0000A025 */ move $s4, $zero +/* 010F88 80010388 24050001 */ li $a1, 1 +/* 010F8C 8001038C 2404003D */ li $a0, 61 +.L80010390: +/* 010F90 80010390 3C0D8012 */ lui $t5, %hi(D_8011AE58) # $t5, 0x8012 +/* 010F94 80010394 8DADAE58 */ lw $t5, %lo(D_8011AE58)($t5) +/* 010F98 80010398 26B50001 */ addiu $s5, $s5, 1 +/* 010F9C 8001039C 01B47021 */ addu $t6, $t5, $s4 +/* 010FA0 800103A0 8DD10000 */ lw $s1, ($t6) +/* 010FA4 800103A4 00000000 */ nop +/* 010FA8 800103A8 862F0048 */ lh $t7, 0x48($s1) +/* 010FAC 800103AC 00000000 */ nop +/* 010FB0 800103B0 148F000D */ bne $a0, $t7, .L800103E8 +/* 010FB4 800103B4 02A3082A */ slt $at, $s5, $v1 +/* 010FB8 800103B8 8E220064 */ lw $v0, 0x64($s1) +/* 010FBC 800103BC 00000000 */ nop +/* 010FC0 800103C0 8C580100 */ lw $t8, 0x100($v0) +/* 010FC4 800103C4 00000000 */ nop +/* 010FC8 800103C8 16D80007 */ bne $s6, $t8, .L800103E8 +/* 010FCC 800103CC 02A3082A */ slt $at, $s5, $v1 +/* 010FD0 800103D0 AC400100 */ sw $zero, 0x100($v0) +/* 010FD4 800103D4 A04500FD */ sb $a1, 0xfd($v0) +/* 010FD8 800103D8 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 +/* 010FDC 800103DC 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) +/* 010FE0 800103E0 00000000 */ nop +/* 010FE4 800103E4 02A3082A */ slt $at, $s5, $v1 +.L800103E8: +/* 010FE8 800103E8 1420FFE9 */ bnez $at, .L80010390 +/* 010FEC 800103EC 26940004 */ addiu $s4, $s4, 4 +/* 010FF0 800103F0 86C50048 */ lh $a1, 0x48($s6) +/* 010FF4 800103F4 00000000 */ nop +.L800103F8: +/* 010FF8 800103F8 10000080 */ b .L800105FC +/* 010FFC 800103FC 24140012 */ li $s4, 18 +/* 011000 80010400 8ED00064 */ lw $s0, 0x64($s6) +/* 011004 80010404 00000000 */ nop +/* 011008 80010408 8E04001C */ lw $a0, 0x1c($s0) +/* 01100C 8001040C 00000000 */ nop +/* 011010 80010410 1080000C */ beqz $a0, .L80010444 +/* 011014 80010414 00000000 */ nop +/* 011018 80010418 0C0025BE */ jal func_800096F8 +/* 01101C 8001041C 00000000 */ nop +/* 011020 80010420 AE00001C */ sw $zero, 0x1c($s0) +/* 011024 80010424 86C50048 */ lh $a1, 0x48($s6) +/* 011028 80010428 24140012 */ li $s4, 18 +/* 01102C 8001042C 16850005 */ bne $s4, $a1, .L80010444 +/* 011030 80010430 00000000 */ nop +/* 011034 80010434 0C00FC37 */ jal func_8003F0DC +/* 011038 80010438 00000000 */ nop +/* 01103C 8001043C 86C50048 */ lh $a1, 0x48($s6) +/* 011040 80010440 00000000 */ nop +.L80010444: +/* 011044 80010444 1000006D */ b .L800105FC +/* 011048 80010448 24140012 */ li $s4, 18 +/* 01104C 8001044C 8ED00064 */ lw $s0, 0x64($s6) +/* 011050 80010450 00000000 */ nop +/* 011054 80010454 8E04001C */ lw $a0, 0x1c($s0) +/* 011058 80010458 00000000 */ nop +/* 01105C 8001045C 10800005 */ beqz $a0, .L80010474 +/* 011060 80010460 00000000 */ nop +/* 011064 80010464 0C0025BE */ jal func_800096F8 +/* 011068 80010468 00000000 */ nop +/* 01106C 8001046C 86C50048 */ lh $a1, 0x48($s6) +/* 011070 80010470 00000000 */ nop +.L80010474: +/* 011074 80010474 10000061 */ b .L800105FC +/* 011078 80010478 24140012 */ li $s4, 18 +/* 01107C 8001047C 8EC20064 */ lw $v0, 0x64($s6) +/* 011080 80010480 00000000 */ nop +/* 011084 80010484 8C430020 */ lw $v1, 0x20($v0) +/* 011088 80010488 00000000 */ nop +/* 01108C 8001048C 10600005 */ beqz $v1, .L800104A4 +/* 011090 80010490 00000000 */ nop +/* 011094 80010494 0C0025BE */ jal func_800096F8 +/* 011098 80010498 00602025 */ move $a0, $v1 +/* 01109C 8001049C 86C50048 */ lh $a1, 0x48($s6) +/* 0110A0 800104A0 00000000 */ nop +.L800104A4: +/* 0110A4 800104A4 10000055 */ b .L800105FC +/* 0110A8 800104A8 24140012 */ li $s4, 18 +/* 0110AC 800104AC 0C02FCF9 */ jal func_800BF3E4 +/* 0110B0 800104B0 02C02025 */ move $a0, $s6 +/* 0110B4 800104B4 86C50048 */ lh $a1, 0x48($s6) +/* 0110B8 800104B8 10000050 */ b .L800105FC +/* 0110BC 800104BC 24140012 */ li $s4, 18 +/* 0110C0 800104C0 8EC40064 */ lw $a0, 0x64($s6) +/* 0110C4 800104C4 0C00CAEB */ jal func_80032BAC +/* 0110C8 800104C8 00000000 */ nop +/* 0110CC 800104CC 86C50048 */ lh $a1, 0x48($s6) +/* 0110D0 800104D0 1000004A */ b .L800105FC +/* 0110D4 800104D4 24140012 */ li $s4, 18 +/* 0110D8 800104D8 8EC40064 */ lw $a0, 0x64($s6) +/* 0110DC 800104DC 8FB9003C */ lw $t9, 0x3c($sp) +/* 0110E0 800104E0 10800007 */ beqz $a0, .L80010500 +/* 0110E4 800104E4 00000000 */ nop +/* 0110E8 800104E8 17200005 */ bnez $t9, .L80010500 +/* 0110EC 800104EC 00000000 */ nop +/* 0110F0 800104F0 0C003FEE */ jal func_8000FFB8 +/* 0110F4 800104F4 00000000 */ nop +/* 0110F8 800104F8 86C50048 */ lh $a1, 0x48($s6) +/* 0110FC 800104FC 00000000 */ nop +.L80010500: +/* 011100 80010500 1000003E */ b .L800105FC +/* 011104 80010504 24140012 */ li $s4, 18 +/* 011108 80010508 3C048012 */ lui $a0, %hi(D_8011AE00) # $a0, 0x8012 +/* 01110C 8001050C 2484AE00 */ addiu $a0, %lo(D_8011AE00) # addiu $a0, $a0, -0x5200 +/* 011110 80010510 80830000 */ lb $v1, ($a0) +/* 011114 80010514 3C088012 */ lui $t0, %hi(D_8011ADD8) # $t0, 0x8012 +/* 011118 80010518 1860000E */ blez $v1, .L80010554 +/* 01111C 8001051C 24140012 */ li $s4, 18 +/* 011120 80010520 8D08ADD8 */ lw $t0, %lo(D_8011ADD8)($t0) +/* 011124 80010524 3C028012 */ lui $v0, %hi(D_8011ADD8) # $v0, 0x8012 +/* 011128 80010528 12C8000A */ beq $s6, $t0, .L80010554 +/* 01112C 8001052C 2442ADD8 */ addiu $v0, %lo(D_8011ADD8) # addiu $v0, $v0, -0x5228 +.L80010530: +/* 011130 80010530 26730001 */ addiu $s3, $s3, 1 +/* 011134 80010534 0263082A */ slt $at, $s3, $v1 +/* 011138 80010538 10200006 */ beqz $at, .L80010554 +/* 01113C 8001053C 00134880 */ sll $t1, $s3, 2 +/* 011140 80010540 00495021 */ addu $t2, $v0, $t1 +/* 011144 80010544 8D4B0000 */ lw $t3, ($t2) +/* 011148 80010548 00000000 */ nop +/* 01114C 8001054C 16CBFFF8 */ bne $s6, $t3, .L80010530 +/* 011150 80010550 00000000 */ nop +.L80010554: +/* 011154 80010554 0263082A */ slt $at, $s3, $v1 +/* 011158 80010558 10200010 */ beqz $at, .L8001059C +/* 01115C 8001055C 246CFFFF */ addiu $t4, $v1, -1 +/* 011160 80010560 A08C0000 */ sb $t4, ($a0) +/* 011164 80010564 80830000 */ lb $v1, ($a0) +/* 011168 80010568 00136880 */ sll $t5, $s3, 2 +/* 01116C 8001056C 0263082A */ slt $at, $s3, $v1 +/* 011170 80010570 1020000A */ beqz $at, .L8001059C +/* 011174 80010574 3C0E8012 */ lui $t6, %hi(D_8011ADD8) # $t6, 0x8012 +/* 011178 80010578 25CEADD8 */ addiu $t6, %lo(D_8011ADD8) # addiu $t6, $t6, -0x5228 +/* 01117C 8001057C 00037880 */ sll $t7, $v1, 2 +/* 011180 80010580 01EE2021 */ addu $a0, $t7, $t6 +/* 011184 80010584 01AE1021 */ addu $v0, $t5, $t6 +.L80010588: +/* 011188 80010588 8C580004 */ lw $t8, 4($v0) +/* 01118C 8001058C 24420004 */ addiu $v0, $v0, 4 +/* 011190 80010590 0044082B */ sltu $at, $v0, $a0 +/* 011194 80010594 1420FFFC */ bnez $at, .L80010588 +/* 011198 80010598 AC58FFFC */ sw $t8, -4($v0) +.L8001059C: +/* 01119C 8001059C 86C50048 */ lh $a1, 0x48($s6) +/* 0111A0 800105A0 10000016 */ b .L800105FC +/* 0111A4 800105A4 00009825 */ move $s3, $zero +/* 0111A8 800105A8 8EC40064 */ lw $a0, 0x64($s6) +/* 0111AC 800105AC 00000000 */ nop +/* 0111B0 800105B0 10800005 */ beqz $a0, .L800105C8 +/* 0111B4 800105B4 00000000 */ nop +/* 0111B8 800105B8 0C01C450 */ jal func_80071140 +/* 0111BC 800105BC 00000000 */ nop +/* 0111C0 800105C0 86C50048 */ lh $a1, 0x48($s6) +/* 0111C4 800105C4 00000000 */ nop +.L800105C8: +/* 0111C8 800105C8 1000000C */ b .L800105FC +/* 0111CC 800105CC 24140012 */ li $s4, 18 +/* 0111D0 800105D0 0C02B220 */ jal func_800AC880 +/* 0111D4 800105D4 02C02025 */ move $a0, $s6 +/* 0111D8 800105D8 86C50048 */ lh $a1, 0x48($s6) +/* 0111DC 800105DC 10000007 */ b .L800105FC +/* 0111E0 800105E0 24140012 */ li $s4, 18 +/* 0111E4 800105E4 0C02B3E6 */ jal func_800ACF98 +/* 0111E8 800105E8 02C02025 */ move $a0, $s6 +/* 0111EC 800105EC 86C50048 */ lh $a1, 0x48($s6) +/* 0111F0 800105F0 10000002 */ b .L800105FC +/* 0111F4 800105F4 24140012 */ li $s4, 18 +.L800105F8: +/* 0111F8 800105F8 24140012 */ li $s4, 18 +.L800105FC: +/* 0111FC 800105FC 28A1000D */ slti $at, $a1, 0xd +/* 011200 80010600 1420000B */ bnez $at, .L80010630 +/* 011204 80010604 00A01025 */ move $v0, $a1 +/* 011208 80010608 2459FFCE */ addiu $t9, $v0, -0x32 +/* 01120C 8001060C 2F210046 */ sltiu $at, $t9, 0x46 +/* 011210 80010610 10200014 */ beqz $at, .L80010664 +/* 011214 80010614 0019C880 */ sll $t9, $t9, 2 +/* 011218 80010618 3C01800E */ lui $at, 0x800e +/* 01121C 8001061C 00390821 */ addu $at, $at, $t9 +/* 011220 80010620 8C395420 */ lw $t9, 0x5420($at) +/* 011224 80010624 00000000 */ nop +/* 011228 80010628 03200008 */ jr $t9 +/* 01122C 8001062C 00000000 */ nop +.L80010630: +/* 011230 80010630 2401000C */ li $at, 12 +/* 011234 80010634 1441000C */ bne $v0, $at, .L80010668 +/* 011238 80010638 24010001 */ li $at, 1 +/* 01123C 8001063C 8EC20064 */ lw $v0, 0x64($s6) +/* 011240 80010640 00000000 */ nop +/* 011244 80010644 8C440018 */ lw $a0, 0x18($v0) +/* 011248 80010648 00000000 */ nop +/* 01124C 8001064C 10800006 */ beqz $a0, .L80010668 +/* 011250 80010650 24010001 */ li $at, 1 +/* 011254 80010654 0C001223 */ jal func_8000488C +/* 011258 80010658 00000000 */ nop +/* 01125C 8001065C 86C50048 */ lh $a1, 0x48($s6) +/* 011260 80010660 00000000 */ nop +.L80010664: +/* 011264 80010664 24010001 */ li $at, 1 +.L80010668: +/* 011268 80010668 14A10061 */ bne $a1, $at, .L800107F0 +/* 01126C 8001066C 00000000 */ nop +/* 011270 80010670 8ED00064 */ lw $s0, 0x64($s6) +/* 011274 80010674 00000000 */ nop +/* 011278 80010678 8E020018 */ lw $v0, 0x18($s0) +/* 01127C 8001067C 00000000 */ nop +/* 011280 80010680 10400003 */ beqz $v0, .L80010690 +/* 011284 80010684 00000000 */ nop +/* 011288 80010688 0C001223 */ jal func_8000488C +/* 01128C 8001068C 00402025 */ move $a0, $v0 +.L80010690: +/* 011290 80010690 8E020010 */ lw $v0, 0x10($s0) +/* 011294 80010694 00000000 */ nop +/* 011298 80010698 10400003 */ beqz $v0, .L800106A8 +/* 01129C 8001069C 00000000 */ nop +/* 0112A0 800106A0 0C001223 */ jal func_8000488C +/* 0112A4 800106A4 00402025 */ move $a0, $v0 +.L800106A8: +/* 0112A8 800106A8 8E020014 */ lw $v0, 0x14($s0) +/* 0112AC 800106AC 00000000 */ nop +/* 0112B0 800106B0 10400003 */ beqz $v0, .L800106C0 +/* 0112B4 800106B4 00000000 */ nop +/* 0112B8 800106B8 0C001223 */ jal func_8000488C +/* 0112BC 800106BC 00402025 */ move $a0, $v0 +.L800106C0: +/* 0112C0 800106C0 8E02001C */ lw $v0, 0x1c($s0) +/* 0112C4 800106C4 00000000 */ nop +/* 0112C8 800106C8 10400003 */ beqz $v0, .L800106D8 +/* 0112CC 800106CC 00000000 */ nop +/* 0112D0 800106D0 0C001223 */ jal func_8000488C +/* 0112D4 800106D4 00402025 */ move $a0, $v0 +.L800106D8: +/* 0112D8 800106D8 8E020020 */ lw $v0, 0x20($s0) +/* 0112DC 800106DC 00000000 */ nop +/* 0112E0 800106E0 10400003 */ beqz $v0, .L800106F0 +/* 0112E4 800106E4 00000000 */ nop +/* 0112E8 800106E8 0C001223 */ jal func_8000488C +/* 0112EC 800106EC 00402025 */ move $a0, $v0 +.L800106F0: +/* 0112F0 800106F0 8E040024 */ lw $a0, 0x24($s0) +/* 0112F4 800106F4 00000000 */ nop +/* 0112F8 800106F8 10800003 */ beqz $a0, .L80010708 +/* 0112FC 800106FC 00000000 */ nop +/* 011300 80010700 0C0025BE */ jal func_800096F8 +/* 011304 80010704 00000000 */ nop +.L80010708: +/* 011308 80010708 8E04017C */ lw $a0, 0x17c($s0) +/* 01130C 8001070C 00000000 */ nop +/* 011310 80010710 10800003 */ beqz $a0, .L80010720 +/* 011314 80010714 00000000 */ nop +/* 011318 80010718 0C0025BE */ jal func_800096F8 +/* 01131C 8001071C 00000000 */ nop +.L80010720: +/* 011320 80010720 8E040178 */ lw $a0, 0x178($s0) +/* 011324 80010724 00000000 */ nop +/* 011328 80010728 10800003 */ beqz $a0, .L80010738 +/* 01132C 8001072C 00000000 */ nop +/* 011330 80010730 0C001223 */ jal func_8000488C +/* 011334 80010734 00000000 */ nop +.L80010738: +/* 011338 80010738 0C001AB2 */ jal func_80006AC8 +/* 01133C 8001073C 02C02025 */ move $a0, $s6 +/* 011340 80010740 3C158012 */ lui $s5, %hi(D_8011AE5C) # $s5, 0x8012 +/* 011344 80010744 26B5AE5C */ addiu $s5, %lo(D_8011AE5C) # addiu $s5, $s5, -0x51a4 +/* 011348 80010748 8EA80000 */ lw $t0, ($s5) +/* 01134C 8001074C 00008025 */ move $s0, $zero +/* 011350 80010750 19000027 */ blez $t0, .L800107F0 +/* 011354 80010754 24120005 */ li $s2, 5 +/* 011358 80010758 2411004C */ li $s1, 76 +.L8001075C: +/* 01135C 8001075C 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 +/* 011360 80010760 8D29AE58 */ lw $t1, %lo(D_8011AE58)($t1) +/* 011364 80010764 00000000 */ nop +/* 011368 80010768 01305021 */ addu $t2, $t1, $s0 +/* 01136C 8001076C 8D440000 */ lw $a0, ($t2) +/* 011370 80010770 00000000 */ nop +/* 011374 80010774 848B0006 */ lh $t3, 6($a0) +/* 011378 80010778 00000000 */ nop +/* 01137C 8001077C 316C8000 */ andi $t4, $t3, 0x8000 +/* 011380 80010780 1180000B */ beqz $t4, .L800107B0 +/* 011384 80010784 00000000 */ nop +/* 011388 80010788 8C8D003C */ lw $t5, 0x3c($a0) +/* 01138C 8001078C 3C0F8012 */ lui $t7, %hi(D_8011AE58) # $t7, 0x8012 +/* 011390 80010790 16CD0007 */ bne $s6, $t5, .L800107B0 +/* 011394 80010794 00000000 */ nop +/* 011398 80010798 AC80003C */ sw $zero, 0x3c($a0) +/* 01139C 8001079C 8DEFAE58 */ lw $t7, %lo(D_8011AE58)($t7) +/* 0113A0 800107A0 00000000 */ nop +/* 0113A4 800107A4 01F07021 */ addu $t6, $t7, $s0 +/* 0113A8 800107A8 8DC40000 */ lw $a0, ($t6) +/* 0113AC 800107AC 00000000 */ nop +.L800107B0: +/* 0113B0 800107B0 84820048 */ lh $v0, 0x48($a0) +/* 0113B4 800107B4 00000000 */ nop +/* 0113B8 800107B8 12820005 */ beq $s4, $v0, .L800107D0 +/* 0113BC 800107BC 00000000 */ nop +/* 0113C0 800107C0 12220003 */ beq $s1, $v0, .L800107D0 +/* 0113C4 800107C4 00000000 */ nop +/* 0113C8 800107C8 16420003 */ bne $s2, $v0, .L800107D8 +/* 0113CC 800107CC 00000000 */ nop +.L800107D0: +/* 0113D0 800107D0 0C003FEE */ jal func_8000FFB8 +/* 0113D4 800107D4 00000000 */ nop +.L800107D8: +/* 0113D8 800107D8 8EB80000 */ lw $t8, ($s5) +/* 0113DC 800107DC 26730001 */ addiu $s3, $s3, 1 +/* 0113E0 800107E0 0278082A */ slt $at, $s3, $t8 +/* 0113E4 800107E4 1420FFDD */ bnez $at, .L8001075C +/* 0113E8 800107E8 26100004 */ addiu $s0, $s0, 4 +/* 0113EC 800107EC 00009825 */ move $s3, $zero +.L800107F0: +/* 0113F0 800107F0 8EC20050 */ lw $v0, 0x50($s6) +/* 0113F4 800107F4 00000000 */ nop +/* 0113F8 800107F8 10400007 */ beqz $v0, .L80010818 +/* 0113FC 800107FC 00000000 */ nop +/* 011400 80010800 8C440004 */ lw $a0, 4($v0) +/* 011404 80010804 00000000 */ nop +/* 011408 80010808 10800003 */ beqz $a0, .L80010818 +/* 01140C 8001080C 00000000 */ nop +/* 011410 80010810 0C01ECAF */ jal func_8007B2BC +/* 011414 80010814 00000000 */ nop +.L80010818: +/* 011418 80010818 8EC20058 */ lw $v0, 0x58($s6) +/* 01141C 8001081C 00000000 */ nop +/* 011420 80010820 10400007 */ beqz $v0, .L80010840 +/* 011424 80010824 00000000 */ nop +/* 011428 80010828 8C440004 */ lw $a0, 4($v0) +/* 01142C 8001082C 00000000 */ nop +/* 011430 80010830 10800003 */ beqz $a0, .L80010840 +/* 011434 80010834 00000000 */ nop +/* 011438 80010838 0C01ECAF */ jal func_8007B2BC +/* 01143C 8001083C 00000000 */ nop +.L80010840: +/* 011440 80010840 8EC20040 */ lw $v0, 0x40($s6) +/* 011444 80010844 00000000 */ nop +/* 011448 80010848 80440053 */ lb $a0, 0x53($v0) +/* 01144C 8001084C 80520055 */ lb $s2, 0x55($v0) +/* 011450 80010850 14800013 */ bnez $a0, .L800108A0 +/* 011454 80010854 24010004 */ li $at, 4 +/* 011458 80010858 1A40002E */ blez $s2, .L80010914 +/* 01145C 8001085C 00008025 */ move $s0, $zero +.L80010860: +/* 011460 80010860 8ED90068 */ lw $t9, 0x68($s6) +/* 011464 80010864 00000000 */ nop +/* 011468 80010868 03304021 */ addu $t0, $t9, $s0 +/* 01146C 8001086C 8D020000 */ lw $v0, ($t0) +/* 011470 80010870 00000000 */ nop +/* 011474 80010874 10400003 */ beqz $v0, .L80010884 +/* 011478 80010878 00000000 */ nop +/* 01147C 8001087C 0C017FD0 */ jal func_8005FF40 +/* 011480 80010880 00402025 */ move $a0, $v0 +.L80010884: +/* 011484 80010884 26730001 */ addiu $s3, $s3, 1 +/* 011488 80010888 1672FFF5 */ bne $s3, $s2, .L80010860 +/* 01148C 8001088C 26100004 */ addiu $s0, $s0, 4 +/* 011490 80010890 8EC20040 */ lw $v0, 0x40($s6) +/* 011494 80010894 10000020 */ b .L80010918 +/* 011498 80010898 80430057 */ lb $v1, 0x57($v0) +/* 01149C 8001089C 24010004 */ li $at, 4 +.L800108A0: +/* 0114A0 800108A0 1481000F */ bne $a0, $at, .L800108E0 +/* 0114A4 800108A4 00000000 */ nop +/* 0114A8 800108A8 1A40001A */ blez $s2, .L80010914 +/* 0114AC 800108AC 00008025 */ move $s0, $zero +.L800108B0: +/* 0114B0 800108B0 8EC90068 */ lw $t1, 0x68($s6) +/* 0114B4 800108B4 00000000 */ nop +/* 0114B8 800108B8 01305021 */ addu $t2, $t1, $s0 +/* 0114BC 800108BC 8D440000 */ lw $a0, ($t2) +/* 0114C0 800108C0 0C01ECAF */ jal func_8007B2BC +/* 0114C4 800108C4 00000000 */ nop +/* 0114C8 800108C8 26730001 */ addiu $s3, $s3, 1 +/* 0114CC 800108CC 1672FFF8 */ bne $s3, $s2, .L800108B0 +/* 0114D0 800108D0 26100004 */ addiu $s0, $s0, 4 +/* 0114D4 800108D4 8EC20040 */ lw $v0, 0x40($s6) +/* 0114D8 800108D8 1000000F */ b .L80010918 +/* 0114DC 800108DC 80430057 */ lb $v1, 0x57($v0) +.L800108E0: +/* 0114E0 800108E0 1A40000C */ blez $s2, .L80010914 +/* 0114E4 800108E4 00008025 */ move $s0, $zero +.L800108E8: +/* 0114E8 800108E8 8ECB0068 */ lw $t3, 0x68($s6) +/* 0114EC 800108EC 00000000 */ nop +/* 0114F0 800108F0 01706021 */ addu $t4, $t3, $s0 +/* 0114F4 800108F4 8D840000 */ lw $a0, ($t4) +/* 0114F8 800108F8 0C01F32C */ jal func_8007CCB0 +/* 0114FC 800108FC 00000000 */ nop +/* 011500 80010900 26730001 */ addiu $s3, $s3, 1 +/* 011504 80010904 1672FFF8 */ bne $s3, $s2, .L800108E8 +/* 011508 80010908 26100004 */ addiu $s0, $s0, 4 +/* 01150C 8001090C 8EC20040 */ lw $v0, 0x40($s6) +/* 011510 80010910 00000000 */ nop +.L80010914: +/* 011514 80010914 80430057 */ lb $v1, 0x57($v0) +.L80010918: +/* 011518 80010918 00000000 */ nop +/* 01151C 8001091C 1860000E */ blez $v1, .L80010958 +/* 011520 80010920 00000000 */ nop +/* 011524 80010924 1860000C */ blez $v1, .L80010958 +/* 011528 80010928 00009825 */ move $s3, $zero +.L8001092C: +/* 01152C 8001092C 8ECD006C */ lw $t5, 0x6c($s6) +/* 011530 80010930 00137940 */ sll $t7, $s3, 5 +/* 011534 80010934 0C02C898 */ jal func_800B2260 +/* 011538 80010938 01AF2021 */ addu $a0, $t5, $t7 +/* 01153C 8001093C 8ECE0040 */ lw $t6, 0x40($s6) +/* 011540 80010940 26730001 */ addiu $s3, $s3, 1 +/* 011544 80010944 81D80057 */ lb $t8, 0x57($t6) +/* 011548 80010948 00000000 */ nop +/* 01154C 8001094C 0278082A */ slt $at, $s3, $t8 +/* 011550 80010950 1420FFF6 */ bnez $at, .L8001092C +/* 011554 80010954 00000000 */ nop +.L80010958: +/* 011558 80010958 86C4002C */ lh $a0, 0x2c($s6) +/* 01155C 8001095C 0C003211 */ jal func_8000C844 +/* 011560 80010960 00000000 */ nop +/* 011564 80010964 0C01C450 */ jal func_80071140 +/* 011568 80010968 02C02025 */ move $a0, $s6 +.L8001096C: +/* 01156C 8001096C 8FBF0034 */ lw $ra, 0x34($sp) +/* 011570 80010970 8FB00018 */ lw $s0, 0x18($sp) +/* 011574 80010974 8FB1001C */ lw $s1, 0x1c($sp) +/* 011578 80010978 8FB20020 */ lw $s2, 0x20($sp) +/* 01157C 8001097C 8FB30024 */ lw $s3, 0x24($sp) +/* 011580 80010980 8FB40028 */ lw $s4, 0x28($sp) +/* 011584 80010984 8FB5002C */ lw $s5, 0x2c($sp) +/* 011588 80010988 8FB60030 */ lw $s6, 0x30($sp) +/* 01158C 8001098C 03E00008 */ jr $ra +/* 011590 80010990 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_005740/func_80010994.s b/asm/non_matchings/unknown_005740/func_80010994.s new file mode 100644 index 00000000..f04c88d3 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80010994.s @@ -0,0 +1,534 @@ +glabel func_80010994 +/* 011594 80010994 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 011598 80010998 AFB40028 */ sw $s4, 0x28($sp) +/* 01159C 8001099C 0080A025 */ move $s4, $a0 +/* 0115A0 800109A0 AFBF0034 */ sw $ra, 0x34($sp) +/* 0115A4 800109A4 AFB60030 */ sw $s6, 0x30($sp) +/* 0115A8 800109A8 AFB5002C */ sw $s5, 0x2c($sp) +/* 0115AC 800109AC AFB30024 */ sw $s3, 0x24($sp) +/* 0115B0 800109B0 AFB20020 */ sw $s2, 0x20($sp) +/* 0115B4 800109B4 AFB1001C */ sw $s1, 0x1c($sp) +/* 0115B8 800109B8 AFB00018 */ sw $s0, 0x18($sp) +/* 0115BC 800109BC 0C00916D */ jal func_800245B4 +/* 0115C0 800109C0 2404FFFF */ li $a0, -1 +/* 0115C4 800109C4 3C028012 */ lui $v0, %hi(D_8011ADB0) # $v0, 0x8012 +/* 0115C8 800109C8 8C42ADB0 */ lw $v0, %lo(D_8011ADB0)($v0) +/* 0115CC 800109CC 3C018012 */ lui $at, %hi(D_8011ADB8) # $at, 0x8012 +/* 0115D0 800109D0 1840000D */ blez $v0, .L80010A08 +/* 0115D4 800109D4 AC22ADB8 */ sw $v0, %lo(D_8011ADB8)($at) +/* 0115D8 800109D8 0C028064 */ jal func_800A0190 +/* 0115DC 800109DC 00000000 */ nop +/* 0115E0 800109E0 10400009 */ beqz $v0, .L80010A08 +/* 0115E4 800109E4 3C038012 */ lui $v1, %hi(D_8011ADBC) # $v1, 0x8012 +/* 0115E8 800109E8 3C048012 */ lui $a0, %hi(D_8011ADB0) # $a0, 0x8012 +/* 0115EC 800109EC 2484ADB0 */ addiu $a0, %lo(D_8011ADB0) # addiu $a0, $a0, -0x5250 +/* 0115F0 800109F0 8C8E0000 */ lw $t6, ($a0) +/* 0115F4 800109F4 2463ADBC */ addiu $v1, %lo(D_8011ADBC) # addiu $v1, $v1, -0x5244 +/* 0115F8 800109F8 01D41023 */ subu $v0, $t6, $s4 +/* 0115FC 800109FC AC820000 */ sw $v0, ($a0) +/* 011600 80010A00 10000009 */ b .L80010A28 +/* 011604 80010A04 AC600000 */ sw $zero, ($v1) +.L80010A08: +/* 011608 80010A08 3C038012 */ lui $v1, %hi(D_8011ADBC) # $v1, 0x8012 +/* 01160C 80010A0C 2463ADBC */ addiu $v1, %lo(D_8011ADBC) # addiu $v1, $v1, -0x5244 +/* 011610 80010A10 8C780000 */ lw $t8, ($v1) +/* 011614 80010A14 3C028012 */ lui $v0, %hi(D_8011ADB0) # $v0, 0x8012 +/* 011618 80010A18 0314C821 */ addu $t9, $t8, $s4 +/* 01161C 80010A1C AC790000 */ sw $t9, ($v1) +/* 011620 80010A20 8C42ADB0 */ lw $v0, %lo(D_8011ADB0)($v0) +/* 011624 80010A24 00000000 */ nop +.L80010A28: +/* 011628 80010A28 1C400003 */ bgtz $v0, .L80010A38 +/* 01162C 80010A2C 3C048012 */ lui $a0, %hi(D_8011AEF0) # $a0, 0x8012 +/* 011630 80010A30 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012 +/* 011634 80010A34 AC20ADB0 */ sw $zero, %lo(D_8011ADB0)($at) +.L80010A38: +/* 011638 80010A38 3C028012 */ lui $v0, %hi(D_8011AD21) # $v0, 0x8012 +/* 01163C 80010A3C 3C018012 */ lui $at, %hi(D_8011AD3D) # $at, 0x8012 +/* 011640 80010A40 2442AD21 */ addiu $v0, %lo(D_8011AD21) # addiu $v0, $v0, -0x52df +/* 011644 80010A44 A020AD3D */ sb $zero, %lo(D_8011AD3D)($at) +/* 011648 80010A48 80480000 */ lb $t0, ($v0) +/* 01164C 80010A4C 24090001 */ li $t1, 1 +/* 011650 80010A50 01285023 */ subu $t2, $t1, $t0 +/* 011654 80010A54 A04A0000 */ sb $t2, ($v0) +/* 011658 80010A58 804B0000 */ lb $t3, ($v0) +/* 01165C 80010A5C 3C018012 */ lui $at, 0x8012 +/* 011660 80010A60 002B0821 */ addu $at, $at, $t3 +/* 011664 80010A64 2484AEF0 */ addiu $a0, %lo(D_8011AEF0) # addiu $a0, $a0, -0x5110 +/* 011668 80010A68 A020AD22 */ sb $zero, -0x52de($at) +/* 01166C 80010A6C 8C8C0000 */ lw $t4, ($a0) +/* 011670 80010A70 00009825 */ move $s3, $zero +/* 011674 80010A74 19800021 */ blez $t4, .L80010AFC +/* 011678 80010A78 3C158012 */ lui $s5, %hi(D_8011AEE4) # $s5, 0x8012 +/* 01167C 80010A7C 26B5AEE4 */ addiu $s5, %lo(D_8011AEE4) # addiu $s5, $s5, -0x511c +/* 011680 80010A80 00001825 */ move $v1, $zero +.L80010A84: +/* 011684 80010A84 8EAD0000 */ lw $t5, ($s5) +/* 011688 80010A88 26730001 */ addiu $s3, $s3, 1 +/* 01168C 80010A8C 01A37021 */ addu $t6, $t5, $v1 +/* 011690 80010A90 8DC20000 */ lw $v0, ($t6) +/* 011694 80010A94 00000000 */ nop +/* 011698 80010A98 8C450064 */ lw $a1, 0x64($v0) +/* 01169C 80010A9C C444000C */ lwc1 $f4, 0xc($v0) +/* 0116A0 80010AA0 00000000 */ nop +/* 0116A4 80010AA4 E4A4005C */ swc1 $f4, 0x5c($a1) +/* 0116A8 80010AA8 8EAF0000 */ lw $t7, ($s5) +/* 0116AC 80010AAC 00000000 */ nop +/* 0116B0 80010AB0 01E3C021 */ addu $t8, $t7, $v1 +/* 0116B4 80010AB4 8F190000 */ lw $t9, ($t8) +/* 0116B8 80010AB8 00000000 */ nop +/* 0116BC 80010ABC C7260010 */ lwc1 $f6, 0x10($t9) +/* 0116C0 80010AC0 00000000 */ nop +/* 0116C4 80010AC4 E4A60060 */ swc1 $f6, 0x60($a1) +/* 0116C8 80010AC8 8EA90000 */ lw $t1, ($s5) +/* 0116CC 80010ACC 00000000 */ nop +/* 0116D0 80010AD0 01234021 */ addu $t0, $t1, $v1 +/* 0116D4 80010AD4 8D0A0000 */ lw $t2, ($t0) +/* 0116D8 80010AD8 24630004 */ addiu $v1, $v1, 4 +/* 0116DC 80010ADC C5480014 */ lwc1 $f8, 0x14($t2) +/* 0116E0 80010AE0 00000000 */ nop +/* 0116E4 80010AE4 E4A80064 */ swc1 $f8, 0x64($a1) +/* 0116E8 80010AE8 8C8B0000 */ lw $t3, ($a0) +/* 0116EC 80010AEC 00000000 */ nop +/* 0116F0 80010AF0 026B082A */ slt $at, $s3, $t3 +/* 0116F4 80010AF4 1420FFE3 */ bnez $at, .L80010A84 +/* 0116F8 80010AF8 00000000 */ nop +.L80010AFC: +/* 0116FC 80010AFC 3C158012 */ lui $s5, %hi(D_8011AEE4) # $s5, 0x8012 +/* 011700 80010B00 0C0050AE */ jal func_800142B8 +/* 011704 80010B04 26B5AEE4 */ addiu $s5, %lo(D_8011AEE4) # addiu $s5, $s5, -0x511c +/* 011708 80010B08 0C00556E */ jal func_800155B8 +/* 01170C 80010B0C 00000000 */ nop +/* 011710 80010B10 0C007A27 */ jal func_8001E89C +/* 011714 80010B14 00000000 */ nop +/* 011718 80010B18 3C138012 */ lui $s3, %hi(D_8011AE70) # $s3, 0x8012 +/* 01171C 80010B1C 2673AE70 */ addiu $s3, %lo(D_8011AE70) # addiu $s3, $s3, -0x5190 +/* 011720 80010B20 8E6C0000 */ lw $t4, ($s3) +/* 011724 80010B24 00008825 */ move $s1, $zero +/* 011728 80010B28 1980000F */ blez $t4, .L80010B68 +/* 01172C 80010B2C 3C108012 */ lui $s0, %hi(D_8011AE6C) # $s0, 0x8012 +/* 011730 80010B30 2610AE6C */ addiu $s0, %lo(D_8011AE6C) # addiu $s0, $s0, -0x5194 +/* 011734 80010B34 00009025 */ move $s2, $zero +.L80010B38: +/* 011738 80010B38 8E0D0000 */ lw $t5, ($s0) +/* 01173C 80010B3C 02802825 */ move $a1, $s4 +/* 011740 80010B40 01B27021 */ addu $t6, $t5, $s2 +/* 011744 80010B44 8DC40000 */ lw $a0, ($t6) +/* 011748 80010B48 0C008FD2 */ jal func_80023F48 +/* 01174C 80010B4C 00000000 */ nop +/* 011750 80010B50 8E6F0000 */ lw $t7, ($s3) +/* 011754 80010B54 26310001 */ addiu $s1, $s1, 1 +/* 011758 80010B58 022F082A */ slt $at, $s1, $t7 +/* 01175C 80010B5C 1420FFF6 */ bnez $at, .L80010B38 +/* 011760 80010B60 26520004 */ addiu $s2, $s2, 4 +/* 011764 80010B64 00008825 */ move $s1, $zero +.L80010B68: +/* 011768 80010B68 3C108012 */ lui $s0, %hi(D_8011AE6C) # $s0, 0x8012 +/* 01176C 80010B6C 2610AE6C */ addiu $s0, %lo(D_8011AE6C) # addiu $s0, $s0, -0x5194 +/* 011770 80010B70 0C0079BB */ jal func_8001E6EC +/* 011774 80010B74 24040001 */ li $a0, 1 +/* 011778 80010B78 8E780000 */ lw $t8, ($s3) +/* 01177C 80010B7C 00000000 */ nop +/* 011780 80010B80 1B00000C */ blez $t8, .L80010BB4 +/* 011784 80010B84 00009025 */ move $s2, $zero +.L80010B88: +/* 011788 80010B88 8E190000 */ lw $t9, ($s0) +/* 01178C 80010B8C 00000000 */ nop +/* 011790 80010B90 03324821 */ addu $t1, $t9, $s2 +/* 011794 80010B94 8D240000 */ lw $a0, ($t1) +/* 011798 80010B98 0C005C27 */ jal func_8001709C +/* 01179C 80010B9C 00000000 */ nop +/* 0117A0 80010BA0 8E680000 */ lw $t0, ($s3) +/* 0117A4 80010BA4 26310001 */ addiu $s1, $s1, 1 +/* 0117A8 80010BA8 0228082A */ slt $at, $s1, $t0 +/* 0117AC 80010BAC 1420FFF6 */ bnez $at, .L80010B88 +/* 0117B0 80010BB0 26520004 */ addiu $s2, $s2, 4 +.L80010BB4: +/* 0117B4 80010BB4 3C138012 */ lui $s3, %hi(D_8011AE5C) # $s3, 0x8012 +/* 0117B8 80010BB8 3C118012 */ lui $s1, %hi(D_8011AE60) # $s1, 0x8012 +/* 0117BC 80010BBC 8E73AE5C */ lw $s3, %lo(D_8011AE5C)($s3) +/* 0117C0 80010BC0 8E31AE60 */ lw $s1, %lo(D_8011AE60)($s1) +/* 0117C4 80010BC4 00000000 */ nop +/* 0117C8 80010BC8 0233082A */ slt $at, $s1, $s3 +/* 0117CC 80010BCC 1020004C */ beqz $at, .L80010D00 +/* 0117D0 80010BD0 00119080 */ sll $s2, $s1, 2 +/* 0117D4 80010BD4 00135080 */ sll $t2, $s3, 2 +/* 0117D8 80010BD8 3C168012 */ lui $s6, %hi(D_8011AE58) # $s6, 0x8012 +/* 0117DC 80010BDC 26D6AE58 */ addiu $s6, %lo(D_8011AE58) # addiu $s6, $s6, -0x51a8 +/* 0117E0 80010BE0 AFAA0038 */ sw $t2, 0x38($sp) +/* 0117E4 80010BE4 24110021 */ li $s1, 33 +.L80010BE8: +/* 0117E8 80010BE8 8ECB0000 */ lw $t3, ($s6) +/* 0117EC 80010BEC 00000000 */ nop +/* 0117F0 80010BF0 01726021 */ addu $t4, $t3, $s2 +/* 0117F4 80010BF4 8D900000 */ lw $s0, ($t4) +/* 0117F8 80010BF8 00000000 */ nop +/* 0117FC 80010BFC 860D0006 */ lh $t5, 6($s0) +/* 011800 80010C00 00000000 */ nop +/* 011804 80010C04 31AE8000 */ andi $t6, $t5, 0x8000 +/* 011808 80010C08 15C00039 */ bnez $t6, .L80010CF0 +/* 01180C 80010C0C 8FAB0038 */ lw $t3, 0x38($sp) +/* 011810 80010C10 86020048 */ lh $v0, 0x48($s0) +/* 011814 80010C14 24010005 */ li $at, 5 +/* 011818 80010C18 12220035 */ beq $s1, $v0, .L80010CF0 +/* 01181C 80010C1C 8FAB0038 */ lw $t3, 0x38($sp) +/* 011820 80010C20 10410032 */ beq $v0, $at, .L80010CEC +/* 011824 80010C24 2401000F */ li $at, 15 +/* 011828 80010C28 10410031 */ beq $v0, $at, .L80010CF0 +/* 01182C 80010C2C 8FAB0038 */ lw $t3, 0x38($sp) +/* 011830 80010C30 8E02004C */ lw $v0, 0x4c($s0) +/* 011834 80010C34 02002025 */ move $a0, $s0 +/* 011838 80010C38 10400009 */ beqz $v0, .L80010C60 +/* 01183C 80010C3C 00000000 */ nop +/* 011840 80010C40 904F0011 */ lbu $t7, 0x11($v0) +/* 011844 80010C44 24010002 */ li $at, 2 +/* 011848 80010C48 11E10007 */ beq $t7, $at, .L80010C68 +/* 01184C 80010C4C 02002025 */ move $a0, $s0 +/* 011850 80010C50 0C008FD2 */ jal func_80023F48 +/* 011854 80010C54 02802825 */ move $a1, $s4 +/* 011858 80010C58 10000004 */ b .L80010C6C +/* 01185C 80010C5C 8E060040 */ lw $a2, 0x40($s0) +.L80010C60: +/* 011860 80010C60 0C008FD2 */ jal func_80023F48 +/* 011864 80010C64 02802825 */ move $a1, $s4 +.L80010C68: +/* 011868 80010C68 8E060040 */ lw $a2, 0x40($s0) +.L80010C6C: +/* 01186C 80010C6C 00000000 */ nop +/* 011870 80010C70 80D80053 */ lb $t8, 0x53($a2) +/* 011874 80010C74 00000000 */ nop +/* 011878 80010C78 1700001D */ bnez $t8, .L80010CF0 +/* 01187C 80010C7C 8FAB0038 */ lw $t3, 0x38($sp) +/* 011880 80010C80 80C40055 */ lb $a0, 0x55($a2) +/* 011884 80010C84 00002825 */ move $a1, $zero +/* 011888 80010C88 18800012 */ blez $a0, .L80010CD4 +/* 01188C 80010C8C 00001025 */ move $v0, $zero +.L80010C90: +/* 011890 80010C90 8E190068 */ lw $t9, 0x68($s0) +/* 011894 80010C94 24A50001 */ addiu $a1, $a1, 1 +/* 011898 80010C98 03224821 */ addu $t1, $t9, $v0 +/* 01189C 80010C9C 8D230000 */ lw $v1, ($t1) +/* 0118A0 80010CA0 00000000 */ nop +/* 0118A4 80010CA4 10600009 */ beqz $v1, .L80010CCC +/* 0118A8 80010CA8 00A4082A */ slt $at, $a1, $a0 +/* 0118AC 80010CAC 8C680000 */ lw $t0, ($v1) +/* 0118B0 80010CB0 00000000 */ nop +/* 0118B4 80010CB4 A5140052 */ sh $s4, 0x52($t0) +/* 0118B8 80010CB8 8E060040 */ lw $a2, 0x40($s0) +/* 0118BC 80010CBC 00000000 */ nop +/* 0118C0 80010CC0 80C40055 */ lb $a0, 0x55($a2) +/* 0118C4 80010CC4 00000000 */ nop +/* 0118C8 80010CC8 00A4082A */ slt $at, $a1, $a0 +.L80010CCC: +/* 0118CC 80010CCC 1420FFF0 */ bnez $at, .L80010C90 +/* 0118D0 80010CD0 24420004 */ addiu $v0, $v0, 4 +.L80010CD4: +/* 0118D4 80010CD4 90CA0072 */ lbu $t2, 0x72($a2) +/* 0118D8 80010CD8 240100FF */ li $at, 255 +/* 0118DC 80010CDC 11410003 */ beq $t2, $at, .L80010CEC +/* 0118E0 80010CE0 02002025 */ move $a0, $s0 +/* 0118E4 80010CE4 0C005024 */ jal func_80014090 +/* 0118E8 80010CE8 02802825 */ move $a1, $s4 +.L80010CEC: +/* 0118EC 80010CEC 8FAB0038 */ lw $t3, 0x38($sp) +.L80010CF0: +/* 0118F0 80010CF0 26520004 */ addiu $s2, $s2, 4 +/* 0118F4 80010CF4 024B082A */ slt $at, $s2, $t3 +/* 0118F8 80010CF8 1420FFBB */ bnez $at, .L80010BE8 +/* 0118FC 80010CFC 00000000 */ nop +.L80010D00: +/* 011900 80010D00 3C0C8012 */ lui $t4, %hi(D_8011AEF0) # $t4, 0x8012 +/* 011904 80010D04 8D8CAEF0 */ lw $t4, %lo(D_8011AEF0)($t4) +/* 011908 80010D08 3C168012 */ lui $s6, %hi(D_8011AE58) # $s6, 0x8012 +/* 01190C 80010D0C 26D6AE58 */ addiu $s6, %lo(D_8011AE58) # addiu $s6, $s6, -0x51a8 +/* 011910 80010D10 1980000E */ blez $t4, .L80010D4C +/* 011914 80010D14 00008825 */ move $s1, $zero +/* 011918 80010D18 00009025 */ move $s2, $zero +.L80010D1C: +/* 01191C 80010D1C 8EAD0000 */ lw $t5, ($s5) +/* 011920 80010D20 02802825 */ move $a1, $s4 +/* 011924 80010D24 01B27021 */ addu $t6, $t5, $s2 +/* 011928 80010D28 8DC40000 */ lw $a0, ($t6) +/* 01192C 80010D2C 0C01378E */ jal func_8004DE38 +/* 011930 80010D30 00000000 */ nop +/* 011934 80010D34 3C0F8012 */ lui $t7, %hi(D_8011AEF0) # $t7, 0x8012 +/* 011938 80010D38 8DEFAEF0 */ lw $t7, %lo(D_8011AEF0)($t7) +/* 01193C 80010D3C 26310001 */ addiu $s1, $s1, 1 +/* 011940 80010D40 022F082A */ slt $at, $s1, $t7 +/* 011944 80010D44 1420FFF5 */ bnez $at, .L80010D1C +/* 011948 80010D48 26520004 */ addiu $s2, $s2, 4 +.L80010D4C: +/* 01194C 80010D4C 0C01AF66 */ jal func_8006BD98 +/* 011950 80010D50 00000000 */ nop +/* 011954 80010D54 1440001C */ bnez $v0, .L80010DC8 +/* 011958 80010D58 3C078012 */ lui $a3, %hi(D_8011AEF0) # $a3, 0x8012 +/* 01195C 80010D5C 8CE7AEF0 */ lw $a3, %lo(D_8011AEF0)($a3) +/* 011960 80010D60 00008825 */ move $s1, $zero +/* 011964 80010D64 18E00018 */ blez $a3, .L80010DC8 +/* 011968 80010D68 2412FFFF */ li $s2, -1 +/* 01196C 80010D6C 3C108012 */ lui $s0, %hi(D_8011AEE8) # $s0, 0x8012 +/* 011970 80010D70 2610AEE8 */ addiu $s0, %lo(D_8011AEE8) # addiu $s0, $s0, -0x5118 +.L80010D74: +/* 011974 80010D74 8E180000 */ lw $t8, ($s0) +/* 011978 80010D78 0011C880 */ sll $t9, $s1, 2 +/* 01197C 80010D7C 03194821 */ addu $t1, $t8, $t9 +/* 011980 80010D80 8D240000 */ lw $a0, ($t1) +/* 011984 80010D84 00000000 */ nop +/* 011988 80010D88 8C850064 */ lw $a1, 0x64($a0) +/* 01198C 80010D8C 00000000 */ nop +/* 011990 80010D90 84A80000 */ lh $t0, ($a1) +/* 011994 80010D94 00000000 */ nop +/* 011998 80010D98 12480008 */ beq $s2, $t0, .L80010DBC +/* 01199C 80010D9C 26310001 */ addiu $s1, $s1, 1 +/* 0119A0 80010DA0 0C010FB3 */ jal func_80043ECC +/* 0119A4 80010DA4 02803025 */ move $a2, $s4 +/* 0119A8 80010DA8 3C078012 */ lui $a3, %hi(D_8011AEF0) # $a3, 0x8012 +/* 0119AC 80010DAC 8CE7AEF0 */ lw $a3, %lo(D_8011AEF0)($a3) +/* 0119B0 80010DB0 00000000 */ nop +/* 0119B4 80010DB4 00E08825 */ move $s1, $a3 +/* 0119B8 80010DB8 26310001 */ addiu $s1, $s1, 1 +.L80010DBC: +/* 0119BC 80010DBC 0227082A */ slt $at, $s1, $a3 +/* 0119C0 80010DC0 1420FFEC */ bnez $at, .L80010D74 +/* 0119C4 80010DC4 00000000 */ nop +.L80010DC8: +/* 0119C8 80010DC8 0C002EB7 */ jal func_8000BADC +/* 0119CC 80010DCC 02802025 */ move $a0, $s4 +/* 0119D0 80010DD0 3C118012 */ lui $s1, %hi(D_8011AE60) # $s1, 0x8012 +/* 0119D4 80010DD4 8E31AE60 */ lw $s1, %lo(D_8011AE60)($s1) +/* 0119D8 80010DD8 00000000 */ nop +/* 0119DC 80010DDC 0233082A */ slt $at, $s1, $s3 +/* 0119E0 80010DE0 1020001D */ beqz $at, .L80010E58 +/* 0119E4 80010DE4 00119080 */ sll $s2, $s1, 2 +/* 0119E8 80010DE8 00131080 */ sll $v0, $s3, 2 +.L80010DEC: +/* 0119EC 80010DEC 8ECA0000 */ lw $t2, ($s6) +/* 0119F0 80010DF0 00000000 */ nop +/* 0119F4 80010DF4 01525821 */ addu $t3, $t2, $s2 +/* 0119F8 80010DF8 8D700000 */ lw $s0, ($t3) +/* 0119FC 80010DFC 00000000 */ nop +/* 011A00 80010E00 860C0006 */ lh $t4, 6($s0) +/* 011A04 80010E04 00000000 */ nop +/* 011A08 80010E08 318D8000 */ andi $t5, $t4, 0x8000 +/* 011A0C 80010E0C 15A00005 */ bnez $t5, .L80010E24 +/* 011A10 80010E10 00000000 */ nop +/* 011A14 80010E14 860E0048 */ lh $t6, 0x48($s0) +/* 011A18 80010E18 24010005 */ li $at, 5 +/* 011A1C 80010E1C 11C10005 */ beq $t6, $at, .L80010E34 +/* 011A20 80010E20 02002025 */ move $a0, $s0 +.L80010E24: +/* 011A24 80010E24 860F0048 */ lh $t7, 0x48($s0) +/* 011A28 80010E28 2401000F */ li $at, 15 +/* 011A2C 80010E2C 15E10006 */ bne $t7, $at, .L80010E48 +/* 011A30 80010E30 02002025 */ move $a0, $s0 +.L80010E34: +/* 011A34 80010E34 02802825 */ move $a1, $s4 +/* 011A38 80010E38 0C008FD2 */ jal func_80023F48 +/* 011A3C 80010E3C AFA20044 */ sw $v0, 0x44($sp) +/* 011A40 80010E40 8FA20044 */ lw $v0, 0x44($sp) +/* 011A44 80010E44 00000000 */ nop +.L80010E48: +/* 011A48 80010E48 26520004 */ addiu $s2, $s2, 4 +/* 011A4C 80010E4C 0242082A */ slt $at, $s2, $v0 +/* 011A50 80010E50 1420FFE6 */ bnez $at, .L80010DEC +/* 011A54 80010E54 00000000 */ nop +.L80010E58: +/* 011A58 80010E58 3C188012 */ lui $t8, %hi(D_8011AE64) # $t8, 0x8012 +/* 011A5C 80010E5C 8F18AE64 */ lw $t8, %lo(D_8011AE64)($t8) +/* 011A60 80010E60 00000000 */ nop +/* 011A64 80010E64 1B000018 */ blez $t8, .L80010EC8 +/* 011A68 80010E68 3C118012 */ lui $s1, %hi(D_8011AE60) # $s1, 0x8012 +/* 011A6C 80010E6C 8E31AE60 */ lw $s1, %lo(D_8011AE60)($s1) +/* 011A70 80010E70 00131080 */ sll $v0, $s3, 2 +/* 011A74 80010E74 0233082A */ slt $at, $s1, $s3 +/* 011A78 80010E78 10200013 */ beqz $at, .L80010EC8 +/* 011A7C 80010E7C 00119080 */ sll $s2, $s1, 2 +.L80010E80: +/* 011A80 80010E80 8ED90000 */ lw $t9, ($s6) +/* 011A84 80010E84 02802825 */ move $a1, $s4 +/* 011A88 80010E88 03324821 */ addu $t1, $t9, $s2 +/* 011A8C 80010E8C 8D300000 */ lw $s0, ($t1) +/* 011A90 80010E90 00000000 */ nop +/* 011A94 80010E94 86080006 */ lh $t0, 6($s0) +/* 011A98 80010E98 02002025 */ move $a0, $s0 +/* 011A9C 80010E9C 310A8000 */ andi $t2, $t0, 0x8000 +/* 011AA0 80010EA0 11400005 */ beqz $t2, .L80010EB8 +/* 011AA4 80010EA4 00000000 */ nop +/* 011AA8 80010EA8 0C02C8BF */ jal func_800B22FC +/* 011AAC 80010EAC AFA20044 */ sw $v0, 0x44($sp) +/* 011AB0 80010EB0 8FA20044 */ lw $v0, 0x44($sp) +/* 011AB4 80010EB4 00000000 */ nop +.L80010EB8: +/* 011AB8 80010EB8 26520004 */ addiu $s2, $s2, 4 +/* 011ABC 80010EBC 0242082A */ slt $at, $s2, $v0 +/* 011AC0 80010EC0 1420FFEF */ bnez $at, .L80010E80 +/* 011AC4 80010EC4 00000000 */ nop +.L80010EC8: +/* 011AC8 80010EC8 0C00C8E6 */ jal func_80032398 +/* 011ACC 80010ECC 02802025 */ move $a0, $s4 +/* 011AD0 80010ED0 0C00CB1B */ jal func_80032C6C +/* 011AD4 80010ED4 00000000 */ nop +/* 011AD8 80010ED8 1840001F */ blez $v0, .L80010F58 +/* 011ADC 80010EDC 3C118012 */ lui $s1, %hi(D_8011AE60) # $s1, 0x8012 +/* 011AE0 80010EE0 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 +/* 011AE4 80010EE4 8C42AE5C */ lw $v0, %lo(D_8011AE5C)($v0) +/* 011AE8 80010EE8 8E31AE60 */ lw $s1, %lo(D_8011AE60)($s1) +/* 011AEC 80010EEC 00000000 */ nop +/* 011AF0 80010EF0 0222082A */ slt $at, $s1, $v0 +/* 011AF4 80010EF4 10200018 */ beqz $at, .L80010F58 +/* 011AF8 80010EF8 00119080 */ sll $s2, $s1, 2 +.L80010EFC: +/* 011AFC 80010EFC 8ECB0000 */ lw $t3, ($s6) +/* 011B00 80010F00 00000000 */ nop +/* 011B04 80010F04 01726021 */ addu $t4, $t3, $s2 +/* 011B08 80010F08 8D900000 */ lw $s0, ($t4) +/* 011B0C 80010F0C 00000000 */ nop +/* 011B10 80010F10 860D0006 */ lh $t5, 6($s0) +/* 011B14 80010F14 00000000 */ nop +/* 011B18 80010F18 31AE8000 */ andi $t6, $t5, 0x8000 +/* 011B1C 80010F1C 15C0000A */ bnez $t6, .L80010F48 +/* 011B20 80010F20 00000000 */ nop +/* 011B24 80010F24 8E0F0054 */ lw $t7, 0x54($s0) +/* 011B28 80010F28 00000000 */ nop +/* 011B2C 80010F2C 11E00006 */ beqz $t7, .L80010F48 +/* 011B30 80010F30 00000000 */ nop +/* 011B34 80010F34 0C00CB1F */ jal func_80032C7C +/* 011B38 80010F38 02002025 */ move $a0, $s0 +/* 011B3C 80010F3C 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 +/* 011B40 80010F40 8C42AE5C */ lw $v0, %lo(D_8011AE5C)($v0) +/* 011B44 80010F44 00000000 */ nop +.L80010F48: +/* 011B48 80010F48 26310001 */ addiu $s1, $s1, 1 +/* 011B4C 80010F4C 0222082A */ slt $at, $s1, $v0 +/* 011B50 80010F50 1420FFEA */ bnez $at, .L80010EFC +/* 011B54 80010F54 26520004 */ addiu $s2, $s2, 4 +.L80010F58: +/* 011B58 80010F58 0C0079BB */ jal func_8001E6EC +/* 011B5C 80010F5C 00002025 */ move $a0, $zero +/* 011B60 80010F60 3C188012 */ lui $t8, %hi(D_8011AEF7) # $t8, 0x8012 +/* 011B64 80010F64 8318AEF7 */ lb $t8, %lo(D_8011AEF7)($t8) +/* 011B68 80010F68 00000000 */ nop +/* 011B6C 80010F6C 13000003 */ beqz $t8, .L80010F7C +/* 011B70 80010F70 00000000 */ nop +/* 011B74 80010F74 0C008A52 */ jal func_80022948 +/* 011B78 80010F78 00000000 */ nop +.L80010F7C: +/* 011B7C 80010F7C 3C108012 */ lui $s0, %hi(D_8011ADAC) # $s0, 0x8012 +/* 011B80 80010F80 2610ADAC */ addiu $s0, %lo(D_8011ADAC) # addiu $s0, $s0, -0x5254 +/* 011B84 80010F84 8E190000 */ lw $t9, ($s0) +/* 011B88 80010F88 00000000 */ nop +/* 011B8C 80010F8C 17200009 */ bnez $t9, .L80010FB4 +/* 011B90 80010F90 00000000 */ nop +/* 011B94 80010F94 0C004013 */ jal func_8001004C +/* 011B98 80010F98 00000000 */ nop +/* 011B9C 80010F9C 0C005FA6 */ jal func_80017E98 +/* 011BA0 80010FA0 00000000 */ nop +/* 011BA4 80010FA4 0C006F15 */ jal func_8001BC54 +/* 011BA8 80010FA8 00000000 */ nop +/* 011BAC 80010FAC 0C007A4F */ jal func_8001E93C +/* 011BB0 80010FB0 00000000 */ nop +.L80010FB4: +/* 011BB4 80010FB4 3C078012 */ lui $a3, %hi(D_8011AEF0) # $a3, 0x8012 +/* 011BB8 80010FB8 8CE7AEF0 */ lw $a3, %lo(D_8011AEF0)($a3) +/* 011BBC 80010FBC 3C098012 */ lui $t1, %hi(D_8011AD4E) # $t1, 0x8012 +/* 011BC0 80010FC0 10E00010 */ beqz $a3, .L80011004 +/* 011BC4 80010FC4 00000000 */ nop +/* 011BC8 80010FC8 8529AD4E */ lh $t1, %lo(D_8011AD4E)($t1) +/* 011BCC 80010FCC 00000000 */ nop +/* 011BD0 80010FD0 15200007 */ bnez $t1, .L80010FF0 +/* 011BD4 80010FD4 00000000 */ nop +/* 011BD8 80010FD8 0C006602 */ jal D_80019808 +/* 011BDC 80010FDC 02802025 */ move $a0, $s4 +/* 011BE0 80010FE0 3C078012 */ lui $a3, %hi(D_8011AEF0) # $a3, 0x8012 +/* 011BE4 80010FE4 8CE7AEF0 */ lw $a3, %lo(D_8011AEF0)($a3) +/* 011BE8 80010FE8 10000006 */ b .L80011004 +/* 011BEC 80010FEC 00000000 */ nop +.L80010FF0: +/* 011BF0 80010FF0 0C006A3D */ jal func_8001A8F4 +/* 011BF4 80010FF4 02802025 */ move $a0, $s4 +/* 011BF8 80010FF8 3C078012 */ lui $a3, %hi(D_8011AEF0) # $a3, 0x8012 +/* 011BFC 80010FFC 8CE7AEF0 */ lw $a3, %lo(D_8011AEF0)($a3) +/* 011C00 80011000 00000000 */ nop +.L80011004: +/* 011C04 80011004 3C048012 */ lui $a0, %hi(D_8011AEEC) # $a0, 0x8012 +/* 011C08 80011008 8C84AEEC */ lw $a0, %lo(D_8011AEEC)($a0) +/* 011C0C 8001100C 00E02825 */ move $a1, $a3 +/* 011C10 80011010 0C00210E */ jal func_80008438 +/* 011C14 80011014 02803025 */ move $a2, $s4 +/* 011C18 80011018 44945000 */ mtc1 $s4, $f10 +/* 011C1C 8001101C 24080001 */ li $t0, 1 +/* 011C20 80011020 46805420 */ cvt.s.w $f16, $f10 +/* 011C24 80011024 AE080000 */ sw $t0, ($s0) +/* 011C28 80011028 3C018012 */ lui $at, %hi(D_8011ADA8) # $at, 0x8012 +/* 011C2C 8001102C E430ADA8 */ swc1 $f16, %lo(D_8011ADA8)($at) +/* 011C30 80011030 3C018012 */ lui $at, %hi(D_8011AD24) # $at, 0x8012 +/* 011C34 80011034 A020AD24 */ sb $zero, %lo(D_8011AD24)($at) +/* 011C38 80011038 3C018012 */ lui $at, %hi(D_8011AD53) # $at, 0x8012 +/* 011C3C 8001103C 0C0038AD */ jal func_8000E2B4 +/* 011C40 80011040 A020AD53 */ sb $zero, %lo(D_8011AD53)($at) +/* 011C44 80011044 0C0273EC */ jal func_8009CFB0 +/* 011C48 80011048 00000000 */ nop +/* 011C4C 8001104C 0C005E74 */ jal func_800179D0 +/* 011C50 80011050 00000000 */ nop +/* 011C54 80011054 3C038012 */ lui $v1, %hi(D_8011AF00) # $v1, 0x8012 +/* 011C58 80011058 2463AF00 */ addiu $v1, %lo(D_8011AF00) # addiu $v1, $v1, -0x5100 +/* 011C5C 8001105C 80620000 */ lb $v0, ($v1) +/* 011C60 80011060 24010001 */ li $at, 1 +/* 011C64 80011064 14410026 */ bne $v0, $at, .L80011100 +/* 011C68 80011068 3C0A8012 */ lui $t2, %hi(D_8011ADB0) # $t2, 0x8012 +/* 011C6C 8001106C 8D4AADB0 */ lw $t2, %lo(D_8011ADB0)($t2) +/* 011C70 80011070 24010050 */ li $at, 80 +/* 011C74 80011074 15410025 */ bne $t2, $at, .L8001110C +/* 011C78 80011078 3C0B8012 */ lui $t3, %hi(D_8011AE7A) # $t3, 0x8012 +/* 011C7C 8001107C 856BAE7A */ lh $t3, %lo(D_8011AE7A)($t3) +/* 011C80 80011080 00002825 */ move $a1, $zero +/* 011C84 80011084 15600021 */ bnez $t3, .L8001110C +/* 011C88 80011088 00009825 */ move $s3, $zero +/* 011C8C 8001108C 24100004 */ li $s0, 4 +.L80011090: +/* 011C90 80011090 02602025 */ move $a0, $s3 +/* 011C94 80011094 0C01A955 */ jal func_8006A554 +/* 011C98 80011098 AFA50054 */ sw $a1, 0x54($sp) +/* 011C9C 8001109C 8FA50054 */ lw $a1, 0x54($sp) +/* 011CA0 800110A0 26730001 */ addiu $s3, $s3, 1 +/* 011CA4 800110A4 1670FFFA */ bne $s3, $s0, .L80011090 +/* 011CA8 800110A8 00A22825 */ or $a1, $a1, $v0 +/* 011CAC 800110AC 30AC8000 */ andi $t4, $a1, 0x8000 +/* 011CB0 800110B0 11800005 */ beqz $t4, .L800110C8 +/* 011CB4 800110B4 30AD4000 */ andi $t5, $a1, 0x4000 +/* 011CB8 800110B8 0C007917 */ jal func_8001E45C +/* 011CBC 800110BC 24040064 */ li $a0, 100 +/* 011CC0 800110C0 10000013 */ b .L80011110 +/* 011CC4 800110C4 8FBF0034 */ lw $ra, 0x34($sp) +.L800110C8: +/* 011CC8 800110C8 11A00011 */ beqz $t5, .L80011110 +/* 011CCC 800110CC 8FBF0034 */ lw $ra, 0x34($sp) +/* 011CD0 800110D0 0C02658B */ jal func_8009962C +/* 011CD4 800110D4 00000000 */ nop +/* 011CD8 800110D8 1440000D */ bnez $v0, .L80011110 +/* 011CDC 800110DC 8FBF0034 */ lw $ra, 0x34($sp) +/* 011CE0 800110E0 0C0270B4 */ jal func_8009C2D0 +/* 011CE4 800110E4 00000000 */ nop +/* 011CE8 800110E8 14400009 */ bnez $v0, .L80011110 +/* 011CEC 800110EC 8FBF0034 */ lw $ra, 0x34($sp) +/* 011CF0 800110F0 0C01BC50 */ jal func_8006F140 +/* 011CF4 800110F4 24040001 */ li $a0, 1 +/* 011CF8 800110F8 10000005 */ b .L80011110 +/* 011CFC 800110FC 8FBF0034 */ lw $ra, 0x34($sp) +.L80011100: +/* 011D00 80011100 14400002 */ bnez $v0, .L8001110C +/* 011D04 80011104 240E0001 */ li $t6, 1 +/* 011D08 80011108 A06E0000 */ sb $t6, ($v1) +.L8001110C: +/* 011D0C 8001110C 8FBF0034 */ lw $ra, 0x34($sp) +.L80011110: +/* 011D10 80011110 8FB00018 */ lw $s0, 0x18($sp) +/* 011D14 80011114 8FB1001C */ lw $s1, 0x1c($sp) +/* 011D18 80011118 8FB20020 */ lw $s2, 0x20($sp) +/* 011D1C 8001111C 8FB30024 */ lw $s3, 0x24($sp) +/* 011D20 80011120 8FB40028 */ lw $s4, 0x28($sp) +/* 011D24 80011124 8FB5002C */ lw $s5, 0x2c($sp) +/* 011D28 80011128 8FB60030 */ lw $s6, 0x30($sp) +/* 011D2C 8001112C 03E00008 */ jr $ra +/* 011D30 80011130 27BD0068 */ addiu $sp, $sp, 0x68 + diff --git a/asm/non_matchings/unknown_005740/func_80011134.s b/asm/non_matchings/unknown_005740/func_80011134.s new file mode 100644 index 00000000..cb40987d --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80011134.s @@ -0,0 +1,82 @@ +glabel func_80011134 +/* 011D34 80011134 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 011D38 80011138 AFBF003C */ sw $ra, 0x3c($sp) +/* 011D3C 8001113C AFBE0038 */ sw $fp, 0x38($sp) +/* 011D40 80011140 AFB70034 */ sw $s7, 0x34($sp) +/* 011D44 80011144 AFB60030 */ sw $s6, 0x30($sp) +/* 011D48 80011148 AFB5002C */ sw $s5, 0x2c($sp) +/* 011D4C 8001114C AFB40028 */ sw $s4, 0x28($sp) +/* 011D50 80011150 AFB30024 */ sw $s3, 0x24($sp) +/* 011D54 80011154 AFB20020 */ sw $s2, 0x20($sp) +/* 011D58 80011158 AFB1001C */ sw $s1, 0x1c($sp) +/* 011D5C 8001115C AFB00018 */ sw $s0, 0x18($sp) +/* 011D60 80011160 808F003A */ lb $t7, 0x3a($a0) +/* 011D64 80011164 8C8E0068 */ lw $t6, 0x68($a0) +/* 011D68 80011168 000FC080 */ sll $t8, $t7, 2 +/* 011D6C 8001116C 01D8C821 */ addu $t9, $t6, $t8 +/* 011D70 80011170 8F220000 */ lw $v0, ($t9) +/* 011D74 80011174 00A0B025 */ move $s6, $a1 +/* 011D78 80011178 8C530000 */ lw $s3, ($v0) +/* 011D7C 8001117C 00008825 */ move $s1, $zero +/* 011D80 80011180 86750050 */ lh $s5, 0x50($s3) +/* 011D84 80011184 8E740038 */ lw $s4, 0x38($s3) +/* 011D88 80011188 1AA0002B */ blez $s5, .L80011238 +/* 011D8C 8001118C 8FBF003C */ lw $ra, 0x3c($sp) +/* 011D90 80011190 86680028 */ lh $t0, 0x28($s3) +/* 011D94 80011194 00009080 */ sll $s2, $zero, 2 +/* 011D98 80011198 19000026 */ blez $t0, .L80011234 +/* 011D9C 8001119C 02409023 */ subu $s2, $s2, $zero +/* 011DA0 800111A0 00129080 */ sll $s2, $s2, 2 +/* 011DA4 800111A4 02928021 */ addu $s0, $s4, $s2 +/* 011DA8 800111A8 241E00FF */ li $fp, 255 +/* 011DAC 800111AC 3C170001 */ lui $s7, 1 +.L800111B0: +/* 011DB0 800111B0 8E090008 */ lw $t1, 8($s0) +/* 011DB4 800111B4 00000000 */ nop +/* 011DB8 800111B8 01375024 */ and $t2, $t1, $s7 +/* 011DBC 800111BC 11400014 */ beqz $t2, .L80011210 +/* 011DC0 800111C0 00000000 */ nop +/* 011DC4 800111C4 92020000 */ lbu $v0, ($s0) +/* 011DC8 800111C8 02542821 */ addu $a1, $s2, $s4 +/* 011DCC 800111CC 13C20010 */ beq $fp, $v0, .L80011210 +/* 011DD0 800111D0 000260C0 */ sll $t4, $v0, 3 +/* 011DD4 800111D4 8E6B0000 */ lw $t3, ($s3) +/* 011DD8 800111D8 920F0007 */ lbu $t7, 7($s0) +/* 011DDC 800111DC 016C6821 */ addu $t5, $t3, $t4 +/* 011DE0 800111E0 8DA40000 */ lw $a0, ($t5) +/* 011DE4 800111E4 AFAF005C */ sw $t7, 0x5c($sp) +/* 011DE8 800111E8 000FC180 */ sll $t8, $t7, 6 +/* 011DEC 800111EC AFB8005C */ sw $t8, 0x5c($sp) +/* 011DF0 800111F0 24A50008 */ addiu $a1, $a1, 8 +/* 011DF4 800111F4 27A6005C */ addiu $a2, $sp, 0x5c +/* 011DF8 800111F8 0C01FBE0 */ jal func_8007EF80 +/* 011DFC 800111FC 02C03825 */ move $a3, $s6 +/* 011E00 80011200 8FB9005C */ lw $t9, 0x5c($sp) +/* 011E04 80011204 00000000 */ nop +/* 011E08 80011208 00194983 */ sra $t1, $t9, 6 +/* 011E0C 8001120C A2090007 */ sb $t1, 7($s0) +.L80011210: +/* 011E10 80011210 26310001 */ addiu $s1, $s1, 1 +/* 011E14 80011214 2652000C */ addiu $s2, $s2, 0xc +/* 011E18 80011218 1AA00006 */ blez $s5, .L80011234 +/* 011E1C 8001121C 2610000C */ addiu $s0, $s0, 0xc +/* 011E20 80011220 866A0028 */ lh $t2, 0x28($s3) +/* 011E24 80011224 00000000 */ nop +/* 011E28 80011228 022A082A */ slt $at, $s1, $t2 +/* 011E2C 8001122C 1420FFE0 */ bnez $at, .L800111B0 +/* 011E30 80011230 00000000 */ nop +.L80011234: +/* 011E34 80011234 8FBF003C */ lw $ra, 0x3c($sp) +.L80011238: +/* 011E38 80011238 8FB00018 */ lw $s0, 0x18($sp) +/* 011E3C 8001123C 8FB1001C */ lw $s1, 0x1c($sp) +/* 011E40 80011240 8FB20020 */ lw $s2, 0x20($sp) +/* 011E44 80011244 8FB30024 */ lw $s3, 0x24($sp) +/* 011E48 80011248 8FB40028 */ lw $s4, 0x28($sp) +/* 011E4C 8001124C 8FB5002C */ lw $s5, 0x2c($sp) +/* 011E50 80011250 8FB60030 */ lw $s6, 0x30($sp) +/* 011E54 80011254 8FB70034 */ lw $s7, 0x34($sp) +/* 011E58 80011258 8FBE0038 */ lw $fp, 0x38($sp) +/* 011E5C 8001125C 03E00008 */ jr $ra +/* 011E60 80011260 27BD0068 */ addiu $sp, $sp, 0x68 + diff --git a/asm/non_matchings/unknown_005740/func_80011264.s b/asm/non_matchings/unknown_005740/func_80011264.s new file mode 100644 index 00000000..e2d96f22 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80011264.s @@ -0,0 +1,87 @@ +glabel func_80011264 +/* 011E64 80011264 848E0050 */ lh $t6, 0x50($a0) +/* 011E68 80011268 00000000 */ nop +/* 011E6C 8001126C 19C0003B */ blez $t6, .L8001135C +/* 011E70 80011270 00000000 */ nop +/* 011E74 80011274 8CA20064 */ lw $v0, 0x64($a1) +/* 011E78 80011278 240A000A */ li $t2, 10 +/* 011E7C 8001127C 90430010 */ lbu $v1, 0x10($v0) +/* 011E80 80011280 8C880038 */ lw $t0, 0x38($a0) +/* 011E84 80011284 006A001A */ div $zero, $v1, $t2 +/* 011E88 80011288 15400002 */ bnez $t2, .L80011294 +/* 011E8C 8001128C 00000000 */ nop +/* 011E90 80011290 0007000D */ break 7 +.L80011294: +/* 011E94 80011294 2401FFFF */ li $at, -1 +/* 011E98 80011298 15410004 */ bne $t2, $at, .L800112AC +/* 011E9C 8001129C 3C018000 */ lui $at, 0x8000 +/* 011EA0 800112A0 14610002 */ bne $v1, $at, .L800112AC +/* 011EA4 800112A4 00000000 */ nop +/* 011EA8 800112A8 0006000D */ break 6 +.L800112AC: +/* 011EAC 800112AC 84890028 */ lh $t1, 0x28($a0) +/* 011EB0 800112B0 00003825 */ move $a3, $zero +/* 011EB4 800112B4 3C0A0001 */ lui $t2, 1 +/* 011EB8 800112B8 240B00FF */ li $t3, 255 +/* 011EBC 800112BC 01001025 */ move $v0, $t0 +/* 011EC0 800112C0 00003012 */ mflo $a2 +/* 011EC4 800112C4 24C6FFFF */ addiu $a2, $a2, -1 +/* 011EC8 800112C8 00001810 */ mfhi $v1 +/* 011ECC 800112CC 00067880 */ sll $t7, $a2, 2 +/* 011ED0 800112D0 0003C080 */ sll $t8, $v1, 2 +/* 011ED4 800112D4 01E03025 */ move $a2, $t7 +/* 011ED8 800112D8 19200020 */ blez $t1, .L8001135C +/* 011EDC 800112DC 03001825 */ move $v1, $t8 +.L800112E0: +/* 011EE0 800112E0 8C590008 */ lw $t9, 8($v0) +/* 011EE4 800112E4 24E70001 */ addiu $a3, $a3, 1 +/* 011EE8 800112E8 032A6024 */ and $t4, $t9, $t2 +/* 011EEC 800112EC 11800019 */ beqz $t4, .L80011354 +/* 011EF0 800112F0 00E9082A */ slt $at, $a3, $t1 +/* 011EF4 800112F4 90450000 */ lbu $a1, ($v0) +/* 011EF8 800112F8 00000000 */ nop +/* 011EFC 800112FC 11650015 */ beq $t3, $a1, .L80011354 +/* 011F00 80011300 00E9082A */ slt $at, $a3, $t1 +/* 011F04 80011304 8C8D0000 */ lw $t5, ($a0) +/* 011F08 80011308 000570C0 */ sll $t6, $a1, 3 +/* 011F0C 8001130C 01AE7821 */ addu $t7, $t5, $t6 +/* 011F10 80011310 8DE80000 */ lw $t0, ($t7) +/* 011F14 80011314 00000000 */ nop +/* 011F18 80011318 95180012 */ lhu $t8, 0x12($t0) +/* 011F1C 8001131C 00000000 */ nop +/* 011F20 80011320 2B010901 */ slti $at, $t8, 0x901 +/* 011F24 80011324 14200005 */ bnez $at, .L8001133C +/* 011F28 80011328 00000000 */ nop +/* 011F2C 8001132C A0430007 */ sb $v1, 7($v0) +/* 011F30 80011330 84890028 */ lh $t1, 0x28($a0) +/* 011F34 80011334 10000007 */ b .L80011354 +/* 011F38 80011338 00E9082A */ slt $at, $a3, $t1 +.L8001133C: +/* 011F3C 8001133C 04C00005 */ bltz $a2, .L80011354 +/* 011F40 80011340 00E9082A */ slt $at, $a3, $t1 +/* 011F44 80011344 A0460007 */ sb $a2, 7($v0) +/* 011F48 80011348 84890028 */ lh $t1, 0x28($a0) +/* 011F4C 8001134C 00000000 */ nop +/* 011F50 80011350 00E9082A */ slt $at, $a3, $t1 +.L80011354: +/* 011F54 80011354 1420FFE2 */ bnez $at, .L800112E0 +/* 011F58 80011358 2442000C */ addiu $v0, $v0, 0xc +.L8001135C: +/* 011F5C 8001135C 03E00008 */ jr $ra +/* 011F60 80011360 00000000 */ nop + +/* 011F64 80011364 03E00008 */ jr $ra +/* 011F68 80011368 AFA40000 */ sw $a0, ($sp) + +/* 011F6C 8001136C 3C0E8012 */ lui $t6, %hi(D_8011ADAC) # $t6, 0x8012 +/* 011F70 80011370 8DCEADAC */ lw $t6, %lo(D_8011ADAC)($t6) +/* 011F74 80011374 24020001 */ li $v0, 1 +/* 011F78 80011378 11C00003 */ beqz $t6, .L80011388 +/* 011F7C 8001137C 00000000 */ nop +/* 011F80 80011380 03E00008 */ jr $ra +/* 011F84 80011384 00001025 */ move $v0, $zero + +.L80011388: +/* 011F88 80011388 03E00008 */ jr $ra +/* 011F8C 8001138C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80011390.s b/asm/non_matchings/unknown_005740/func_80011390.s new file mode 100644 index 00000000..efb00701 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80011390.s @@ -0,0 +1,5 @@ +glabel func_80011390 +/* 011F90 80011390 3C018012 */ lui $at, 0x8012 +/* 011F94 80011394 03E00008 */ jr $ra +/* 011F98 80011398 AC20ADAC */ sw $zero, -0x5254($at) + diff --git a/asm/non_matchings/unknown_005740/func_8001139C.s b/asm/non_matchings/unknown_005740/func_8001139C.s new file mode 100644 index 00000000..759b56e2 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001139C.s @@ -0,0 +1,6 @@ +glabel func_8001139C +/* 011F9C 8001139C 3C028012 */ lui $v0, %hi(D_8011ADB0) # $v0, 0x8012 +/* 011FA0 800113A0 8C42ADB0 */ lw $v0, %lo(D_8011ADB0)($v0) +/* 011FA4 800113A4 03E00008 */ jr $ra +/* 011FA8 800113A8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800113AC.s b/asm/non_matchings/unknown_005740/func_800113AC.s new file mode 100644 index 00000000..84b2d8ef --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800113AC.s @@ -0,0 +1,11 @@ +glabel func_800113AC +/* 011FAC 800113AC 3C028012 */ lui $v0, %hi(D_8011ADB8) # $v0, 0x8012 +/* 011FB0 800113B0 8C42ADB8 */ lw $v0, %lo(D_8011ADB8)($v0) +/* 011FB4 800113B4 03E00008 */ jr $ra +/* 011FB8 800113B8 00000000 */ nop + +/* 011FBC 800113BC 3C028012 */ lui $v0, %hi(D_8011ADBC) # $v0, 0x8012 +/* 011FC0 800113C0 8C42ADBC */ lw $v0, %lo(D_8011ADBC)($v0) +/* 011FC4 800113C4 03E00008 */ jr $ra +/* 011FC8 800113C8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800113CC.s b/asm/non_matchings/unknown_005740/func_800113CC.s new file mode 100644 index 00000000..ff3a69ce --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800113CC.s @@ -0,0 +1,110 @@ +glabel func_800113CC +/* 011FCC 800113CC 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 011FD0 800113D0 AFBF004C */ sw $ra, 0x4c($sp) +/* 011FD4 800113D4 AFB70048 */ sw $s7, 0x48($sp) +/* 011FD8 800113D8 AFB60044 */ sw $s6, 0x44($sp) +/* 011FDC 800113DC AFB50040 */ sw $s5, 0x40($sp) +/* 011FE0 800113E0 AFB4003C */ sw $s4, 0x3c($sp) +/* 011FE4 800113E4 AFB30038 */ sw $s3, 0x38($sp) +/* 011FE8 800113E8 AFB20034 */ sw $s2, 0x34($sp) +/* 011FEC 800113EC AFB10030 */ sw $s1, 0x30($sp) +/* 011FF0 800113F0 AFB0002C */ sw $s0, 0x2c($sp) +/* 011FF4 800113F4 E7B70020 */ swc1 $f23, 0x20($sp) +/* 011FF8 800113F8 E7B60024 */ swc1 $f22, 0x24($sp) +/* 011FFC 800113FC E7B50018 */ swc1 $f21, 0x18($sp) +/* 012000 80011400 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 012004 80011404 8C820040 */ lw $v0, 0x40($a0) +/* 012008 80011408 00808825 */ move $s1, $a0 +/* 01200C 8001140C 904E005B */ lbu $t6, 0x5b($v0) +/* 012010 80011410 00C09825 */ move $s3, $a2 +/* 012014 80011414 00AE082A */ slt $at, $a1, $t6 +/* 012018 80011418 00E0B825 */ move $s7, $a3 +/* 01201C 8001141C 10200040 */ beqz $at, .L80011520 +/* 012020 80011420 00001825 */ move $v1, $zero +/* 012024 80011424 00457821 */ addu $t7, $v0, $a1 +/* 012028 80011428 91E4005C */ lbu $a0, 0x5c($t7) +/* 01202C 8001142C 0C0078A7 */ jal func_8001E29C +/* 012030 80011430 AFA00050 */ sw $zero, 0x50($sp) +/* 012034 80011434 80580001 */ lb $t8, 1($v0) +/* 012038 80011438 80480002 */ lb $t0, 2($v0) +/* 01203C 8001143C 331900FF */ andi $t9, $t8, 0xff +/* 012040 80011440 44992000 */ mtc1 $t9, $f4 +/* 012044 80011444 3C014100 */ li $at, 0x41000000 # 8.000000 +/* 012048 80011448 468021A0 */ cvt.s.w $f6, $f4 +/* 01204C 8001144C 44814000 */ mtc1 $at, $f8 +/* 012050 80011450 86340018 */ lh $s4, 0x18($s1) +/* 012054 80011454 80520000 */ lb $s2, ($v0) +/* 012058 80011458 44885000 */ mtc1 $t0, $f10 +/* 01205C 8001145C 8FA30050 */ lw $v1, 0x50($sp) +/* 012060 80011460 00134903 */ sra $t1, $s3, 4 +/* 012064 80011464 46083502 */ mul.s $f20, $f6, $f8 +/* 012068 80011468 00145103 */ sra $t2, $s4, 4 +/* 01206C 8001146C 0040B025 */ move $s6, $v0 +/* 012070 80011470 01209825 */ move $s3, $t1 +/* 012074 80011474 0140A025 */ move $s4, $t2 +/* 012078 80011478 00008025 */ move $s0, $zero +/* 01207C 8001147C 1A400028 */ blez $s2, .L80011520 +/* 012080 80011480 468055A0 */ cvt.s.w $f22, $f10 +/* 012084 80011484 8FB50080 */ lw $s5, 0x80($sp) +/* 012088 80011488 00000000 */ nop +/* 01208C 8001148C 02165821 */ addu $t3, $s0, $s6 +.L80011490: +/* 012090 80011490 81620003 */ lb $v0, 3($t3) +/* 012094 80011494 00000000 */ nop +/* 012098 80011498 0282082A */ slt $at, $s4, $v0 +/* 01209C 8001149C 14200002 */ bnez $at, .L800114A8 +/* 0120A0 800114A0 0262082A */ slt $at, $s3, $v0 +/* 0120A4 800114A4 14200005 */ bnez $at, .L800114BC +.L800114A8: +/* 0120A8 800114A8 0054082A */ slt $at, $v0, $s4 +/* 0120AC 800114AC 14200018 */ bnez $at, .L80011510 +/* 0120B0 800114B0 0053082A */ slt $at, $v0, $s3 +/* 0120B4 800114B4 10200016 */ beqz $at, .L80011510 +/* 0120B8 800114B8 00000000 */ nop +.L800114BC: +/* 0120BC 800114BC C62C000C */ lwc1 $f12, 0xc($s1) +/* 0120C0 800114C0 C62E0010 */ lwc1 $f14, 0x10($s1) +/* 0120C4 800114C4 8E260014 */ lw $a2, 0x14($s1) +/* 0120C8 800114C8 4407A000 */ mfc1 $a3, $f20 +/* 0120CC 800114CC 0C01A785 */ jal func_80069E14 +/* 0120D0 800114D0 E7B60010 */ swc1 $f22, 0x10($sp) +/* 0120D4 800114D4 320C0001 */ andi $t4, $s0, 1 +/* 0120D8 800114D8 11800003 */ beqz $t4, .L800114E8 +/* 0120DC 800114DC 240D0004 */ li $t5, 4 +/* 0120E0 800114E0 10000002 */ b .L800114EC +/* 0120E4 800114E4 02E01025 */ move $v0, $s7 +.L800114E8: +/* 0120E8 800114E8 02A01025 */ move $v0, $s5 +.L800114EC: +/* 0120EC 800114EC 8E25000C */ lw $a1, 0xc($s1) +/* 0120F0 800114F0 8E260010 */ lw $a2, 0x10($s1) +/* 0120F4 800114F4 8E270014 */ lw $a3, 0x14($s1) +/* 0120F8 800114F8 AFA00014 */ sw $zero, 0x14($sp) +/* 0120FC 800114FC AFAD0010 */ sw $t5, 0x10($sp) +/* 012100 80011500 0C002556 */ jal func_80009558 +/* 012104 80011504 3044FFFF */ andi $a0, $v0, 0xffff +/* 012108 80011508 26030001 */ addiu $v1, $s0, 1 +/* 01210C 8001150C 02408025 */ move $s0, $s2 +.L80011510: +/* 012110 80011510 26100001 */ addiu $s0, $s0, 1 +/* 012114 80011514 0212082A */ slt $at, $s0, $s2 +/* 012118 80011518 1420FFDD */ bnez $at, .L80011490 +/* 01211C 8001151C 02165821 */ addu $t3, $s0, $s6 +.L80011520: +/* 012120 80011520 8FBF004C */ lw $ra, 0x4c($sp) +/* 012124 80011524 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 012128 80011528 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 01212C 8001152C C7B70020 */ lwc1 $f23, 0x20($sp) +/* 012130 80011530 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 012134 80011534 8FB0002C */ lw $s0, 0x2c($sp) +/* 012138 80011538 8FB10030 */ lw $s1, 0x30($sp) +/* 01213C 8001153C 8FB20034 */ lw $s2, 0x34($sp) +/* 012140 80011540 8FB30038 */ lw $s3, 0x38($sp) +/* 012144 80011544 8FB4003C */ lw $s4, 0x3c($sp) +/* 012148 80011548 8FB50040 */ lw $s5, 0x40($sp) +/* 01214C 8001154C 8FB60044 */ lw $s6, 0x44($sp) +/* 012150 80011550 8FB70048 */ lw $s7, 0x48($sp) +/* 012154 80011554 27BD0070 */ addiu $sp, $sp, 0x70 +/* 012158 80011558 03E00008 */ jr $ra +/* 01215C 8001155C 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_005740/func_80011560.s b/asm/non_matchings/unknown_005740/func_80011560.s new file mode 100644 index 00000000..cd93b8f8 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80011560.s @@ -0,0 +1,6 @@ +glabel func_80011560 +/* 012160 80011560 240E0001 */ li $t6, 1 +/* 012164 80011564 3C01800E */ lui $at, 0x800e +/* 012168 80011568 03E00008 */ jr $ra +/* 01216C 8001156C A02EC848 */ sb $t6, -0x37b8($at) + diff --git a/asm/non_matchings/unknown_005740/func_80011570.s b/asm/non_matchings/unknown_005740/func_80011570.s new file mode 100644 index 00000000..d7a3b9c3 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80011570.s @@ -0,0 +1,272 @@ +glabel func_80011570 +/* 012170 80011570 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 012174 80011574 AFBF0014 */ sw $ra, 0x14($sp) +/* 012178 80011578 AFA40040 */ sw $a0, 0x40($sp) +/* 01217C 8001157C AFA50044 */ sw $a1, 0x44($sp) +/* 012180 80011580 AFA60048 */ sw $a2, 0x48($sp) +/* 012184 80011584 AFA7004C */ sw $a3, 0x4c($sp) +/* 012188 80011588 0C00B1F1 */ jal func_8002C7C4 +/* 01218C 8001158C AFA40040 */ sw $a0, 0x40($sp) +/* 012190 80011590 8FA70040 */ lw $a3, 0x40($sp) +/* 012194 80011594 C7A60048 */ lwc1 $f6, 0x48($sp) +/* 012198 80011598 C4EE0010 */ lwc1 $f14, 0x10($a3) +/* 01219C 8001159C C4E2000C */ lwc1 $f2, 0xc($a3) +/* 0121A0 800115A0 46067200 */ add.s $f8, $f14, $f6 +/* 0121A4 800115A4 C7A40044 */ lwc1 $f4, 0x44($sp) +/* 0121A8 800115A8 E7A8001C */ swc1 $f8, 0x1c($sp) +/* 0121AC 800115AC C7AA004C */ lwc1 $f10, 0x4c($sp) +/* 0121B0 800115B0 C4F00014 */ lwc1 $f16, 0x14($a3) +/* 0121B4 800115B4 46041480 */ add.s $f18, $f2, $f4 +/* 0121B8 800115B8 3C04800E */ lui $a0, %hi(D_800DC848) # $a0, 0x800e +/* 0121BC 800115BC 460A8100 */ add.s $f4, $f16, $f10 +/* 0121C0 800115C0 14400005 */ bnez $v0, .L800115D8 +/* 0121C4 800115C4 E7A40018 */ swc1 $f4, 0x18($sp) +/* 0121C8 800115C8 2484C848 */ addiu $a0, %lo(D_800DC848) # addiu $a0, $a0, -0x37b8 +/* 0121CC 800115CC A0800000 */ sb $zero, ($a0) +/* 0121D0 800115D0 100000DF */ b .L80011950 +/* 0121D4 800115D4 00001025 */ move $v0, $zero +.L800115D8: +/* 0121D8 800115D8 844E003E */ lh $t6, 0x3e($v0) +/* 0121DC 800115DC 3C01800E */ lui $at, %hi(D_800E553C) # $at, 0x800e +/* 0121E0 800115E0 448E3000 */ mtc1 $t6, $f6 +/* 0121E4 800115E4 C42D5538 */ lwc1 $f13, %lo(D_800E5538)($at) +/* 0121E8 800115E8 46803221 */ cvt.d.w $f8, $f6 +/* 0121EC 800115EC C42C553C */ lwc1 $f12, %lo(D_800E553C)($at) +/* 0121F0 800115F0 3C04800E */ lui $a0, %hi(D_800DC848) # $a0, 0x800e +/* 0121F4 800115F4 462C4280 */ add.d $f10, $f8, $f12 +/* 0121F8 800115F8 00001825 */ move $v1, $zero +/* 0121FC 800115FC 46205020 */ cvt.s.d $f0, $f10 +/* 012200 80011600 2484C848 */ addiu $a0, %lo(D_800DC848) # addiu $a0, $a0, -0x37b8 +/* 012204 80011604 4612003C */ c.lt.s $f0, $f18 +/* 012208 80011608 00000000 */ nop +/* 01220C 8001160C 45000002 */ bc1f .L80011618 +/* 012210 80011610 00000000 */ nop +/* 012214 80011614 24030001 */ li $v1, 1 +.L80011618: +/* 012218 80011618 844F003C */ lh $t7, 0x3c($v0) +/* 01221C 8001161C 00000000 */ nop +/* 012220 80011620 448F2000 */ mtc1 $t7, $f4 +/* 012224 80011624 00000000 */ nop +/* 012228 80011628 468021A1 */ cvt.d.w $f6, $f4 +/* 01222C 8001162C 462C3201 */ sub.d $f8, $f6, $f12 +/* 012230 80011630 46204020 */ cvt.s.d $f0, $f8 +/* 012234 80011634 4600103C */ c.lt.s $f2, $f0 +/* 012238 80011638 00000000 */ nop +/* 01223C 8001163C 45000002 */ bc1f .L80011648 +/* 012240 80011640 00000000 */ nop +/* 012244 80011644 24030001 */ li $v1, 1 +.L80011648: +/* 012248 80011648 84580042 */ lh $t8, 0x42($v0) +/* 01224C 8001164C 3C01800E */ lui $at, %hi(D_800E5544) # $at, 0x800e +/* 012250 80011650 44985000 */ mtc1 $t8, $f10 +/* 012254 80011654 C4275540 */ lwc1 $f7, %lo(D_800E5540)($at) +/* 012258 80011658 46805121 */ cvt.d.w $f4, $f10 +/* 01225C 8001165C C4265544 */ lwc1 $f6, %lo(D_800E5544)($at) +/* 012260 80011660 00000000 */ nop +/* 012264 80011664 46262200 */ add.d $f8, $f4, $f6 +/* 012268 80011668 46204020 */ cvt.s.d $f0, $f8 +/* 01226C 8001166C 460E003C */ c.lt.s $f0, $f14 +/* 012270 80011670 00000000 */ nop +/* 012274 80011674 45000002 */ bc1f .L80011680 +/* 012278 80011678 00000000 */ nop +/* 01227C 8001167C 24030001 */ li $v1, 1 +.L80011680: +/* 012280 80011680 84590040 */ lh $t9, 0x40($v0) +/* 012284 80011684 3C01800E */ lui $at, %hi(D_800E554C) # $at, 0x800e +/* 012288 80011688 44995000 */ mtc1 $t9, $f10 +/* 01228C 8001168C C4275548 */ lwc1 $f7, %lo(D_800E5548)($at) +/* 012290 80011690 46805121 */ cvt.d.w $f4, $f10 +/* 012294 80011694 C426554C */ lwc1 $f6, %lo(D_800E554C)($at) +/* 012298 80011698 00000000 */ nop +/* 01229C 8001169C 46262201 */ sub.d $f8, $f4, $f6 +/* 0122A0 800116A0 46204020 */ cvt.s.d $f0, $f8 +/* 0122A4 800116A4 4600703C */ c.lt.s $f14, $f0 +/* 0122A8 800116A8 00000000 */ nop +/* 0122AC 800116AC 45000002 */ bc1f .L800116B8 +/* 0122B0 800116B0 00000000 */ nop +/* 0122B4 800116B4 24030001 */ li $v1, 1 +.L800116B8: +/* 0122B8 800116B8 84490046 */ lh $t1, 0x46($v0) +/* 0122BC 800116BC 00000000 */ nop +/* 0122C0 800116C0 44895000 */ mtc1 $t1, $f10 +/* 0122C4 800116C4 00000000 */ nop +/* 0122C8 800116C8 46805121 */ cvt.d.w $f4, $f10 +/* 0122CC 800116CC 462C2180 */ add.d $f6, $f4, $f12 +/* 0122D0 800116D0 46203020 */ cvt.s.d $f0, $f6 +/* 0122D4 800116D4 4610003C */ c.lt.s $f0, $f16 +/* 0122D8 800116D8 00000000 */ nop +/* 0122DC 800116DC 45000002 */ bc1f .L800116E8 +/* 0122E0 800116E0 00000000 */ nop +/* 0122E4 800116E4 24030001 */ li $v1, 1 +.L800116E8: +/* 0122E8 800116E8 844A0044 */ lh $t2, 0x44($v0) +/* 0122EC 800116EC 00000000 */ nop +/* 0122F0 800116F0 448A4000 */ mtc1 $t2, $f8 +/* 0122F4 800116F4 00000000 */ nop +/* 0122F8 800116F8 468042A1 */ cvt.d.w $f10, $f8 +/* 0122FC 800116FC 462C5101 */ sub.d $f4, $f10, $f12 +/* 012300 80011700 46202020 */ cvt.s.d $f0, $f4 +/* 012304 80011704 4600803C */ c.lt.s $f16, $f0 +/* 012308 80011708 00000000 */ nop +/* 01230C 8001170C 45000002 */ bc1f .L80011718 +/* 012310 80011710 00000000 */ nop +/* 012314 80011714 24030001 */ li $v1, 1 +.L80011718: +/* 012318 80011718 808B0000 */ lb $t3, ($a0) +/* 01231C 8001171C 00000000 */ nop +/* 012320 80011720 11600002 */ beqz $t3, .L8001172C +/* 012324 80011724 00000000 */ nop +/* 012328 80011728 00001825 */ move $v1, $zero +.L8001172C: +/* 01232C 8001172C 10600005 */ beqz $v1, .L80011744 +/* 012330 80011730 A0800000 */ sb $zero, ($a0) +/* 012334 80011734 240CFFFF */ li $t4, -1 +/* 012338 80011738 A4EC002E */ sh $t4, 0x2e($a3) +/* 01233C 8001173C 10000084 */ b .L80011950 +/* 012340 80011740 24020001 */ li $v0, 1 +.L80011744: +/* 012344 80011744 E4F2000C */ swc1 $f18, 0xc($a3) +/* 012348 80011748 C7A6001C */ lwc1 $f6, 0x1c($sp) +/* 01234C 8001174C 84E4002E */ lh $a0, 0x2e($a3) +/* 012350 80011750 E4E60010 */ swc1 $f6, 0x10($a3) +/* 012354 80011754 C7A80018 */ lwc1 $f8, 0x18($sp) +/* 012358 80011758 00000000 */ nop +/* 01235C 8001175C E4E80014 */ swc1 $f8, 0x14($a3) +/* 012360 80011760 E7B20020 */ swc1 $f18, 0x20($sp) +/* 012364 80011764 0C00A8B7 */ jal func_8002A2DC +/* 012368 80011768 AFA70040 */ sw $a3, 0x40($sp) +/* 01236C 8001176C 8FA70040 */ lw $a3, 0x40($sp) +/* 012370 80011770 C7A0001C */ lwc1 $f0, 0x1c($sp) +/* 012374 80011774 C7A20018 */ lwc1 $f2, 0x18($sp) +/* 012378 80011778 C7B20020 */ lwc1 $f18, 0x20($sp) +/* 01237C 8001177C 1440002D */ bnez $v0, .L80011834 +/* 012380 80011780 00000000 */ nop +/* 012384 80011784 444DF800 */ cfc1 $t5, $31 +/* 012388 80011788 AFA70040 */ sw $a3, 0x40($sp) +/* 01238C 8001178C 35A10003 */ ori $at, $t5, 3 +/* 012390 80011790 38210002 */ xori $at, $at, 2 +/* 012394 80011794 44C1F800 */ ctc1 $at, $31 +/* 012398 80011798 00000000 */ nop +/* 01239C 8001179C 460092A4 */ cvt.w.s $f10, $f18 +/* 0123A0 800117A0 440E5000 */ mfc1 $t6, $f10 +/* 0123A4 800117A4 44CDF800 */ ctc1 $t5, $31 +/* 0123A8 800117A8 448E2000 */ mtc1 $t6, $f4 +/* 0123AC 800117AC 00000000 */ nop +/* 0123B0 800117B0 46802320 */ cvt.s.w $f12, $f4 +/* 0123B4 800117B4 444FF800 */ cfc1 $t7, $31 +/* 0123B8 800117B8 00000000 */ nop +/* 0123BC 800117BC 35E10003 */ ori $at, $t7, 3 +/* 0123C0 800117C0 38210002 */ xori $at, $at, 2 +/* 0123C4 800117C4 44C1F800 */ ctc1 $at, $31 +/* 0123C8 800117C8 00000000 */ nop +/* 0123CC 800117CC 460001A4 */ cvt.w.s $f6, $f0 +/* 0123D0 800117D0 44183000 */ mfc1 $t8, $f6 +/* 0123D4 800117D4 44CFF800 */ ctc1 $t7, $31 +/* 0123D8 800117D8 44984000 */ mtc1 $t8, $f8 +/* 0123DC 800117DC 00000000 */ nop +/* 0123E0 800117E0 468043A0 */ cvt.s.w $f14, $f8 +/* 0123E4 800117E4 4459F800 */ cfc1 $t9, $31 +/* 0123E8 800117E8 00000000 */ nop +/* 0123EC 800117EC 37210003 */ ori $at, $t9, 3 +/* 0123F0 800117F0 38210002 */ xori $at, $at, 2 +/* 0123F4 800117F4 44C1F800 */ ctc1 $at, $31 +/* 0123F8 800117F8 00000000 */ nop +/* 0123FC 800117FC 460012A4 */ cvt.w.s $f10, $f2 +/* 012400 80011800 44095000 */ mfc1 $t1, $f10 +/* 012404 80011804 44D9F800 */ ctc1 $t9, $31 +/* 012408 80011808 44892000 */ mtc1 $t1, $f4 +/* 01240C 8001180C 00000000 */ nop +/* 012410 80011810 46802120 */ cvt.s.w $f4, $f4 +/* 012414 80011814 44062000 */ mfc1 $a2, $f4 +/* 012418 80011818 0C00A7C6 */ jal func_80029F18 +/* 01241C 8001181C 00000000 */ nop +/* 012420 80011820 8FA70040 */ lw $a3, 0x40($sp) +/* 012424 80011824 00000000 */ nop +/* 012428 80011828 A4E2002E */ sh $v0, 0x2e($a3) +/* 01242C 8001182C 10000048 */ b .L80011950 +/* 012430 80011830 00001025 */ move $v0, $zero +.L80011834: +/* 012434 80011834 444AF800 */ cfc1 $t2, $31 +/* 012438 80011838 844B0006 */ lh $t3, 6($v0) +/* 01243C 8001183C 35410003 */ ori $at, $t2, 3 +/* 012440 80011840 38210002 */ xori $at, $at, 2 +/* 012444 80011844 44C1F800 */ ctc1 $at, $31 +/* 012448 80011848 00002025 */ move $a0, $zero +/* 01244C 8001184C 460091A4 */ cvt.w.s $f6, $f18 +/* 012450 80011850 44083000 */ mfc1 $t0, $f6 +/* 012454 80011854 44CAF800 */ ctc1 $t2, $31 +/* 012458 80011858 0168082A */ slt $at, $t3, $t0 +/* 01245C 8001185C 14200006 */ bnez $at, .L80011878 +/* 012460 80011860 00000000 */ nop +/* 012464 80011864 844C0000 */ lh $t4, ($v0) +/* 012468 80011868 00000000 */ nop +/* 01246C 8001186C 010C082A */ slt $at, $t0, $t4 +/* 012470 80011870 10200002 */ beqz $at, .L8001187C +/* 012474 80011874 00000000 */ nop +.L80011878: +/* 012478 80011878 24040001 */ li $a0, 1 +.L8001187C: +/* 01247C 8001187C 444DF800 */ cfc1 $t5, $31 +/* 012480 80011880 844E0008 */ lh $t6, 8($v0) +/* 012484 80011884 35A10003 */ ori $at, $t5, 3 +/* 012488 80011888 38210002 */ xori $at, $at, 2 +/* 01248C 8001188C 44C1F800 */ ctc1 $at, $31 +/* 012490 80011890 00000000 */ nop +/* 012494 80011894 46000224 */ cvt.w.s $f8, $f0 +/* 012498 80011898 44054000 */ mfc1 $a1, $f8 +/* 01249C 8001189C 44CDF800 */ ctc1 $t5, $31 +/* 0124A0 800118A0 01C5082A */ slt $at, $t6, $a1 +/* 0124A4 800118A4 14200006 */ bnez $at, .L800118C0 +/* 0124A8 800118A8 00000000 */ nop +/* 0124AC 800118AC 844F0002 */ lh $t7, 2($v0) +/* 0124B0 800118B0 00000000 */ nop +/* 0124B4 800118B4 00AF082A */ slt $at, $a1, $t7 +/* 0124B8 800118B8 10200002 */ beqz $at, .L800118C4 +/* 0124BC 800118BC 00000000 */ nop +.L800118C0: +/* 0124C0 800118C0 24040001 */ li $a0, 1 +.L800118C4: +/* 0124C4 800118C4 4458F800 */ cfc1 $t8, $31 +/* 0124C8 800118C8 8459000A */ lh $t9, 0xa($v0) +/* 0124CC 800118CC 37010003 */ ori $at, $t8, 3 +/* 0124D0 800118D0 38210002 */ xori $at, $at, 2 +/* 0124D4 800118D4 44C1F800 */ ctc1 $at, $31 +/* 0124D8 800118D8 00000000 */ nop +/* 0124DC 800118DC 460012A4 */ cvt.w.s $f10, $f2 +/* 0124E0 800118E0 44035000 */ mfc1 $v1, $f10 +/* 0124E4 800118E4 44D8F800 */ ctc1 $t8, $31 +/* 0124E8 800118E8 0323082A */ slt $at, $t9, $v1 +/* 0124EC 800118EC 14200006 */ bnez $at, .L80011908 +/* 0124F0 800118F0 00000000 */ nop +/* 0124F4 800118F4 84490004 */ lh $t1, 4($v0) +/* 0124F8 800118F8 00000000 */ nop +/* 0124FC 800118FC 0069082A */ slt $at, $v1, $t1 +/* 012500 80011900 10200002 */ beqz $at, .L8001190C +/* 012504 80011904 00000000 */ nop +.L80011908: +/* 012508 80011908 24040001 */ li $a0, 1 +.L8001190C: +/* 01250C 8001190C 10800010 */ beqz $a0, .L80011950 +/* 012510 80011910 00001025 */ move $v0, $zero +/* 012514 80011914 44834000 */ mtc1 $v1, $f8 +/* 012518 80011918 44882000 */ mtc1 $t0, $f4 +/* 01251C 8001191C 46804220 */ cvt.s.w $f8, $f8 +/* 012520 80011920 44853000 */ mtc1 $a1, $f6 +/* 012524 80011924 AFA70040 */ sw $a3, 0x40($sp) +/* 012528 80011928 44064000 */ mfc1 $a2, $f8 +/* 01252C 8001192C 46802320 */ cvt.s.w $f12, $f4 +/* 012530 80011930 0C00A7C6 */ jal func_80029F18 +/* 012534 80011934 468033A0 */ cvt.s.w $f14, $f6 +/* 012538 80011938 8FA70040 */ lw $a3, 0x40($sp) +/* 01253C 8001193C 2401FFFF */ li $at, -1 +/* 012540 80011940 10410002 */ beq $v0, $at, .L8001194C +/* 012544 80011944 00000000 */ nop +/* 012548 80011948 A4E2002E */ sh $v0, 0x2e($a3) +.L8001194C: +/* 01254C 8001194C 00001025 */ move $v0, $zero +.L80011950: +/* 012550 80011950 8FBF0014 */ lw $ra, 0x14($sp) +/* 012554 80011954 27BD0040 */ addiu $sp, $sp, 0x40 +/* 012558 80011958 03E00008 */ jr $ra +/* 01255C 8001195C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80011960.s b/asm/non_matchings/unknown_005740/func_80011960.s new file mode 100644 index 00000000..d8265f54 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80011960.s @@ -0,0 +1,95 @@ +glabel func_80011960 +/* 012560 80011960 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 012564 80011964 AFA40028 */ sw $a0, 0x28($sp) +/* 012568 80011968 44802000 */ mtc1 $zero, $f4 +/* 01256C 8001196C AFA5002C */ sw $a1, 0x2c($sp) +/* 012570 80011970 AFA60030 */ sw $a2, 0x30($sp) +/* 012574 80011974 AFA70034 */ sw $a3, 0x34($sp) +/* 012578 80011978 8FA60028 */ lw $a2, 0x28($sp) +/* 01257C 8001197C 3C048012 */ lui $a0, %hi(D_8011AE8C) # $a0, 0x8012 +/* 012580 80011980 AFBF001C */ sw $ra, 0x1c($sp) +/* 012584 80011984 8FA70048 */ lw $a3, 0x48($sp) +/* 012588 80011988 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 +/* 01258C 8001198C 2484AE8C */ addiu $a0, %lo(D_8011AE8C) # addiu $a0, $a0, -0x5174 +/* 012590 80011990 AFA00024 */ sw $zero, 0x24($sp) +/* 012594 80011994 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 +/* 012598 80011998 0C01A521 */ jal func_80069484 +/* 01259C 8001199C E7A40010 */ swc1 $f4, 0x10($sp) +/* 0125A0 800119A0 3C048012 */ lui $a0, %hi(D_8011AE8C) # $a0, 0x8012 +/* 0125A4 800119A4 2484AE8C */ addiu $a0, %lo(D_8011AE8C) # addiu $a0, $a0, -0x5174 +/* 0125A8 800119A8 8C820000 */ lw $v0, ($a0) +/* 0125AC 800119AC 3C0FFA00 */ lui $t7, 0xfa00 +/* 0125B0 800119B0 244E0008 */ addiu $t6, $v0, 8 +/* 0125B4 800119B4 AC8E0000 */ sw $t6, ($a0) +/* 0125B8 800119B8 2418FFFF */ li $t8, -1 +/* 0125BC 800119BC AC580004 */ sw $t8, 4($v0) +/* 0125C0 800119C0 AC4F0000 */ sw $t7, ($v0) +/* 0125C4 800119C4 8C820000 */ lw $v0, ($a0) +/* 0125C8 800119C8 3C0AFB00 */ lui $t2, 0xfb00 +/* 0125CC 800119CC 24590008 */ addiu $t9, $v0, 8 +/* 0125D0 800119D0 AC990000 */ sw $t9, ($a0) +/* 0125D4 800119D4 240BFF00 */ li $t3, -256 +/* 0125D8 800119D8 AC4B0004 */ sw $t3, 4($v0) +/* 0125DC 800119DC AC4A0000 */ sw $t2, ($v0) +/* 0125E0 800119E0 8FAC003C */ lw $t4, 0x3c($sp) +/* 0125E4 800119E4 240D0001 */ li $t5, 1 +/* 0125E8 800119E8 11800003 */ beqz $t4, .L800119F8 +/* 0125EC 800119EC 8FA5003C */ lw $a1, 0x3c($sp) +/* 0125F0 800119F0 AFAD0024 */ sw $t5, 0x24($sp) +/* 0125F4 800119F4 8FA5003C */ lw $a1, 0x3c($sp) +.L800119F8: +/* 0125F8 800119F8 8FA60040 */ lw $a2, 0x40($sp) +/* 0125FC 800119FC 8FA70044 */ lw $a3, 0x44($sp) +/* 012600 80011A00 0C01ED3A */ jal func_8007B4E8 +/* 012604 80011A04 00000000 */ nop +/* 012608 80011A08 8FA90030 */ lw $t1, 0x30($sp) +/* 01260C 80011A0C 8FAF002C */ lw $t7, 0x2c($sp) +/* 012610 80011A10 3C088000 */ lui $t0, 0x8000 +/* 012614 80011A14 3C048012 */ lui $a0, %hi(D_8011AE8C) # $a0, 0x8012 +/* 012618 80011A18 2538FFFF */ addiu $t8, $t1, -1 +/* 01261C 80011A1C 01E82821 */ addu $a1, $t7, $t0 +/* 012620 80011A20 2484AE8C */ addiu $a0, %lo(D_8011AE8C) # addiu $a0, $a0, -0x5174 +/* 012624 80011A24 30AA0006 */ andi $t2, $a1, 6 +/* 012628 80011A28 0018C8C0 */ sll $t9, $t8, 3 +/* 01262C 80011A2C 8C820000 */ lw $v0, ($a0) +/* 012630 80011A30 032A5825 */ or $t3, $t9, $t2 +/* 012634 80011A34 000978C0 */ sll $t7, $t1, 3 +/* 012638 80011A38 01E9C021 */ addu $t8, $t7, $t1 +/* 01263C 80011A3C 0018C840 */ sll $t9, $t8, 1 +/* 012640 80011A40 316C00FF */ andi $t4, $t3, 0xff +/* 012644 80011A44 244E0008 */ addiu $t6, $v0, 8 +/* 012648 80011A48 AC8E0000 */ sw $t6, ($a0) +/* 01264C 80011A4C 000C6C00 */ sll $t5, $t4, 0x10 +/* 012650 80011A50 272A0008 */ addiu $t2, $t9, 8 +/* 012654 80011A54 3C010400 */ lui $at, 0x400 +/* 012658 80011A58 8FA70038 */ lw $a3, 0x38($sp) +/* 01265C 80011A5C 01A17025 */ or $t6, $t5, $at +/* 012660 80011A60 314BFFFF */ andi $t3, $t2, 0xffff +/* 012664 80011A64 01CB6025 */ or $t4, $t6, $t3 +/* 012668 80011A68 AC4C0000 */ sw $t4, ($v0) +/* 01266C 80011A6C AC450004 */ sw $a1, 4($v0) +/* 012670 80011A70 8FB90024 */ lw $t9, 0x24($sp) +/* 012674 80011A74 8C820000 */ lw $v0, ($a0) +/* 012678 80011A78 24EFFFFF */ addiu $t7, $a3, -1 +/* 01267C 80011A7C 000FC100 */ sll $t8, $t7, 4 +/* 012680 80011A80 03195025 */ or $t2, $t8, $t9 +/* 012684 80011A84 244D0008 */ addiu $t5, $v0, 8 +/* 012688 80011A88 AC8D0000 */ sw $t5, ($a0) +/* 01268C 80011A8C 314E00FF */ andi $t6, $t2, 0xff +/* 012690 80011A90 000E5C00 */ sll $t3, $t6, 0x10 +/* 012694 80011A94 3C010500 */ lui $at, 0x500 +/* 012698 80011A98 00076900 */ sll $t5, $a3, 4 +/* 01269C 80011A9C 31AFFFFF */ andi $t7, $t5, 0xffff +/* 0126A0 80011AA0 01616025 */ or $t4, $t3, $at +/* 0126A4 80011AA4 018FC025 */ or $t8, $t4, $t7 +/* 0126A8 80011AA8 AC580000 */ sw $t8, ($v0) +/* 0126AC 80011AAC 8FB90034 */ lw $t9, 0x34($sp) +/* 0126B0 80011AB0 00000000 */ nop +/* 0126B4 80011AB4 03285021 */ addu $t2, $t9, $t0 +/* 0126B8 80011AB8 0C01A690 */ jal func_80069A40 +/* 0126BC 80011ABC AC4A0004 */ sw $t2, 4($v0) +/* 0126C0 80011AC0 8FBF001C */ lw $ra, 0x1c($sp) +/* 0126C4 80011AC4 27BD0028 */ addiu $sp, $sp, 0x28 +/* 0126C8 80011AC8 03E00008 */ jr $ra +/* 0126CC 80011ACC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80011AD0.s b/asm/non_matchings/unknown_005740/func_80011AD0.s new file mode 100644 index 00000000..edf6f216 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80011AD0.s @@ -0,0 +1,123 @@ +glabel func_80011AD0 +/* 0126D0 80011AD0 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 0126D4 80011AD4 AFBF002C */ sw $ra, 0x2c($sp) +/* 0126D8 80011AD8 84820048 */ lh $v0, 0x48($a0) +/* 0126DC 80011ADC 24010003 */ li $at, 3 +/* 0126E0 80011AE0 10410034 */ beq $v0, $at, .L80011BB4 +/* 0126E4 80011AE4 24060006 */ li $a2, 6 +/* 0126E8 80011AE8 2401002F */ li $at, 47 +/* 0126EC 80011AEC 10410008 */ beq $v0, $at, .L80011B10 +/* 0126F0 80011AF0 2401003D */ li $at, 61 +/* 0126F4 80011AF4 10410018 */ beq $v0, $at, .L80011B58 +/* 0126F8 80011AF8 24060006 */ li $a2, 6 +/* 0126FC 80011AFC 24010059 */ li $at, 89 +/* 012700 80011B00 1041004D */ beq $v0, $at, .L80011C38 +/* 012704 80011B04 00000000 */ nop +/* 012708 80011B08 1000005F */ b .L80011C88 +/* 01270C 80011B0C 8FBF002C */ lw $ra, 0x2c($sp) +.L80011B10: +/* 012710 80011B10 8C8E007C */ lw $t6, 0x7c($a0) +/* 012714 80011B14 24060004 */ li $a2, 4 +/* 012718 80011B18 05C0005A */ bltz $t6, .L80011C84 +/* 01271C 80011B1C 240F0002 */ li $t7, 2 +/* 012720 80011B20 8C870064 */ lw $a3, 0x64($a0) +/* 012724 80011B24 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 012728 80011B28 8CE50020 */ lw $a1, 0x20($a3) +/* 01272C 80011B2C AFAF0010 */ sw $t7, 0x10($sp) +/* 012730 80011B30 8CF80024 */ lw $t8, 0x24($a3) +/* 012734 80011B34 44812000 */ mtc1 $at, $f4 +/* 012738 80011B38 2419000B */ li $t9, 11 +/* 01273C 80011B3C AFB90018 */ sw $t9, 0x18($sp) +/* 012740 80011B40 AFA0001C */ sw $zero, 0x1c($sp) +/* 012744 80011B44 AFB80014 */ sw $t8, 0x14($sp) +/* 012748 80011B48 0C004658 */ jal func_80011960 +/* 01274C 80011B4C E7A40020 */ swc1 $f4, 0x20($sp) +/* 012750 80011B50 1000004D */ b .L80011C88 +/* 012754 80011B54 8FBF002C */ lw $ra, 0x2c($sp) +.L80011B58: +/* 012758 80011B58 8C870064 */ lw $a3, 0x64($a0) +/* 01275C 80011B5C 240B0008 */ li $t3, 8 +/* 012760 80011B60 90E800FC */ lbu $t0, 0xfc($a3) +/* 012764 80011B64 AFAB0010 */ sw $t3, 0x10($sp) +/* 012768 80011B68 00084880 */ sll $t1, $t0, 2 +/* 01276C 80011B6C 01284823 */ subu $t1, $t1, $t0 +/* 012770 80011B70 00094840 */ sll $t1, $t1, 1 +/* 012774 80011B74 8CEC00F8 */ lw $t4, 0xf8($a3) +/* 012778 80011B78 00095080 */ sll $t2, $t1, 2 +/* 01277C 80011B7C 01495021 */ addu $t2, $t2, $t1 +/* 012780 80011B80 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 012784 80011B84 44813000 */ mtc1 $at, $f6 +/* 012788 80011B88 000A5040 */ sll $t2, $t2, 1 +/* 01278C 80011B8C 240D000A */ li $t5, 10 +/* 012790 80011B90 00EA2821 */ addu $a1, $a3, $t2 +/* 012794 80011B94 24A50080 */ addiu $a1, $a1, 0x80 +/* 012798 80011B98 AFAD0018 */ sw $t5, 0x18($sp) +/* 01279C 80011B9C AFA0001C */ sw $zero, 0x1c($sp) +/* 0127A0 80011BA0 AFAC0014 */ sw $t4, 0x14($sp) +/* 0127A4 80011BA4 0C004658 */ jal func_80011960 +/* 0127A8 80011BA8 E7A60020 */ swc1 $f6, 0x20($sp) +/* 0127AC 80011BAC 10000036 */ b .L80011C88 +/* 0127B0 80011BB0 8FBF002C */ lw $ra, 0x2c($sp) +.L80011BB4: +/* 0127B4 80011BB4 8C8E003C */ lw $t6, 0x3c($a0) +/* 0127B8 80011BB8 8C870064 */ lw $a3, 0x64($a0) +/* 0127BC 80011BBC 91CF000D */ lbu $t7, 0xd($t6) +/* 0127C0 80011BC0 24090008 */ li $t1, 8 +/* 0127C4 80011BC4 448F4000 */ mtc1 $t7, $f8 +/* 0127C8 80011BC8 05E10005 */ bgez $t7, .L80011BE0 +/* 0127CC 80011BCC 46804020 */ cvt.s.w $f0, $f8 +/* 0127D0 80011BD0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 0127D4 80011BD4 44815000 */ mtc1 $at, $f10 +/* 0127D8 80011BD8 00000000 */ nop +/* 0127DC 80011BDC 460A0000 */ add.s $f0, $f0, $f10 +.L80011BE0: +/* 0127E0 80011BE0 90F800FC */ lbu $t8, 0xfc($a3) +/* 0127E4 80011BE4 3C01800E */ lui $at, %hi(D_800E5550) # $at, 0x800e +/* 0127E8 80011BE8 0018C880 */ sll $t9, $t8, 2 +/* 0127EC 80011BEC 0338C823 */ subu $t9, $t9, $t8 +/* 0127F0 80011BF0 C4305550 */ lwc1 $f16, %lo(D_800E5550)($at) +/* 0127F4 80011BF4 0019C840 */ sll $t9, $t9, 1 +/* 0127F8 80011BF8 AFA90010 */ sw $t1, 0x10($sp) +/* 0127FC 80011BFC 8CEA00F8 */ lw $t2, 0xf8($a3) +/* 012800 80011C00 00194080 */ sll $t0, $t9, 2 +/* 012804 80011C04 46100002 */ mul.s $f0, $f0, $f16 +/* 012808 80011C08 01194021 */ addu $t0, $t0, $t9 +/* 01280C 80011C0C 00084040 */ sll $t0, $t0, 1 +/* 012810 80011C10 00E82821 */ addu $a1, $a3, $t0 +/* 012814 80011C14 240B001A */ li $t3, 26 +/* 012818 80011C18 AFAB0018 */ sw $t3, 0x18($sp) +/* 01281C 80011C1C 24A50080 */ addiu $a1, $a1, 0x80 +/* 012820 80011C20 E7A00020 */ swc1 $f0, 0x20($sp) +/* 012824 80011C24 AFA0001C */ sw $zero, 0x1c($sp) +/* 012828 80011C28 0C004658 */ jal func_80011960 +/* 01282C 80011C2C AFAA0014 */ sw $t2, 0x14($sp) +/* 012830 80011C30 10000015 */ b .L80011C88 +/* 012834 80011C34 8FBF002C */ lw $ra, 0x2c($sp) +.L80011C38: +/* 012838 80011C38 8C8C0078 */ lw $t4, 0x78($a0) +/* 01283C 80011C3C 00000000 */ nop +/* 012840 80011C40 11800011 */ beqz $t4, .L80011C88 +/* 012844 80011C44 8FBF002C */ lw $ra, 0x2c($sp) +/* 012848 80011C48 8C820064 */ lw $v0, 0x64($a0) +/* 01284C 80011C4C 00000000 */ nop +/* 012850 80011C50 904D0070 */ lbu $t5, 0x70($v0) +/* 012854 80011C54 00000000 */ nop +/* 012858 80011C58 1DA00008 */ bgtz $t5, .L80011C7C +/* 01285C 80011C5C 00000000 */ nop +/* 012860 80011C60 44809000 */ mtc1 $zero, $f18 +/* 012864 80011C64 C4440074 */ lwc1 $f4, 0x74($v0) +/* 012868 80011C68 00000000 */ nop +/* 01286C 80011C6C 4604903C */ c.lt.s $f18, $f4 +/* 012870 80011C70 00000000 */ nop +/* 012874 80011C74 45000004 */ bc1f .L80011C88 +/* 012878 80011C78 8FBF002C */ lw $ra, 0x2c($sp) +.L80011C7C: +/* 01287C 80011C7C 0C004D6E */ jal func_800135B8 +/* 012880 80011C80 00000000 */ nop +.L80011C84: +/* 012884 80011C84 8FBF002C */ lw $ra, 0x2c($sp) +.L80011C88: +/* 012888 80011C88 27BD0030 */ addiu $sp, $sp, 0x30 +/* 01288C 80011C8C 03E00008 */ jr $ra +/* 012890 80011C90 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80011C94.s b/asm/non_matchings/unknown_005740/func_80011C94.s new file mode 100644 index 00000000..041db092 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80011C94.s @@ -0,0 +1,294 @@ +glabel func_80011C94 +/* 012894 80011C94 27BDFF70 */ addiu $sp, $sp, -0x90 +/* 012898 80011C98 AFBF0024 */ sw $ra, 0x24($sp) +/* 01289C 80011C9C AFB00020 */ sw $s0, 0x20($sp) +/* 0128A0 80011CA0 848E0006 */ lh $t6, 6($a0) +/* 0128A4 80011CA4 8C830054 */ lw $v1, 0x54($a0) +/* 0128A8 80011CA8 00803825 */ move $a3, $a0 +/* 0128AC 80011CAC 240600FF */ li $a2, 255 +/* 0128B0 80011CB0 00004025 */ move $t0, $zero +/* 0128B4 80011CB4 00004825 */ move $t1, $zero +/* 0128B8 80011CB8 10600011 */ beqz $v1, .L80011D00 +/* 0128BC 80011CBC 35CA0108 */ ori $t2, $t6, 0x108 +/* 0128C0 80011CC0 3C01437F */ li $at, 0x437F0000 # 255.000000 +/* 0128C4 80011CC4 44813000 */ mtc1 $at, $f6 +/* 0128C8 80011CC8 C4640000 */ lwc1 $f4, ($v1) +/* 0128CC 80011CCC 24080001 */ li $t0, 1 +/* 0128D0 80011CD0 46062202 */ mul.s $f8, $f4, $f6 +/* 0128D4 80011CD4 24090001 */ li $t1, 1 +/* 0128D8 80011CD8 4458F800 */ cfc1 $t8, $31 +/* 0128DC 80011CDC 00000000 */ nop +/* 0128E0 80011CE0 37010003 */ ori $at, $t8, 3 +/* 0128E4 80011CE4 38210002 */ xori $at, $at, 2 +/* 0128E8 80011CE8 44C1F800 */ ctc1 $at, $31 +/* 0128EC 80011CEC 00000000 */ nop +/* 0128F0 80011CF0 460042A4 */ cvt.w.s $f10, $f8 +/* 0128F4 80011CF4 44D8F800 */ ctc1 $t8, $31 +/* 0128F8 80011CF8 44065000 */ mfc1 $a2, $f10 +/* 0128FC 80011CFC 00000000 */ nop +.L80011D00: +/* 012900 80011D00 84E20048 */ lh $v0, 0x48($a3) +/* 012904 80011D04 24010016 */ li $at, 22 +/* 012908 80011D08 14410011 */ bne $v0, $at, .L80011D50 +/* 01290C 80011D0C 240B0005 */ li $t3, 5 +/* 012910 80011D10 90E30039 */ lbu $v1, 0x39($a3) +/* 012914 80011D14 00000000 */ nop +/* 012918 80011D18 28610100 */ slti $at, $v1, 0x100 +/* 01291C 80011D1C 14200005 */ bnez $at, .L80011D34 +/* 012920 80011D20 00000000 */ nop +/* 012924 80011D24 8CEC007C */ lw $t4, 0x7c($a3) +/* 012928 80011D28 84E20048 */ lh $v0, 0x48($a3) +/* 01292C 80011D2C 10000008 */ b .L80011D50 +/* 012930 80011D30 A0EC0039 */ sb $t4, 0x39($a3) +.L80011D34: +/* 012934 80011D34 8CED007C */ lw $t5, 0x7c($a3) +/* 012938 80011D38 84E20048 */ lh $v0, 0x48($a3) +/* 01293C 80011D3C 31AE00FF */ andi $t6, $t5, 0xff +/* 012940 80011D40 006E0019 */ multu $v1, $t6 +/* 012944 80011D44 00007812 */ mflo $t7 +/* 012948 80011D48 000FC203 */ sra $t8, $t7, 8 +/* 01294C 80011D4C A0F80039 */ sb $t8, 0x39($a3) +.L80011D50: +/* 012950 80011D50 90E50039 */ lbu $a1, 0x39($a3) +/* 012954 80011D54 24030077 */ li $v1, 119 +/* 012958 80011D58 28A10100 */ slti $at, $a1, 0x100 +/* 01295C 80011D5C 14200002 */ bnez $at, .L80011D68 +/* 012960 80011D60 354C0004 */ ori $t4, $t2, 4 +/* 012964 80011D64 240500FF */ li $a1, 255 +.L80011D68: +/* 012968 80011D68 14620002 */ bne $v1, $v0, .L80011D74 +/* 01296C 80011D6C 0005C843 */ sra $t9, $a1, 1 +/* 012970 80011D70 03202825 */ move $a1, $t9 +.L80011D74: +/* 012974 80011D74 28A100FF */ slti $at, $a1, 0xff +/* 012978 80011D78 10200003 */ beqz $at, .L80011D88 +/* 01297C 80011D7C 00000000 */ nop +/* 012980 80011D80 01805025 */ move $t2, $t4 +/* 012984 80011D84 24080001 */ li $t0, 1 +.L80011D88: +/* 012988 80011D88 1562001C */ bne $t3, $v0, .L80011DFC +/* 01298C 80011D8C 3C0140C0 */ li $at, 0x40C00000 # 6.000000 +/* 012990 80011D90 44818000 */ mtc1 $at, $f16 +/* 012994 80011D94 C4F20008 */ lwc1 $f18, 8($a3) +/* 012998 80011D98 3C108012 */ lui $s0, %hi(D_8011AE8C) # $s0, 0x8012 +/* 01299C 80011D9C 46128032 */ c.eq.s $f16, $f18 +/* 0129A0 80011DA0 2610AE8C */ addiu $s0, %lo(D_8011AE8C) # addiu $s0, $s0, -0x5174 +/* 0129A4 80011DA4 45000015 */ bc1f .L80011DFC +/* 0129A8 80011DA8 3C0EFA00 */ lui $t6, 0xfa00 +/* 0129AC 80011DAC 8E020000 */ lw $v0, ($s0) +/* 0129B0 80011DB0 00067880 */ sll $t7, $a2, 2 +/* 0129B4 80011DB4 244D0008 */ addiu $t5, $v0, 8 +/* 0129B8 80011DB8 AE0D0000 */ sw $t5, ($s0) +/* 0129BC 80011DBC 01E67823 */ subu $t7, $t7, $a2 +/* 0129C0 80011DC0 000FC883 */ sra $t9, $t7, 2 +/* 0129C4 80011DC4 00196600 */ sll $t4, $t9, 0x18 +/* 0129C8 80011DC8 30CD00FF */ andi $t5, $a2, 0xff +/* 0129CC 80011DCC AC4E0000 */ sw $t6, ($v0) +/* 0129D0 80011DD0 000D7400 */ sll $t6, $t5, 0x10 +/* 0129D4 80011DD4 0006C043 */ sra $t8, $a2, 1 +/* 0129D8 80011DD8 331900FF */ andi $t9, $t8, 0xff +/* 0129DC 80011DDC 018E7825 */ or $t7, $t4, $t6 +/* 0129E0 80011DE0 00196A00 */ sll $t5, $t9, 8 +/* 0129E4 80011DE4 01ED6025 */ or $t4, $t7, $t5 +/* 0129E8 80011DE8 30AE00FF */ andi $t6, $a1, 0xff +/* 0129EC 80011DEC 018EC025 */ or $t8, $t4, $t6 +/* 0129F0 80011DF0 24080001 */ li $t0, 1 +/* 0129F4 80011DF4 1000002D */ b .L80011EAC +/* 0129F8 80011DF8 AC580004 */ sw $t8, 4($v0) +.L80011DFC: +/* 0129FC 80011DFC 1462000E */ bne $v1, $v0, .L80011E38 +/* 012A00 80011E00 3C108012 */ lui $s0, %hi(D_8011AE8C) # $s0, 0x8012 +/* 012A04 80011E04 2610AE8C */ addiu $s0, %lo(D_8011AE8C) # addiu $s0, $s0, -0x5174 +/* 012A08 80011E08 8E020000 */ lw $v0, ($s0) +/* 012A0C 80011E0C 3C0196E6 */ lui $at, (0x96E6FF00 >> 16) # lui $at, 0x96e6 +/* 012A10 80011E10 3421FF00 */ ori $at, (0x96E6FF00 & 0xFFFF) # ori $at, $at, 0xff00 +/* 012A14 80011E14 30AD00FF */ andi $t5, $a1, 0xff +/* 012A18 80011E18 24590008 */ addiu $t9, $v0, 8 +/* 012A1C 80011E1C AE190000 */ sw $t9, ($s0) +/* 012A20 80011E20 01A16025 */ or $t4, $t5, $at +/* 012A24 80011E24 3C0FFA00 */ lui $t7, 0xfa00 +/* 012A28 80011E28 24080001 */ li $t0, 1 +/* 012A2C 80011E2C AC4F0000 */ sw $t7, ($v0) +/* 012A30 80011E30 1000001E */ b .L80011EAC +/* 012A34 80011E34 AC4C0004 */ sw $t4, 4($v0) +.L80011E38: +/* 012A38 80011E38 15000003 */ bnez $t0, .L80011E48 +/* 012A3C 80011E3C 28A100FF */ slti $at, $a1, 0xff +/* 012A40 80011E40 10200012 */ beqz $at, .L80011E8C +/* 012A44 80011E44 3C108012 */ lui $s0, 0x8012 +.L80011E48: +/* 012A48 80011E48 3C108012 */ lui $s0, %hi(D_8011AE8C) # $s0, 0x8012 +/* 012A4C 80011E4C 2610AE8C */ addiu $s0, %lo(D_8011AE8C) # addiu $s0, $s0, -0x5174 +/* 012A50 80011E50 8E020000 */ lw $v0, ($s0) +/* 012A54 80011E54 30C300FF */ andi $v1, $a2, 0xff +/* 012A58 80011E58 244E0008 */ addiu $t6, $v0, 8 +/* 012A5C 80011E5C AE0E0000 */ sw $t6, ($s0) +/* 012A60 80011E60 0003CE00 */ sll $t9, $v1, 0x18 +/* 012A64 80011E64 00037C00 */ sll $t7, $v1, 0x10 +/* 012A68 80011E68 3C18FA00 */ lui $t8, 0xfa00 +/* 012A6C 80011E6C 032F6825 */ or $t5, $t9, $t7 +/* 012A70 80011E70 00036200 */ sll $t4, $v1, 8 +/* 012A74 80011E74 AC580000 */ sw $t8, ($v0) +/* 012A78 80011E78 30B800FF */ andi $t8, $a1, 0xff +/* 012A7C 80011E7C 01AC7025 */ or $t6, $t5, $t4 +/* 012A80 80011E80 01D8C825 */ or $t9, $t6, $t8 +/* 012A84 80011E84 10000009 */ b .L80011EAC +/* 012A88 80011E88 AC590004 */ sw $t9, 4($v0) +.L80011E8C: +/* 012A8C 80011E8C 2610AE8C */ addiu $s0, $s0, -0x5174 +/* 012A90 80011E90 8E020000 */ lw $v0, ($s0) +/* 012A94 80011E94 3C0DFA00 */ lui $t5, 0xfa00 +/* 012A98 80011E98 244F0008 */ addiu $t7, $v0, 8 +/* 012A9C 80011E9C AE0F0000 */ sw $t7, ($s0) +/* 012AA0 80011EA0 240CFFFF */ li $t4, -1 +/* 012AA4 80011EA4 AC4C0004 */ sw $t4, 4($v0) +/* 012AA8 80011EA8 AC4D0000 */ sw $t5, ($v0) +.L80011EAC: +/* 012AAC 80011EAC 11200014 */ beqz $t1, .L80011F00 +/* 012AB0 80011EB0 00000000 */ nop +/* 012AB4 80011EB4 8E020000 */ lw $v0, ($s0) +/* 012AB8 80011EB8 3C18FB00 */ lui $t8, 0xfb00 +/* 012ABC 80011EBC 244E0008 */ addiu $t6, $v0, 8 +/* 012AC0 80011EC0 AE0E0000 */ sw $t6, ($s0) +/* 012AC4 80011EC4 AC580000 */ sw $t8, ($v0) +/* 012AC8 80011EC8 8CE30054 */ lw $v1, 0x54($a3) +/* 012ACC 80011ECC 00000000 */ nop +/* 012AD0 80011ED0 906F0004 */ lbu $t7, 4($v1) +/* 012AD4 80011ED4 906E0005 */ lbu $t6, 5($v1) +/* 012AD8 80011ED8 906C0006 */ lbu $t4, 6($v1) +/* 012ADC 80011EDC 000F6E00 */ sll $t5, $t7, 0x18 +/* 012AE0 80011EE0 000EC400 */ sll $t8, $t6, 0x10 +/* 012AE4 80011EE4 906F0007 */ lbu $t7, 7($v1) +/* 012AE8 80011EE8 01B8C825 */ or $t9, $t5, $t8 +/* 012AEC 80011EEC 000C7200 */ sll $t6, $t4, 8 +/* 012AF0 80011EF0 032E6825 */ or $t5, $t9, $t6 +/* 012AF4 80011EF4 01AF6025 */ or $t4, $t5, $t7 +/* 012AF8 80011EF8 10000015 */ b .L80011F50 +/* 012AFC 80011EFC AC4C0004 */ sw $t4, 4($v0) +.L80011F00: +/* 012B00 80011F00 84F90048 */ lh $t9, 0x48($a3) +/* 012B04 80011F04 24010044 */ li $at, 68 +/* 012B08 80011F08 1721000B */ bne $t9, $at, .L80011F38 +/* 012B0C 80011F0C 3C0CFB00 */ lui $t4, 0xfb00 +/* 012B10 80011F10 8E020000 */ lw $v0, ($s0) +/* 012B14 80011F14 3C0DFFFF */ lui $t5, (0xFFFF00FF >> 16) # lui $t5, 0xffff +/* 012B18 80011F18 244E0008 */ addiu $t6, $v0, 8 +/* 012B1C 80011F1C AE0E0000 */ sw $t6, ($s0) +/* 012B20 80011F20 35AD00FF */ ori $t5, (0xFFFF00FF & 0xFFFF) # ori $t5, $t5, 0xff +/* 012B24 80011F24 3C18FB00 */ lui $t8, 0xfb00 +/* 012B28 80011F28 24090001 */ li $t1, 1 +/* 012B2C 80011F2C AC580000 */ sw $t8, ($v0) +/* 012B30 80011F30 10000007 */ b .L80011F50 +/* 012B34 80011F34 AC4D0004 */ sw $t5, 4($v0) +.L80011F38: +/* 012B38 80011F38 8E020000 */ lw $v0, ($s0) +/* 012B3C 80011F3C 2419FF00 */ li $t9, -256 +/* 012B40 80011F40 244F0008 */ addiu $t7, $v0, 8 +/* 012B44 80011F44 AE0F0000 */ sw $t7, ($s0) +/* 012B48 80011F48 AC590004 */ sw $t9, 4($v0) +/* 012B4C 80011F4C AC4C0000 */ sw $t4, ($v0) +.L80011F50: +/* 012B50 80011F50 80F8003A */ lb $t8, 0x3a($a3) +/* 012B54 80011F54 8CEE0068 */ lw $t6, 0x68($a3) +/* 012B58 80011F58 00186880 */ sll $t5, $t8, 2 +/* 012B5C 80011F5C 01CD7821 */ addu $t7, $t6, $t5 +/* 012B60 80011F60 8DEC0000 */ lw $t4, ($t7) +/* 012B64 80011F64 24010074 */ li $at, 116 +/* 012B68 80011F68 AFAC0058 */ sw $t4, 0x58($sp) +/* 012B6C 80011F6C 84E20048 */ lh $v0, 0x48($a3) +/* 012B70 80011F70 00002025 */ move $a0, $zero +/* 012B74 80011F74 14410006 */ bne $v0, $at, .L80011F90 +/* 012B78 80011F78 00000000 */ nop +/* 012B7C 80011F7C 8CF9007C */ lw $t9, 0x7c($a3) +/* 012B80 80011F80 8CE40078 */ lw $a0, 0x78($a3) +/* 012B84 80011F84 1B200002 */ blez $t9, .L80011F90 +/* 012B88 80011F88 00000000 */ nop +/* 012B8C 80011F8C 00E02025 */ move $a0, $a3 +.L80011F90: +/* 012B90 80011F90 14800009 */ bnez $a0, .L80011FB8 +/* 012B94 80011F94 00000000 */ nop +/* 012B98 80011F98 15620028 */ bne $t3, $v0, .L8001203C +/* 012B9C 80011F9C 3C058012 */ lui $a1, 0x8012 +/* 012BA0 80011FA0 8CF80064 */ lw $t8, 0x64($a3) +/* 012BA4 80011FA4 2401000A */ li $at, 10 +/* 012BA8 80011FA8 930E0018 */ lbu $t6, 0x18($t8) +/* 012BAC 80011FAC 00000000 */ nop +/* 012BB0 80011FB0 15C10023 */ bne $t6, $at, .L80012040 +/* 012BB4 80011FB4 8FB90058 */ lw $t9, 0x58($sp) +.L80011FB8: +/* 012BB8 80011FB8 A7A00064 */ sh $zero, 0x64($sp) +/* 012BBC 80011FBC A7A00062 */ sh $zero, 0x62($sp) +/* 012BC0 80011FC0 A7A00060 */ sh $zero, 0x60($sp) +/* 012BC4 80011FC4 C4E40008 */ lwc1 $f4, 8($a3) +/* 012BC8 80011FC8 44800000 */ mtc1 $zero, $f0 +/* 012BCC 80011FCC 3C014140 */ li $at, 0x41400000 # 12.000000 +/* 012BD0 80011FD0 44813000 */ mtc1 $at, $f6 +/* 012BD4 80011FD4 E7A40068 */ swc1 $f4, 0x68($sp) +/* 012BD8 80011FD8 E7A0006C */ swc1 $f0, 0x6c($sp) +/* 012BDC 80011FDC E7A00074 */ swc1 $f0, 0x74($sp) +/* 012BE0 80011FE0 E7A60070 */ swc1 $f6, 0x70($sp) +/* 012BE4 80011FE4 84ED0018 */ lh $t5, 0x18($a3) +/* 012BE8 80011FE8 240F0020 */ li $t7, 32 +/* 012BEC 80011FEC A7AF007A */ sh $t7, 0x7a($sp) +/* 012BF0 80011FF0 14800008 */ bnez $a0, .L80012014 +/* 012BF4 80011FF4 A7AD0078 */ sh $t5, 0x78($sp) +/* 012BF8 80011FF8 8CEC0064 */ lw $t4, 0x64($a3) +/* 012BFC 80011FFC 00000000 */ nop +/* 012C00 80012000 8D840000 */ lw $a0, ($t4) +/* 012C04 80012004 00000000 */ nop +/* 012C08 80012008 14800003 */ bnez $a0, .L80012018 +/* 012C0C 8001200C 8FA50058 */ lw $a1, 0x58($sp) +/* 012C10 80012010 00E02025 */ move $a0, $a3 +.L80012014: +/* 012C14 80012014 8FA50058 */ lw $a1, 0x58($sp) +.L80012018: +/* 012C18 80012018 27A60060 */ addiu $a2, $sp, 0x60 +/* 012C1C 8001201C 24070106 */ li $a3, 262 +/* 012C20 80012020 AFA80080 */ sw $t0, 0x80($sp) +/* 012C24 80012024 0C004E2A */ jal func_800138A8 +/* 012C28 80012028 AFA9007C */ sw $t1, 0x7c($sp) +/* 012C2C 8001202C 8FA80080 */ lw $t0, 0x80($sp) +/* 012C30 80012030 8FA9007C */ lw $t1, 0x7c($sp) +/* 012C34 80012034 1000000E */ b .L80012070 +/* 012C38 80012038 00000000 */ nop +.L8001203C: +/* 012C3C 8001203C 8FB90058 */ lw $t9, 0x58($sp) +.L80012040: +/* 012C40 80012040 3C068012 */ lui $a2, %hi(D_8011AE94) # $a2, 0x8012 +/* 012C44 80012044 24C6AE94 */ addiu $a2, %lo(D_8011AE94) # addiu $a2, $a2, -0x516c +/* 012C48 80012048 02002025 */ move $a0, $s0 +/* 012C4C 8001204C 24A5AE90 */ addiu $a1, $a1, -0x5170 +/* 012C50 80012050 AFAA0014 */ sw $t2, 0x14($sp) +/* 012C54 80012054 AFA80080 */ sw $t0, 0x80($sp) +/* 012C58 80012058 AFA9007C */ sw $t1, 0x7c($sp) +/* 012C5C 8001205C 0C01A145 */ jal func_80068514 +/* 012C60 80012060 AFB90010 */ sw $t9, 0x10($sp) +/* 012C64 80012064 8FA80080 */ lw $t0, 0x80($sp) +/* 012C68 80012068 8FA9007C */ lw $t1, 0x7c($sp) +/* 012C6C 8001206C 00000000 */ nop +.L80012070: +/* 012C70 80012070 11000008 */ beqz $t0, .L80012094 +/* 012C74 80012074 00000000 */ nop +/* 012C78 80012078 8E020000 */ lw $v0, ($s0) +/* 012C7C 8001207C 3C0EFA00 */ lui $t6, 0xfa00 +/* 012C80 80012080 24580008 */ addiu $t8, $v0, 8 +/* 012C84 80012084 AE180000 */ sw $t8, ($s0) +/* 012C88 80012088 240DFFFF */ li $t5, -1 +/* 012C8C 8001208C AC4D0004 */ sw $t5, 4($v0) +/* 012C90 80012090 AC4E0000 */ sw $t6, ($v0) +.L80012094: +/* 012C94 80012094 11200009 */ beqz $t1, .L800120BC +/* 012C98 80012098 8FBF0024 */ lw $ra, 0x24($sp) +/* 012C9C 8001209C 8E020000 */ lw $v0, ($s0) +/* 012CA0 800120A0 3C0CFB00 */ lui $t4, 0xfb00 +/* 012CA4 800120A4 244F0008 */ addiu $t7, $v0, 8 +/* 012CA8 800120A8 AE0F0000 */ sw $t7, ($s0) +/* 012CAC 800120AC 2419FF00 */ li $t9, -256 +/* 012CB0 800120B0 AC590004 */ sw $t9, 4($v0) +/* 012CB4 800120B4 AC4C0000 */ sw $t4, ($v0) +/* 012CB8 800120B8 8FBF0024 */ lw $ra, 0x24($sp) +.L800120BC: +/* 012CBC 800120BC 8FB00020 */ lw $s0, 0x20($sp) +/* 012CC0 800120C0 03E00008 */ jr $ra +/* 012CC4 800120C4 27BD0090 */ addiu $sp, $sp, 0x90 + diff --git a/asm/non_matchings/unknown_005740/func_800120C8.s b/asm/non_matchings/unknown_005740/func_800120C8.s new file mode 100644 index 00000000..11761d04 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800120C8.s @@ -0,0 +1,783 @@ +glabel func_800120C8 +/* 012CC8 800120C8 27BDFF40 */ addiu $sp, $sp, -0xc0 +/* 012CCC 800120CC AFBF002C */ sw $ra, 0x2c($sp) +/* 012CD0 800120D0 AFB30028 */ sw $s3, 0x28($sp) +/* 012CD4 800120D4 AFB20024 */ sw $s2, 0x24($sp) +/* 012CD8 800120D8 AFB10020 */ sw $s1, 0x20($sp) +/* 012CDC 800120DC AFB0001C */ sw $s0, 0x1c($sp) +/* 012CE0 800120E0 808F003A */ lb $t7, 0x3a($a0) +/* 012CE4 800120E4 8C8E0068 */ lw $t6, 0x68($a0) +/* 012CE8 800120E8 000FC080 */ sll $t8, $t7, 2 +/* 012CEC 800120EC 01D8C821 */ addu $t9, $t6, $t8 +/* 012CF0 800120F0 8F300000 */ lw $s0, ($t9) +/* 012CF4 800120F4 00809025 */ move $s2, $a0 +/* 012CF8 800120F8 120002C6 */ beqz $s0, .L80012C14 +/* 012CFC 800120FC 240F00FF */ li $t7, 255 +/* 012D00 80012100 8E0D0000 */ lw $t5, ($s0) +/* 012D04 80012104 AFA000A8 */ sw $zero, 0xa8($sp) +/* 012D08 80012108 AFA000A4 */ sw $zero, 0xa4($sp) +/* 012D0C 8001210C AFAF00B8 */ sw $t7, 0xb8($sp) +/* 012D10 80012110 AFAD0078 */ sw $t5, 0x78($sp) +/* 012D14 80012114 8C830054 */ lw $v1, 0x54($a0) +/* 012D18 80012118 00000000 */ nop +/* 012D1C 8001211C 10600017 */ beqz $v1, .L8001217C +/* 012D20 80012120 3C01437F */ li $at, 0x437F0000 # 255.000000 +/* 012D24 80012124 44813000 */ mtc1 $at, $f6 +/* 012D28 80012128 C4640000 */ lwc1 $f4, ($v1) +/* 012D2C 8001212C 3C118012 */ lui $s1, %hi(D_8011AD30) # $s1, 0x8012 +/* 012D30 80012130 46062202 */ mul.s $f8, $f4, $f6 +/* 012D34 80012134 2631AD30 */ addiu $s1, %lo(D_8011AD30) # addiu $s1, $s1, -0x52d0 +/* 012D38 80012138 C62A0000 */ lwc1 $f10, ($s1) +/* 012D3C 8001213C 24190001 */ li $t9, 1 +/* 012D40 80012140 460A4102 */ mul.s $f4, $f8, $f10 +/* 012D44 80012144 240D0001 */ li $t5, 1 +/* 012D48 80012148 AFB900A8 */ sw $t9, 0xa8($sp) +/* 012D4C 8001214C AFAD00A4 */ sw $t5, 0xa4($sp) +/* 012D50 80012150 444EF800 */ cfc1 $t6, $31 +/* 012D54 80012154 00000000 */ nop +/* 012D58 80012158 35C10003 */ ori $at, $t6, 3 +/* 012D5C 8001215C 38210002 */ xori $at, $at, 2 +/* 012D60 80012160 44C1F800 */ ctc1 $at, $31 +/* 012D64 80012164 00000000 */ nop +/* 012D68 80012168 460021A4 */ cvt.w.s $f6, $f4 +/* 012D6C 8001216C 44183000 */ mfc1 $t8, $f6 +/* 012D70 80012170 44CEF800 */ ctc1 $t6, $31 +/* 012D74 80012174 AFB800B8 */ sw $t8, 0xb8($sp) +/* 012D78 80012178 00000000 */ nop +.L8001217C: +/* 012D7C 8001217C 864F0048 */ lh $t7, 0x48($s2) +/* 012D80 80012180 3C118012 */ lui $s1, %hi(D_8011AD30) # $s1, 0x8012 +/* 012D84 80012184 24010001 */ li $at, 1 +/* 012D88 80012188 15E10006 */ bne $t7, $at, .L800121A4 +/* 012D8C 8001218C 2631AD30 */ addiu $s1, %lo(D_8011AD30) # addiu $s1, $s1, -0x52d0 +/* 012D90 80012190 8E530064 */ lw $s3, 0x64($s2) +/* 012D94 80012194 0C004B8A */ jal func_80012E28 +/* 012D98 80012198 02402025 */ move $a0, $s2 +/* 012D9C 8001219C 10000003 */ b .L800121AC +/* 012DA0 800121A0 820E0020 */ lb $t6, 0x20($s0) +.L800121A4: +/* 012DA4 800121A4 00009825 */ move $s3, $zero +/* 012DA8 800121A8 820E0020 */ lb $t6, 0x20($s0) +.L800121AC: +/* 012DAC 800121AC 00000000 */ nop +/* 012DB0 800121B0 1DC00052 */ bgtz $t6, .L800122FC +/* 012DB4 800121B4 00000000 */ nop +/* 012DB8 800121B8 8218001F */ lb $t8, 0x1f($s0) +/* 012DBC 800121BC 24010002 */ li $at, 2 +/* 012DC0 800121C0 0018C880 */ sll $t9, $t8, 2 +/* 012DC4 800121C4 02196821 */ addu $t5, $s0, $t9 +/* 012DC8 800121C8 8DAF0004 */ lw $t7, 4($t5) +/* 012DCC 800121CC 00000000 */ nop +/* 012DD0 800121D0 AE4F0044 */ sw $t7, 0x44($s2) +/* 012DD4 800121D4 8203001E */ lb $v1, 0x1e($s0) +/* 012DD8 800121D8 00000000 */ nop +/* 012DDC 800121DC 14610005 */ bne $v1, $at, .L800121F4 +/* 012DE0 800121E0 00000000 */ nop +/* 012DE4 800121E4 0C01874C */ jal func_80061D30 +/* 012DE8 800121E8 02402025 */ move $a0, $s2 +/* 012DEC 800121EC 8203001E */ lb $v1, 0x1e($s0) +/* 012DF0 800121F0 00000000 */ nop +.L800121F4: +/* 012DF4 800121F4 10600033 */ beqz $v1, .L800122C4 +/* 012DF8 800121F8 00000000 */ nop +/* 012DFC 800121FC 8FAE0078 */ lw $t6, 0x78($sp) +/* 012E00 80012200 00000000 */ nop +/* 012E04 80012204 8DD80040 */ lw $t8, 0x40($t6) +/* 012E08 80012208 00000000 */ nop +/* 012E0C 8001220C 1300002D */ beqz $t8, .L800122C4 +/* 012E10 80012210 00000000 */ nop +/* 012E14 80012214 1260000B */ beqz $s3, .L80012244 +/* 012E18 80012218 24090001 */ li $t1, 1 +/* 012E1C 8001221C 827901D6 */ lb $t9, 0x1d6($s3) +/* 012E20 80012220 00000000 */ nop +/* 012E24 80012224 2B210005 */ slti $at, $t9, 5 +/* 012E28 80012228 10200006 */ beqz $at, .L80012244 +/* 012E2C 8001222C 00000000 */ nop +/* 012E30 80012230 866D0000 */ lh $t5, ($s3) +/* 012E34 80012234 2401FFFF */ li $at, -1 +/* 012E38 80012238 15A10002 */ bne $t5, $at, .L80012244 +/* 012E3C 8001223C 00000000 */ nop +/* 012E40 80012240 00004825 */ move $t1, $zero +.L80012244: +/* 012E44 80012244 0C019884 */ jal func_80066210 +/* 012E48 80012248 AFA900A0 */ sw $t1, 0xa0($sp) +/* 012E4C 8001224C 8FA900A0 */ lw $t1, 0xa0($sp) +/* 012E50 80012250 10400002 */ beqz $v0, .L8001225C +/* 012E54 80012254 2401003F */ li $at, 63 +/* 012E58 80012258 00004825 */ move $t1, $zero +.L8001225C: +/* 012E5C 8001225C 820F001F */ lb $t7, 0x1f($s0) +/* 012E60 80012260 864D0048 */ lh $t5, 0x48($s2) +/* 012E64 80012264 000F7080 */ sll $t6, $t7, 2 +/* 012E68 80012268 020EC021 */ addu $t8, $s0, $t6 +/* 012E6C 8001226C 8F190004 */ lw $t9, 4($t8) +/* 012E70 80012270 15A10008 */ bne $t5, $at, .L80012294 +/* 012E74 80012274 AE590044 */ sw $t9, 0x44($s2) +/* 012E78 80012278 8FA40078 */ lw $a0, 0x78($sp) +/* 012E7C 8001227C 8E270000 */ lw $a3, ($s1) +/* 012E80 80012280 02402825 */ move $a1, $s2 +/* 012E84 80012284 0C0075B9 */ jal func_8001D6E4 +/* 012E88 80012288 00003025 */ move $a2, $zero +/* 012E8C 8001228C 1000000D */ b .L800122C4 +/* 012E90 80012290 00000000 */ nop +.L80012294: +/* 012E94 80012294 11200007 */ beqz $t1, .L800122B4 +/* 012E98 80012298 02402825 */ move $a1, $s2 +/* 012E9C 8001229C 8FA40078 */ lw $a0, 0x78($sp) +/* 012EA0 800122A0 8E270000 */ lw $a3, ($s1) +/* 012EA4 800122A4 0C0075B9 */ jal func_8001D6E4 +/* 012EA8 800122A8 2406FFFF */ li $a2, -1 +/* 012EAC 800122AC 10000005 */ b .L800122C4 +/* 012EB0 800122B0 00000000 */ nop +.L800122B4: +/* 012EB4 800122B4 8FA40078 */ lw $a0, 0x78($sp) +/* 012EB8 800122B8 8E260000 */ lw $a2, ($s1) +/* 012EBC 800122BC 0C00917C */ jal func_800245F0 +/* 012EC0 800122C0 02402825 */ move $a1, $s2 +.L800122C4: +/* 012EC4 800122C4 1260000C */ beqz $s3, .L800122F8 +/* 012EC8 800122C8 24190001 */ li $t9, 1 +/* 012ECC 800122CC 866F0000 */ lh $t7, ($s3) +/* 012ED0 800122D0 2401FFFF */ li $at, -1 +/* 012ED4 800122D4 15E10008 */ bne $t7, $at, .L800122F8 +/* 012ED8 800122D8 00000000 */ nop +/* 012EDC 800122DC 826E01D6 */ lb $t6, 0x1d6($s3) +/* 012EE0 800122E0 24180002 */ li $t8, 2 +/* 012EE4 800122E4 29C10005 */ slti $at, $t6, 5 +/* 012EE8 800122E8 10200003 */ beqz $at, .L800122F8 +/* 012EEC 800122EC 00000000 */ nop +/* 012EF0 800122F0 10000002 */ b .L800122FC +/* 012EF4 800122F4 A2180020 */ sb $t8, 0x20($s0) +.L800122F8: +/* 012EF8 800122F8 A2190020 */ sb $t9, 0x20($s0) +.L800122FC: +/* 012EFC 800122FC 820D001F */ lb $t5, 0x1f($s0) +/* 012F00 80012300 86590048 */ lh $t9, 0x48($s2) +/* 012F04 80012304 000D7880 */ sll $t7, $t5, 2 +/* 012F08 80012308 020F7021 */ addu $t6, $s0, $t7 +/* 012F0C 8001230C 8DD80004 */ lw $t8, 4($t6) +/* 012F10 80012310 2401000E */ li $at, 14 +/* 012F14 80012314 17210004 */ bne $t9, $at, .L80012328 +/* 012F18 80012318 AE580044 */ sw $t8, 0x44($s2) +/* 012F1C 8001231C 8FA40078 */ lw $a0, 0x78($sp) +/* 012F20 80012320 0C004499 */ jal func_80011264 +/* 012F24 80012324 02402825 */ move $a1, $s2 +.L80012328: +/* 012F28 80012328 8FAD0078 */ lw $t5, 0x78($sp) +/* 012F2C 8001232C 00000000 */ nop +/* 012F30 80012330 85A50052 */ lh $a1, 0x52($t5) +/* 012F34 80012334 00000000 */ nop +/* 012F38 80012338 10A0000A */ beqz $a1, .L80012364 +/* 012F3C 8001233C 00000000 */ nop +/* 012F40 80012340 85AF0050 */ lh $t7, 0x50($t5) +/* 012F44 80012344 00000000 */ nop +/* 012F48 80012348 19E00006 */ blez $t7, .L80012364 +/* 012F4C 8001234C 00000000 */ nop +/* 012F50 80012350 0C00444D */ jal func_80011134 +/* 012F54 80012354 02402025 */ move $a0, $s2 +/* 012F58 80012358 8E0E0000 */ lw $t6, ($s0) +/* 012F5C 8001235C 00000000 */ nop +/* 012F60 80012360 A5C00052 */ sh $zero, 0x52($t6) +.L80012364: +/* 012F64 80012364 44804000 */ mtc1 $zero, $f8 +/* 012F68 80012368 3C118012 */ lui $s1, %hi(D_8011AE8C) # $s1, 0x8012 +/* 012F6C 8001236C 3C078012 */ lui $a3, %hi(D_8011AD28) # $a3, 0x8012 +/* 012F70 80012370 2631AE8C */ addiu $s1, %lo(D_8011AE8C) # addiu $s1, $s1, -0x5174 +/* 012F74 80012374 8CE7AD28 */ lw $a3, %lo(D_8011AD28)($a3) +/* 012F78 80012378 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 +/* 012F7C 8001237C 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 +/* 012F80 80012380 02202025 */ move $a0, $s1 +/* 012F84 80012384 02403025 */ move $a2, $s2 +/* 012F88 80012388 0C01A521 */ jal func_80069484 +/* 012F8C 8001238C E7A80010 */ swc1 $f8, 0x10($sp) +/* 012F90 80012390 12600014 */ beqz $s3, .L800123E4 +/* 012F94 80012394 AFA000B0 */ sw $zero, 0xb0($sp) +/* 012F98 80012398 0C004BCC */ jal func_80012F30 +/* 012F9C 8001239C 02402025 */ move $a0, $s2 +/* 012FA0 800123A0 8258003B */ lb $t8, 0x3b($s2) +/* 012FA4 800123A4 02202025 */ move $a0, $s1 +/* 012FA8 800123A8 13000006 */ beqz $t8, .L800123C4 +/* 012FAC 800123AC 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 +/* 012FB0 800123B0 827901D6 */ lb $t9, 0x1d6($s3) +/* 012FB4 800123B4 00000000 */ nop +/* 012FB8 800123B8 2B210005 */ slti $at, $t9, 5 +/* 012FBC 800123BC 14200008 */ bnez $at, .L800123E0 +/* 012FC0 800123C0 00000000 */ nop +.L800123C4: +/* 012FC4 800123C4 8667016A */ lh $a3, 0x16a($s3) +/* 012FC8 800123C8 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 +/* 012FCC 800123CC 0C01A5E4 */ jal func_80069790 +/* 012FD0 800123D0 02003025 */ move $a2, $s0 +/* 012FD4 800123D4 240D0001 */ li $t5, 1 +/* 012FD8 800123D8 10000002 */ b .L800123E4 +/* 012FDC 800123DC AFAD00B0 */ sw $t5, 0xb0($sp) +.L800123E0: +/* 012FE0 800123E0 A660016A */ sh $zero, 0x16a($s3) +.L800123E4: +/* 012FE4 800123E4 92480039 */ lbu $t0, 0x39($s2) +/* 012FE8 800123E8 00000000 */ nop +/* 012FEC 800123EC 29010100 */ slti $at, $t0, 0x100 +/* 012FF0 800123F0 14200002 */ bnez $at, .L800123FC +/* 012FF4 800123F4 00000000 */ nop +/* 012FF8 800123F8 240800FF */ li $t0, 255 +.L800123FC: +/* 012FFC 800123FC 864F0048 */ lh $t7, 0x48($s2) +/* 013000 80012400 24010039 */ li $at, 57 +/* 013004 80012404 15E10002 */ bne $t7, $at, .L80012410 +/* 013008 80012408 00087043 */ sra $t6, $t0, 1 +/* 01300C 8001240C 01C04025 */ move $t0, $t6 +.L80012410: +/* 013010 80012410 290100FF */ slti $at, $t0, 0xff +/* 013014 80012414 10200002 */ beqz $at, .L80012420 +/* 013018 80012418 24180001 */ li $t8, 1 +/* 01301C 8001241C AFB800A8 */ sw $t8, 0xa8($sp) +.L80012420: +/* 013020 80012420 8FB900A4 */ lw $t9, 0xa4($sp) +/* 013024 80012424 3C0DFB00 */ lui $t5, 0xfb00 +/* 013028 80012428 13200014 */ beqz $t9, .L8001247C +/* 01302C 8001242C 00000000 */ nop +/* 013030 80012430 8E220000 */ lw $v0, ($s1) +/* 013034 80012434 3C0FFB00 */ lui $t7, 0xfb00 +/* 013038 80012438 244D0008 */ addiu $t5, $v0, 8 +/* 01303C 8001243C AE2D0000 */ sw $t5, ($s1) +/* 013040 80012440 AC4F0000 */ sw $t7, ($v0) +/* 013044 80012444 8E430054 */ lw $v1, 0x54($s2) +/* 013048 80012448 00000000 */ nop +/* 01304C 8001244C 906F0005 */ lbu $t7, 5($v1) +/* 013050 80012450 90780004 */ lbu $t8, 4($v1) +/* 013054 80012454 000F7400 */ sll $t6, $t7, 0x10 +/* 013058 80012458 906F0006 */ lbu $t7, 6($v1) +/* 01305C 8001245C 0018CE00 */ sll $t9, $t8, 0x18 +/* 013060 80012460 032EC025 */ or $t8, $t9, $t6 +/* 013064 80012464 000FCA00 */ sll $t9, $t7, 8 +/* 013068 80012468 906F0007 */ lbu $t7, 7($v1) +/* 01306C 8001246C 03197025 */ or $t6, $t8, $t9 +/* 013070 80012470 01CFC025 */ or $t8, $t6, $t7 +/* 013074 80012474 10000007 */ b .L80012494 +/* 013078 80012478 AC580004 */ sw $t8, 4($v0) +.L8001247C: +/* 01307C 8001247C 8E220000 */ lw $v0, ($s1) +/* 013080 80012480 240EFF00 */ li $t6, -256 +/* 013084 80012484 24590008 */ addiu $t9, $v0, 8 +/* 013088 80012488 AE390000 */ sw $t9, ($s1) +/* 01308C 8001248C AC4E0004 */ sw $t6, 4($v0) +/* 013090 80012490 AC4D0000 */ sw $t5, ($v0) +.L80012494: +/* 013094 80012494 8E4F0040 */ lw $t7, 0x40($s2) +/* 013098 80012498 00000000 */ nop +/* 01309C 8001249C 91F80071 */ lbu $t8, 0x71($t7) +/* 0130A0 800124A0 8FAF00A8 */ lw $t7, 0xa8($sp) +/* 0130A4 800124A4 13000017 */ beqz $t8, .L80012504 +/* 0130A8 800124A8 00000000 */ nop +/* 0130AC 800124AC 8E220000 */ lw $v0, ($s1) +/* 0130B0 800124B0 3C0DFA00 */ lui $t5, 0xfa00 +/* 0130B4 800124B4 24590008 */ addiu $t9, $v0, 8 +/* 0130B8 800124B8 AE390000 */ sw $t9, ($s1) +/* 0130BC 800124BC AC4D0000 */ sw $t5, ($v0) +/* 0130C0 800124C0 8E430054 */ lw $v1, 0x54($s2) +/* 0130C4 800124C4 311900FF */ andi $t9, $t0, 0xff +/* 0130C8 800124C8 906D0019 */ lbu $t5, 0x19($v1) +/* 0130CC 800124CC 906F0018 */ lbu $t7, 0x18($v1) +/* 0130D0 800124D0 000D7400 */ sll $t6, $t5, 0x10 +/* 0130D4 800124D4 906D001A */ lbu $t5, 0x1a($v1) +/* 0130D8 800124D8 000FC600 */ sll $t8, $t7, 0x18 +/* 0130DC 800124DC 030E7825 */ or $t7, $t8, $t6 +/* 0130E0 800124E0 000DC200 */ sll $t8, $t5, 8 +/* 0130E4 800124E4 01F87025 */ or $t6, $t7, $t8 +/* 0130E8 800124E8 01D96825 */ or $t5, $t6, $t9 +/* 0130EC 800124EC AC4D0004 */ sw $t5, 4($v0) +/* 0130F0 800124F0 0C01ED0F */ jal func_8007B43C +/* 0130F4 800124F4 AFA800B4 */ sw $t0, 0xb4($sp) +/* 0130F8 800124F8 8FA800B4 */ lw $t0, 0xb4($sp) +/* 0130FC 800124FC 1000001B */ b .L8001256C +/* 013100 80012500 290100FF */ slti $at, $t0, 0xff +.L80012504: +/* 013104 80012504 11E00012 */ beqz $t7, .L80012550 +/* 013108 80012508 3C0EFA00 */ lui $t6, 0xfa00 +/* 01310C 8001250C 8E220000 */ lw $v0, ($s1) +/* 013110 80012510 3C0EFA00 */ lui $t6, 0xfa00 +/* 013114 80012514 24580008 */ addiu $t8, $v0, 8 +/* 013118 80012518 AE380000 */ sw $t8, ($s1) +/* 01311C 8001251C AC4E0000 */ sw $t6, ($v0) +/* 013120 80012520 8FA300B8 */ lw $v1, 0xb8($sp) +/* 013124 80012524 00000000 */ nop +/* 013128 80012528 307900FF */ andi $t9, $v1, 0xff +/* 01312C 8001252C 00196E00 */ sll $t5, $t9, 0x18 +/* 013130 80012530 00197C00 */ sll $t7, $t9, 0x10 +/* 013134 80012534 01AFC025 */ or $t8, $t5, $t7 +/* 013138 80012538 00197200 */ sll $t6, $t9, 8 +/* 01313C 8001253C 030EC825 */ or $t9, $t8, $t6 +/* 013140 80012540 310D00FF */ andi $t5, $t0, 0xff +/* 013144 80012544 032D7825 */ or $t7, $t9, $t5 +/* 013148 80012548 10000007 */ b .L80012568 +/* 01314C 8001254C AC4F0004 */ sw $t7, 4($v0) +.L80012550: +/* 013150 80012550 8E220000 */ lw $v0, ($s1) +/* 013154 80012554 2419FFFF */ li $t9, -1 +/* 013158 80012558 24580008 */ addiu $t8, $v0, 8 +/* 01315C 8001255C AE380000 */ sw $t8, ($s1) +/* 013160 80012560 AC590004 */ sw $t9, 4($v0) +/* 013164 80012564 AC4E0000 */ sw $t6, ($v0) +.L80012568: +/* 013168 80012568 290100FF */ slti $at, $t0, 0xff +.L8001256C: +/* 01316C 8001256C 1020000B */ beqz $at, .L8001259C +/* 013170 80012570 02402825 */ move $a1, $s2 +/* 013174 80012574 8FAD00B0 */ lw $t5, 0xb0($sp) +/* 013178 80012578 8FA40078 */ lw $a0, 0x78($sp) +/* 01317C 8001257C 02402825 */ move $a1, $s2 +/* 013180 80012580 00003025 */ move $a2, $zero +/* 013184 80012584 24070004 */ li $a3, 4 +/* 013188 80012588 AFA800B4 */ sw $t0, 0xb4($sp) +/* 01318C 8001258C 0C0050EA */ jal func_800143A8 +/* 013190 80012590 AFAD0010 */ sw $t5, 0x10($sp) +/* 013194 80012594 10000009 */ b .L800125BC +/* 013198 80012598 AFA2009C */ sw $v0, 0x9c($sp) +.L8001259C: +/* 01319C 8001259C 8FAF00B0 */ lw $t7, 0xb0($sp) +/* 0131A0 800125A0 8FA40078 */ lw $a0, 0x78($sp) +/* 0131A4 800125A4 00003025 */ move $a2, $zero +/* 0131A8 800125A8 00003825 */ move $a3, $zero +/* 0131AC 800125AC AFA800B4 */ sw $t0, 0xb4($sp) +/* 0131B0 800125B0 0C0050EA */ jal func_800143A8 +/* 0131B4 800125B4 AFAF0010 */ sw $t7, 0x10($sp) +/* 0131B8 800125B8 AFA2009C */ sw $v0, 0x9c($sp) +.L800125BC: +/* 0131BC 800125BC 8E580040 */ lw $t8, 0x40($s2) +/* 0131C0 800125C0 8FB900A8 */ lw $t9, 0xa8($sp) +/* 0131C4 800125C4 930E0071 */ lbu $t6, 0x71($t8) +/* 0131C8 800125C8 00000000 */ nop +/* 0131CC 800125CC 11C0001D */ beqz $t6, .L80012644 +/* 0131D0 800125D0 00000000 */ nop +/* 0131D4 800125D4 13200013 */ beqz $t9, .L80012624 +/* 0131D8 800125D8 3C0EFA00 */ lui $t6, 0xfa00 +/* 0131DC 800125DC 8E220000 */ lw $v0, ($s1) +/* 0131E0 800125E0 3C0FFA00 */ lui $t7, 0xfa00 +/* 0131E4 800125E4 244D0008 */ addiu $t5, $v0, 8 +/* 0131E8 800125E8 AE2D0000 */ sw $t5, ($s1) +/* 0131EC 800125EC AC4F0000 */ sw $t7, ($v0) +/* 0131F0 800125F0 8FA300B8 */ lw $v1, 0xb8($sp) +/* 0131F4 800125F4 00000000 */ nop +/* 0131F8 800125F8 307800FF */ andi $t8, $v1, 0xff +/* 0131FC 800125FC 00187600 */ sll $t6, $t8, 0x18 +/* 013200 80012600 0018CC00 */ sll $t9, $t8, 0x10 +/* 013204 80012604 01D96825 */ or $t5, $t6, $t9 +/* 013208 80012608 8FAE00B4 */ lw $t6, 0xb4($sp) +/* 01320C 8001260C 00187A00 */ sll $t7, $t8, 8 +/* 013210 80012610 01AFC025 */ or $t8, $t5, $t7 +/* 013214 80012614 31D900FF */ andi $t9, $t6, 0xff +/* 013218 80012618 03196825 */ or $t5, $t8, $t9 +/* 01321C 8001261C 10000007 */ b .L8001263C +/* 013220 80012620 AC4D0004 */ sw $t5, 4($v0) +.L80012624: +/* 013224 80012624 8E220000 */ lw $v0, ($s1) +/* 013228 80012628 2418FFFF */ li $t8, -1 +/* 01322C 8001262C 244F0008 */ addiu $t7, $v0, 8 +/* 013230 80012630 AE2F0000 */ sw $t7, ($s1) +/* 013234 80012634 AC580004 */ sw $t8, 4($v0) +/* 013238 80012638 AC4E0000 */ sw $t6, ($v0) +.L8001263C: +/* 01323C 8001263C 0C01ED15 */ jal func_8007B454 +/* 013240 80012640 00000000 */ nop +.L80012644: +/* 013244 80012644 8E420060 */ lw $v0, 0x60($s2) +/* 013248 80012648 00000000 */ nop +/* 01324C 8001264C 104000D4 */ beqz $v0, .L800129A0 +/* 013250 80012650 8FA50078 */ lw $a1, 0x78($sp) +/* 013254 80012654 8C590000 */ lw $t9, ($v0) +/* 013258 80012658 12600006 */ beqz $s3, .L80012674 +/* 01325C 8001265C AFB900AC */ sw $t9, 0xac($sp) +/* 013260 80012660 826D01D6 */ lb $t5, 0x1d6($s3) +/* 013264 80012664 24010003 */ li $at, 3 +/* 013268 80012668 15A10003 */ bne $t5, $at, .L80012678 +/* 01326C 8001266C 8FAF00AC */ lw $t7, 0xac($sp) +/* 013270 80012670 AFA000AC */ sw $zero, 0xac($sp) +.L80012674: +/* 013274 80012674 8FAF00AC */ lw $t7, 0xac($sp) +.L80012678: +/* 013278 80012678 8FA50078 */ lw $a1, 0x78($sp) +/* 01327C 8001267C 19E000C7 */ blez $t7, .L8001299C +/* 013280 80012680 00005025 */ move $t2, $zero +/* 013284 80012684 00005825 */ move $t3, $zero +.L80012688: +/* 013288 80012688 8E420060 */ lw $v0, 0x60($s2) +/* 01328C 8001268C 00000000 */ nop +/* 013290 80012690 004B7021 */ addu $t6, $v0, $t3 +/* 013294 80012694 8DD00004 */ lw $s0, 4($t6) +/* 013298 80012698 00000000 */ nop +/* 01329C 8001269C 86180006 */ lh $t8, 6($s0) +/* 0132A0 800126A0 00000000 */ nop +/* 0132A4 800126A4 33194000 */ andi $t9, $t8, 0x4000 +/* 0132A8 800126A8 172000B9 */ bnez $t9, .L80012990 +/* 0132AC 800126AC 8FB900AC */ lw $t9, 0xac($sp) +/* 0132B0 800126B0 8C4D002C */ lw $t5, 0x2c($v0) +/* 0132B4 800126B4 00000000 */ nop +/* 0132B8 800126B8 01AA7821 */ addu $t7, $t5, $t2 +/* 0132BC 800126BC 81E30000 */ lb $v1, ($t7) +/* 0132C0 800126C0 00000000 */ nop +/* 0132C4 800126C4 046000B2 */ bltz $v1, .L80012990 +/* 0132C8 800126C8 8FB900AC */ lw $t9, 0xac($sp) +/* 0132CC 800126CC 84AE0018 */ lh $t6, 0x18($a1) +/* 0132D0 800126D0 00000000 */ nop +/* 0132D4 800126D4 006E082A */ slt $at, $v1, $t6 +/* 0132D8 800126D8 102000AD */ beqz $at, .L80012990 +/* 0132DC 800126DC 8FB900AC */ lw $t9, 0xac($sp) +/* 0132E0 800126E0 8219003A */ lb $t9, 0x3a($s0) +/* 0132E4 800126E4 8E180068 */ lw $t8, 0x68($s0) +/* 0132E8 800126E8 00196880 */ sll $t5, $t9, 2 +/* 0132EC 800126EC 8CAE0014 */ lw $t6, 0x14($a1) +/* 0132F0 800126F0 0003C840 */ sll $t9, $v1, 1 +/* 0132F4 800126F4 030D7821 */ addu $t7, $t8, $t5 +/* 0132F8 800126F8 01D9C021 */ addu $t8, $t6, $t9 +/* 0132FC 800126FC 870D0000 */ lh $t5, ($t8) +/* 013300 80012700 8DEC0000 */ lw $t4, ($t7) +/* 013304 80012704 000D7880 */ sll $t7, $t5, 2 +/* 013308 80012708 8E4E0044 */ lw $t6, 0x44($s2) +/* 01330C 8001270C 01ED7821 */ addu $t7, $t7, $t5 +/* 013310 80012710 000F7840 */ sll $t7, $t7, 1 +/* 013314 80012714 01CF1021 */ addu $v0, $t6, $t7 +/* 013318 80012718 84590000 */ lh $t9, ($v0) +/* 01331C 8001271C 84580002 */ lh $t8, 2($v0) +/* 013320 80012720 44995000 */ mtc1 $t9, $f10 +/* 013324 80012724 844D0004 */ lh $t5, 4($v0) +/* 013328 80012728 46805020 */ cvt.s.w $f0, $f10 +/* 01332C 8001272C C608000C */ lwc1 $f8, 0xc($s0) +/* 013330 80012730 44982000 */ mtc1 $t8, $f4 +/* 013334 80012734 448D3000 */ mtc1 $t5, $f6 +/* 013338 80012738 468020A0 */ cvt.s.w $f2, $f4 +/* 01333C 8001273C C6040010 */ lwc1 $f4, 0x10($s0) +/* 013340 80012740 8E0E0040 */ lw $t6, 0x40($s0) +/* 013344 80012744 46004280 */ add.s $f10, $f8, $f0 +/* 013348 80012748 C6080014 */ lwc1 $f8, 0x14($s0) +/* 01334C 8001274C 46803320 */ cvt.s.w $f12, $f6 +/* 013350 80012750 E60A000C */ swc1 $f10, 0xc($s0) +/* 013354 80012754 24010001 */ li $at, 1 +/* 013358 80012758 46022180 */ add.s $f6, $f4, $f2 +/* 01335C 8001275C 00002025 */ move $a0, $zero +/* 013360 80012760 460C4280 */ add.s $f10, $f8, $f12 +/* 013364 80012764 E6060010 */ swc1 $f6, 0x10($s0) +/* 013368 80012768 E60A0014 */ swc1 $f10, 0x14($s0) +/* 01336C 8001276C 81CF0053 */ lb $t7, 0x53($t6) +/* 013370 80012770 8FB900B4 */ lw $t9, 0xb4($sp) +/* 013374 80012774 15E10003 */ bne $t7, $at, .L80012784 +/* 013378 80012778 3C0D8000 */ lui $t5, %hi(D_80000310) # $t5, 0x8000 +/* 01337C 8001277C 10000002 */ b .L80012788 +/* 013380 80012780 2409010A */ li $t1, 266 +.L80012784: +/* 013384 80012784 2409010B */ li $t1, 267 +.L80012788: +/* 013388 80012788 2B2100FF */ slti $at, $t9, 0xff +/* 01338C 8001278C 10200002 */ beqz $at, .L80012798 +/* 013390 80012790 35380004 */ ori $t8, $t1, 4 +/* 013394 80012794 03004825 */ move $t1, $t8 +.L80012798: +/* 013398 80012798 8DAD0310 */ lw $t5, %lo(D_80000310)($t5) +/* 01339C 8001279C 240117D7 */ li $at, 6103 +/* 0133A0 800127A0 11A10002 */ beq $t5, $at, .L800127AC +/* 0133A4 800127A4 00000000 */ nop +/* 0133A8 800127A8 24040001 */ li $a0, 1 +.L800127AC: +/* 0133AC 800127AC 1480006C */ bnez $a0, .L80012960 +/* 0133B0 800127B0 00000000 */ nop +/* 0133B4 800127B4 86020006 */ lh $v0, 6($s0) +/* 0133B8 800127B8 8FA300B8 */ lw $v1, 0xb8($sp) +/* 0133BC 800127BC 304E0080 */ andi $t6, $v0, 0x80 +/* 0133C0 800127C0 000E102B */ sltu $v0, $zero, $t6 +/* 0133C4 800127C4 10400005 */ beqz $v0, .L800127DC +/* 0133C8 800127C8 02202025 */ move $a0, $s1 +/* 0133CC 800127CC 8FA200AC */ lw $v0, 0xac($sp) +/* 0133D0 800127D0 00000000 */ nop +/* 0133D4 800127D4 38590003 */ xori $t9, $v0, 3 +/* 0133D8 800127D8 2F220001 */ sltiu $v0, $t9, 1 +.L800127DC: +/* 0133DC 800127DC 00024600 */ sll $t0, $v0, 0x18 +/* 0133E0 800127E0 0008C603 */ sra $t8, $t0, 0x18 +/* 0133E4 800127E4 12600007 */ beqz $s3, .L80012804 +/* 0133E8 800127E8 03004025 */ move $t0, $t8 +/* 0133EC 800127EC 926D01F7 */ lbu $t5, 0x1f7($s3) +/* 0133F0 800127F0 00000000 */ nop +/* 0133F4 800127F4 29A100FF */ slti $at, $t5, 0xff +/* 0133F8 800127F8 10200002 */ beqz $at, .L80012804 +/* 0133FC 800127FC 00000000 */ nop +/* 013400 80012800 00004025 */ move $t0, $zero +.L80012804: +/* 013404 80012804 1100002B */ beqz $t0, .L800128B4 +/* 013408 80012808 306E00FF */ andi $t6, $v1, 0xff +/* 01340C 8001280C 000E7E00 */ sll $t7, $t6, 0x18 +/* 013410 80012810 000ECC00 */ sll $t9, $t6, 0x10 +/* 013414 80012814 01F9C025 */ or $t8, $t7, $t9 +/* 013418 80012818 8FAF00B4 */ lw $t7, 0xb4($sp) +/* 01341C 8001281C 01C01825 */ move $v1, $t6 +/* 013420 80012820 000E6A00 */ sll $t5, $t6, 8 +/* 013424 80012824 030D7025 */ or $t6, $t8, $t5 +/* 013428 80012828 31F900FF */ andi $t9, $t7, 0xff +/* 01342C 8001282C 01D9C025 */ or $t8, $t6, $t9 +/* 013430 80012830 AFB80034 */ sw $t8, 0x34($sp) +/* 013434 80012834 A3A8008A */ sb $t0, 0x8a($sp) +/* 013438 80012838 AFA900A0 */ sw $t1, 0xa0($sp) +/* 01343C 8001283C AFAA00BC */ sw $t2, 0xbc($sp) +/* 013440 80012840 AFAB0030 */ sw $t3, 0x30($sp) +/* 013444 80012844 AFAC0074 */ sw $t4, 0x74($sp) +/* 013448 80012848 E7A00094 */ swc1 $f0, 0x94($sp) +/* 01344C 8001284C E7A20090 */ swc1 $f2, 0x90($sp) +/* 013450 80012850 0C004B26 */ jal func_80012C98 +/* 013454 80012854 E7AC008C */ swc1 $f12, 0x8c($sp) +/* 013458 80012858 8E220000 */ lw $v0, ($s1) +/* 01345C 8001285C 83A8008A */ lb $t0, 0x8a($sp) +/* 013460 80012860 244D0008 */ addiu $t5, $v0, 8 +/* 013464 80012864 8FA900A0 */ lw $t1, 0xa0($sp) +/* 013468 80012868 8FAA00BC */ lw $t2, 0xbc($sp) +/* 01346C 8001286C 8FAB0030 */ lw $t3, 0x30($sp) +/* 013470 80012870 8FAC0074 */ lw $t4, 0x74($sp) +/* 013474 80012874 C7A00094 */ lwc1 $f0, 0x94($sp) +/* 013478 80012878 C7A20090 */ lwc1 $f2, 0x90($sp) +/* 01347C 8001287C C7AC008C */ lwc1 $f12, 0x8c($sp) +/* 013480 80012880 AE2D0000 */ sw $t5, ($s1) +/* 013484 80012884 3C0FFB00 */ lui $t7, 0xfb00 +/* 013488 80012888 240EFF00 */ li $t6, -256 +/* 01348C 8001288C AC4E0004 */ sw $t6, 4($v0) +/* 013490 80012890 AC4F0000 */ sw $t7, ($v0) +/* 013494 80012894 8E220000 */ lw $v0, ($s1) +/* 013498 80012898 3C18FA00 */ lui $t8, 0xfa00 +/* 01349C 8001289C 24590008 */ addiu $t9, $v0, 8 +/* 0134A0 800128A0 AE390000 */ sw $t9, ($s1) +/* 0134A4 800128A4 AC580000 */ sw $t8, ($v0) +/* 0134A8 800128A8 8FAD0034 */ lw $t5, 0x34($sp) +/* 0134AC 800128AC 00000000 */ nop +/* 0134B0 800128B0 AC4D0004 */ sw $t5, 4($v0) +.L800128B4: +/* 0134B4 800128B4 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 +/* 0134B8 800128B8 3C068012 */ lui $a2, %hi(D_8011AE94) # $a2, 0x8012 +/* 0134BC 800128BC 24C6AE94 */ addiu $a2, %lo(D_8011AE94) # addiu $a2, $a2, -0x516c +/* 0134C0 800128C0 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 +/* 0134C4 800128C4 02202025 */ move $a0, $s1 +/* 0134C8 800128C8 02003825 */ move $a3, $s0 +/* 0134CC 800128CC AFAC0010 */ sw $t4, 0x10($sp) +/* 0134D0 800128D0 AFA90014 */ sw $t1, 0x14($sp) +/* 0134D4 800128D4 A3A8008A */ sb $t0, 0x8a($sp) +/* 0134D8 800128D8 AFAA00BC */ sw $t2, 0xbc($sp) +/* 0134DC 800128DC AFAB0030 */ sw $t3, 0x30($sp) +/* 0134E0 800128E0 E7A00094 */ swc1 $f0, 0x94($sp) +/* 0134E4 800128E4 E7A20090 */ swc1 $f2, 0x90($sp) +/* 0134E8 800128E8 0C01A145 */ jal func_80068514 +/* 0134EC 800128EC E7AC008C */ swc1 $f12, 0x8c($sp) +/* 0134F0 800128F0 83A8008A */ lb $t0, 0x8a($sp) +/* 0134F4 800128F4 8FAA00BC */ lw $t2, 0xbc($sp) +/* 0134F8 800128F8 8FAB0030 */ lw $t3, 0x30($sp) +/* 0134FC 800128FC C7A00094 */ lwc1 $f0, 0x94($sp) +/* 013500 80012900 C7A20090 */ lwc1 $f2, 0x90($sp) +/* 013504 80012904 C7AC008C */ lwc1 $f12, 0x8c($sp) +/* 013508 80012908 11000015 */ beqz $t0, .L80012960 +/* 01350C 8001290C AE020078 */ sw $v0, 0x78($s0) +/* 013510 80012910 8E220000 */ lw $v0, ($s1) +/* 013514 80012914 3C0EBC00 */ lui $t6, (0xBC00000A >> 16) # lui $t6, 0xbc00 +/* 013518 80012918 244F0008 */ addiu $t7, $v0, 8 +/* 01351C 8001291C AE2F0000 */ sw $t7, ($s1) +/* 013520 80012920 35CE000A */ ori $t6, (0xBC00000A & 0xFFFF) # ori $t6, $t6, 0xa +/* 013524 80012924 AC4E0000 */ sw $t6, ($v0) +/* 013528 80012928 AC400004 */ sw $zero, 4($v0) +/* 01352C 8001292C E7AC008C */ swc1 $f12, 0x8c($sp) +/* 013530 80012930 E7A20090 */ swc1 $f2, 0x90($sp) +/* 013534 80012934 E7A00094 */ swc1 $f0, 0x94($sp) +/* 013538 80012938 AFAB0030 */ sw $t3, 0x30($sp) +/* 01353C 8001293C AFAA00BC */ sw $t2, 0xbc($sp) +/* 013540 80012940 0C004B3A */ jal func_80012CE8 +/* 013544 80012944 02202025 */ move $a0, $s1 +/* 013548 80012948 8FAA00BC */ lw $t2, 0xbc($sp) +/* 01354C 8001294C 8FAB0030 */ lw $t3, 0x30($sp) +/* 013550 80012950 C7A00094 */ lwc1 $f0, 0x94($sp) +/* 013554 80012954 C7A20090 */ lwc1 $f2, 0x90($sp) +/* 013558 80012958 C7AC008C */ lwc1 $f12, 0x8c($sp) +/* 01355C 8001295C 00000000 */ nop +.L80012960: +/* 013560 80012960 C604000C */ lwc1 $f4, 0xc($s0) +/* 013564 80012964 C6080010 */ lwc1 $f8, 0x10($s0) +/* 013568 80012968 46002181 */ sub.s $f6, $f4, $f0 +/* 01356C 8001296C C6040014 */ lwc1 $f4, 0x14($s0) +/* 013570 80012970 E606000C */ swc1 $f6, 0xc($s0) +/* 013574 80012974 46024281 */ sub.s $f10, $f8, $f2 +/* 013578 80012978 460C2181 */ sub.s $f6, $f4, $f12 +/* 01357C 8001297C E60A0010 */ swc1 $f10, 0x10($s0) +/* 013580 80012980 E6060014 */ swc1 $f6, 0x14($s0) +/* 013584 80012984 8FA50078 */ lw $a1, 0x78($sp) +/* 013588 80012988 00000000 */ nop +/* 01358C 8001298C 8FB900AC */ lw $t9, 0xac($sp) +.L80012990: +/* 013590 80012990 254A0001 */ addiu $t2, $t2, 1 +/* 013594 80012994 1559FF3C */ bne $t2, $t9, .L80012688 +/* 013598 80012998 256B0004 */ addiu $t3, $t3, 4 +.L8001299C: +/* 01359C 8001299C 8FA50078 */ lw $a1, 0x78($sp) +.L800129A0: +/* 0135A0 800129A0 12600055 */ beqz $s3, .L80012AF8 +/* 0135A4 800129A4 8FAF009C */ lw $t7, 0x9c($sp) +/* 0135A8 800129A8 8E700144 */ lw $s0, 0x144($s3) +/* 0135AC 800129AC 00000000 */ nop +/* 0135B0 800129B0 12000051 */ beqz $s0, .L80012AF8 +/* 0135B4 800129B4 8FAF009C */ lw $t7, 0x9c($sp) +/* 0135B8 800129B8 8E580040 */ lw $t8, 0x40($s2) +/* 0135BC 800129BC 00000000 */ nop +/* 0135C0 800129C0 83030058 */ lb $v1, 0x58($t8) +/* 0135C4 800129C4 00000000 */ nop +/* 0135C8 800129C8 0460004B */ bltz $v1, .L80012AF8 +/* 0135CC 800129CC 8FAF009C */ lw $t7, 0x9c($sp) +/* 0135D0 800129D0 84AD0018 */ lh $t5, 0x18($a1) +/* 0135D4 800129D4 00000000 */ nop +/* 0135D8 800129D8 006D082A */ slt $at, $v1, $t5 +/* 0135DC 800129DC 10200046 */ beqz $at, .L80012AF8 +/* 0135E0 800129E0 8FAF009C */ lw $t7, 0x9c($sp) +/* 0135E4 800129E4 820E003A */ lb $t6, 0x3a($s0) +/* 0135E8 800129E8 8E0F0068 */ lw $t7, 0x68($s0) +/* 0135EC 800129EC 000EC880 */ sll $t9, $t6, 2 +/* 0135F0 800129F0 8CAD0014 */ lw $t5, 0x14($a1) +/* 0135F4 800129F4 00037040 */ sll $t6, $v1, 1 +/* 0135F8 800129F8 01F9C021 */ addu $t8, $t7, $t9 +/* 0135FC 800129FC 01AE7821 */ addu $t7, $t5, $t6 +/* 013600 80012A00 85F90000 */ lh $t9, ($t7) +/* 013604 80012A04 8F0C0000 */ lw $t4, ($t8) +/* 013608 80012A08 0019C080 */ sll $t8, $t9, 2 +/* 01360C 80012A0C 8E4D0044 */ lw $t5, 0x44($s2) +/* 013610 80012A10 0319C021 */ addu $t8, $t8, $t9 +/* 013614 80012A14 0018C040 */ sll $t8, $t8, 1 +/* 013618 80012A18 01B81021 */ addu $v0, $t5, $t8 +/* 01361C 80012A1C 844E0000 */ lh $t6, ($v0) +/* 013620 80012A20 844F0002 */ lh $t7, 2($v0) +/* 013624 80012A24 448E4000 */ mtc1 $t6, $f8 +/* 013628 80012A28 84590004 */ lh $t9, 4($v0) +/* 01362C 80012A2C 46804020 */ cvt.s.w $f0, $f8 +/* 013630 80012A30 C610000C */ lwc1 $f16, 0xc($s0) +/* 013634 80012A34 448F5000 */ mtc1 $t7, $f10 +/* 013638 80012A38 44992000 */ mtc1 $t9, $f4 +/* 01363C 80012A3C 46100201 */ sub.s $f8, $f0, $f16 +/* 013640 80012A40 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 013644 80012A44 468050A0 */ cvt.s.w $f2, $f10 +/* 013648 80012A48 44817800 */ mtc1 $at, $f15 +/* 01364C 80012A4C 44807000 */ mtc1 $zero, $f14 +/* 013650 80012A50 46802320 */ cvt.s.w $f12, $f4 +/* 013654 80012A54 C6120010 */ lwc1 $f18, 0x10($s0) +/* 013658 80012A58 24010001 */ li $at, 1 +/* 01365C 80012A5C 460042A1 */ cvt.d.s $f10, $f8 +/* 013660 80012A60 462E5102 */ mul.d $f4, $f10, $f14 +/* 013664 80012A64 460081A1 */ cvt.d.s $f6, $f16 +/* 013668 80012A68 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 +/* 01366C 80012A6C 3C068012 */ lui $a2, %hi(D_8011AE94) # $a2, 0x8012 +/* 013670 80012A70 24C6AE94 */ addiu $a2, %lo(D_8011AE94) # addiu $a2, $a2, -0x516c +/* 013674 80012A74 46243200 */ add.d $f8, $f6, $f4 +/* 013678 80012A78 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 +/* 01367C 80012A7C 462042A0 */ cvt.s.d $f10, $f8 +/* 013680 80012A80 240E010A */ li $t6, 266 +/* 013684 80012A84 46121101 */ sub.s $f4, $f2, $f18 +/* 013688 80012A88 E60A000C */ swc1 $f10, 0xc($s0) +/* 01368C 80012A8C 46002221 */ cvt.d.s $f8, $f4 +/* 013690 80012A90 462E4282 */ mul.d $f10, $f8, $f14 +/* 013694 80012A94 460091A1 */ cvt.d.s $f6, $f18 +/* 013698 80012A98 02202025 */ move $a0, $s1 +/* 01369C 80012A9C 02003825 */ move $a3, $s0 +/* 0136A0 80012AA0 462A3100 */ add.d $f4, $f6, $f10 +/* 0136A4 80012AA4 C6060014 */ lwc1 $f6, 0x14($s0) +/* 0136A8 80012AA8 46202220 */ cvt.s.d $f8, $f4 +/* 0136AC 80012AAC E6080010 */ swc1 $f8, 0x10($s0) +/* 0136B0 80012AB0 E7A60038 */ swc1 $f6, 0x38($sp) +/* 0136B4 80012AB4 C7AA0038 */ lwc1 $f10, 0x38($sp) +/* 0136B8 80012AB8 8E0D0040 */ lw $t5, 0x40($s0) +/* 0136BC 80012ABC 460A6201 */ sub.s $f8, $f12, $f10 +/* 0136C0 80012AC0 460041A1 */ cvt.d.s $f6, $f8 +/* 0136C4 80012AC4 46005121 */ cvt.d.s $f4, $f10 +/* 0136C8 80012AC8 462E3282 */ mul.d $f10, $f6, $f14 +/* 0136CC 80012ACC 462A2200 */ add.d $f8, $f4, $f10 +/* 0136D0 80012AD0 462041A0 */ cvt.s.d $f6, $f8 +/* 0136D4 80012AD4 E6060014 */ swc1 $f6, 0x14($s0) +/* 0136D8 80012AD8 81B80053 */ lb $t8, 0x53($t5) +/* 0136DC 80012ADC 00000000 */ nop +/* 0136E0 80012AE0 17010005 */ bne $t8, $at, .L80012AF8 +/* 0136E4 80012AE4 8FAF009C */ lw $t7, 0x9c($sp) +/* 0136E8 80012AE8 AFAC0010 */ sw $t4, 0x10($sp) +/* 0136EC 80012AEC 0C01A145 */ jal func_80068514 +/* 0136F0 80012AF0 AFAE0014 */ sw $t6, 0x14($sp) +/* 0136F4 80012AF4 8FAF009C */ lw $t7, 0x9c($sp) +.L80012AF8: +/* 0136F8 80012AF8 2401FFFF */ li $at, -1 +/* 0136FC 80012AFC 11E1002A */ beq $t7, $at, .L80012BA8 +/* 013700 80012B00 8FAE00A8 */ lw $t6, 0xa8($sp) +/* 013704 80012B04 8E590040 */ lw $t9, 0x40($s2) +/* 013708 80012B08 00000000 */ nop +/* 01370C 80012B0C 932D0071 */ lbu $t5, 0x71($t9) +/* 013710 80012B10 00000000 */ nop +/* 013714 80012B14 11A00015 */ beqz $t5, .L80012B6C +/* 013718 80012B18 8FAD00B0 */ lw $t5, 0xb0($sp) +/* 01371C 80012B1C 8E220000 */ lw $v0, ($s1) +/* 013720 80012B20 3C0EFA00 */ lui $t6, 0xfa00 +/* 013724 80012B24 24580008 */ addiu $t8, $v0, 8 +/* 013728 80012B28 AE380000 */ sw $t8, ($s1) +/* 01372C 80012B2C AC4E0000 */ sw $t6, ($v0) +/* 013730 80012B30 8E430054 */ lw $v1, 0x54($s2) +/* 013734 80012B34 8FB800B4 */ lw $t8, 0xb4($sp) +/* 013738 80012B38 906E0019 */ lbu $t6, 0x19($v1) +/* 01373C 80012B3C 90790018 */ lbu $t9, 0x18($v1) +/* 013740 80012B40 000E7C00 */ sll $t7, $t6, 0x10 +/* 013744 80012B44 906E001A */ lbu $t6, 0x1a($v1) +/* 013748 80012B48 00196E00 */ sll $t5, $t9, 0x18 +/* 01374C 80012B4C 01AFC825 */ or $t9, $t5, $t7 +/* 013750 80012B50 000E6A00 */ sll $t5, $t6, 8 +/* 013754 80012B54 032D7825 */ or $t7, $t9, $t5 +/* 013758 80012B58 330E00FF */ andi $t6, $t8, 0xff +/* 01375C 80012B5C 01EEC825 */ or $t9, $t7, $t6 +/* 013760 80012B60 0C01ED0F */ jal func_8007B43C +/* 013764 80012B64 AC590004 */ sw $t9, 4($v0) +/* 013768 80012B68 8FAD00B0 */ lw $t5, 0xb0($sp) +.L80012B6C: +/* 01376C 80012B6C 8FA40078 */ lw $a0, 0x78($sp) +/* 013770 80012B70 8FA6009C */ lw $a2, 0x9c($sp) +/* 013774 80012B74 02402825 */ move $a1, $s2 +/* 013778 80012B78 24070004 */ li $a3, 4 +/* 01377C 80012B7C 0C0050EA */ jal func_800143A8 +/* 013780 80012B80 AFAD0010 */ sw $t5, 0x10($sp) +/* 013784 80012B84 8E580040 */ lw $t8, 0x40($s2) +/* 013788 80012B88 00000000 */ nop +/* 01378C 80012B8C 930F0071 */ lbu $t7, 0x71($t8) +/* 013790 80012B90 00000000 */ nop +/* 013794 80012B94 11E00004 */ beqz $t7, .L80012BA8 +/* 013798 80012B98 8FAE00A8 */ lw $t6, 0xa8($sp) +/* 01379C 80012B9C 0C01ED15 */ jal func_8007B454 +/* 0137A0 80012BA0 00000000 */ nop +/* 0137A4 80012BA4 8FAE00A8 */ lw $t6, 0xa8($sp) +.L80012BA8: +/* 0137A8 80012BA8 3C0FFA00 */ lui $t7, 0xfa00 +/* 0137AC 80012BAC 15C00007 */ bnez $t6, .L80012BCC +/* 0137B0 80012BB0 00000000 */ nop +/* 0137B4 80012BB4 8E590040 */ lw $t9, 0x40($s2) +/* 0137B8 80012BB8 00000000 */ nop +/* 0137BC 80012BBC 932D0071 */ lbu $t5, 0x71($t9) +/* 0137C0 80012BC0 00000000 */ nop +/* 0137C4 80012BC4 11A00008 */ beqz $t5, .L80012BE8 +/* 0137C8 80012BC8 8FB900A4 */ lw $t9, 0xa4($sp) +.L80012BCC: +/* 0137CC 80012BCC 8E220000 */ lw $v0, ($s1) +/* 0137D0 80012BD0 240EFFFF */ li $t6, -1 +/* 0137D4 80012BD4 24580008 */ addiu $t8, $v0, 8 +/* 0137D8 80012BD8 AE380000 */ sw $t8, ($s1) +/* 0137DC 80012BDC AC4E0004 */ sw $t6, 4($v0) +/* 0137E0 80012BE0 AC4F0000 */ sw $t7, ($v0) +/* 0137E4 80012BE4 8FB900A4 */ lw $t9, 0xa4($sp) +.L80012BE8: +/* 0137E8 80012BE8 3C18FB00 */ lui $t8, 0xfb00 +/* 0137EC 80012BEC 13200007 */ beqz $t9, .L80012C0C +/* 0137F0 80012BF0 00000000 */ nop +/* 0137F4 80012BF4 8E220000 */ lw $v0, ($s1) +/* 0137F8 80012BF8 240FFF00 */ li $t7, -256 +/* 0137FC 80012BFC 244D0008 */ addiu $t5, $v0, 8 +/* 013800 80012C00 AE2D0000 */ sw $t5, ($s1) +/* 013804 80012C04 AC4F0004 */ sw $t7, 4($v0) +/* 013808 80012C08 AC580000 */ sw $t8, ($v0) +.L80012C0C: +/* 01380C 80012C0C 0C01A690 */ jal func_80069A40 +/* 013810 80012C10 02202025 */ move $a0, $s1 +.L80012C14: +/* 013814 80012C14 8FBF002C */ lw $ra, 0x2c($sp) +/* 013818 80012C18 8FB0001C */ lw $s0, 0x1c($sp) +/* 01381C 80012C1C 8FB10020 */ lw $s1, 0x20($sp) +/* 013820 80012C20 8FB20024 */ lw $s2, 0x24($sp) +/* 013824 80012C24 8FB30028 */ lw $s3, 0x28($sp) +/* 013828 80012C28 03E00008 */ jr $ra +/* 01382C 80012C2C 27BD00C0 */ addiu $sp, $sp, 0xc0 + diff --git a/asm/non_matchings/unknown_005740/func_80012C30.s b/asm/non_matchings/unknown_005740/func_80012C30.s new file mode 100644 index 00000000..7eb1818c --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80012C30.s @@ -0,0 +1,5 @@ +glabel func_80012C30 +/* 013830 80012C30 3C018012 */ lui $at, 0x8012 +/* 013834 80012C34 03E00008 */ jr $ra +/* 013838 80012C38 A420ADA4 */ sh $zero, -0x525c($at) + diff --git a/asm/non_matchings/unknown_005740/func_80012C3C.s b/asm/non_matchings/unknown_005740/func_80012C3C.s new file mode 100644 index 00000000..e5928493 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80012C3C.s @@ -0,0 +1,27 @@ +glabel func_80012C3C +/* 01383C 80012C3C 3C078012 */ lui $a3, %hi(D_8011ADA4) # $a3, 0x8012 +/* 013840 80012C40 24E7ADA4 */ addiu $a3, %lo(D_8011ADA4) # addiu $a3, $a3, -0x525c +/* 013844 80012C44 84EE0000 */ lh $t6, ($a3) +/* 013848 80012C48 00001025 */ move $v0, $zero +/* 01384C 80012C4C 19C00010 */ blez $t6, .L80012C90 +/* 013850 80012C50 3C068012 */ lui $a2, %hi(D_8011AD78) # $a2, 0x8012 +/* 013854 80012C54 24C6AD78 */ addiu $a2, %lo(D_8011AD78) # addiu $a2, $a2, -0x5288 +/* 013858 80012C58 3C080600 */ lui $t0, 0x600 +.L80012C5C: +/* 01385C 80012C5C 8C850000 */ lw $a1, ($a0) +/* 013860 80012C60 24420001 */ addiu $v0, $v0, 1 +/* 013864 80012C64 24AF0008 */ addiu $t7, $a1, 8 +/* 013868 80012C68 AC8F0000 */ sw $t7, ($a0) +/* 01386C 80012C6C ACA80000 */ sw $t0, ($a1) +/* 013870 80012C70 8CD80000 */ lw $t8, ($a2) +/* 013874 80012C74 24C60004 */ addiu $a2, $a2, 4 +/* 013878 80012C78 ACB80004 */ sw $t8, 4($a1) +/* 01387C 80012C7C 84F90000 */ lh $t9, ($a3) +/* 013880 80012C80 00000000 */ nop +/* 013884 80012C84 0059082A */ slt $at, $v0, $t9 +/* 013888 80012C88 1420FFF4 */ bnez $at, .L80012C5C +/* 01388C 80012C8C 00000000 */ nop +.L80012C90: +/* 013890 80012C90 03E00008 */ jr $ra +/* 013894 80012C94 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80012C98.s b/asm/non_matchings/unknown_005740/func_80012C98.s new file mode 100644 index 00000000..a6ea3c32 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80012C98.s @@ -0,0 +1,23 @@ +glabel func_80012C98 +/* 013898 80012C98 3C058012 */ lui $a1, %hi(D_8011ADA4) # $a1, 0x8012 +/* 01389C 80012C9C 24A5ADA4 */ addiu $a1, %lo(D_8011ADA4) # addiu $a1, $a1, -0x525c +/* 0138A0 80012CA0 84AE0000 */ lh $t6, ($a1) +/* 0138A4 80012CA4 00000000 */ nop +/* 0138A8 80012CA8 29C10009 */ slti $at, $t6, 9 +/* 0138AC 80012CAC 1020000C */ beqz $at, .L80012CE0 +/* 0138B0 80012CB0 00000000 */ nop +/* 0138B4 80012CB4 8C830000 */ lw $v1, ($a0) +/* 0138B8 80012CB8 3C018012 */ lui $at, 0x8012 +/* 0138BC 80012CBC 246F0008 */ addiu $t7, $v1, 8 +/* 0138C0 80012CC0 AC8F0000 */ sw $t7, ($a0) +/* 0138C4 80012CC4 AC600004 */ sw $zero, 4($v1) +/* 0138C8 80012CC8 AC600000 */ sw $zero, ($v1) +/* 0138CC 80012CCC 84B90000 */ lh $t9, ($a1) +/* 0138D0 80012CD0 8C980000 */ lw $t8, ($a0) +/* 0138D4 80012CD4 00194080 */ sll $t0, $t9, 2 +/* 0138D8 80012CD8 00280821 */ addu $at, $at, $t0 +/* 0138DC 80012CDC AC38AD78 */ sw $t8, -0x5288($at) +.L80012CE0: +/* 0138E0 80012CE0 03E00008 */ jr $ra +/* 0138E4 80012CE4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80012CE8.s b/asm/non_matchings/unknown_005740/func_80012CE8.s new file mode 100644 index 00000000..2f97b066 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80012CE8.s @@ -0,0 +1,32 @@ +glabel func_80012CE8 +/* 0138E8 80012CE8 3C068012 */ lui $a2, %hi(D_8011ADA4) # $a2, 0x8012 +/* 0138EC 80012CEC 24C6ADA4 */ addiu $a2, %lo(D_8011ADA4) # addiu $a2, $a2, -0x525c +/* 0138F0 80012CF0 84CE0000 */ lh $t6, ($a2) +/* 0138F4 80012CF4 00000000 */ nop +/* 0138F8 80012CF8 29C10009 */ slti $at, $t6, 9 +/* 0138FC 80012CFC 10200015 */ beqz $at, .L80012D54 +/* 013900 80012D00 00000000 */ nop +/* 013904 80012D04 8C830000 */ lw $v1, ($a0) +/* 013908 80012D08 3C18B800 */ lui $t8, 0xb800 +/* 01390C 80012D0C 246F0008 */ addiu $t7, $v1, 8 +/* 013910 80012D10 AC8F0000 */ sw $t7, ($a0) +/* 013914 80012D14 AC600004 */ sw $zero, 4($v1) +/* 013918 80012D18 AC780000 */ sw $t8, ($v1) +/* 01391C 80012D1C 84D90000 */ lh $t9, ($a2) +/* 013920 80012D20 3C058012 */ lui $a1, 0x8012 +/* 013924 80012D24 00194080 */ sll $t0, $t9, 2 +/* 013928 80012D28 00A82821 */ addu $a1, $a1, $t0 +/* 01392C 80012D2C 8CA5AD78 */ lw $a1, -0x5288($a1) +/* 013930 80012D30 3C090601 */ lui $t1, 0x601 +/* 013934 80012D34 ACA9FFF8 */ sw $t1, -8($a1) +/* 013938 80012D38 8C8A0000 */ lw $t2, ($a0) +/* 01393C 80012D3C 24A5FFF8 */ addiu $a1, $a1, -8 +/* 013940 80012D40 ACAA0004 */ sw $t2, 4($a1) +/* 013944 80012D44 84CB0000 */ lh $t3, ($a2) +/* 013948 80012D48 00000000 */ nop +/* 01394C 80012D4C 256C0001 */ addiu $t4, $t3, 1 +/* 013950 80012D50 A4CC0000 */ sh $t4, ($a2) +.L80012D54: +/* 013954 80012D54 03E00008 */ jr $ra +/* 013958 80012D58 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80012D5C.s b/asm/non_matchings/unknown_005740/func_80012D5C.s new file mode 100644 index 00000000..01885630 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80012D5C.s @@ -0,0 +1,54 @@ +glabel func_80012D5C +/* 01395C 80012D5C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 013960 80012D60 AFBF0014 */ sw $ra, 0x14($sp) +/* 013964 80012D64 AFA40020 */ sw $a0, 0x20($sp) +/* 013968 80012D68 AFA50024 */ sw $a1, 0x24($sp) +/* 01396C 80012D6C AFA60028 */ sw $a2, 0x28($sp) +/* 013970 80012D70 84EE0006 */ lh $t6, 6($a3) +/* 013974 80012D74 24040002 */ li $a0, 2 +/* 013978 80012D78 31CF5000 */ andi $t7, $t6, 0x5000 +/* 01397C 80012D7C 15E00027 */ bnez $t7, .L80012E1C +/* 013980 80012D80 8FBF0014 */ lw $ra, 0x14($sp) +/* 013984 80012D84 84E5004A */ lh $a1, 0x4a($a3) +/* 013988 80012D88 0C02DDAE */ jal func_800B76B8 +/* 01398C 80012D8C AFA7002C */ sw $a3, 0x2c($sp) +/* 013990 80012D90 8FB80020 */ lw $t8, 0x20($sp) +/* 013994 80012D94 8FA80024 */ lw $t0, 0x24($sp) +/* 013998 80012D98 8F190000 */ lw $t9, ($t8) +/* 01399C 80012D9C 3C018012 */ lui $at, %hi(D_8011AE8C) # $at, 0x8012 +/* 0139A0 80012DA0 AC39AE8C */ sw $t9, %lo(D_8011AE8C)($at) +/* 0139A4 80012DA4 8D090000 */ lw $t1, ($t0) +/* 0139A8 80012DA8 8FAA0028 */ lw $t2, 0x28($sp) +/* 0139AC 80012DAC 3C018012 */ lui $at, %hi(D_8011AE90) # $at, 0x8012 +/* 0139B0 80012DB0 AC29AE90 */ sw $t1, %lo(D_8011AE90)($at) +/* 0139B4 80012DB4 8D4B0000 */ lw $t3, ($t2) +/* 0139B8 80012DB8 8FA4002C */ lw $a0, 0x2c($sp) +/* 0139BC 80012DBC 3C018012 */ lui $at, %hi(D_8011AE94) # $at, 0x8012 +/* 0139C0 80012DC0 AC2BAE94 */ sw $t3, %lo(D_8011AE94)($at) +/* 0139C4 80012DC4 C4840008 */ lwc1 $f4, 8($a0) +/* 0139C8 80012DC8 0C004D23 */ jal func_8001348C +/* 0139CC 80012DCC E7A4001C */ swc1 $f4, 0x1c($sp) +/* 0139D0 80012DD0 8FA7002C */ lw $a3, 0x2c($sp) +/* 0139D4 80012DD4 C7A6001C */ lwc1 $f6, 0x1c($sp) +/* 0139D8 80012DD8 3C0C8012 */ lui $t4, %hi(D_8011AE8C) # $t4, 0x8012 +/* 0139DC 80012DDC E4E60008 */ swc1 $f6, 8($a3) +/* 0139E0 80012DE0 8FAD0020 */ lw $t5, 0x20($sp) +/* 0139E4 80012DE4 8D8CAE8C */ lw $t4, %lo(D_8011AE8C)($t4) +/* 0139E8 80012DE8 3C0E8012 */ lui $t6, %hi(D_8011AE90) # $t6, 0x8012 +/* 0139EC 80012DEC ADAC0000 */ sw $t4, ($t5) +/* 0139F0 80012DF0 8FAF0024 */ lw $t7, 0x24($sp) +/* 0139F4 80012DF4 8DCEAE90 */ lw $t6, %lo(D_8011AE90)($t6) +/* 0139F8 80012DF8 3C188012 */ lui $t8, %hi(D_8011AE94) # $t8, 0x8012 +/* 0139FC 80012DFC ADEE0000 */ sw $t6, ($t7) +/* 013A00 80012E00 8FB90028 */ lw $t9, 0x28($sp) +/* 013A04 80012E04 8F18AE94 */ lw $t8, %lo(D_8011AE94)($t8) +/* 013A08 80012E08 24040002 */ li $a0, 2 +/* 013A0C 80012E0C 2405FFFF */ li $a1, -1 +/* 013A10 80012E10 0C02DDAE */ jal func_800B76B8 +/* 013A14 80012E14 AF380000 */ sw $t8, ($t9) +/* 013A18 80012E18 8FBF0014 */ lw $ra, 0x14($sp) +.L80012E1C: +/* 013A1C 80012E1C 27BD0020 */ addiu $sp, $sp, 0x20 +/* 013A20 80012E20 03E00008 */ jr $ra +/* 013A24 80012E24 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80012E28.s b/asm/non_matchings/unknown_005740/func_80012E28.s new file mode 100644 index 00000000..36381d67 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80012E28.s @@ -0,0 +1,72 @@ +glabel func_80012E28 +/* 013A28 80012E28 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 013A2C 80012E2C AFBF0014 */ sw $ra, 0x14($sp) +/* 013A30 80012E30 848E0048 */ lh $t6, 0x48($a0) +/* 013A34 80012E34 24010001 */ li $at, 1 +/* 013A38 80012E38 15C10039 */ bne $t6, $at, .L80012F20 +/* 013A3C 80012E3C 00802825 */ move $a1, $a0 +/* 013A40 80012E40 8C820064 */ lw $v0, 0x64($a0) +/* 013A44 80012E44 848F0000 */ lh $t7, ($a0) +/* 013A48 80012E48 84580160 */ lh $t8, 0x160($v0) +/* 013A4C 80012E4C 84880002 */ lh $t0, 2($a0) +/* 013A50 80012E50 01F8C821 */ addu $t9, $t7, $t8 +/* 013A54 80012E54 A4990000 */ sh $t9, ($a0) +/* 013A58 80012E58 84490162 */ lh $t1, 0x162($v0) +/* 013A5C 80012E5C 848B0004 */ lh $t3, 4($a0) +/* 013A60 80012E60 01095021 */ addu $t2, $t0, $t1 +/* 013A64 80012E64 A48A0002 */ sh $t2, 2($a0) +/* 013A68 80012E68 844C0164 */ lh $t4, 0x164($v0) +/* 013A6C 80012E6C 44800000 */ mtc1 $zero, $f0 +/* 013A70 80012E70 016C6821 */ addu $t5, $t3, $t4 +/* 013A74 80012E74 A48D0004 */ sh $t5, 4($a0) +/* 013A78 80012E78 804E01D7 */ lb $t6, 0x1d7($v0) +/* 013A7C 80012E7C 00000000 */ nop +/* 013A80 80012E80 29C10005 */ slti $at, $t6, 5 +/* 013A84 80012E84 10200021 */ beqz $at, .L80012F0C +/* 013A88 80012E88 00000000 */ nop +/* 013A8C 80012E8C 84440164 */ lh $a0, 0x164($v0) +/* 013A90 80012E90 AFA50028 */ sw $a1, 0x28($sp) +/* 013A94 80012E94 0C01C1FE */ jal func_800707F8 +/* 013A98 80012E98 AFA20020 */ sw $v0, 0x20($sp) +/* 013A9C 80012E9C 8FA20020 */ lw $v0, 0x20($sp) +/* 013AA0 80012EA0 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 013AA4 80012EA4 84580166 */ lh $t8, 0x166($v0) +/* 013AA8 80012EA8 844F0162 */ lh $t7, 0x162($v0) +/* 013AAC 80012EAC 00000000 */ nop +/* 013AB0 80012EB0 01F82023 */ subu $a0, $t7, $t8 +/* 013AB4 80012EB4 0004CC00 */ sll $t9, $a0, 0x10 +/* 013AB8 80012EB8 0C01C1FE */ jal func_800707F8 +/* 013ABC 80012EBC 00192403 */ sra $a0, $t9, 0x10 +/* 013AC0 80012EC0 C7A4001C */ lwc1 $f4, 0x1c($sp) +/* 013AC4 80012EC4 44806000 */ mtc1 $zero, $f12 +/* 013AC8 80012EC8 46040082 */ mul.s $f2, $f0, $f4 +/* 013ACC 80012ECC 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 013AD0 80012ED0 8FA20020 */ lw $v0, 0x20($sp) +/* 013AD4 80012ED4 8FA50028 */ lw $a1, 0x28($sp) +/* 013AD8 80012ED8 460C103C */ c.lt.s $f2, $f12 +/* 013ADC 80012EDC 44813000 */ mtc1 $at, $f6 +/* 013AE0 80012EE0 45000003 */ bc1f .L80012EF0 +/* 013AE4 80012EE4 3C0141C0 */ li $at, 0x41C00000 # 24.000000 +/* 013AE8 80012EE8 10000003 */ b .L80012EF8 +/* 013AEC 80012EEC 46006006 */ mov.s $f0, $f12 +.L80012EF0: +/* 013AF0 80012EF0 46021002 */ mul.s $f0, $f2, $f2 +/* 013AF4 80012EF4 00000000 */ nop +.L80012EF8: +/* 013AF8 80012EF8 46003201 */ sub.s $f8, $f6, $f0 +/* 013AFC 80012EFC 44815000 */ mtc1 $at, $f10 +/* 013B00 80012F00 C45200D0 */ lwc1 $f18, 0xd0($v0) +/* 013B04 80012F04 460A4402 */ mul.s $f16, $f8, $f10 +/* 013B08 80012F08 46128000 */ add.s $f0, $f16, $f18 +.L80012F0C: +/* 013B0C 80012F0C C4A40010 */ lwc1 $f4, 0x10($a1) +/* 013B10 80012F10 3C018012 */ lui $at, %hi(D_8011ADD0) # $at, 0x8012 +/* 013B14 80012F14 46002180 */ add.s $f6, $f4, $f0 +/* 013B18 80012F18 E4A60010 */ swc1 $f6, 0x10($a1) +/* 013B1C 80012F1C E420ADD0 */ swc1 $f0, %lo(D_8011ADD0)($at) +.L80012F20: +/* 013B20 80012F20 8FBF0014 */ lw $ra, 0x14($sp) +/* 013B24 80012F24 27BD0028 */ addiu $sp, $sp, 0x28 +/* 013B28 80012F28 03E00008 */ jr $ra +/* 013B2C 80012F2C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80012F30.s b/asm/non_matchings/unknown_005740/func_80012F30.s new file mode 100644 index 00000000..e4a8e58d --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80012F30.s @@ -0,0 +1,28 @@ +glabel func_80012F30 +/* 013B30 80012F30 848E0048 */ lh $t6, 0x48($a0) +/* 013B34 80012F34 24010001 */ li $at, 1 +/* 013B38 80012F38 15C10014 */ bne $t6, $at, .L80012F8C +/* 013B3C 80012F3C 00000000 */ nop +/* 013B40 80012F40 8C820064 */ lw $v0, 0x64($a0) +/* 013B44 80012F44 848F0000 */ lh $t7, ($a0) +/* 013B48 80012F48 84580160 */ lh $t8, 0x160($v0) +/* 013B4C 80012F4C 84880002 */ lh $t0, 2($a0) +/* 013B50 80012F50 01F8C823 */ subu $t9, $t7, $t8 +/* 013B54 80012F54 A4990000 */ sh $t9, ($a0) +/* 013B58 80012F58 84490162 */ lh $t1, 0x162($v0) +/* 013B5C 80012F5C 848B0004 */ lh $t3, 4($a0) +/* 013B60 80012F60 01095023 */ subu $t2, $t0, $t1 +/* 013B64 80012F64 A48A0002 */ sh $t2, 2($a0) +/* 013B68 80012F68 844C0164 */ lh $t4, 0x164($v0) +/* 013B6C 80012F6C 3C018012 */ lui $at, %hi(D_8011ADD0) # $at, 0x8012 +/* 013B70 80012F70 016C6823 */ subu $t5, $t3, $t4 +/* 013B74 80012F74 A48D0004 */ sh $t5, 4($a0) +/* 013B78 80012F78 C426ADD0 */ lwc1 $f6, %lo(D_8011ADD0)($at) +/* 013B7C 80012F7C C4840010 */ lwc1 $f4, 0x10($a0) +/* 013B80 80012F80 00000000 */ nop +/* 013B84 80012F84 46062201 */ sub.s $f8, $f4, $f6 +/* 013B88 80012F88 E4880010 */ swc1 $f8, 0x10($a0) +.L80012F8C: +/* 013B8C 80012F8C 03E00008 */ jr $ra +/* 013B90 80012F90 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80012F94.s b/asm/non_matchings/unknown_005740/func_80012F94.s new file mode 100644 index 00000000..b1a64273 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80012F94.s @@ -0,0 +1,351 @@ +glabel func_80012F94 +/* 013B94 80012F94 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 013B98 80012F98 AFBF001C */ sw $ra, 0x1c($sp) +/* 013B9C 80012F9C AFB00018 */ sw $s0, 0x18($sp) +/* 013BA0 80012FA0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 013BA4 80012FA4 44811000 */ mtc1 $at, $f2 +/* 013BA8 80012FA8 848E0006 */ lh $t6, 6($a0) +/* 013BAC 80012FAC 00808025 */ move $s0, $a0 +/* 013BB0 80012FB0 31CF8000 */ andi $t7, $t6, 0x8000 +/* 013BB4 80012FB4 46001006 */ mov.s $f0, $f2 +/* 013BB8 80012FB8 15E0012C */ bnez $t7, .L8001346C +/* 013BBC 80012FBC 46001386 */ mov.s $f14, $f2 +/* 013BC0 80012FC0 8C980040 */ lw $t8, 0x40($a0) +/* 013BC4 80012FC4 24010001 */ li $at, 1 +/* 013BC8 80012FC8 83190054 */ lb $t9, 0x54($t8) +/* 013BCC 80012FCC 00000000 */ nop +/* 013BD0 80012FD0 1721011E */ bne $t9, $at, .L8001344C +/* 013BD4 80012FD4 00000000 */ nop +/* 013BD8 80012FD8 8C8A0064 */ lw $t2, 0x64($a0) +/* 013BDC 80012FDC 240B001E */ li $t3, 30 +/* 013BE0 80012FE0 85420206 */ lh $v0, 0x206($t2) +/* 013BE4 80012FE4 3C01800E */ lui $at, %hi(D_800E5554) # $at, 0x800e +/* 013BE8 80012FE8 1840000E */ blez $v0, .L80013024 +/* 013BEC 80012FEC A14B0201 */ sb $t3, 0x201($t2) +/* 013BF0 80012FF0 44822000 */ mtc1 $v0, $f4 +/* 013BF4 80012FF4 C4205554 */ lwc1 $f0, %lo(D_800E5554)($at) +/* 013BF8 80012FF8 468021A0 */ cvt.s.w $f6, $f4 +/* 013BFC 80012FFC 3C01800E */ lui $at, %hi(D_800E5558) # $at, 0x800e +/* 013C00 80013000 C4285558 */ lwc1 $f8, %lo(D_800E5558)($at) +/* 013C04 80013004 00000000 */ nop +/* 013C08 80013008 46083282 */ mul.s $f10, $f6, $f8 +/* 013C0C 8001300C 460A1381 */ sub.s $f14, $f2, $f10 +/* 013C10 80013010 4600703C */ c.lt.s $f14, $f0 +/* 013C14 80013014 00000000 */ nop +/* 013C18 80013018 45000002 */ bc1f .L80013024 +/* 013C1C 8001301C 00000000 */ nop +/* 013C20 80013020 46000386 */ mov.s $f14, $f0 +.L80013024: +/* 013C24 80013024 854C0000 */ lh $t4, ($t2) +/* 013C28 80013028 2401FFFF */ li $at, -1 +/* 013C2C 8001302C 11810007 */ beq $t4, $at, .L8001304C +/* 013C30 80013030 00000000 */ nop +/* 013C34 80013034 814D01D8 */ lb $t5, 0x1d8($t2) +/* 013C38 80013038 00004025 */ move $t0, $zero +/* 013C3C 8001303C 11A00003 */ beqz $t5, .L8001304C +/* 013C40 80013040 00000000 */ nop +/* 013C44 80013044 1000008B */ b .L80013274 +/* 013C48 80013048 00004825 */ move $t1, $zero +.L8001304C: +/* 013C4C 8001304C 860E0048 */ lh $t6, 0x48($s0) +/* 013C50 80013050 2401003A */ li $at, 58 +/* 013C54 80013054 15C10003 */ bne $t6, $at, .L80013064 +/* 013C58 80013058 24080001 */ li $t0, 1 +/* 013C5C 8001305C 10000085 */ b .L80013274 +/* 013C60 80013060 00004825 */ move $t1, $zero +.L80013064: +/* 013C64 80013064 814901D6 */ lb $t1, 0x1d6($t2) +/* 013C68 80013068 00000000 */ nop +/* 013C6C 8001306C 29210003 */ slti $at, $t1, 3 +/* 013C70 80013070 14200003 */ bnez $at, .L80013080 +/* 013C74 80013074 25240005 */ addiu $a0, $t1, 5 +/* 013C78 80013078 00004825 */ move $t1, $zero +/* 013C7C 8001307C 25240005 */ addiu $a0, $t1, 5 +.L80013080: +/* 013C80 80013080 00004825 */ move $t1, $zero +/* 013C84 80013084 AFA0004C */ sw $zero, 0x4c($sp) +/* 013C88 80013088 AFAA0024 */ sw $t2, 0x24($sp) +/* 013C8C 8001308C 0C0078A7 */ jal func_8001E29C +/* 013C90 80013090 E7AE002C */ swc1 $f14, 0x2c($sp) +/* 013C94 80013094 0C019884 */ jal func_80066210 +/* 013C98 80013098 AFA20038 */ sw $v0, 0x38($sp) +/* 013C9C 8001309C 00027880 */ sll $t7, $v0, 2 +/* 013CA0 800130A0 8FA50038 */ lw $a1, 0x38($sp) +/* 013CA4 800130A4 01E27821 */ addu $t7, $t7, $v0 +/* 013CA8 800130A8 000F7840 */ sll $t7, $t7, 1 +/* 013CAC 800130AC 00AF2821 */ addu $a1, $a1, $t7 +/* 013CB0 800130B0 0C019888 */ jal func_80066220 +/* 013CB4 800130B4 AFA50038 */ sw $a1, 0x38($sp) +/* 013CB8 800130B8 8FAA0024 */ lw $t2, 0x24($sp) +/* 013CBC 800130BC 8FA50038 */ lw $a1, 0x38($sp) +/* 013CC0 800130C0 85580000 */ lh $t8, ($t2) +/* 013CC4 800130C4 8FA9004C */ lw $t1, 0x4c($sp) +/* 013CC8 800130C8 C7AE002C */ lwc1 $f14, 0x2c($sp) +/* 013CCC 800130CC 10580002 */ beq $v0, $t8, .L800130D8 +/* 013CD0 800130D0 00000000 */ nop +/* 013CD4 800130D4 24A50005 */ addiu $a1, $a1, 5 +.L800130D8: +/* 013CD8 800130D8 4459F800 */ cfc1 $t9, $31 +/* 013CDC 800130DC C6000030 */ lwc1 $f0, 0x30($s0) +/* 013CE0 800130E0 37210003 */ ori $at, $t9, 3 +/* 013CE4 800130E4 38210002 */ xori $at, $at, 2 +/* 013CE8 800130E8 44C1F800 */ ctc1 $at, $31 +/* 013CEC 800130EC 44806000 */ mtc1 $zero, $f12 +/* 013CF0 800130F0 46000424 */ cvt.w.s $f16, $f0 +/* 013CF4 800130F4 3C01800E */ lui $at, %hi(D_800E555C) # $at, 0x800e +/* 013CF8 800130F8 44D9F800 */ ctc1 $t9, $31 +/* 013CFC 800130FC 44038000 */ mfc1 $v1, $f16 +/* 013D00 80013100 460C003C */ c.lt.s $f0, $f12 +/* 013D04 80013104 000358C3 */ sra $t3, $v1, 3 +/* 013D08 80013108 45000003 */ bc1f .L80013118 +/* 013D0C 8001310C 01601825 */ move $v1, $t3 +/* 013D10 80013110 10000008 */ b .L80013134 +/* 013D14 80013114 46006006 */ mov.s $f0, $f12 +.L80013118: +/* 013D18 80013118 C422555C */ lwc1 $f2, %lo(D_800E555C)($at) +/* 013D1C 8001311C 00000000 */ nop +/* 013D20 80013120 4600103C */ c.lt.s $f2, $f0 +/* 013D24 80013124 00000000 */ nop +/* 013D28 80013128 45000002 */ bc1f .L80013134 +/* 013D2C 8001312C 00000000 */ nop +/* 013D30 80013130 46001006 */ mov.s $f0, $f2 +.L80013134: +/* 013D34 80013134 3C01800E */ lui $at, %hi(D_800E5560) # $at, 0x800e +/* 013D38 80013138 C4325560 */ lwc1 $f18, %lo(D_800E5560)($at) +/* 013D3C 8001313C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 013D40 80013140 46120003 */ div.s $f0, $f0, $f18 +/* 013D44 80013144 44812000 */ mtc1 $at, $f4 +/* 013D48 80013148 C6060008 */ lwc1 $f6, 8($s0) +/* 013D4C 8001314C 24040004 */ li $a0, 4 +/* 013D50 80013150 46040000 */ add.s $f0, $f0, $f4 +/* 013D54 80013154 46003202 */ mul.s $f8, $f6, $f0 +/* 013D58 80013158 E6080008 */ swc1 $f8, 8($s0) +/* 013D5C 8001315C E7AE002C */ swc1 $f14, 0x2c($sp) +/* 013D60 80013160 AFAA0024 */ sw $t2, 0x24($sp) +/* 013D64 80013164 AFA9004C */ sw $t1, 0x4c($sp) +/* 013D68 80013168 AFA50038 */ sw $a1, 0x38($sp) +/* 013D6C 8001316C 0C0078A7 */ jal func_8001E29C +/* 013D70 80013170 AFA30044 */ sw $v1, 0x44($sp) +/* 013D74 80013174 8FAA0024 */ lw $t2, 0x24($sp) +/* 013D78 80013178 8FA30044 */ lw $v1, 0x44($sp) +/* 013D7C 8001317C 814C0003 */ lb $t4, 3($t2) +/* 013D80 80013180 44835000 */ mtc1 $v1, $f10 +/* 013D84 80013184 000C6880 */ sll $t5, $t4, 2 +/* 013D88 80013188 46805420 */ cvt.s.w $f16, $f10 +/* 013D8C 8001318C 004D7021 */ addu $t6, $v0, $t5 +/* 013D90 80013190 C5D20000 */ lwc1 $f18, ($t6) +/* 013D94 80013194 8FA50038 */ lw $a1, 0x38($sp) +/* 013D98 80013198 46128102 */ mul.s $f4, $f16, $f18 +/* 013D9C 8001319C 8FA9004C */ lw $t1, 0x4c($sp) +/* 013DA0 800131A0 C7AE002C */ lwc1 $f14, 0x2c($sp) +/* 013DA4 800131A4 444FF800 */ cfc1 $t7, $31 +/* 013DA8 800131A8 00000000 */ nop +/* 013DAC 800131AC 35E10003 */ ori $at, $t7, 3 +/* 013DB0 800131B0 38210002 */ xori $at, $at, 2 +/* 013DB4 800131B4 44C1F800 */ ctc1 $at, $31 +/* 013DB8 800131B8 00000000 */ nop +/* 013DBC 800131BC 460021A4 */ cvt.w.s $f6, $f4 +/* 013DC0 800131C0 44033000 */ mfc1 $v1, $f6 +/* 013DC4 800131C4 44CFF800 */ ctc1 $t7, $31 +/* 013DC8 800131C8 2861FFCE */ slti $at, $v1, -0x32 +/* 013DCC 800131CC 10200003 */ beqz $at, .L800131DC +/* 013DD0 800131D0 0003C043 */ sra $t8, $v1, 1 +/* 013DD4 800131D4 10000027 */ b .L80013274 +/* 013DD8 800131D8 24080005 */ li $t0, 5 +.L800131DC: +/* 013DDC 800131DC 07010002 */ bgez $t8, .L800131E8 +/* 013DE0 800131E0 03001825 */ move $v1, $t8 +/* 013DE4 800131E4 00001825 */ move $v1, $zero +.L800131E8: +/* 013DE8 800131E8 90B90000 */ lbu $t9, ($a1) +/* 013DEC 800131EC 00000000 */ nop +/* 013DF0 800131F0 0079082A */ slt $at, $v1, $t9 +/* 013DF4 800131F4 10200003 */ beqz $at, .L80013204 +/* 013DF8 800131F8 00000000 */ nop +/* 013DFC 800131FC 1000001D */ b .L80013274 +/* 013E00 80013200 00004025 */ move $t0, $zero +.L80013204: +/* 013E04 80013204 90AB0001 */ lbu $t3, 1($a1) +/* 013E08 80013208 00000000 */ nop +/* 013E0C 8001320C 006B082A */ slt $at, $v1, $t3 +/* 013E10 80013210 10200003 */ beqz $at, .L80013220 +/* 013E14 80013214 00000000 */ nop +/* 013E18 80013218 10000016 */ b .L80013274 +/* 013E1C 8001321C 24080001 */ li $t0, 1 +.L80013220: +/* 013E20 80013220 90AC0002 */ lbu $t4, 2($a1) +/* 013E24 80013224 00000000 */ nop +/* 013E28 80013228 006C082A */ slt $at, $v1, $t4 +/* 013E2C 8001322C 10200003 */ beqz $at, .L8001323C +/* 013E30 80013230 00000000 */ nop +/* 013E34 80013234 1000000F */ b .L80013274 +/* 013E38 80013238 24080002 */ li $t0, 2 +.L8001323C: +/* 013E3C 8001323C 90AD0003 */ lbu $t5, 3($a1) +/* 013E40 80013240 00000000 */ nop +/* 013E44 80013244 006D082A */ slt $at, $v1, $t5 +/* 013E48 80013248 10200003 */ beqz $at, .L80013258 +/* 013E4C 8001324C 00000000 */ nop +/* 013E50 80013250 10000008 */ b .L80013274 +/* 013E54 80013254 24080003 */ li $t0, 3 +.L80013258: +/* 013E58 80013258 90AE0004 */ lbu $t6, 4($a1) +/* 013E5C 8001325C 24080005 */ li $t0, 5 +/* 013E60 80013260 006E082A */ slt $at, $v1, $t6 +/* 013E64 80013264 10200003 */ beqz $at, .L80013274 +/* 013E68 80013268 00000000 */ nop +/* 013E6C 8001326C 10000001 */ b .L80013274 +/* 013E70 80013270 24080004 */ li $t0, 4 +.L80013274: +/* 013E74 80013274 8E050068 */ lw $a1, 0x68($s0) +/* 013E78 80013278 00002025 */ move $a0, $zero +/* 013E7C 8001327C 8CAF0000 */ lw $t7, ($a1) +/* 013E80 80013280 00A01025 */ move $v0, $a1 +/* 013E84 80013284 15E00005 */ bnez $t7, .L8001329C +/* 013E88 80013288 00000000 */ nop +.L8001328C: +/* 013E8C 8001328C 8C580004 */ lw $t8, 4($v0) +/* 013E90 80013290 24840001 */ addiu $a0, $a0, 1 +/* 013E94 80013294 1300FFFD */ beqz $t8, .L8001328C +/* 013E98 80013298 24420004 */ addiu $v0, $v0, 4 +.L8001329C: +/* 013E9C 8001329C 8E190040 */ lw $t9, 0x40($s0) +/* 013EA0 800132A0 0104082A */ slt $at, $t0, $a0 +/* 013EA4 800132A4 83230055 */ lb $v1, 0x55($t9) +/* 013EA8 800132A8 00000000 */ nop +/* 013EAC 800132AC 2463FFFF */ addiu $v1, $v1, -1 +/* 013EB0 800132B0 00035880 */ sll $t3, $v1, 2 +/* 013EB4 800132B4 00AB1021 */ addu $v0, $a1, $t3 +/* 013EB8 800132B8 8C4C0000 */ lw $t4, ($v0) +/* 013EBC 800132BC 00000000 */ nop +/* 013EC0 800132C0 15800005 */ bnez $t4, .L800132D8 +/* 013EC4 800132C4 00000000 */ nop +.L800132C8: +/* 013EC8 800132C8 8C4DFFFC */ lw $t5, -4($v0) +/* 013ECC 800132CC 2463FFFF */ addiu $v1, $v1, -1 +/* 013ED0 800132D0 11A0FFFD */ beqz $t5, .L800132C8 +/* 013ED4 800132D4 2442FFFC */ addiu $v0, $v0, -4 +.L800132D8: +/* 013ED8 800132D8 10200002 */ beqz $at, .L800132E4 +/* 013EDC 800132DC 3C070081 */ lui $a3, 0x81 +/* 013EE0 800132E0 00804025 */ move $t0, $a0 +.L800132E4: +/* 013EE4 800132E4 0068082A */ slt $at, $v1, $t0 +/* 013EE8 800132E8 10200002 */ beqz $at, .L800132F4 +/* 013EEC 800132EC 3C060001 */ lui $a2, 1 +/* 013EF0 800132F0 00604025 */ move $t0, $v1 +.L800132F4: +/* 013EF4 800132F4 8E020054 */ lw $v0, 0x54($s0) +/* 013EF8 800132F8 A208003A */ sb $t0, 0x3a($s0) +/* 013EFC 800132FC 1040000D */ beqz $v0, .L80013334 +/* 013F00 80013300 3C01800E */ lui $at, %hi(D_800E5564) # $at, 0x800e +/* 013F04 80013304 C4480000 */ lwc1 $f8, ($v0) +/* 013F08 80013308 C42A5564 */ lwc1 $f10, %lo(D_800E5564)($at) +/* 013F0C 8001330C 00000000 */ nop +/* 013F10 80013310 460A403C */ c.lt.s $f8, $f10 +/* 013F14 80013314 00000000 */ nop +/* 013F18 80013318 45000006 */ bc1f .L80013334 +/* 013F1C 8001331C 00000000 */ nop +/* 013F20 80013320 914E020A */ lbu $t6, 0x20a($t2) +/* 013F24 80013324 00000000 */ nop +/* 013F28 80013328 35CF0040 */ ori $t7, $t6, 0x40 +/* 013F2C 8001332C 10000005 */ b .L80013344 +/* 013F30 80013330 A14F020A */ sb $t7, 0x20a($t2) +.L80013334: +/* 013F34 80013334 9158020A */ lbu $t8, 0x20a($t2) +/* 013F38 80013338 00000000 */ nop +/* 013F3C 8001333C 3319FFBF */ andi $t9, $t8, 0xffbf +/* 013F40 80013340 A159020A */ sb $t9, 0x20a($t2) +.L80013344: +/* 013F44 80013344 820C003A */ lb $t4, 0x3a($s0) +/* 013F48 80013348 8E0B0068 */ lw $t3, 0x68($s0) +/* 013F4C 8001334C 000C6880 */ sll $t5, $t4, 2 +/* 013F50 80013350 016D7021 */ addu $t6, $t3, $t5 +/* 013F54 80013354 9142020A */ lbu $v0, 0x20a($t2) +/* 013F58 80013358 8DC30000 */ lw $v1, ($t6) +/* 013F5C 8001335C 3048000F */ andi $t0, $v0, 0xf +/* 013F60 80013360 8C650000 */ lw $a1, ($v1) +/* 013F64 80013364 11000015 */ beqz $t0, .L800133BC +/* 013F68 80013368 304F0080 */ andi $t7, $v0, 0x80 +/* 013F6C 8001336C 11E00006 */ beqz $t7, .L80013388 +/* 013F70 80013370 2508FFFF */ addiu $t0, $t0, -1 +/* 013F74 80013374 3058FFEF */ andi $t8, $v0, 0xffef +/* 013F78 80013378 37190020 */ ori $t9, $t8, 0x20 +/* 013F7C 8001337C 25080001 */ addiu $t0, $t0, 1 +/* 013F80 80013380 1000000E */ b .L800133BC +/* 013F84 80013384 A159020A */ sb $t9, 0x20a($t2) +.L80013388: +/* 013F88 80013388 304C0040 */ andi $t4, $v0, 0x40 +/* 013F8C 8001338C 11800006 */ beqz $t4, .L800133A8 +/* 013F90 80013390 304E0020 */ andi $t6, $v0, 0x20 +/* 013F94 80013394 304BFFDF */ andi $t3, $v0, 0xffdf +/* 013F98 80013398 356D0010 */ ori $t5, $t3, 0x10 +/* 013F9C 8001339C 25080003 */ addiu $t0, $t0, 3 +/* 013FA0 800133A0 10000006 */ b .L800133BC +/* 013FA4 800133A4 A14D020A */ sb $t5, 0x20a($t2) +.L800133A8: +/* 013FA8 800133A8 11C00003 */ beqz $t6, .L800133B8 +/* 013FAC 800133AC 00000000 */ nop +/* 013FB0 800133B0 10000002 */ b .L800133BC +/* 013FB4 800133B4 25080001 */ addiu $t0, $t0, 1 +.L800133B8: +/* 013FB8 800133B8 25080003 */ addiu $t0, $t0, 3 +.L800133BC: +/* 013FBC 800133BC 84A40028 */ lh $a0, 0x28($a1) +/* 013FC0 800133C0 00087880 */ sll $t7, $t0, 2 +/* 013FC4 800133C4 18800010 */ blez $a0, .L80013408 +/* 013FC8 800133C8 01E04025 */ move $t0, $t7 +/* 013FCC 800133CC 00001025 */ move $v0, $zero +.L800133D0: +/* 013FD0 800133D0 8CB80038 */ lw $t8, 0x38($a1) +/* 013FD4 800133D4 25290001 */ addiu $t1, $t1, 1 +/* 013FD8 800133D8 03021821 */ addu $v1, $t8, $v0 +/* 013FDC 800133DC 8C790008 */ lw $t9, 8($v1) +/* 013FE0 800133E0 00000000 */ nop +/* 013FE4 800133E4 03276024 */ and $t4, $t9, $a3 +/* 013FE8 800133E8 14CC0005 */ bne $a2, $t4, .L80013400 +/* 013FEC 800133EC 0124082A */ slt $at, $t1, $a0 +/* 013FF0 800133F0 A0680007 */ sb $t0, 7($v1) +/* 013FF4 800133F4 84A40028 */ lh $a0, 0x28($a1) +/* 013FF8 800133F8 00000000 */ nop +/* 013FFC 800133FC 0124082A */ slt $at, $t1, $a0 +.L80013400: +/* 014000 80013400 1420FFF3 */ bnez $at, .L800133D0 +/* 014004 80013404 2442000C */ addiu $v0, $v0, 0xc +.L80013408: +/* 014008 80013408 C610000C */ lwc1 $f16, 0xc($s0) +/* 01400C 8001340C C5520078 */ lwc1 $f18, 0x78($t2) +/* 014010 80013410 C6060010 */ lwc1 $f6, 0x10($s0) +/* 014014 80013414 46128100 */ add.s $f4, $f16, $f18 +/* 014018 80013418 C6100014 */ lwc1 $f16, 0x14($s0) +/* 01401C 8001341C E604000C */ swc1 $f4, 0xc($s0) +/* 014020 80013420 C548007C */ lwc1 $f8, 0x7c($t2) +/* 014024 80013424 00000000 */ nop +/* 014028 80013428 46083280 */ add.s $f10, $f6, $f8 +/* 01402C 8001342C E60A0010 */ swc1 $f10, 0x10($s0) +/* 014030 80013430 C5520080 */ lwc1 $f18, 0x80($t2) +/* 014034 80013434 00000000 */ nop +/* 014038 80013438 46128100 */ add.s $f4, $f16, $f18 +/* 01403C 8001343C E6040014 */ swc1 $f4, 0x14($s0) +/* 014040 80013440 C540008C */ lwc1 $f0, 0x8c($t2) +/* 014044 80013444 10000009 */ b .L8001346C +/* 014048 80013448 00000000 */ nop +.L8001344C: +/* 01404C 8001344C 860B0048 */ lh $t3, 0x48($s0) +/* 014050 80013450 2401006D */ li $at, 109 +/* 014054 80013454 15610005 */ bne $t3, $at, .L8001346C +/* 014058 80013458 00000000 */ nop +/* 01405C 8001345C 8E0D0064 */ lw $t5, 0x64($s0) +/* 014060 80013460 00000000 */ nop +/* 014064 80013464 C5A00030 */ lwc1 $f0, 0x30($t5) +/* 014068 80013468 00000000 */ nop +.L8001346C: +/* 01406C 8001346C 3C018012 */ lui $at, %hi(D_8011AD28) # $at, 0x8012 +/* 014070 80013470 8FBF001C */ lw $ra, 0x1c($sp) +/* 014074 80013474 E420AD28 */ swc1 $f0, %lo(D_8011AD28)($at) +/* 014078 80013478 3C018012 */ lui $at, %hi(D_8011AD30) # $at, 0x8012 +/* 01407C 8001347C 8FB00018 */ lw $s0, 0x18($sp) +/* 014080 80013480 E42EAD30 */ swc1 $f14, %lo(D_8011AD30)($at) +/* 014084 80013484 03E00008 */ jr $ra +/* 014088 80013488 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_005740/func_8001348C.s b/asm/non_matchings/unknown_005740/func_8001348C.s new file mode 100644 index 00000000..fd3b4bde --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001348C.s @@ -0,0 +1,53 @@ +glabel func_8001348C +/* 01408C 8001348C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 014090 80013490 AFBF0024 */ sw $ra, 0x24($sp) +/* 014094 80013494 AFB00020 */ sw $s0, 0x20($sp) +/* 014098 80013498 0C004BE5 */ jal func_80012F94 +/* 01409C 8001349C 00808025 */ move $s0, $a0 +/* 0140A0 800134A0 860E0006 */ lh $t6, 6($s0) +/* 0140A4 800134A4 02002025 */ move $a0, $s0 +/* 0140A8 800134A8 31CF8000 */ andi $t7, $t6, 0x8000 +/* 0140AC 800134AC 11E0000B */ beqz $t7, .L800134DC +/* 0140B0 800134B0 3C058012 */ lui $a1, %hi(D_8011AE8C) # $a1, 0x8012 +/* 0140B4 800134B4 3C068012 */ lui $a2, %hi(D_8011AE90) # $a2, 0x8012 +/* 0140B8 800134B8 3C078012 */ lui $a3, %hi(D_8011AE94) # $a3, 0x8012 +/* 0140BC 800134BC 34188000 */ li $t8, 32768 +/* 0140C0 800134C0 AFB80010 */ sw $t8, 0x10($sp) +/* 0140C4 800134C4 24E7AE94 */ addiu $a3, %lo(D_8011AE94) # addiu $a3, $a3, -0x516c +/* 0140C8 800134C8 24C6AE90 */ addiu $a2, %lo(D_8011AE90) # addiu $a2, $a2, -0x5170 +/* 0140CC 800134CC 0C02CDD0 */ jal func_800B3740 +/* 0140D0 800134D0 24A5AE8C */ addiu $a1, %lo(D_8011AE8C) # addiu $a1, $a1, -0x5174 +/* 0140D4 800134D4 10000016 */ b .L80013530 +/* 0140D8 800134D8 00000000 */ nop +.L800134DC: +/* 0140DC 800134DC 8E190040 */ lw $t9, 0x40($s0) +/* 0140E0 800134E0 24010001 */ li $at, 1 +/* 0140E4 800134E4 83220053 */ lb $v0, 0x53($t9) +/* 0140E8 800134E8 00000000 */ nop +/* 0140EC 800134EC 14400005 */ bnez $v0, .L80013504 +/* 0140F0 800134F0 00000000 */ nop +/* 0140F4 800134F4 0C004832 */ jal func_800120C8 +/* 0140F8 800134F8 02002025 */ move $a0, $s0 +/* 0140FC 800134FC 1000000C */ b .L80013530 +/* 014100 80013500 00000000 */ nop +.L80013504: +/* 014104 80013504 14410006 */ bne $v0, $at, .L80013520 +/* 014108 80013508 24010004 */ li $at, 4 +/* 01410C 8001350C 0C004725 */ jal func_80011C94 +/* 014110 80013510 02002025 */ move $a0, $s0 +/* 014114 80013514 10000006 */ b .L80013530 +/* 014118 80013518 00000000 */ nop +/* 01411C 8001351C 24010004 */ li $at, 4 +.L80013520: +/* 014120 80013520 14410003 */ bne $v0, $at, .L80013530 +/* 014124 80013524 00000000 */ nop +/* 014128 80013528 0C0046B4 */ jal func_80011AD0 +/* 01412C 8001352C 02002025 */ move $a0, $s0 +.L80013530: +/* 014130 80013530 0C004D52 */ jal func_80013548 +/* 014134 80013534 02002025 */ move $a0, $s0 +/* 014138 80013538 8FBF0024 */ lw $ra, 0x24($sp) +/* 01413C 8001353C 8FB00020 */ lw $s0, 0x20($sp) +/* 014140 80013540 03E00008 */ jr $ra +/* 014144 80013544 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_005740/func_80013548.s b/asm/non_matchings/unknown_005740/func_80013548.s new file mode 100644 index 00000000..66b0dd1b --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80013548.s @@ -0,0 +1,31 @@ +glabel func_80013548 +/* 014148 80013548 848E0006 */ lh $t6, 6($a0) +/* 01414C 8001354C 00000000 */ nop +/* 014150 80013550 31CF8000 */ andi $t7, $t6, 0x8000 +/* 014154 80013554 15E00016 */ bnez $t7, .L800135B0 +/* 014158 80013558 00000000 */ nop +/* 01415C 8001355C 8C980040 */ lw $t8, 0x40($a0) +/* 014160 80013560 24010001 */ li $at, 1 +/* 014164 80013564 83190054 */ lb $t9, 0x54($t8) +/* 014168 80013568 00000000 */ nop +/* 01416C 8001356C 17210010 */ bne $t9, $at, .L800135B0 +/* 014170 80013570 00000000 */ nop +/* 014174 80013574 8C820064 */ lw $v0, 0x64($a0) +/* 014178 80013578 C484000C */ lwc1 $f4, 0xc($a0) +/* 01417C 8001357C C4460078 */ lwc1 $f6, 0x78($v0) +/* 014180 80013580 C48A0010 */ lwc1 $f10, 0x10($a0) +/* 014184 80013584 46062201 */ sub.s $f8, $f4, $f6 +/* 014188 80013588 C4840014 */ lwc1 $f4, 0x14($a0) +/* 01418C 8001358C E488000C */ swc1 $f8, 0xc($a0) +/* 014190 80013590 C450007C */ lwc1 $f16, 0x7c($v0) +/* 014194 80013594 00000000 */ nop +/* 014198 80013598 46105481 */ sub.s $f18, $f10, $f16 +/* 01419C 8001359C E4920010 */ swc1 $f18, 0x10($a0) +/* 0141A0 800135A0 C4460080 */ lwc1 $f6, 0x80($v0) +/* 0141A4 800135A4 00000000 */ nop +/* 0141A8 800135A8 46062201 */ sub.s $f8, $f4, $f6 +/* 0141AC 800135AC E4880014 */ swc1 $f8, 0x14($a0) +.L800135B0: +/* 0141B0 800135B0 03E00008 */ jr $ra +/* 0141B4 800135B4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800135B8.s b/asm/non_matchings/unknown_005740/func_800135B8.s new file mode 100644 index 00000000..41061444 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800135B8.s @@ -0,0 +1,197 @@ +glabel func_800135B8 +/* 0141B8 800135B8 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 0141BC 800135BC AFBF0024 */ sw $ra, 0x24($sp) +/* 0141C0 800135C0 AFB10020 */ sw $s1, 0x20($sp) +/* 0141C4 800135C4 AFB0001C */ sw $s0, 0x1c($sp) +/* 0141C8 800135C8 8C90007C */ lw $s0, 0x7c($a0) +/* 0141CC 800135CC 3C028012 */ lui $v0, 0x8012 +/* 0141D0 800135D0 00107703 */ sra $t6, $s0, 0x1c +/* 0141D4 800135D4 31D0000F */ andi $s0, $t6, 0xf +/* 0141D8 800135D8 00501021 */ addu $v0, $v0, $s0 +/* 0141DC 800135DC 9042B048 */ lbu $v0, -0x4fb8($v0) +/* 0141E0 800135E0 8C910064 */ lw $s1, 0x64($a0) +/* 0141E4 800135E4 10400006 */ beqz $v0, .L80013600 +/* 0141E8 800135E8 00802825 */ move $a1, $a0 +/* 0141EC 800135EC 24010001 */ li $at, 1 +/* 0141F0 800135F0 10410005 */ beq $v0, $at, .L80013608 +/* 0141F4 800135F4 26230024 */ addiu $v1, $s1, 0x24 +/* 0141F8 800135F8 10000003 */ b .L80013608 +/* 0141FC 800135FC 26230048 */ addiu $v1, $s1, 0x48 +.L80013600: +/* 014200 80013600 10000001 */ b .L80013608 +/* 014204 80013604 02201825 */ move $v1, $s1 +.L80013608: +/* 014208 80013608 24040014 */ li $a0, 20 +/* 01420C 8001360C AFA30050 */ sw $v1, 0x50($sp) +/* 014210 80013610 0C0078A7 */ jal func_8001E29C +/* 014214 80013614 AFA50078 */ sw $a1, 0x78($sp) +/* 014218 80013618 3C188012 */ lui $t8, %hi(D_8011B058) # $t8, 0x8012 +/* 01421C 8001361C 2718B058 */ addiu $t8, %lo(D_8011B058) # addiu $t8, $t8, -0x4fa8 +/* 014220 80013620 02182821 */ addu $a1, $s0, $t8 +/* 014224 80013624 90B90000 */ lbu $t9, ($a1) +/* 014228 80013628 8FAE0078 */ lw $t6, 0x78($sp) +/* 01422C 8001362C 001961C0 */ sll $t4, $t9, 7 +/* 014230 80013630 01826821 */ addu $t5, $t4, $v0 +/* 014234 80013634 AFAD0048 */ sw $t5, 0x48($sp) +/* 014238 80013638 8DC40078 */ lw $a0, 0x78($t6) +/* 01423C 8001363C 0C004B8A */ jal func_80012E28 +/* 014240 80013640 AFA50028 */ sw $a1, 0x28($sp) +/* 014244 80013644 8FAF0078 */ lw $t7, 0x78($sp) +/* 014248 80013648 44802000 */ mtc1 $zero, $f4 +/* 01424C 8001364C 3C108012 */ lui $s0, %hi(D_8011AE8C) # $s0, 0x8012 +/* 014250 80013650 2610AE8C */ addiu $s0, %lo(D_8011AE8C) # addiu $s0, $s0, -0x5174 +/* 014254 80013654 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 +/* 014258 80013658 8DE60078 */ lw $a2, 0x78($t7) +/* 01425C 8001365C 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 +/* 014260 80013660 02002025 */ move $a0, $s0 +/* 014264 80013664 3C073F80 */ lui $a3, 0x3f80 +/* 014268 80013668 0C01A521 */ jal func_80069484 +/* 01426C 8001366C E7A40010 */ swc1 $f4, 0x10($sp) +/* 014270 80013670 8FB80078 */ lw $t8, 0x78($sp) +/* 014274 80013674 00000000 */ nop +/* 014278 80013678 8F040078 */ lw $a0, 0x78($t8) +/* 01427C 8001367C 0C004BCC */ jal func_80012F30 +/* 014280 80013680 00000000 */ nop +/* 014284 80013684 8FA30050 */ lw $v1, 0x50($sp) +/* 014288 80013688 00000000 */ nop +/* 01428C 8001368C C4660000 */ lwc1 $f6, ($v1) +/* 014290 80013690 00000000 */ nop +/* 014294 80013694 E7A60060 */ swc1 $f6, 0x60($sp) +/* 014298 80013698 C4680004 */ lwc1 $f8, 4($v1) +/* 01429C 8001369C 00000000 */ nop +/* 0142A0 800136A0 E7A80064 */ swc1 $f8, 0x64($sp) +/* 0142A4 800136A4 C46A0008 */ lwc1 $f10, 8($v1) +/* 0142A8 800136A8 00000000 */ nop +/* 0142AC 800136AC E7AA0068 */ swc1 $f10, 0x68($sp) +/* 0142B0 800136B0 92390072 */ lbu $t9, 0x72($s1) +/* 0142B4 800136B4 00000000 */ nop +/* 0142B8 800136B8 00196700 */ sll $t4, $t9, 0x1c +/* 0142BC 800136BC 0C01C1FE */ jal func_800707F8 +/* 0142C0 800136C0 000C2403 */ sra $a0, $t4, 0x10 +/* 0142C4 800136C4 8FA30050 */ lw $v1, 0x50($sp) +/* 0142C8 800136C8 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 +/* 0142CC 800136CC C4700010 */ lwc1 $f16, 0x10($v1) +/* 0142D0 800136D0 C464000C */ lwc1 $f4, 0xc($v1) +/* 0142D4 800136D4 46100482 */ mul.s $f18, $f0, $f16 +/* 0142D8 800136D8 3C068012 */ lui $a2, %hi(D_8011AE94) # $a2, 0x8012 +/* 0142DC 800136DC 3C0CFA00 */ lui $t4, 0xfa00 +/* 0142E0 800136E0 240DFFFF */ li $t5, -1 +/* 0142E4 800136E4 46049180 */ add.s $f6, $f18, $f4 +/* 0142E8 800136E8 24C6AE94 */ addiu $a2, %lo(D_8011AE94) # addiu $a2, $a2, -0x516c +/* 0142EC 800136EC E7A6005C */ swc1 $f6, 0x5c($sp) +/* 0142F0 800136F0 922E0070 */ lbu $t6, 0x70($s1) +/* 0142F4 800136F4 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 +/* 0142F8 800136F8 29C10002 */ slti $at, $t6, 2 +/* 0142FC 800136FC 10200005 */ beqz $at, .L80013714 +/* 014300 80013700 02002025 */ move $a0, $s0 +/* 014304 80013704 C6280074 */ lwc1 $f8, 0x74($s1) +/* 014308 80013708 00000000 */ nop +/* 01430C 8001370C 46083282 */ mul.s $f10, $f6, $f8 +/* 014310 80013710 E7AA005C */ swc1 $f10, 0x5c($sp) +.L80013714: +/* 014314 80013714 8FAF0028 */ lw $t7, 0x28($sp) +/* 014318 80013718 C7B0005C */ lwc1 $f16, 0x5c($sp) +/* 01431C 8001371C 91F80000 */ lbu $t8, ($t7) +/* 014320 80013720 3C0FFB00 */ lui $t7, 0xfb00 +/* 014324 80013724 13000006 */ beqz $t8, .L80013740 +/* 014328 80013728 27A70054 */ addiu $a3, $sp, 0x54 +/* 01432C 8001372C 3C01800E */ lui $at, %hi(D_800E5568) # $at, 0x800e +/* 014330 80013730 C4325568 */ lwc1 $f18, %lo(D_800E5568)($at) +/* 014334 80013734 00000000 */ nop +/* 014338 80013738 46128102 */ mul.s $f4, $f16, $f18 +/* 01433C 8001373C E7A4005C */ swc1 $f4, 0x5c($sp) +.L80013740: +/* 014340 80013740 8E020000 */ lw $v0, ($s0) +/* 014344 80013744 A7A00058 */ sh $zero, 0x58($sp) +/* 014348 80013748 24590008 */ addiu $t9, $v0, 8 +/* 01434C 8001374C A7A00056 */ sh $zero, 0x56($sp) +/* 014350 80013750 A7A00054 */ sh $zero, 0x54($sp) +/* 014354 80013754 A7A0006C */ sh $zero, 0x6c($sp) +/* 014358 80013758 AE190000 */ sw $t9, ($s0) +/* 01435C 8001375C AC4D0004 */ sw $t5, 4($v0) +/* 014360 80013760 AC4C0000 */ sw $t4, ($v0) +/* 014364 80013764 8E020000 */ lw $v0, ($s0) +/* 014368 80013768 2418FF00 */ li $t8, -256 +/* 01436C 8001376C 244E0008 */ addiu $t6, $v0, 8 +/* 014370 80013770 AE0E0000 */ sw $t6, ($s0) +/* 014374 80013774 AC580004 */ sw $t8, 4($v0) +/* 014378 80013778 AC4F0000 */ sw $t7, ($v0) +/* 01437C 8001377C 8FB90048 */ lw $t9, 0x48($sp) +/* 014380 80013780 240D010A */ li $t5, 266 +/* 014384 80013784 8F2C0078 */ lw $t4, 0x78($t9) +/* 014388 80013788 AFAD0014 */ sw $t5, 0x14($sp) +/* 01438C 8001378C 0C01A145 */ jal func_80068514 +/* 014390 80013790 AFAC0010 */ sw $t4, 0x10($sp) +/* 014394 80013794 922E0070 */ lbu $t6, 0x70($s1) +/* 014398 80013798 24010002 */ li $at, 2 +/* 01439C 8001379C 15C1003B */ bne $t6, $at, .L8001388C +/* 0143A0 800137A0 02002025 */ move $a0, $s0 +/* 0143A4 800137A4 8FAF0048 */ lw $t7, 0x48($sp) +/* 0143A8 800137A8 2406000E */ li $a2, 14 +/* 0143AC 800137AC 8DE5007C */ lw $a1, 0x7c($t7) +/* 0143B0 800137B0 0C01ED3A */ jal func_8007B4E8 +/* 0143B4 800137B4 00003825 */ move $a3, $zero +/* 0143B8 800137B8 8FB80048 */ lw $t8, 0x48($sp) +/* 0143BC 800137BC 8FAD0078 */ lw $t5, 0x78($sp) +/* 0143C0 800137C0 8F19007C */ lw $t9, 0x7c($t8) +/* 0143C4 800137C4 3C0B8000 */ lui $t3, 0x8000 +/* 0143C8 800137C8 13200003 */ beqz $t9, .L800137D8 +/* 0143CC 800137CC 3C048012 */ lui $a0, %hi(D_8011B008) # $a0, 0x8012 +/* 0143D0 800137D0 10000002 */ b .L800137DC +/* 0143D4 800137D4 240A0001 */ li $t2, 1 +.L800137D8: +/* 0143D8 800137D8 00005025 */ move $t2, $zero +.L800137DC: +/* 0143DC 800137DC 8DA3007C */ lw $v1, 0x7c($t5) +/* 0143E0 800137E0 8C84B008 */ lw $a0, %lo(D_8011B008)($a0) +/* 0143E4 800137E4 00037B83 */ sra $t7, $v1, 0xe +/* 0143E8 800137E8 31F83FFF */ andi $t8, $t7, 0x3fff +/* 0143EC 800137EC 3C0E800E */ lui $t6, 0x800e +/* 0143F0 800137F0 00046080 */ sll $t4, $a0, 2 +/* 0143F4 800137F4 01CC7021 */ addu $t6, $t6, $t4 +/* 0143F8 800137F8 0018C880 */ sll $t9, $t8, 2 +/* 0143FC 800137FC 8DCEC74C */ lw $t6, -0x38b4($t6) +/* 014400 80013800 0338C821 */ addu $t9, $t9, $t8 +/* 014404 80013804 0019C840 */ sll $t9, $t9, 1 +/* 014408 80013808 01802025 */ move $a0, $t4 +/* 01440C 8001380C 3C0C800E */ lui $t4, 0x800e +/* 014410 80013810 01D94021 */ addu $t0, $t6, $t9 +/* 014414 80013814 01846021 */ addu $t4, $t4, $a0 +/* 014418 80013818 010B3021 */ addu $a2, $t0, $t3 +/* 01441C 8001381C 306D3FFF */ andi $t5, $v1, 0x3fff +/* 014420 80013820 8D8CC754 */ lw $t4, -0x38ac($t4) +/* 014424 80013824 8E020000 */ lw $v0, ($s0) +/* 014428 80013828 000D7900 */ sll $t7, $t5, 4 +/* 01442C 8001382C 30CE0006 */ andi $t6, $a2, 6 +/* 014430 80013830 35D90040 */ ori $t9, $t6, 0x40 +/* 014434 80013834 332D00FF */ andi $t5, $t9, 0xff +/* 014438 80013838 018F4821 */ addu $t1, $t4, $t7 +/* 01443C 8001383C 24580008 */ addiu $t8, $v0, 8 +/* 014440 80013840 AE180000 */ sw $t8, ($s0) +/* 014444 80013844 000D6400 */ sll $t4, $t5, 0x10 +/* 014448 80013848 3C010400 */ lui $at, 0x400 +/* 01444C 8001384C 01817825 */ or $t7, $t4, $at +/* 014450 80013850 35F800AA */ ori $t8, $t7, 0xaa +/* 014454 80013854 AC580000 */ sw $t8, ($v0) +/* 014458 80013858 AC460004 */ sw $a2, 4($v0) +/* 01445C 8001385C 8E020000 */ lw $v0, ($s0) +/* 014460 80013860 35590070 */ ori $t9, $t2, 0x70 +/* 014464 80013864 332D00FF */ andi $t5, $t9, 0xff +/* 014468 80013868 244E0008 */ addiu $t6, $v0, 8 +/* 01446C 8001386C AE0E0000 */ sw $t6, ($s0) +/* 014470 80013870 000D6400 */ sll $t4, $t5, 0x10 +/* 014474 80013874 3C010500 */ lui $at, 0x500 +/* 014478 80013878 01817825 */ or $t7, $t4, $at +/* 01447C 8001387C 35F80080 */ ori $t8, $t7, 0x80 +/* 014480 80013880 012B7021 */ addu $t6, $t1, $t3 +/* 014484 80013884 AC4E0004 */ sw $t6, 4($v0) +/* 014488 80013888 AC580000 */ sw $t8, ($v0) +.L8001388C: +/* 01448C 8001388C 0C01A690 */ jal func_80069A40 +/* 014490 80013890 02002025 */ move $a0, $s0 +/* 014494 80013894 8FBF0024 */ lw $ra, 0x24($sp) +/* 014498 80013898 8FB0001C */ lw $s0, 0x1c($sp) +/* 01449C 8001389C 8FB10020 */ lw $s1, 0x20($sp) +/* 0144A0 800138A0 03E00008 */ jr $ra +/* 0144A4 800138A4 27BD0078 */ addiu $sp, $sp, 0x78 + diff --git a/asm/non_matchings/unknown_005740/func_800138A8.s b/asm/non_matchings/unknown_005740/func_800138A8.s new file mode 100644 index 00000000..ac148d28 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800138A8.s @@ -0,0 +1,92 @@ +glabel func_800138A8 +/* 0144A8 800138A8 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 0144AC 800138AC AFBF0024 */ sw $ra, 0x24($sp) +/* 0144B0 800138B0 AFB00020 */ sw $s0, 0x20($sp) +/* 0144B4 800138B4 AFA5003C */ sw $a1, 0x3c($sp) +/* 0144B8 800138B8 00C08025 */ move $s0, $a2 +/* 0144BC 800138BC AFA70044 */ sw $a3, 0x44($sp) +/* 0144C0 800138C0 24C5000C */ addiu $a1, $a2, 0xc +/* 0144C4 800138C4 0C01C0C8 */ jal func_80070320 +/* 0144C8 800138C8 AFA40038 */ sw $a0, 0x38($sp) +/* 0144CC 800138CC 8FA40038 */ lw $a0, 0x38($sp) +/* 0144D0 800138D0 C604000C */ lwc1 $f4, 0xc($s0) +/* 0144D4 800138D4 C486000C */ lwc1 $f6, 0xc($a0) +/* 0144D8 800138D8 C60A0010 */ lwc1 $f10, 0x10($s0) +/* 0144DC 800138DC 46062200 */ add.s $f8, $f4, $f6 +/* 0144E0 800138E0 C6060014 */ lwc1 $f6, 0x14($s0) +/* 0144E4 800138E4 E608000C */ swc1 $f8, 0xc($s0) +/* 0144E8 800138E8 C4920010 */ lwc1 $f18, 0x10($a0) +/* 0144EC 800138EC 00000000 */ nop +/* 0144F0 800138F0 46125100 */ add.s $f4, $f10, $f18 +/* 0144F4 800138F4 E6040010 */ swc1 $f4, 0x10($s0) +/* 0144F8 800138F8 C4880014 */ lwc1 $f8, 0x14($a0) +/* 0144FC 800138FC 00000000 */ nop +/* 014500 80013900 46083280 */ add.s $f10, $f6, $f8 +/* 014504 80013904 0C01A748 */ jal func_80069D20 +/* 014508 80013908 E60A0014 */ swc1 $f10, 0x14($s0) +/* 01450C 8001390C C452000C */ lwc1 $f18, 0xc($v0) +/* 014510 80013910 C604000C */ lwc1 $f4, 0xc($s0) +/* 014514 80013914 C4460010 */ lwc1 $f6, 0x10($v0) +/* 014518 80013918 46049081 */ sub.s $f2, $f18, $f4 +/* 01451C 8001391C C6080010 */ lwc1 $f8, 0x10($s0) +/* 014520 80013920 46021102 */ mul.s $f4, $f2, $f2 +/* 014524 80013924 46083381 */ sub.s $f14, $f6, $f8 +/* 014528 80013928 C6120014 */ lwc1 $f18, 0x14($s0) +/* 01452C 8001392C C44A0014 */ lwc1 $f10, 0x14($v0) +/* 014530 80013930 460E7182 */ mul.s $f6, $f14, $f14 +/* 014534 80013934 46125401 */ sub.s $f16, $f10, $f18 +/* 014538 80013938 E7AE0030 */ swc1 $f14, 0x30($sp) +/* 01453C 8001393C E7B0002C */ swc1 $f16, 0x2c($sp) +/* 014540 80013940 46108282 */ mul.s $f10, $f16, $f16 +/* 014544 80013944 46062200 */ add.s $f8, $f4, $f6 +/* 014548 80013948 E7A20034 */ swc1 $f2, 0x34($sp) +/* 01454C 8001394C 0C0326B4 */ jal sqrtf +/* 014550 80013950 460A4300 */ add.s $f12, $f8, $f10 +/* 014554 80013954 44809800 */ mtc1 $zero, $f19 +/* 014558 80013958 44809000 */ mtc1 $zero, $f18 +/* 01455C 8001395C 46000121 */ cvt.d.s $f4, $f0 +/* 014560 80013960 4624903C */ c.lt.d $f18, $f4 +/* 014564 80013964 C7A20034 */ lwc1 $f2, 0x34($sp) +/* 014568 80013968 C7AE0030 */ lwc1 $f14, 0x30($sp) +/* 01456C 8001396C C7B0002C */ lwc1 $f16, 0x2c($sp) +/* 014570 80013970 4500000E */ bc1f .L800139AC +/* 014574 80013974 3C048012 */ lui $a0, %hi(D_8011AE8C) # $a0, 0x8012 +/* 014578 80013978 860E001A */ lh $t6, 0x1a($s0) +/* 01457C 8001397C 00000000 */ nop +/* 014580 80013980 448E3000 */ mtc1 $t6, $f6 +/* 014584 80013984 00000000 */ nop +/* 014588 80013988 46803220 */ cvt.s.w $f8, $f6 +/* 01458C 8001398C 00000000 */ nop +/* 014590 80013990 46004303 */ div.s $f12, $f8, $f0 +/* 014594 80013994 460C1082 */ mul.s $f2, $f2, $f12 +/* 014598 80013998 00000000 */ nop +/* 01459C 8001399C 460C7382 */ mul.s $f14, $f14, $f12 +/* 0145A0 800139A0 00000000 */ nop +/* 0145A4 800139A4 460C8402 */ mul.s $f16, $f16, $f12 +/* 0145A8 800139A8 00000000 */ nop +.L800139AC: +/* 0145AC 800139AC C60A000C */ lwc1 $f10, 0xc($s0) +/* 0145B0 800139B0 C6040010 */ lwc1 $f4, 0x10($s0) +/* 0145B4 800139B4 C6080014 */ lwc1 $f8, 0x14($s0) +/* 0145B8 800139B8 46025480 */ add.s $f18, $f10, $f2 +/* 0145BC 800139BC 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 +/* 0145C0 800139C0 460E2180 */ add.s $f6, $f4, $f14 +/* 0145C4 800139C4 E612000C */ swc1 $f18, 0xc($s0) +/* 0145C8 800139C8 46104280 */ add.s $f10, $f8, $f16 +/* 0145CC 800139CC E6060010 */ swc1 $f6, 0x10($s0) +/* 0145D0 800139D0 E60A0014 */ swc1 $f10, 0x14($s0) +/* 0145D4 800139D4 8FB80044 */ lw $t8, 0x44($sp) +/* 0145D8 800139D8 8FAF003C */ lw $t7, 0x3c($sp) +/* 0145DC 800139DC 3C068012 */ lui $a2, %hi(D_8011AE94) # $a2, 0x8012 +/* 0145E0 800139E0 24C6AE94 */ addiu $a2, %lo(D_8011AE94) # addiu $a2, $a2, -0x516c +/* 0145E4 800139E4 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 +/* 0145E8 800139E8 2484AE8C */ addiu $a0, %lo(D_8011AE8C) # addiu $a0, $a0, -0x5174 +/* 0145EC 800139EC 02003825 */ move $a3, $s0 +/* 0145F0 800139F0 AFB80014 */ sw $t8, 0x14($sp) +/* 0145F4 800139F4 0C01A145 */ jal func_80068514 +/* 0145F8 800139F8 AFAF0010 */ sw $t7, 0x10($sp) +/* 0145FC 800139FC 8FBF0024 */ lw $ra, 0x24($sp) +/* 014600 80013A00 8FB00020 */ lw $s0, 0x20($sp) +/* 014604 80013A04 03E00008 */ jr $ra +/* 014608 80013A08 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_005740/func_80013A0C.s b/asm/non_matchings/unknown_005740/func_80013A0C.s new file mode 100644 index 00000000..f08385f9 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80013A0C.s @@ -0,0 +1,250 @@ +glabel func_80013A0C +/* 01460C 80013A0C 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 014610 80013A10 AFBF0024 */ sw $ra, 0x24($sp) +/* 014614 80013A14 AFB10020 */ sw $s1, 0x20($sp) +/* 014618 80013A18 AFB0001C */ sw $s0, 0x1c($sp) +/* 01461C 80013A1C AFA40068 */ sw $a0, 0x68($sp) +/* 014620 80013A20 AFA5006C */ sw $a1, 0x6c($sp) +/* 014624 80013A24 AFA60070 */ sw $a2, 0x70($sp) +/* 014628 80013A28 AFA70074 */ sw $a3, 0x74($sp) +/* 01462C 80013A2C 8CE80064 */ lw $t0, 0x64($a3) +/* 014630 80013A30 3C10800E */ lui $s0, %hi(D_800DC75C) # $s0, 0x800e +/* 014634 80013A34 850F018E */ lh $t7, 0x18e($t0) +/* 014638 80013A38 2610C75C */ addiu $s0, %lo(D_800DC75C) # addiu $s0, $s0, -0x38a4 +/* 01463C 80013A3C 19E000DF */ blez $t7, .L80013DBC +/* 014640 80013A40 8FBF0024 */ lw $ra, 0x24($sp) +/* 014644 80013A44 8E180000 */ lw $t8, ($s0) +/* 014648 80013A48 3C118012 */ lui $s1, %hi(D_8011AE8C) # $s1, 0x8012 +/* 01464C 80013A4C 130000DB */ beqz $t8, .L80013DBC +/* 014650 80013A50 8FBF0024 */ lw $ra, 0x24($sp) +/* 014654 80013A54 8C890000 */ lw $t1, ($a0) +/* 014658 80013A58 2631AE8C */ addiu $s1, %lo(D_8011AE8C) # addiu $s1, $s1, -0x5174 +/* 01465C 80013A5C AE290000 */ sw $t1, ($s1) +/* 014660 80013A60 8CAB0000 */ lw $t3, ($a1) +/* 014664 80013A64 3C018012 */ lui $at, %hi(D_8011AE90) # $at, 0x8012 +/* 014668 80013A68 AC2BAE90 */ sw $t3, %lo(D_8011AE90)($at) +/* 01466C 80013A6C 8CCD0000 */ lw $t5, ($a2) +/* 014670 80013A70 3C018012 */ lui $at, %hi(D_8011AE94) # $at, 0x8012 +/* 014674 80013A74 AC2DAE94 */ sw $t5, %lo(D_8011AE94)($at) +/* 014678 80013A78 81060002 */ lb $a2, 2($t0) +/* 01467C 80013A7C 24040015 */ li $a0, 21 +/* 014680 80013A80 28C1000B */ slti $at, $a2, 0xb +/* 014684 80013A84 14200002 */ bnez $at, .L80013A90 +/* 014688 80013A88 00000000 */ nop +/* 01468C 80013A8C 00003025 */ move $a2, $zero +.L80013A90: +/* 014690 80013A90 810501D6 */ lb $a1, 0x1d6($t0) +/* 014694 80013A94 00000000 */ nop +/* 014698 80013A98 28A10003 */ slti $at, $a1, 3 +/* 01469C 80013A9C 14200002 */ bnez $at, .L80013AA8 +/* 0146A0 80013AA0 00000000 */ nop +/* 0146A4 80013AA4 00002825 */ move $a1, $zero +.L80013AA8: +/* 0146A8 80013AA8 AFA50050 */ sw $a1, 0x50($sp) +/* 0146AC 80013AAC AFA6004C */ sw $a2, 0x4c($sp) +/* 0146B0 80013AB0 0C0078A7 */ jal func_8001E29C +/* 0146B4 80013AB4 AFA80064 */ sw $t0, 0x64($sp) +/* 0146B8 80013AB8 8FA50050 */ lw $a1, 0x50($sp) +/* 0146BC 80013ABC 8FA6004C */ lw $a2, 0x4c($sp) +/* 0146C0 80013AC0 00057080 */ sll $t6, $a1, 2 +/* 0146C4 80013AC4 01C57021 */ addu $t6, $t6, $a1 +/* 0146C8 80013AC8 000E7040 */ sll $t6, $t6, 1 +/* 0146CC 80013ACC 01C62821 */ addu $a1, $t6, $a2 +/* 0146D0 80013AD0 00057900 */ sll $t7, $a1, 4 +/* 0146D4 80013AD4 01E21821 */ addu $v1, $t7, $v0 +/* 0146D8 80013AD8 AFA30058 */ sw $v1, 0x58($sp) +/* 0146DC 80013ADC 84780000 */ lh $t8, ($v1) +/* 0146E0 80013AE0 8E190000 */ lw $t9, ($s0) +/* 0146E4 80013AE4 44982000 */ mtc1 $t8, $f4 +/* 0146E8 80013AE8 3C0D8012 */ lui $t5, %hi(D_8011B010) # $t5, 0x8012 +/* 0146EC 80013AEC 468021A0 */ cvt.s.w $f6, $f4 +/* 0146F0 80013AF0 25ADB010 */ addiu $t5, %lo(D_8011B010) # addiu $t5, $t5, -0x4ff0 +/* 0146F4 80013AF4 00CD3821 */ addu $a3, $a2, $t5 +/* 0146F8 80013AF8 E726000C */ swc1 $f6, 0xc($t9) +/* 0146FC 80013AFC 84690002 */ lh $t1, 2($v1) +/* 014700 80013B00 8E0A0000 */ lw $t2, ($s0) +/* 014704 80013B04 44894000 */ mtc1 $t1, $f8 +/* 014708 80013B08 00000000 */ nop +/* 01470C 80013B0C 468042A0 */ cvt.s.w $f10, $f8 +/* 014710 80013B10 E54A0010 */ swc1 $f10, 0x10($t2) +/* 014714 80013B14 846B0004 */ lh $t3, 4($v1) +/* 014718 80013B18 8E0C0000 */ lw $t4, ($s0) +/* 01471C 80013B1C 448B8000 */ mtc1 $t3, $f16 +/* 014720 80013B20 00000000 */ nop +/* 014724 80013B24 468084A0 */ cvt.s.w $f18, $f16 +/* 014728 80013B28 E5920014 */ swc1 $f18, 0x14($t4) +/* 01472C 80013B2C 90EE0000 */ lbu $t6, ($a3) +/* 014730 80013B30 AFA70028 */ sw $a3, 0x28($sp) +/* 014734 80013B34 000E7E40 */ sll $t7, $t6, 0x19 +/* 014738 80013B38 0C01C1F1 */ jal func_800707C4 +/* 01473C 80013B3C 000F2403 */ sra $a0, $t7, 0x10 +/* 014740 80013B40 8FB90058 */ lw $t9, 0x58($sp) +/* 014744 80013B44 8E020000 */ lw $v0, ($s0) +/* 014748 80013B48 87290006 */ lh $t1, 6($t9) +/* 01474C 80013B4C C4440010 */ lwc1 $f4, 0x10($v0) +/* 014750 80013B50 44893000 */ mtc1 $t1, $f6 +/* 014754 80013B54 00000000 */ nop +/* 014758 80013B58 46803220 */ cvt.s.w $f8, $f6 +/* 01475C 80013B5C 46004282 */ mul.s $f10, $f8, $f0 +/* 014760 80013B60 460A2400 */ add.s $f16, $f4, $f10 +/* 014764 80013B64 E4500010 */ swc1 $f16, 0x10($v0) +/* 014768 80013B68 8FAA0028 */ lw $t2, 0x28($sp) +/* 01476C 80013B6C 00000000 */ nop +/* 014770 80013B70 914B0000 */ lbu $t3, ($t2) +/* 014774 80013B74 00000000 */ nop +/* 014778 80013B78 000B6680 */ sll $t4, $t3, 0x1a +/* 01477C 80013B7C 0C01C1FE */ jal func_800707F8 +/* 014780 80013B80 000C2403 */ sra $a0, $t4, 0x10 +/* 014784 80013B84 3C01800E */ lui $at, %hi(D_800E556C) # $at, 0x800e +/* 014788 80013B88 C432556C */ lwc1 $f18, %lo(D_800E556C)($at) +/* 01478C 80013B8C 3C01800E */ lui $at, %hi(D_800E5570) # $at, 0x800e +/* 014790 80013B90 46120182 */ mul.s $f6, $f0, $f18 +/* 014794 80013B94 8FA20058 */ lw $v0, 0x58($sp) +/* 014798 80013B98 C4285570 */ lwc1 $f8, %lo(D_800E5570)($at) +/* 01479C 80013B9C C4440008 */ lwc1 $f4, 8($v0) +/* 0147A0 80013BA0 46083080 */ add.s $f2, $f6, $f8 +/* 0147A4 80013BA4 8E0E0000 */ lw $t6, ($s0) +/* 0147A8 80013BA8 46022282 */ mul.s $f10, $f4, $f2 +/* 0147AC 80013BAC 8FA80064 */ lw $t0, 0x64($sp) +/* 0147B0 80013BB0 240A0800 */ li $t2, 2048 +/* 0147B4 80013BB4 E5CA0008 */ swc1 $f10, 8($t6) +/* 0147B8 80013BB8 8FAF0028 */ lw $t7, 0x28($sp) +/* 0147BC 80013BBC 8E090000 */ lw $t1, ($s0) +/* 0147C0 80013BC0 91F80000 */ lbu $t8, ($t7) +/* 0147C4 80013BC4 C450000C */ lwc1 $f16, 0xc($v0) +/* 0147C8 80013BC8 0018CAC0 */ sll $t9, $t8, 0xb +/* 0147CC 80013BCC A5390000 */ sh $t9, ($t1) +/* 0147D0 80013BD0 8E0B0000 */ lw $t3, ($s0) +/* 0147D4 80013BD4 46028302 */ mul.s $f12, $f16, $f2 +/* 0147D8 80013BD8 A56A0002 */ sh $t2, 2($t3) +/* 0147DC 80013BDC 8E0C0000 */ lw $t4, ($s0) +/* 0147E0 80013BE0 00000000 */ nop +/* 0147E4 80013BE4 A5800004 */ sh $zero, 4($t4) +/* 0147E8 80013BE8 81040189 */ lb $a0, 0x189($t0) +/* 0147EC 80013BEC 00000000 */ nop +/* 0147F0 80013BF0 10800003 */ beqz $a0, .L80013C00 +/* 0147F4 80013BF4 28810003 */ slti $at, $a0, 3 +/* 0147F8 80013BF8 2484FFFF */ addiu $a0, $a0, -1 +/* 0147FC 80013BFC 28810003 */ slti $at, $a0, 3 +.L80013C00: +/* 014800 80013C00 14200002 */ bnez $at, .L80013C0C +/* 014804 80013C04 00000000 */ nop +/* 014808 80013C08 24040002 */ li $a0, 2 +.L80013C0C: +/* 01480C 80013C0C 44849000 */ mtc1 $a0, $f18 +/* 014810 80013C10 3C01800E */ lui $at, %hi(D_800E557C) # $at, 0x800e +/* 014814 80013C14 468091A0 */ cvt.s.w $f6, $f18 +/* 014818 80013C18 C4255578 */ lwc1 $f5, %lo(D_800E5578)($at) +/* 01481C 80013C1C C424557C */ lwc1 $f4, %lo(D_800E557C)($at) +/* 014820 80013C20 46003221 */ cvt.d.s $f8, $f6 +/* 014824 80013C24 46244282 */ mul.d $f10, $f8, $f4 +/* 014828 80013C28 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 01482C 80013C2C 44818800 */ mtc1 $at, $f17 +/* 014830 80013C30 44808000 */ mtc1 $zero, $f16 +/* 014834 80013C34 8E020000 */ lw $v0, ($s0) +/* 014838 80013C38 46305480 */ add.d $f18, $f10, $f16 +/* 01483C 80013C3C C4460008 */ lwc1 $f6, 8($v0) +/* 014840 80013C40 46209020 */ cvt.s.d $f0, $f18 +/* 014844 80013C44 00047080 */ sll $t6, $a0, 2 +/* 014848 80013C48 46003202 */ mul.s $f8, $f6, $f0 +/* 01484C 80013C4C 2407FF00 */ li $a3, -256 +/* 014850 80013C50 02202025 */ move $a0, $s1 +/* 014854 80013C54 E4480008 */ swc1 $f8, 8($v0) +/* 014858 80013C58 8E020000 */ lw $v0, ($s0) +/* 01485C 80013C5C 46006302 */ mul.s $f12, $f12, $f0 +/* 014860 80013C60 8C4D0068 */ lw $t5, 0x68($v0) +/* 014864 80013C64 00000000 */ nop +/* 014868 80013C68 01AE7821 */ addu $t7, $t5, $t6 +/* 01486C 80013C6C 8DE50000 */ lw $a1, ($t7) +/* 014870 80013C70 3C0DFB00 */ lui $t5, 0xfb00 +/* 014874 80013C74 8CB80000 */ lw $t8, ($a1) +/* 014878 80013C78 00000000 */ nop +/* 01487C 80013C7C AFB8005C */ sw $t8, 0x5c($sp) +/* 014880 80013C80 80B9001F */ lb $t9, 0x1f($a1) +/* 014884 80013C84 00000000 */ nop +/* 014888 80013C88 00194880 */ sll $t1, $t9, 2 +/* 01488C 80013C8C 00A95021 */ addu $t2, $a1, $t1 +/* 014890 80013C90 8D4B0004 */ lw $t3, 4($t2) +/* 014894 80013C94 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 +/* 014898 80013C98 AC4B0044 */ sw $t3, 0x44($v0) +/* 01489C 80013C9C 8E230000 */ lw $v1, ($s1) +/* 0148A0 80013CA0 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 +/* 0148A4 80013CA4 246C0008 */ addiu $t4, $v1, 8 +/* 0148A8 80013CA8 AE2C0000 */ sw $t4, ($s1) +/* 0148AC 80013CAC AC670004 */ sw $a3, 4($v1) +/* 0148B0 80013CB0 AC6D0000 */ sw $t5, ($v1) +/* 0148B4 80013CB4 850E018E */ lh $t6, 0x18e($t0) +/* 0148B8 80013CB8 3C0DFA00 */ lui $t5, 0xfa00 +/* 0148BC 80013CBC 29C10040 */ slti $at, $t6, 0x40 +/* 0148C0 80013CC0 1020000D */ beqz $at, .L80013CF8 +/* 0148C4 80013CC4 00000000 */ nop +/* 0148C8 80013CC8 8E230000 */ lw $v1, ($s1) +/* 0148CC 80013CCC 3C18FA00 */ lui $t8, 0xfa00 +/* 0148D0 80013CD0 246F0008 */ addiu $t7, $v1, 8 +/* 0148D4 80013CD4 AE2F0000 */ sw $t7, ($s1) +/* 0148D8 80013CD8 AC780000 */ sw $t8, ($v1) +/* 0148DC 80013CDC 8519018E */ lh $t9, 0x18e($t0) +/* 0148E0 80013CE0 00000000 */ nop +/* 0148E4 80013CE4 00194880 */ sll $t1, $t9, 2 +/* 0148E8 80013CE8 312A00FF */ andi $t2, $t1, 0xff +/* 0148EC 80013CEC 01475825 */ or $t3, $t2, $a3 +/* 0148F0 80013CF0 10000007 */ b .L80013D10 +/* 0148F4 80013CF4 AC6B0004 */ sw $t3, 4($v1) +.L80013CF8: +/* 0148F8 80013CF8 8E230000 */ lw $v1, ($s1) +/* 0148FC 80013CFC 240EFFFF */ li $t6, -1 +/* 014900 80013D00 246C0008 */ addiu $t4, $v1, 8 +/* 014904 80013D04 AE2C0000 */ sw $t4, ($s1) +/* 014908 80013D08 AC6E0004 */ sw $t6, 4($v1) +/* 01490C 80013D0C AC6D0000 */ sw $t5, ($v1) +.L80013D10: +/* 014910 80013D10 8E060000 */ lw $a2, ($s0) +/* 014914 80013D14 8FA70074 */ lw $a3, 0x74($sp) +/* 014918 80013D18 E7AC0010 */ swc1 $f12, 0x10($sp) +/* 01491C 80013D1C 0C01A3EA */ jal func_80068FA8 +/* 014920 80013D20 AFA80064 */ sw $t0, 0x64($sp) +/* 014924 80013D24 8FA4005C */ lw $a0, 0x5c($sp) +/* 014928 80013D28 8E050000 */ lw $a1, ($s0) +/* 01492C 80013D2C 00003025 */ move $a2, $zero +/* 014930 80013D30 24070004 */ li $a3, 4 +/* 014934 80013D34 0C0050EA */ jal func_800143A8 +/* 014938 80013D38 AFA00010 */ sw $zero, 0x10($sp) +/* 01493C 80013D3C 8E230000 */ lw $v1, ($s1) +/* 014940 80013D40 8FA80064 */ lw $t0, 0x64($sp) +/* 014944 80013D44 246F0008 */ addiu $t7, $v1, 8 +/* 014948 80013D48 AE2F0000 */ sw $t7, ($s1) +/* 01494C 80013D4C 3C18BC00 */ lui $t8, (0xBC00000A >> 16) # lui $t8, 0xbc00 +/* 014950 80013D50 3718000A */ ori $t8, (0xBC00000A & 0xFFFF) # ori $t8, $t8, 0xa +/* 014954 80013D54 AC780000 */ sw $t8, ($v1) +/* 014958 80013D58 AC600004 */ sw $zero, 4($v1) +/* 01495C 80013D5C 8519018E */ lh $t9, 0x18e($t0) +/* 014960 80013D60 3C0AFA00 */ lui $t2, 0xfa00 +/* 014964 80013D64 2B210040 */ slti $at, $t9, 0x40 +/* 014968 80013D68 10200007 */ beqz $at, .L80013D88 +/* 01496C 80013D6C 00000000 */ nop +/* 014970 80013D70 8E230000 */ lw $v1, ($s1) +/* 014974 80013D74 240BFFFF */ li $t3, -1 +/* 014978 80013D78 24690008 */ addiu $t1, $v1, 8 +/* 01497C 80013D7C AE290000 */ sw $t1, ($s1) +/* 014980 80013D80 AC6B0004 */ sw $t3, 4($v1) +/* 014984 80013D84 AC6A0000 */ sw $t2, ($v1) +.L80013D88: +/* 014988 80013D88 8E2C0000 */ lw $t4, ($s1) +/* 01498C 80013D8C 8FAD0068 */ lw $t5, 0x68($sp) +/* 014990 80013D90 3C0E8012 */ lui $t6, %hi(D_8011AE90) # $t6, 0x8012 +/* 014994 80013D94 ADAC0000 */ sw $t4, ($t5) +/* 014998 80013D98 8FAF006C */ lw $t7, 0x6c($sp) +/* 01499C 80013D9C 8DCEAE90 */ lw $t6, %lo(D_8011AE90)($t6) +/* 0149A0 80013DA0 3C188012 */ lui $t8, %hi(D_8011AE94) # $t8, 0x8012 +/* 0149A4 80013DA4 ADEE0000 */ sw $t6, ($t7) +/* 0149A8 80013DA8 8FB90070 */ lw $t9, 0x70($sp) +/* 0149AC 80013DAC 8F18AE94 */ lw $t8, %lo(D_8011AE94)($t8) +/* 0149B0 80013DB0 00000000 */ nop +/* 0149B4 80013DB4 AF380000 */ sw $t8, ($t9) +/* 0149B8 80013DB8 8FBF0024 */ lw $ra, 0x24($sp) +.L80013DBC: +/* 0149BC 80013DBC 8FB0001C */ lw $s0, 0x1c($sp) +/* 0149C0 80013DC0 8FB10020 */ lw $s1, 0x20($sp) +/* 0149C4 80013DC4 03E00008 */ jr $ra +/* 0149C8 80013DC8 27BD0068 */ addiu $sp, $sp, 0x68 + diff --git a/asm/non_matchings/unknown_005740/func_80013DCC.s b/asm/non_matchings/unknown_005740/func_80013DCC.s new file mode 100644 index 00000000..e5bb4711 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80013DCC.s @@ -0,0 +1,184 @@ +glabel func_80013DCC +/* 0149CC 80013DCC 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 0149D0 80013DD0 AFBF0024 */ sw $ra, 0x24($sp) +/* 0149D4 80013DD4 AFB10020 */ sw $s1, 0x20($sp) +/* 0149D8 80013DD8 AFB0001C */ sw $s0, 0x1c($sp) +/* 0149DC 80013DDC AFA40058 */ sw $a0, 0x58($sp) +/* 0149E0 80013DE0 AFA5005C */ sw $a1, 0x5c($sp) +/* 0149E4 80013DE4 AFA60060 */ sw $a2, 0x60($sp) +/* 0149E8 80013DE8 AFA70064 */ sw $a3, 0x64($sp) +/* 0149EC 80013DEC 8CEB0064 */ lw $t3, 0x64($a3) +/* 0149F0 80013DF0 3C188012 */ lui $t8, 0x8012 +/* 0149F4 80013DF4 81680002 */ lb $t0, 2($t3) +/* 0149F8 80013DF8 3C10800E */ lui $s0, %hi(D_800DC764) # $s0, 0x800e +/* 0149FC 80013DFC 00087880 */ sll $t7, $t0, 2 +/* 014A00 80013E00 030FC021 */ addu $t8, $t8, $t7 +/* 014A04 80013E04 9318B07B */ lbu $t8, -0x4f85($t8) +/* 014A08 80013E08 2610C764 */ addiu $s0, %lo(D_800DC764) # addiu $s0, $s0, -0x389c +/* 014A0C 80013E0C 1300009C */ beqz $t8, .L80014080 +/* 014A10 80013E10 8FBF0024 */ lw $ra, 0x24($sp) +/* 014A14 80013E14 8E190000 */ lw $t9, ($s0) +/* 014A18 80013E18 3C118012 */ lui $s1, %hi(D_8011AE8C) # $s1, 0x8012 +/* 014A1C 80013E1C 13200097 */ beqz $t9, .L8001407C +/* 014A20 80013E20 2631AE8C */ addiu $s1, %lo(D_8011AE8C) # addiu $s1, $s1, -0x5174 +/* 014A24 80013E24 8C8D0000 */ lw $t5, ($a0) +/* 014A28 80013E28 3C018012 */ lui $at, %hi(D_8011AE90) # $at, 0x8012 +/* 014A2C 80013E2C AE2D0000 */ sw $t5, ($s1) +/* 014A30 80013E30 8CAF0000 */ lw $t7, ($a1) +/* 014A34 80013E34 24040016 */ li $a0, 22 +/* 014A38 80013E38 AC2FAE90 */ sw $t7, %lo(D_8011AE90)($at) +/* 014A3C 80013E3C 8CD90000 */ lw $t9, ($a2) +/* 014A40 80013E40 3C018012 */ lui $at, %hi(D_8011AE94) # $at, 0x8012 +/* 014A44 80013E44 AFAB0054 */ sw $t3, 0x54($sp) +/* 014A48 80013E48 0C0078A7 */ jal func_8001E29C +/* 014A4C 80013E4C AC39AE94 */ sw $t9, %lo(D_8011AE94)($at) +/* 014A50 80013E50 8FAB0054 */ lw $t3, 0x54($sp) +/* 014A54 80013E54 00000000 */ nop +/* 014A58 80013E58 816401D6 */ lb $a0, 0x1d6($t3) +/* 014A5C 80013E5C 00000000 */ nop +/* 014A60 80013E60 04800003 */ bltz $a0, .L80013E70 +/* 014A64 80013E64 28810003 */ slti $at, $a0, 3 +/* 014A68 80013E68 14200002 */ bnez $at, .L80013E74 +/* 014A6C 80013E6C 00000000 */ nop +.L80013E70: +/* 014A70 80013E70 00002025 */ move $a0, $zero +.L80013E74: +/* 014A74 80013E74 81680002 */ lb $t0, 2($t3) +/* 014A78 80013E78 00046080 */ sll $t4, $a0, 2 +/* 014A7C 80013E7C 01846021 */ addu $t4, $t4, $a0 +/* 014A80 80013E80 000C6880 */ sll $t5, $t4, 2 +/* 014A84 80013E84 2901000B */ slti $at, $t0, 0xb +/* 014A88 80013E88 14200002 */ bnez $at, .L80013E94 +/* 014A8C 80013E8C 01A21821 */ addu $v1, $t5, $v0 +/* 014A90 80013E90 00004025 */ move $t0, $zero +.L80013E94: +/* 014A94 80013E94 C4640000 */ lwc1 $f4, ($v1) +/* 014A98 80013E98 8E0E0000 */ lw $t6, ($s0) +/* 014A9C 80013E9C 3C0C8012 */ lui $t4, %hi(D_8011B078) # $t4, 0x8012 +/* 014AA0 80013EA0 E5C4000C */ swc1 $f4, 0xc($t6) +/* 014AA4 80013EA4 8E0F0000 */ lw $t7, ($s0) +/* 014AA8 80013EA8 C4660004 */ lwc1 $f6, 4($v1) +/* 014AAC 80013EAC 258CB078 */ addiu $t4, %lo(D_8011B078) # addiu $t4, $t4, -0x4f88 +/* 014AB0 80013EB0 E5E60010 */ swc1 $f6, 0x10($t7) +/* 014AB4 80013EB4 8E180000 */ lw $t8, ($s0) +/* 014AB8 80013EB8 C4680008 */ lwc1 $f8, 8($v1) +/* 014ABC 80013EBC 0008C880 */ sll $t9, $t0, 2 +/* 014AC0 80013EC0 032C4821 */ addu $t1, $t9, $t4 +/* 014AC4 80013EC4 E7080014 */ swc1 $f8, 0x14($t8) +/* 014AC8 80013EC8 912D0001 */ lbu $t5, 1($t1) +/* 014ACC 80013ECC 2463000C */ addiu $v1, $v1, 0xc +/* 014AD0 80013ED0 000D7680 */ sll $t6, $t5, 0x1a +/* 014AD4 80013ED4 000E2403 */ sra $a0, $t6, 0x10 +/* 014AD8 80013ED8 AFA30048 */ sw $v1, 0x48($sp) +/* 014ADC 80013EDC AFAB0054 */ sw $t3, 0x54($sp) +/* 014AE0 80013EE0 0C01C1FE */ jal func_800707F8 +/* 014AE4 80013EE4 AFA90028 */ sw $t1, 0x28($sp) +/* 014AE8 80013EE8 3C01800E */ lui $at, %hi(D_800E5580) # $at, 0x800e +/* 014AEC 80013EEC C42A5580 */ lwc1 $f10, %lo(D_800E5580)($at) +/* 014AF0 80013EF0 3C01800E */ lui $at, %hi(D_800E5584) # $at, 0x800e +/* 014AF4 80013EF4 460A0402 */ mul.s $f16, $f0, $f10 +/* 014AF8 80013EF8 8FA30048 */ lw $v1, 0x48($sp) +/* 014AFC 80013EFC C4325584 */ lwc1 $f18, %lo(D_800E5584)($at) +/* 014B00 80013F00 C4640000 */ lwc1 $f4, ($v1) +/* 014B04 80013F04 46128080 */ add.s $f2, $f16, $f18 +/* 014B08 80013F08 8E180000 */ lw $t8, ($s0) +/* 014B0C 80013F0C 46022182 */ mul.s $f6, $f4, $f2 +/* 014B10 80013F10 8FA90028 */ lw $t1, 0x28($sp) +/* 014B14 80013F14 8FAB0054 */ lw $t3, 0x54($sp) +/* 014B18 80013F18 3C07800E */ lui $a3, 0x800e +/* 014B1C 80013F1C E7060008 */ swc1 $f6, 8($t8) +/* 014B20 80013F20 C4680004 */ lwc1 $f8, 4($v1) +/* 014B24 80013F24 91390002 */ lbu $t9, 2($t1) +/* 014B28 80013F28 46024282 */ mul.s $f10, $f8, $f2 +/* 014B2C 80013F2C 8E0D0000 */ lw $t5, ($s0) +/* 014B30 80013F30 00196300 */ sll $t4, $t9, 0xc +/* 014B34 80013F34 2401FF00 */ li $at, -256 +/* 014B38 80013F38 E7AA0038 */ swc1 $f10, 0x38($sp) +/* 014B3C 80013F3C A5AC0000 */ sh $t4, ($t5) +/* 014B40 80013F40 8E0E0000 */ lw $t6, ($s0) +/* 014B44 80013F44 02202025 */ move $a0, $s1 +/* 014B48 80013F48 A5C00002 */ sh $zero, 2($t6) +/* 014B4C 80013F4C 8E0F0000 */ lw $t7, ($s0) +/* 014B50 80013F50 24050002 */ li $a1, 2 +/* 014B54 80013F54 A5E00004 */ sh $zero, 4($t7) +/* 014B58 80013F58 8E080000 */ lw $t0, ($s0) +/* 014B5C 80013F5C 24630004 */ addiu $v1, $v1, 4 +/* 014B60 80013F60 8D180068 */ lw $t8, 0x68($t0) +/* 014B64 80013F64 00000000 */ nop +/* 014B68 80013F68 8F020000 */ lw $v0, ($t8) +/* 014B6C 80013F6C 00000000 */ nop +/* 014B70 80013F70 8C590000 */ lw $t9, ($v0) +/* 014B74 80013F74 00000000 */ nop +/* 014B78 80013F78 AFB9004C */ sw $t9, 0x4c($sp) +/* 014B7C 80013F7C 804C001F */ lb $t4, 0x1f($v0) +/* 014B80 80013F80 00000000 */ nop +/* 014B84 80013F84 000C6880 */ sll $t5, $t4, 2 +/* 014B88 80013F88 004D7021 */ addu $t6, $v0, $t5 +/* 014B8C 80013F8C 8DCF0004 */ lw $t7, 4($t6) +/* 014B90 80013F90 00000000 */ nop +/* 014B94 80013F94 AD0F0044 */ sw $t7, 0x44($t0) +/* 014B98 80013F98 912A0001 */ lbu $t2, 1($t1) +/* 014B9C 80013F9C 816C0184 */ lb $t4, 0x184($t3) +/* 014BA0 80013FA0 000AC0C0 */ sll $t8, $t2, 3 +/* 014BA4 80013FA4 000C6880 */ sll $t5, $t4, 2 +/* 014BA8 80013FA8 3319007F */ andi $t9, $t8, 0x7f +/* 014BAC 80013FAC 00ED3821 */ addu $a3, $a3, $t5 +/* 014BB0 80013FB0 272A0080 */ addiu $t2, $t9, 0x80 +/* 014BB4 80013FB4 8CE7C84C */ lw $a3, -0x37b4($a3) +/* 014BB8 80013FB8 0C01FD65 */ jal func_8007F594 +/* 014BBC 80013FBC 01413025 */ or $a2, $t2, $at +/* 014BC0 80013FC0 C7B00038 */ lwc1 $f16, 0x38($sp) +/* 014BC4 80013FC4 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 +/* 014BC8 80013FC8 8E060000 */ lw $a2, ($s0) +/* 014BCC 80013FCC 8FA70064 */ lw $a3, 0x64($sp) +/* 014BD0 80013FD0 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 +/* 014BD4 80013FD4 02202025 */ move $a0, $s1 +/* 014BD8 80013FD8 0C01A3EA */ jal func_80068FA8 +/* 014BDC 80013FDC E7B00010 */ swc1 $f16, 0x10($sp) +/* 014BE0 80013FE0 240E0001 */ li $t6, 1 +/* 014BE4 80013FE4 3C01800E */ lui $at, %hi(D_800DC720) # $at, 0x800e +/* 014BE8 80013FE8 AC2EC720 */ sw $t6, %lo(D_800DC720)($at) +/* 014BEC 80013FEC 8E050000 */ lw $a1, ($s0) +/* 014BF0 80013FF0 8FA4004C */ lw $a0, 0x4c($sp) +/* 014BF4 80013FF4 00003025 */ move $a2, $zero +/* 014BF8 80013FF8 24070004 */ li $a3, 4 +/* 014BFC 80013FFC 0C0050EA */ jal func_800143A8 +/* 014C00 80014000 AFA00010 */ sw $zero, 0x10($sp) +/* 014C04 80014004 3C01800E */ lui $at, %hi(D_800DC720) # $at, 0x800e +/* 014C08 80014008 AC20C720 */ sw $zero, %lo(D_800DC720)($at) +/* 014C0C 8001400C 8E230000 */ lw $v1, ($s1) +/* 014C10 80014010 3C18BC00 */ lui $t8, (0xBC00000A >> 16) # lui $t8, 0xbc00 +/* 014C14 80014014 246F0008 */ addiu $t7, $v1, 8 +/* 014C18 80014018 AE2F0000 */ sw $t7, ($s1) +/* 014C1C 8001401C 3718000A */ ori $t8, (0xBC00000A & 0xFFFF) # ori $t8, $t8, 0xa +/* 014C20 80014020 AC780000 */ sw $t8, ($v1) +/* 014C24 80014024 AC600004 */ sw $zero, 4($v1) +/* 014C28 80014028 8E230000 */ lw $v1, ($s1) +/* 014C2C 8001402C 3C0CFA00 */ lui $t4, 0xfa00 +/* 014C30 80014030 24790008 */ addiu $t9, $v1, 8 +/* 014C34 80014034 AE390000 */ sw $t9, ($s1) +/* 014C38 80014038 240DFFFF */ li $t5, -1 +/* 014C3C 8001403C 02202025 */ move $a0, $s1 +/* 014C40 80014040 AC6D0004 */ sw $t5, 4($v1) +/* 014C44 80014044 0C01ECF4 */ jal func_8007B3D0 +/* 014C48 80014048 AC6C0000 */ sw $t4, ($v1) +/* 014C4C 8001404C 8E2E0000 */ lw $t6, ($s1) +/* 014C50 80014050 8FAF0058 */ lw $t7, 0x58($sp) +/* 014C54 80014054 3C188012 */ lui $t8, %hi(D_8011AE90) # $t8, 0x8012 +/* 014C58 80014058 ADEE0000 */ sw $t6, ($t7) +/* 014C5C 8001405C 8FB9005C */ lw $t9, 0x5c($sp) +/* 014C60 80014060 8F18AE90 */ lw $t8, %lo(D_8011AE90)($t8) +/* 014C64 80014064 3C0C8012 */ lui $t4, %hi(D_8011AE94) # $t4, 0x8012 +/* 014C68 80014068 AF380000 */ sw $t8, ($t9) +/* 014C6C 8001406C 8FAD0060 */ lw $t5, 0x60($sp) +/* 014C70 80014070 8D8CAE94 */ lw $t4, %lo(D_8011AE94)($t4) +/* 014C74 80014074 00000000 */ nop +/* 014C78 80014078 ADAC0000 */ sw $t4, ($t5) +.L8001407C: +/* 014C7C 8001407C 8FBF0024 */ lw $ra, 0x24($sp) +.L80014080: +/* 014C80 80014080 8FB0001C */ lw $s0, 0x1c($sp) +/* 014C84 80014084 8FB10020 */ lw $s1, 0x20($sp) +/* 014C88 80014088 03E00008 */ jr $ra +/* 014C8C 8001408C 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/unknown_005740/func_80014090.s b/asm/non_matchings/unknown_005740/func_80014090.s new file mode 100644 index 00000000..251c7f32 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80014090.s @@ -0,0 +1,149 @@ +glabel func_80014090 +/* 014C90 80014090 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 014C94 80014094 AFBF002C */ sw $ra, 0x2c($sp) +/* 014C98 80014098 AFBE0028 */ sw $fp, 0x28($sp) +/* 014C9C 8001409C AFB70024 */ sw $s7, 0x24($sp) +/* 014CA0 800140A0 AFB60020 */ sw $s6, 0x20($sp) +/* 014CA4 800140A4 AFB5001C */ sw $s5, 0x1c($sp) +/* 014CA8 800140A8 AFB40018 */ sw $s4, 0x18($sp) +/* 014CAC 800140AC AFB30014 */ sw $s3, 0x14($sp) +/* 014CB0 800140B0 AFB20010 */ sw $s2, 0x10($sp) +/* 014CB4 800140B4 AFB1000C */ sw $s1, 0xc($sp) +/* 014CB8 800140B8 AFB00008 */ sw $s0, 8($sp) +/* 014CBC 800140BC 8C820040 */ lw $v0, 0x40($a0) +/* 014CC0 800140C0 240600FF */ li $a2, 255 +/* 014CC4 800140C4 804E0074 */ lb $t6, 0x74($v0) +/* 014CC8 800140C8 80590075 */ lb $t9, 0x75($v0) +/* 014CCC 800140CC 01C50019 */ multu $t6, $a1 +/* 014CD0 800140D0 90430073 */ lbu $v1, 0x73($v0) +/* 014CD4 800140D4 90550072 */ lbu $s5, 0x72($v0) +/* 014CD8 800140D8 0080F825 */ move $ra, $a0 +/* 014CDC 800140DC 00008012 */ mflo $s0 +/* 014CE0 800140E0 00107C00 */ sll $t7, $s0, 0x10 +/* 014CE4 800140E4 000F8403 */ sra $s0, $t7, 0x10 +/* 014CE8 800140E8 03250019 */ multu $t9, $a1 +/* 014CEC 800140EC 00008812 */ mflo $s1 +/* 014CF0 800140F0 00117400 */ sll $t6, $s1, 0x10 +/* 014CF4 800140F4 10660006 */ beq $v1, $a2, .L80014110 +/* 014CF8 800140F8 000E8C03 */ sra $s1, $t6, 0x10 +/* 014CFC 800140FC 80580055 */ lb $t8, 0x55($v0) +/* 014D00 80014100 00000000 */ nop +/* 014D04 80014104 0078082A */ slt $at, $v1, $t8 +/* 014D08 80014108 1020005F */ beqz $at, .L80014288 +/* 014D0C 8001410C 00000000 */ nop +.L80014110: +/* 014D10 80014110 14660004 */ bne $v1, $a2, .L80014124 +/* 014D14 80014114 247E0001 */ addiu $fp, $v1, 1 +/* 014D18 80014118 805E0055 */ lb $fp, 0x55($v0) +/* 014D1C 8001411C 10000001 */ b .L80014124 +/* 014D20 80014120 00001825 */ move $v1, $zero +.L80014124: +/* 014D24 80014124 007E082A */ slt $at, $v1, $fp +/* 014D28 80014128 10200057 */ beqz $at, .L80014288 +/* 014D2C 8001412C 0060B825 */ move $s7, $v1 +/* 014D30 80014130 0003B080 */ sll $s6, $v1, 2 +.L80014134: +/* 014D34 80014134 8FF90068 */ lw $t9, 0x68($ra) +/* 014D38 80014138 26F70001 */ addiu $s7, $s7, 1 +/* 014D3C 8001413C 03367021 */ addu $t6, $t9, $s6 +/* 014D40 80014140 8DC20000 */ lw $v0, ($t6) +/* 014D44 80014144 0015C8C0 */ sll $t9, $s5, 3 +/* 014D48 80014148 8C4C0000 */ lw $t4, ($v0) +/* 014D4C 8001414C 00000000 */ nop +/* 014D50 80014150 858F0022 */ lh $t7, 0x22($t4) +/* 014D54 80014154 00000000 */ nop +/* 014D58 80014158 02AF082A */ slt $at, $s5, $t7 +/* 014D5C 8001415C 10200048 */ beqz $at, .L80014280 +/* 014D60 80014160 00000000 */ nop +/* 014D64 80014164 8D980000 */ lw $t8, ($t4) +/* 014D68 80014168 85830028 */ lh $v1, 0x28($t4) +/* 014D6C 8001416C 03197021 */ addu $t6, $t8, $t9 +/* 014D70 80014170 8DC20000 */ lw $v0, ($t6) +/* 014D74 80014174 00009025 */ move $s2, $zero +/* 014D78 80014178 904F0000 */ lbu $t7, ($v0) +/* 014D7C 8001417C 904E0001 */ lbu $t6, 1($v0) +/* 014D80 80014180 000FC540 */ sll $t8, $t7, 0x15 +/* 014D84 80014184 000E7D40 */ sll $t7, $t6, 0x15 +/* 014D88 80014188 00189C03 */ sra $s3, $t8, 0x10 +/* 014D8C 8001418C 1860003C */ blez $v1, .L80014280 +/* 014D90 80014190 000FA403 */ sra $s4, $t7, 0x10 +/* 014D94 80014194 8D890038 */ lw $t1, 0x38($t4) +/* 014D98 80014198 00006825 */ move $t5, $zero +.L8001419C: +/* 014D9C 8001419C 91390000 */ lbu $t9, ($t1) +/* 014DA0 800141A0 26520001 */ addiu $s2, $s2, 1 +/* 014DA4 800141A4 16B90033 */ bne $s5, $t9, .L80014274 +/* 014DA8 800141A8 0243082A */ slt $at, $s2, $v1 +/* 014DAC 800141AC 85250004 */ lh $a1, 4($t1) +/* 014DB0 800141B0 852E0010 */ lh $t6, 0x10($t1) +/* 014DB4 800141B4 266AFFFF */ addiu $t2, $s3, -1 +/* 014DB8 800141B8 00AE082A */ slt $at, $a1, $t6 +/* 014DBC 800141BC 1020002C */ beqz $at, .L80014270 +/* 014DC0 800141C0 000A7C00 */ sll $t7, $t2, 0x10 +/* 014DC4 800141C4 268BFFFF */ addiu $t3, $s4, -1 +/* 014DC8 800141C8 000BCC00 */ sll $t9, $t3, 0x10 +/* 014DCC 800141CC 00195C03 */ sra $t3, $t9, 0x10 +/* 014DD0 800141D0 000F5403 */ sra $t2, $t7, 0x10 +.L800141D4: +/* 014DD4 800141D4 8D8F0008 */ lw $t7, 8($t4) +/* 014DD8 800141D8 0005C100 */ sll $t8, $a1, 4 +/* 014DDC 800141DC 01F81021 */ addu $v0, $t7, $t8 +/* 014DE0 800141E0 84430004 */ lh $v1, 4($v0) +/* 014DE4 800141E4 84440006 */ lh $a0, 6($v0) +/* 014DE8 800141E8 84590008 */ lh $t9, 8($v0) +/* 014DEC 800141EC 844F000C */ lh $t7, 0xc($v0) +/* 014DF0 800141F0 8458000A */ lh $t8, 0xa($v0) +/* 014DF4 800141F4 844E000E */ lh $t6, 0xe($v0) +/* 014DF8 800141F8 03234823 */ subu $t1, $t9, $v1 +/* 014DFC 800141FC 01E33823 */ subu $a3, $t7, $v1 +/* 014E00 80014200 0070C821 */ addu $t9, $v1, $s0 +/* 014E04 80014204 00917821 */ addu $t7, $a0, $s1 +/* 014E08 80014208 03043023 */ subu $a2, $t8, $a0 +/* 014E0C 8001420C 01C44023 */ subu $t0, $t6, $a0 +/* 014E10 80014210 032A7024 */ and $t6, $t9, $t2 +/* 014E14 80014214 01EBC024 */ and $t8, $t7, $t3 +/* 014E18 80014218 A44E0004 */ sh $t6, 4($v0) +/* 014E1C 8001421C A4580006 */ sh $t8, 6($v0) +/* 014E20 80014220 84430004 */ lh $v1, 4($v0) +/* 014E24 80014224 84440006 */ lh $a0, 6($v0) +/* 014E28 80014228 0069C821 */ addu $t9, $v1, $t1 +/* 014E2C 8001422C 00677821 */ addu $t7, $v1, $a3 +/* 014E30 80014230 00867021 */ addu $t6, $a0, $a2 +/* 014E34 80014234 0088C021 */ addu $t8, $a0, $t0 +/* 014E38 80014238 A4590008 */ sh $t9, 8($v0) +/* 014E3C 8001423C A44E000A */ sh $t6, 0xa($v0) +/* 014E40 80014240 A44F000C */ sh $t7, 0xc($v0) +/* 014E44 80014244 A458000E */ sh $t8, 0xe($v0) +/* 014E48 80014248 8D990038 */ lw $t9, 0x38($t4) +/* 014E4C 8001424C 24A50001 */ addiu $a1, $a1, 1 +/* 014E50 80014250 032D4821 */ addu $t1, $t9, $t5 +/* 014E54 80014254 852E0010 */ lh $t6, 0x10($t1) +/* 014E58 80014258 00000000 */ nop +/* 014E5C 8001425C 00AE082A */ slt $at, $a1, $t6 +/* 014E60 80014260 1420FFDC */ bnez $at, .L800141D4 +/* 014E64 80014264 00000000 */ nop +/* 014E68 80014268 85830028 */ lh $v1, 0x28($t4) +/* 014E6C 8001426C 00000000 */ nop +.L80014270: +/* 014E70 80014270 0243082A */ slt $at, $s2, $v1 +.L80014274: +/* 014E74 80014274 25AD000C */ addiu $t5, $t5, 0xc +/* 014E78 80014278 1420FFC8 */ bnez $at, .L8001419C +/* 014E7C 8001427C 2529000C */ addiu $t1, $t1, 0xc +.L80014280: +/* 014E80 80014280 16FEFFAC */ bne $s7, $fp, .L80014134 +/* 014E84 80014284 26D60004 */ addiu $s6, $s6, 4 +.L80014288: +/* 014E88 80014288 8FBF002C */ lw $ra, 0x2c($sp) +/* 014E8C 8001428C 8FB00008 */ lw $s0, 8($sp) +/* 014E90 80014290 8FB1000C */ lw $s1, 0xc($sp) +/* 014E94 80014294 8FB20010 */ lw $s2, 0x10($sp) +/* 014E98 80014298 8FB30014 */ lw $s3, 0x14($sp) +/* 014E9C 8001429C 8FB40018 */ lw $s4, 0x18($sp) +/* 014EA0 800142A0 8FB5001C */ lw $s5, 0x1c($sp) +/* 014EA4 800142A4 8FB60020 */ lw $s6, 0x20($sp) +/* 014EA8 800142A8 8FB70024 */ lw $s7, 0x24($sp) +/* 014EAC 800142AC 8FBE0028 */ lw $fp, 0x28($sp) +/* 014EB0 800142B0 03E00008 */ jr $ra +/* 014EB4 800142B4 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_005740/func_800142B8.s b/asm/non_matchings/unknown_005740/func_800142B8.s new file mode 100644 index 00000000..ed5f6a5a --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800142B8.s @@ -0,0 +1,69 @@ +glabel func_800142B8 +/* 014EB8 800142B8 3C028012 */ lui $v0, %hi(D_8011AE60) # $v0, 0x8012 +/* 014EBC 800142BC 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 +/* 014EC0 800142C0 8C42AE60 */ lw $v0, %lo(D_8011AE60)($v0) +/* 014EC4 800142C4 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) +/* 014EC8 800142C8 3C0A8012 */ lui $t2, %hi(D_8011AE58) # $t2, 0x8012 +/* 014ECC 800142CC 0043082A */ slt $at, $v0, $v1 +/* 014ED0 800142D0 10200033 */ beqz $at, .L800143A0 +/* 014ED4 800142D4 00022880 */ sll $a1, $v0, 2 +/* 014ED8 800142D8 254AAE58 */ addiu $t2, %lo(D_8011AE58) # addiu $t2, $t2, -0x51a8 +.L800142DC: +/* 014EDC 800142DC 8D4E0000 */ lw $t6, ($t2) +/* 014EE0 800142E0 24420001 */ addiu $v0, $v0, 1 +/* 014EE4 800142E4 01C57821 */ addu $t7, $t6, $a1 +/* 014EE8 800142E8 8DE40000 */ lw $a0, ($t7) +/* 014EEC 800142EC 00000000 */ nop +/* 014EF0 800142F0 84980006 */ lh $t8, 6($a0) +/* 014EF4 800142F4 00000000 */ nop +/* 014EF8 800142F8 33198000 */ andi $t9, $t8, 0x8000 +/* 014EFC 800142FC 17200026 */ bnez $t9, .L80014398 +/* 014F00 80014300 0043082A */ slt $at, $v0, $v1 +/* 014F04 80014304 8C860040 */ lw $a2, 0x40($a0) +/* 014F08 80014308 00000000 */ nop +/* 014F0C 8001430C 80CB0053 */ lb $t3, 0x53($a2) +/* 014F10 80014310 00000000 */ nop +/* 014F14 80014314 15600020 */ bnez $t3, .L80014398 +/* 014F18 80014318 0043082A */ slt $at, $v0, $v1 +/* 014F1C 8001431C 80C80055 */ lb $t0, 0x55($a2) +/* 014F20 80014320 00003025 */ move $a2, $zero +/* 014F24 80014324 1900001B */ blez $t0, .L80014394 +/* 014F28 80014328 00003825 */ move $a3, $zero +.L8001432C: +/* 014F2C 8001432C 8C8C0068 */ lw $t4, 0x68($a0) +/* 014F30 80014330 24E70001 */ addiu $a3, $a3, 1 +/* 014F34 80014334 01866821 */ addu $t5, $t4, $a2 +/* 014F38 80014338 8DA30000 */ lw $v1, ($t5) +/* 014F3C 8001433C 00000000 */ nop +/* 014F40 80014340 1060000F */ beqz $v1, .L80014380 +/* 014F44 80014344 00E8082A */ slt $at, $a3, $t0 +/* 014F48 80014348 80690020 */ lb $t1, 0x20($v1) +/* 014F4C 8001434C 00000000 */ nop +/* 014F50 80014350 1920000A */ blez $t1, .L8001437C +/* 014F54 80014354 312E0003 */ andi $t6, $t1, 3 +/* 014F58 80014358 A06E0020 */ sb $t6, 0x20($v1) +/* 014F5C 8001435C 806F0020 */ lb $t7, 0x20($v1) +/* 014F60 80014360 00000000 */ nop +/* 014F64 80014364 25F8FFFF */ addiu $t8, $t7, -1 +/* 014F68 80014368 A0780020 */ sb $t8, 0x20($v1) +/* 014F6C 8001436C 8C990040 */ lw $t9, 0x40($a0) +/* 014F70 80014370 00000000 */ nop +/* 014F74 80014374 83280055 */ lb $t0, 0x55($t9) +/* 014F78 80014378 00000000 */ nop +.L8001437C: +/* 014F7C 8001437C 00E8082A */ slt $at, $a3, $t0 +.L80014380: +/* 014F80 80014380 1420FFEA */ bnez $at, .L8001432C +/* 014F84 80014384 24C60004 */ addiu $a2, $a2, 4 +/* 014F88 80014388 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 +/* 014F8C 8001438C 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) +/* 014F90 80014390 00000000 */ nop +.L80014394: +/* 014F94 80014394 0043082A */ slt $at, $v0, $v1 +.L80014398: +/* 014F98 80014398 1420FFD0 */ bnez $at, .L800142DC +/* 014F9C 8001439C 24A50004 */ addiu $a1, $a1, 4 +.L800143A0: +/* 014FA0 800143A0 03E00008 */ jr $ra +/* 014FA4 800143A4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800143A8.s b/asm/non_matchings/unknown_005740/func_800143A8.s new file mode 100644 index 00000000..b31fa321 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800143A8.s @@ -0,0 +1,304 @@ +glabel func_800143A8 +/* 014FA8 800143A8 27BDFF50 */ addiu $sp, $sp, -0xb0 +/* 014FAC 800143AC 3C0E8012 */ lui $t6, %hi(D_8011AE8C) # $t6, 0x8012 +/* 014FB0 800143B0 8DCEAE8C */ lw $t6, %lo(D_8011AE8C)($t6) +/* 014FB4 800143B4 AFBF003C */ sw $ra, 0x3c($sp) +/* 014FB8 800143B8 AFBE0038 */ sw $fp, 0x38($sp) +/* 014FBC 800143BC AFB70034 */ sw $s7, 0x34($sp) +/* 014FC0 800143C0 AFB60030 */ sw $s6, 0x30($sp) +/* 014FC4 800143C4 AFB5002C */ sw $s5, 0x2c($sp) +/* 014FC8 800143C8 AFB40028 */ sw $s4, 0x28($sp) +/* 014FCC 800143CC AFB30024 */ sw $s3, 0x24($sp) +/* 014FD0 800143D0 AFB20020 */ sw $s2, 0x20($sp) +/* 014FD4 800143D4 AFB1001C */ sw $s1, 0x1c($sp) +/* 014FD8 800143D8 AFB00018 */ sw $s0, 0x18($sp) +/* 014FDC 800143DC AFA500B4 */ sw $a1, 0xb4($sp) +/* 014FE0 800143E0 AFA700BC */ sw $a3, 0xbc($sp) +/* 014FE4 800143E4 AFAE0074 */ sw $t6, 0x74($sp) +/* 014FE8 800143E8 84890028 */ lh $t1, 0x28($a0) +/* 014FEC 800143EC 0080B825 */ move $s7, $a0 +/* 014FF0 800143F0 00C9082A */ slt $at, $a2, $t1 +/* 014FF4 800143F4 00C05025 */ move $t2, $a2 +/* 014FF8 800143F8 102000F2 */ beqz $at, .L800147C4 +/* 014FFC 800143FC 0000F825 */ move $ra, $zero +/* 015000 80014400 00065880 */ sll $t3, $a2, 2 +/* 015004 80014404 01665823 */ subu $t3, $t3, $a2 +/* 015008 80014408 000B5880 */ sll $t3, $t3, 2 +/* 01500C 8001440C 3C1E0400 */ lui $fp, 0x400 +/* 015010 80014410 3C148000 */ lui $s4, 0x8000 +/* 015014 80014414 00E06825 */ move $t5, $a3 +.L80014418: +/* 015018 80014418 8EEF0038 */ lw $t7, 0x38($s7) +/* 01501C 8001441C 31B90004 */ andi $t9, $t5, 4 +/* 015020 80014420 01EB1021 */ addu $v0, $t7, $t3 +/* 015024 80014424 8C480008 */ lw $t0, 8($v0) +/* 015028 80014428 00000000 */ nop +/* 01502C 8001442C 31180004 */ andi $t8, $t0, 4 +/* 015030 80014430 13000003 */ beqz $t8, .L80014440 +/* 015034 80014434 31030100 */ andi $v1, $t0, 0x100 +/* 015038 80014438 132000DC */ beqz $t9, .L800147AC +/* 01503C 8001443C 00000000 */ nop +.L80014440: +/* 015040 80014440 146000D7 */ bnez $v1, .L800147A0 +/* 015044 80014444 240100FF */ li $at, 255 +/* 015048 80014448 84440002 */ lh $a0, 2($v0) +/* 01504C 8001444C 844E000E */ lh $t6, 0xe($v0) +/* 015050 80014450 8FAF00C0 */ lw $t7, 0xc0($sp) +/* 015054 80014454 84450004 */ lh $a1, 4($v0) +/* 015058 80014458 31A90004 */ andi $t1, $t5, 4 +/* 01505C 8001445C 11E00004 */ beqz $t7, .L80014470 +/* 015060 80014460 01C48823 */ subu $s1, $t6, $a0 +/* 015064 80014464 80500001 */ lb $s0, 1($v0) +/* 015068 80014468 10000003 */ b .L80014478 +/* 01506C 8001446C 84580010 */ lh $t8, 0x10($v0) +.L80014470: +/* 015070 80014470 02208025 */ move $s0, $s1 +/* 015074 80014474 84580010 */ lh $t8, 0x10($v0) +.L80014478: +/* 015078 80014478 8EF90008 */ lw $t9, 8($s7) +/* 01507C 8001447C 00057100 */ sll $t6, $a1, 4 +/* 015080 80014480 0305A823 */ subu $s5, $t8, $a1 +/* 015084 80014484 032E7821 */ addu $t7, $t9, $t6 +/* 015088 80014488 8FB800B4 */ lw $t8, 0xb4($sp) +/* 01508C 8001448C AFAF007C */ sw $t7, 0x7c($sp) +/* 015090 80014490 00047080 */ sll $t6, $a0, 2 +/* 015094 80014494 90430000 */ lbu $v1, ($v0) +/* 015098 80014498 8F190044 */ lw $t9, 0x44($t8) +/* 01509C 8001449C 01C47021 */ addu $t6, $t6, $a0 +/* 0150A0 800144A0 000E7040 */ sll $t6, $t6, 1 +/* 0150A4 800144A4 14610005 */ bne $v1, $at, .L800144BC +/* 0150A8 800144A8 032E9821 */ addu $s3, $t9, $t6 +/* 0150AC 800144AC 00003825 */ move $a3, $zero +/* 0150B0 800144B0 00009025 */ move $s2, $zero +/* 0150B4 800144B4 10000009 */ b .L800144DC +/* 0150B8 800144B8 0000B025 */ move $s6, $zero +.L800144BC: +/* 0150BC 800144BC 8EF80000 */ lw $t8, ($s7) +/* 0150C0 800144C0 90470007 */ lbu $a3, 7($v0) +/* 0150C4 800144C4 0003C8C0 */ sll $t9, $v1, 3 +/* 0150C8 800144C8 03197021 */ addu $t6, $t8, $t9 +/* 0150CC 800144CC 00077B80 */ sll $t7, $a3, 0xe +/* 0150D0 800144D0 8DD20000 */ lw $s2, ($t6) +/* 0150D4 800144D4 01E03825 */ move $a3, $t7 +/* 0150D8 800144D8 24160001 */ li $s6, 1 +.L800144DC: +/* 0150DC 800144DC 11200007 */ beqz $t1, .L800144FC +/* 0150E0 800144E0 35060008 */ ori $a2, $t0, 8 +/* 0150E4 800144E4 2401FFFB */ li $at, -5 +/* 0150E8 800144E8 01A17824 */ and $t7, $t5, $at +/* 0150EC 800144EC 010FC024 */ and $t8, $t0, $t7 +/* 0150F0 800144F0 17000002 */ bnez $t8, .L800144FC +/* 0150F4 800144F4 34D90004 */ ori $t9, $a2, 4 +/* 0150F8 800144F8 03203025 */ move $a2, $t9 +.L800144FC: +/* 0150FC 800144FC 3C0E800E */ lui $t6, %hi(D_800DC720) # $t6, 0x800e +/* 015100 80014500 8DCEC720 */ lw $t6, %lo(D_800DC720)($t6) +/* 015104 80014504 02402025 */ move $a0, $s2 +/* 015108 80014508 15C0000E */ bnez $t6, .L80014544 +/* 01510C 8001450C 00E02825 */ move $a1, $a3 +/* 015110 80014510 AFBF009C */ sw $ra, 0x9c($sp) +/* 015114 80014514 27A40074 */ addiu $a0, $sp, 0x74 +/* 015118 80014518 02402825 */ move $a1, $s2 +/* 01511C 8001451C AFAA00AC */ sw $t2, 0xac($sp) +/* 015120 80014520 0C01ED3A */ jal func_8007B4E8 +/* 015124 80014524 AFAB0048 */ sw $t3, 0x48($sp) +/* 015128 80014528 8FAA00AC */ lw $t2, 0xac($sp) +/* 01512C 8001452C 8FAB0048 */ lw $t3, 0x48($sp) +/* 015130 80014530 3C0CBC00 */ lui $t4, (0xBC00000A >> 16) # lui $t4, 0xbc00 +/* 015134 80014534 8FAD00BC */ lw $t5, 0xbc($sp) +/* 015138 80014538 8FBF009C */ lw $ra, 0x9c($sp) +/* 01513C 8001453C 1000001C */ b .L800145B0 +/* 015140 80014540 358C000A */ ori $t4, (0xBC00000A & 0xFFFF) # ori $t4, $t4, 0xa +.L80014544: +/* 015144 80014544 AFBF009C */ sw $ra, 0x9c($sp) +/* 015148 80014548 AFAA00AC */ sw $t2, 0xac($sp) +/* 01514C 8001454C 0C01ED1B */ jal func_8007B46C +/* 015150 80014550 AFAB0048 */ sw $t3, 0x48($sp) +/* 015154 80014554 3C068012 */ lui $a2, %hi(D_8011AE8C) # $a2, 0x8012 +/* 015158 80014558 24C6AE8C */ addiu $a2, %lo(D_8011AE8C) # addiu $a2, $a2, -0x5174 +/* 01515C 8001455C 8CC30000 */ lw $v1, ($a2) +/* 015160 80014560 3C010700 */ lui $at, 0x700 +/* 015164 80014564 246F0008 */ addiu $t7, $v1, 8 +/* 015168 80014568 ACCF0000 */ sw $t7, ($a2) +/* 01516C 8001456C 8445000A */ lh $a1, 0xa($v0) +/* 015170 80014570 8FAA00AC */ lw $t2, 0xac($sp) +/* 015174 80014574 30B800FF */ andi $t8, $a1, 0xff +/* 015178 80014578 0018CC00 */ sll $t9, $t8, 0x10 +/* 01517C 8001457C 000578C0 */ sll $t7, $a1, 3 +/* 015180 80014580 31F8FFFF */ andi $t8, $t7, 0xffff +/* 015184 80014584 03217025 */ or $t6, $t9, $at +/* 015188 80014588 8FAB0048 */ lw $t3, 0x48($sp) +/* 01518C 8001458C 8FAD00BC */ lw $t5, 0xbc($sp) +/* 015190 80014590 8FBF009C */ lw $ra, 0x9c($sp) +/* 015194 80014594 01D8C825 */ or $t9, $t6, $t8 +/* 015198 80014598 AC790000 */ sw $t9, ($v1) +/* 01519C 8001459C 8C4F000C */ lw $t7, 0xc($v0) +/* 0151A0 800145A0 3C0CBC00 */ lui $t4, (0xBC00000A >> 16) # lui $t4, 0xbc00 +/* 0151A4 800145A4 01F47021 */ addu $t6, $t7, $s4 +/* 0151A8 800145A8 358C000A */ ori $t4, (0xBC00000A & 0xFFFF) # ori $t4, $t4, 0xa +/* 0151AC 800145AC AC6E0004 */ sw $t6, 4($v1) +.L800145B0: +/* 0151B0 800145B0 16110015 */ bne $s0, $s1, .L80014608 +/* 0151B4 800145B4 3C010500 */ lui $at, 0x500 +/* 0151B8 800145B8 8FA30074 */ lw $v1, 0x74($sp) +/* 0151BC 800145BC 02741021 */ addu $v0, $s3, $s4 +/* 0151C0 800145C0 262FFFFF */ addiu $t7, $s1, -1 +/* 0151C4 800145C4 24790008 */ addiu $t9, $v1, 8 +/* 0151C8 800145C8 AFB90074 */ sw $t9, 0x74($sp) +/* 0151CC 800145CC 000F70C0 */ sll $t6, $t7, 3 +/* 0151D0 800145D0 30580006 */ andi $t8, $v0, 6 +/* 0151D4 800145D4 01D8C825 */ or $t9, $t6, $t8 +/* 0151D8 800145D8 332F00FF */ andi $t7, $t9, 0xff +/* 0151DC 800145DC 000F7400 */ sll $t6, $t7, 0x10 +/* 0151E0 800145E0 0011C8C0 */ sll $t9, $s1, 3 +/* 0151E4 800145E4 03317821 */ addu $t7, $t9, $s1 +/* 0151E8 800145E8 01DEC025 */ or $t8, $t6, $fp +/* 0151EC 800145EC 000F7040 */ sll $t6, $t7, 1 +/* 0151F0 800145F0 25D90008 */ addiu $t9, $t6, 8 +/* 0151F4 800145F4 332FFFFF */ andi $t7, $t9, 0xffff +/* 0151F8 800145F8 030F7025 */ or $t6, $t8, $t7 +/* 0151FC 800145FC AC6E0000 */ sw $t6, ($v1) +/* 015200 80014600 10000054 */ b .L80014754 +/* 015204 80014604 AC620004 */ sw $v0, 4($v1) +.L80014608: +/* 015208 80014608 1A000034 */ blez $s0, .L800146DC +/* 01520C 8001460C 24180080 */ li $t8, 128 +/* 015210 80014610 8FA40074 */ lw $a0, 0x74($sp) +/* 015214 80014614 02741021 */ addu $v0, $s3, $s4 +/* 015218 80014618 260FFFFF */ addiu $t7, $s0, -1 +/* 01521C 8001461C 24980008 */ addiu $t8, $a0, 8 +/* 015220 80014620 AFB80074 */ sw $t8, 0x74($sp) +/* 015224 80014624 000F70C0 */ sll $t6, $t7, 3 +/* 015228 80014628 30590006 */ andi $t9, $v0, 6 +/* 01522C 8001462C 01D9C025 */ or $t8, $t6, $t9 +/* 015230 80014630 330F00FF */ andi $t7, $t8, 0xff +/* 015234 80014634 000F7400 */ sll $t6, $t7, 0x10 +/* 015238 80014638 0010C0C0 */ sll $t8, $s0, 3 +/* 01523C 8001463C 03107821 */ addu $t7, $t8, $s0 +/* 015240 80014640 01DEC825 */ or $t9, $t6, $fp +/* 015244 80014644 000F7040 */ sll $t6, $t7, 1 +/* 015248 80014648 25D80008 */ addiu $t8, $t6, 8 +/* 01524C 8001464C 330FFFFF */ andi $t7, $t8, 0xffff +/* 015250 80014650 032F7025 */ or $t6, $t9, $t7 +/* 015254 80014654 AC8E0000 */ sw $t6, ($a0) +/* 015258 80014658 AC820004 */ sw $v0, 4($a0) +/* 01525C 8001465C 8FB80074 */ lw $t8, 0x74($sp) +/* 015260 80014660 240F0080 */ li $t7, 128 +/* 015264 80014664 27190008 */ addiu $t9, $t8, 8 +/* 015268 80014668 AFB90074 */ sw $t9, 0x74($sp) +/* 01526C 8001466C 0010C880 */ sll $t9, $s0, 2 +/* 015270 80014670 AF0F0004 */ sw $t7, 4($t8) +/* 015274 80014674 AF0C0000 */ sw $t4, ($t8) +/* 015278 80014678 8FA60074 */ lw $a2, 0x74($sp) +/* 01527C 8001467C 0330C821 */ addu $t9, $t9, $s0 +/* 015280 80014680 0019C840 */ sll $t9, $t9, 1 +/* 015284 80014684 02797821 */ addu $t7, $s3, $t9 +/* 015288 80014688 02301823 */ subu $v1, $s1, $s0 +/* 01528C 8001468C 24D80008 */ addiu $t8, $a2, 8 +/* 015290 80014690 AFB80074 */ sw $t8, 0x74($sp) +/* 015294 80014694 246EFFFF */ addiu $t6, $v1, -1 +/* 015298 80014698 01F43821 */ addu $a3, $t7, $s4 +/* 01529C 8001469C 30F90006 */ andi $t9, $a3, 6 +/* 0152A0 800146A0 000EC0C0 */ sll $t8, $t6, 3 +/* 0152A4 800146A4 03197825 */ or $t7, $t8, $t9 +/* 0152A8 800146A8 35EE0001 */ ori $t6, $t7, 1 +/* 0152AC 800146AC 31D800FF */ andi $t8, $t6, 0xff +/* 0152B0 800146B0 0018CC00 */ sll $t9, $t8, 0x10 +/* 0152B4 800146B4 000370C0 */ sll $t6, $v1, 3 +/* 0152B8 800146B8 01C3C021 */ addu $t8, $t6, $v1 +/* 0152BC 800146BC 033E7825 */ or $t7, $t9, $fp +/* 0152C0 800146C0 0018C840 */ sll $t9, $t8, 1 +/* 0152C4 800146C4 272E0008 */ addiu $t6, $t9, 8 +/* 0152C8 800146C8 31D8FFFF */ andi $t8, $t6, 0xffff +/* 0152CC 800146CC 01F8C825 */ or $t9, $t7, $t8 +/* 0152D0 800146D0 ACD90000 */ sw $t9, ($a2) +/* 0152D4 800146D4 10000019 */ b .L8001473C +/* 0152D8 800146D8 ACC70004 */ sw $a3, 4($a2) +.L800146DC: +/* 0152DC 800146DC 8FAE0074 */ lw $t6, 0x74($sp) +/* 0152E0 800146E0 02741021 */ addu $v0, $s3, $s4 +/* 0152E4 800146E4 25CF0008 */ addiu $t7, $t6, 8 +/* 0152E8 800146E8 AFAF0074 */ sw $t7, 0x74($sp) +/* 0152EC 800146EC ADD80004 */ sw $t8, 4($t6) +/* 0152F0 800146F0 ADCC0000 */ sw $t4, ($t6) +/* 0152F4 800146F4 8FA40074 */ lw $a0, 0x74($sp) +/* 0152F8 800146F8 262FFFFF */ addiu $t7, $s1, -1 +/* 0152FC 800146FC 248E0008 */ addiu $t6, $a0, 8 +/* 015300 80014700 AFAE0074 */ sw $t6, 0x74($sp) +/* 015304 80014704 000FC0C0 */ sll $t8, $t7, 3 +/* 015308 80014708 30590006 */ andi $t9, $v0, 6 +/* 01530C 8001470C 03197025 */ or $t6, $t8, $t9 +/* 015310 80014710 31CF00FF */ andi $t7, $t6, 0xff +/* 015314 80014714 000FC400 */ sll $t8, $t7, 0x10 +/* 015318 80014718 001170C0 */ sll $t6, $s1, 3 +/* 01531C 8001471C 01D17821 */ addu $t7, $t6, $s1 +/* 015320 80014720 031EC825 */ or $t9, $t8, $fp +/* 015324 80014724 000FC040 */ sll $t8, $t7, 1 +/* 015328 80014728 270E0008 */ addiu $t6, $t8, 8 +/* 01532C 8001472C 31CFFFFF */ andi $t7, $t6, 0xffff +/* 015330 80014730 032FC025 */ or $t8, $t9, $t7 +/* 015334 80014734 AC980000 */ sw $t8, ($a0) +/* 015338 80014738 AC820004 */ sw $v0, 4($a0) +.L8001473C: +/* 01533C 8001473C 8FAE0074 */ lw $t6, 0x74($sp) +/* 015340 80014740 240F0040 */ li $t7, 64 +/* 015344 80014744 25D90008 */ addiu $t9, $t6, 8 +/* 015348 80014748 AFB90074 */ sw $t9, 0x74($sp) +/* 01534C 8001474C ADCF0004 */ sw $t7, 4($t6) +/* 015350 80014750 ADCC0000 */ sw $t4, ($t6) +.L80014754: +/* 015354 80014754 8FA20074 */ lw $v0, 0x74($sp) +/* 015358 80014758 26B9FFFF */ addiu $t9, $s5, -1 +/* 01535C 8001475C 00197900 */ sll $t7, $t9, 4 +/* 015360 80014760 244E0008 */ addiu $t6, $v0, 8 +/* 015364 80014764 AFAE0074 */ sw $t6, 0x74($sp) +/* 015368 80014768 01F6C025 */ or $t8, $t7, $s6 +/* 01536C 8001476C 330E00FF */ andi $t6, $t8, 0xff +/* 015370 80014770 000ECC00 */ sll $t9, $t6, 0x10 +/* 015374 80014774 0015C100 */ sll $t8, $s5, 4 +/* 015378 80014778 330EFFFF */ andi $t6, $t8, 0xffff +/* 01537C 8001477C 03217825 */ or $t7, $t9, $at +/* 015380 80014780 01EEC825 */ or $t9, $t7, $t6 +/* 015384 80014784 AC590000 */ sw $t9, ($v0) +/* 015388 80014788 8FB8007C */ lw $t8, 0x7c($sp) +/* 01538C 8001478C 00000000 */ nop +/* 015390 80014790 03147821 */ addu $t7, $t8, $s4 +/* 015394 80014794 AC4F0004 */ sw $t7, 4($v0) +/* 015398 80014798 86E90028 */ lh $t1, 0x28($s7) +/* 01539C 8001479C 00000000 */ nop +.L800147A0: +/* 0153A0 800147A0 254A0001 */ addiu $t2, $t2, 1 +/* 0153A4 800147A4 10000002 */ b .L800147B0 +/* 0153A8 800147A8 256B000C */ addiu $t3, $t3, 0xc +.L800147AC: +/* 0153AC 800147AC 241F0001 */ li $ra, 1 +.L800147B0: +/* 0153B0 800147B0 0149082A */ slt $at, $t2, $t1 +/* 0153B4 800147B4 10200004 */ beqz $at, .L800147C8 +/* 0153B8 800147B8 0149082A */ slt $at, $t2, $t1 +/* 0153BC 800147BC 13E0FF16 */ beqz $ra, .L80014418 +/* 0153C0 800147C0 00000000 */ nop +.L800147C4: +/* 0153C4 800147C4 0149082A */ slt $at, $t2, $t1 +.L800147C8: +/* 0153C8 800147C8 14200003 */ bnez $at, .L800147D8 +/* 0153CC 800147CC 8FAE0074 */ lw $t6, 0x74($sp) +/* 0153D0 800147D0 240AFFFF */ li $t2, -1 +/* 0153D4 800147D4 8FAE0074 */ lw $t6, 0x74($sp) +.L800147D8: +/* 0153D8 800147D8 8FBF003C */ lw $ra, 0x3c($sp) +/* 0153DC 800147DC 3C018012 */ lui $at, 0x8012 +/* 0153E0 800147E0 8FB00018 */ lw $s0, 0x18($sp) +/* 0153E4 800147E4 8FB1001C */ lw $s1, 0x1c($sp) +/* 0153E8 800147E8 8FB20020 */ lw $s2, 0x20($sp) +/* 0153EC 800147EC 8FB30024 */ lw $s3, 0x24($sp) +/* 0153F0 800147F0 8FB40028 */ lw $s4, 0x28($sp) +/* 0153F4 800147F4 8FB5002C */ lw $s5, 0x2c($sp) +/* 0153F8 800147F8 8FB60030 */ lw $s6, 0x30($sp) +/* 0153FC 800147FC 8FB70034 */ lw $s7, 0x34($sp) +/* 015400 80014800 8FBE0038 */ lw $fp, 0x38($sp) +/* 015404 80014804 27BD00B0 */ addiu $sp, $sp, 0xb0 +/* 015408 80014808 01401025 */ move $v0, $t2 +/* 01540C 8001480C 03E00008 */ jr $ra +/* 015410 80014810 AC2EAE8C */ sw $t6, -0x5174($at) + diff --git a/asm/non_matchings/unknown_005740/func_80014814.s b/asm/non_matchings/unknown_005740/func_80014814.s new file mode 100644 index 00000000..c52d102a --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80014814.s @@ -0,0 +1,231 @@ +glabel func_80014814 +/* 015414 80014814 3C068012 */ lui $a2, %hi(D_8011AE5C) # $a2, 0x8012 +/* 015418 80014818 24C6AE5C */ addiu $a2, %lo(D_8011AE5C) # addiu $a2, $a2, -0x51a4 +/* 01541C 8001481C 8CCE0000 */ lw $t6, ($a2) +/* 015420 80014820 3C0A8012 */ lui $t2, %hi(D_8011AE7C) # $t2, 0x8012 +/* 015424 80014824 254AAE7C */ addiu $t2, %lo(D_8011AE7C) # addiu $t2, $t2, -0x5184 +/* 015428 80014828 AC8E0000 */ sw $t6, ($a0) +/* 01542C 8001482C 85430000 */ lh $v1, ($t2) +/* 015430 80014830 00000000 */ nop +/* 015434 80014834 10600003 */ beqz $v1, .L80014844 +/* 015438 80014838 00000000 */ nop +/* 01543C 8001483C 03E00008 */ jr $ra +/* 015440 80014840 00601025 */ move $v0, $v1 + +.L80014844: +/* 015444 80014844 8CC20000 */ lw $v0, ($a2) +/* 015448 80014848 3C038012 */ lui $v1, %hi(D_8011AE60) # $v1, 0x8012 +/* 01544C 8001484C 8C63AE60 */ lw $v1, %lo(D_8011AE60)($v1) +/* 015450 80014850 2442FFFF */ addiu $v0, $v0, -1 +/* 015454 80014854 0043082A */ slt $at, $v0, $v1 +/* 015458 80014858 00402825 */ move $a1, $v0 +/* 01545C 8001485C 14200054 */ bnez $at, .L800149B0 +/* 015460 80014860 00602025 */ move $a0, $v1 +/* 015464 80014864 3C0B8012 */ lui $t3, %hi(D_8011AE58) # $t3, 0x8012 +/* 015468 80014868 256BAE58 */ addiu $t3, %lo(D_8011AE58) # addiu $t3, $t3, -0x51a8 +/* 01546C 8001486C 00A3082A */ slt $at, $a1, $v1 +.L80014870: +/* 015470 80014870 1420001E */ bnez $at, .L800148EC +/* 015474 80014874 00003025 */ move $a2, $zero +/* 015478 80014878 8D6F0000 */ lw $t7, ($t3) +/* 01547C 8001487C 0003C080 */ sll $t8, $v1, 2 +/* 015480 80014880 01F83821 */ addu $a3, $t7, $t8 +.L80014884: +/* 015484 80014884 8CE80000 */ lw $t0, ($a3) +/* 015488 80014888 00000000 */ nop +/* 01548C 8001488C 85190006 */ lh $t9, 6($t0) +/* 015490 80014890 00000000 */ nop +/* 015494 80014894 332C8000 */ andi $t4, $t9, 0x8000 +/* 015498 80014898 1580000D */ bnez $t4, .L800148D0 +/* 01549C 8001489C 00000000 */ nop +/* 0154A0 800148A0 8D0D0040 */ lw $t5, 0x40($t0) +/* 0154A4 800148A4 00000000 */ nop +/* 0154A8 800148A8 95AE0030 */ lhu $t6, 0x30($t5) +/* 0154AC 800148AC 00000000 */ nop +/* 0154B0 800148B0 31CF0001 */ andi $t7, $t6, 1 +/* 0154B4 800148B4 11E00004 */ beqz $t7, .L800148C8 +/* 0154B8 800148B8 00000000 */ nop +/* 0154BC 800148BC 24630001 */ addiu $v1, $v1, 1 +/* 0154C0 800148C0 10000005 */ b .L800148D8 +/* 0154C4 800148C4 24E70004 */ addiu $a3, $a3, 4 +.L800148C8: +/* 0154C8 800148C8 10000003 */ b .L800148D8 +/* 0154CC 800148CC 2406FFFF */ li $a2, -1 +.L800148D0: +/* 0154D0 800148D0 24630001 */ addiu $v1, $v1, 1 +/* 0154D4 800148D4 24E70004 */ addiu $a3, $a3, 4 +.L800148D8: +/* 0154D8 800148D8 00A3082A */ slt $at, $a1, $v1 +/* 0154DC 800148DC 14200004 */ bnez $at, .L800148F0 +/* 0154E0 800148E0 0044082A */ slt $at, $v0, $a0 +/* 0154E4 800148E4 10C0FFE7 */ beqz $a2, .L80014884 +/* 0154E8 800148E8 00000000 */ nop +.L800148EC: +/* 0154EC 800148EC 0044082A */ slt $at, $v0, $a0 +.L800148F0: +/* 0154F0 800148F0 1420001D */ bnez $at, .L80014968 +/* 0154F4 800148F4 00003025 */ move $a2, $zero +/* 0154F8 800148F8 8D780000 */ lw $t8, ($t3) +/* 0154FC 800148FC 0002C880 */ sll $t9, $v0, 2 +/* 015500 80014900 03193821 */ addu $a3, $t8, $t9 +.L80014904: +/* 015504 80014904 8CE80000 */ lw $t0, ($a3) +/* 015508 80014908 00000000 */ nop +/* 01550C 8001490C 850C0006 */ lh $t4, 6($t0) +/* 015510 80014910 00000000 */ nop +/* 015514 80014914 318D8000 */ andi $t5, $t4, 0x8000 +/* 015518 80014918 11A00003 */ beqz $t5, .L80014928 +/* 01551C 8001491C 00000000 */ nop +/* 015520 80014920 1000000C */ b .L80014954 +/* 015524 80014924 2406FFFF */ li $a2, -1 +.L80014928: +/* 015528 80014928 8D0E0040 */ lw $t6, 0x40($t0) +/* 01552C 8001492C 00000000 */ nop +/* 015530 80014930 95CF0030 */ lhu $t7, 0x30($t6) +/* 015534 80014934 00000000 */ nop +/* 015538 80014938 31F80001 */ andi $t8, $t7, 1 +/* 01553C 8001493C 17000004 */ bnez $t8, .L80014950 +/* 015540 80014940 00000000 */ nop +/* 015544 80014944 2442FFFF */ addiu $v0, $v0, -1 +/* 015548 80014948 10000002 */ b .L80014954 +/* 01554C 8001494C 24E7FFFC */ addiu $a3, $a3, -4 +.L80014950: +/* 015550 80014950 2406FFFF */ li $a2, -1 +.L80014954: +/* 015554 80014954 0044082A */ slt $at, $v0, $a0 +/* 015558 80014958 14200004 */ bnez $at, .L8001496C +/* 01555C 8001495C 0062082A */ slt $at, $v1, $v0 +/* 015560 80014960 10C0FFE8 */ beqz $a2, .L80014904 +/* 015564 80014964 00000000 */ nop +.L80014968: +/* 015568 80014968 0062082A */ slt $at, $v1, $v0 +.L8001496C: +/* 01556C 8001496C 1020000D */ beqz $at, .L800149A4 +/* 015570 80014970 0003C880 */ sll $t9, $v1, 2 +/* 015574 80014974 8D660000 */ lw $a2, ($t3) +/* 015578 80014978 00024080 */ sll $t0, $v0, 2 +/* 01557C 8001497C 00C86021 */ addu $t4, $a2, $t0 +/* 015580 80014980 8D8D0000 */ lw $t5, ($t4) +/* 015584 80014984 00D93821 */ addu $a3, $a2, $t9 +/* 015588 80014988 8CE90000 */ lw $t1, ($a3) +/* 01558C 8001498C ACED0000 */ sw $t5, ($a3) +/* 015590 80014990 8D6E0000 */ lw $t6, ($t3) +/* 015594 80014994 24630001 */ addiu $v1, $v1, 1 +/* 015598 80014998 01C87821 */ addu $t7, $t6, $t0 +/* 01559C 8001499C 2442FFFF */ addiu $v0, $v0, -1 +/* 0155A0 800149A0 ADE90000 */ sw $t1, ($t7) +.L800149A4: +/* 0155A4 800149A4 0043082A */ slt $at, $v0, $v1 +/* 0155A8 800149A8 1020FFB1 */ beqz $at, .L80014870 +/* 0155AC 800149AC 00A3082A */ slt $at, $a1, $v1 +.L800149B0: +/* 0155B0 800149B0 A5430000 */ sh $v1, ($t2) +/* 0155B4 800149B4 00601025 */ move $v0, $v1 +/* 0155B8 800149B8 03E00008 */ jr $ra +/* 0155BC 800149BC 00000000 */ nop + +/* 0155C0 800149C0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0155C4 800149C4 AFBF0014 */ sw $ra, 0x14($sp) +/* 0155C8 800149C8 AFA40028 */ sw $a0, 0x28($sp) +/* 0155CC 800149CC AFA5002C */ sw $a1, 0x2c($sp) +/* 0155D0 800149D0 AFA60030 */ sw $a2, 0x30($sp) +/* 0155D4 800149D4 AFA70034 */ sw $a3, 0x34($sp) +/* 0155D8 800149D8 848F0006 */ lh $t7, 6($a0) +/* 0155DC 800149DC 00807025 */ move $t6, $a0 +/* 0155E0 800149E0 448F2000 */ mtc1 $t7, $f4 +/* 0155E4 800149E4 00C02025 */ move $a0, $a2 +/* 0155E8 800149E8 46802020 */ cvt.s.w $f0, $f4 +/* 0155EC 800149EC 00E02825 */ move $a1, $a3 +/* 0155F0 800149F0 91C70004 */ lbu $a3, 4($t6) +/* 0155F4 800149F4 44060000 */ mfc1 $a2, $f0 +/* 0155F8 800149F8 0C0052D4 */ jal func_80014B50 +/* 0155FC 800149FC E7A00018 */ swc1 $f0, 0x18($sp) +/* 015600 80014A00 8FB80028 */ lw $t8, 0x28($sp) +/* 015604 80014A04 C7A00018 */ lwc1 $f0, 0x18($sp) +/* 015608 80014A08 93070004 */ lbu $a3, 4($t8) +/* 01560C 80014A0C 8FA40030 */ lw $a0, 0x30($sp) +/* 015610 80014A10 44060000 */ mfc1 $a2, $f0 +/* 015614 80014A14 AFA20020 */ sw $v0, 0x20($sp) +/* 015618 80014A18 2445FFFF */ addiu $a1, $v0, -1 +/* 01561C 80014A1C 0C0052D4 */ jal func_80014B50 +/* 015620 80014A20 24E70008 */ addiu $a3, $a3, 8 +/* 015624 80014A24 8FAB0020 */ lw $t3, 0x20($sp) +/* 015628 80014A28 00402825 */ move $a1, $v0 +/* 01562C 80014A2C 004B082A */ slt $at, $v0, $t3 +/* 015630 80014A30 1020003D */ beqz $at, .L80014B28 +/* 015634 80014A34 01622023 */ subu $a0, $t3, $v0 +/* 015638 80014A38 30990003 */ andi $t9, $a0, 3 +/* 01563C 80014A3C 13200010 */ beqz $t9, .L80014A80 +/* 015640 80014A40 03223021 */ addu $a2, $t9, $v0 +/* 015644 80014A44 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 +/* 015648 80014A48 8FA80040 */ lw $t0, 0x40($sp) +/* 01564C 80014A4C 2529AE58 */ addiu $t1, %lo(D_8011AE58) # addiu $t1, $t1, -0x51a8 +/* 015650 80014A50 00051880 */ sll $v1, $a1, 2 +.L80014A54: +/* 015654 80014A54 8D2C0000 */ lw $t4, ($t1) +/* 015658 80014A58 24A50001 */ addiu $a1, $a1, 1 +/* 01565C 80014A5C 01836821 */ addu $t5, $t4, $v1 +/* 015660 80014A60 8DA40000 */ lw $a0, ($t5) +/* 015664 80014A64 24630004 */ addiu $v1, $v1, 4 +/* 015668 80014A68 808F0038 */ lb $t7, 0x38($a0) +/* 01566C 80014A6C 00000000 */ nop +/* 015670 80014A70 01E87021 */ addu $t6, $t7, $t0 +/* 015674 80014A74 14C5FFF7 */ bne $a2, $a1, .L80014A54 +/* 015678 80014A78 A08E0038 */ sb $t6, 0x38($a0) +/* 01567C 80014A7C 10AB002A */ beq $a1, $t3, .L80014B28 +.L80014A80: +/* 015680 80014A80 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 +/* 015684 80014A84 8FA80040 */ lw $t0, 0x40($sp) +/* 015688 80014A88 2529AE58 */ addiu $t1, %lo(D_8011AE58) # addiu $t1, $t1, -0x51a8 +/* 01568C 80014A8C 00051880 */ sll $v1, $a1, 2 +/* 015690 80014A90 000B5080 */ sll $t2, $t3, 2 +.L80014A94: +/* 015694 80014A94 8D380000 */ lw $t8, ($t1) +/* 015698 80014A98 00000000 */ nop +/* 01569C 80014A9C 0303C821 */ addu $t9, $t8, $v1 +/* 0156A0 80014AA0 8F240000 */ lw $a0, ($t9) +/* 0156A4 80014AA4 00000000 */ nop +/* 0156A8 80014AA8 808C0038 */ lb $t4, 0x38($a0) +/* 0156AC 80014AAC 00000000 */ nop +/* 0156B0 80014AB0 01886821 */ addu $t5, $t4, $t0 +/* 0156B4 80014AB4 A08D0038 */ sb $t5, 0x38($a0) +/* 0156B8 80014AB8 8D2F0000 */ lw $t7, ($t1) +/* 0156BC 80014ABC 00000000 */ nop +/* 0156C0 80014AC0 01E37021 */ addu $t6, $t7, $v1 +/* 0156C4 80014AC4 8DC50004 */ lw $a1, 4($t6) +/* 0156C8 80014AC8 00000000 */ nop +/* 0156CC 80014ACC 80B80038 */ lb $t8, 0x38($a1) +/* 0156D0 80014AD0 00000000 */ nop +/* 0156D4 80014AD4 0308C821 */ addu $t9, $t8, $t0 +/* 0156D8 80014AD8 A0B90038 */ sb $t9, 0x38($a1) +/* 0156DC 80014ADC 8D2C0000 */ lw $t4, ($t1) +/* 0156E0 80014AE0 00000000 */ nop +/* 0156E4 80014AE4 01836821 */ addu $t5, $t4, $v1 +/* 0156E8 80014AE8 8DA60008 */ lw $a2, 8($t5) +/* 0156EC 80014AEC 00000000 */ nop +/* 0156F0 80014AF0 80CF0038 */ lb $t7, 0x38($a2) +/* 0156F4 80014AF4 00000000 */ nop +/* 0156F8 80014AF8 01E87021 */ addu $t6, $t7, $t0 +/* 0156FC 80014AFC A0CE0038 */ sb $t6, 0x38($a2) +/* 015700 80014B00 8D380000 */ lw $t8, ($t1) +/* 015704 80014B04 00000000 */ nop +/* 015708 80014B08 0303C821 */ addu $t9, $t8, $v1 +/* 01570C 80014B0C 8F27000C */ lw $a3, 0xc($t9) +/* 015710 80014B10 24630010 */ addiu $v1, $v1, 0x10 +/* 015714 80014B14 80EC0038 */ lb $t4, 0x38($a3) +/* 015718 80014B18 00000000 */ nop +/* 01571C 80014B1C 01886821 */ addu $t5, $t4, $t0 +/* 015720 80014B20 146AFFDC */ bne $v1, $t2, .L80014A94 +/* 015724 80014B24 A0ED0038 */ sb $t5, 0x38($a3) +.L80014B28: +/* 015728 80014B28 8FAF0038 */ lw $t7, 0x38($sp) +/* 01572C 80014B2C 256EFFFF */ addiu $t6, $t3, -1 +/* 015730 80014B30 ADE20000 */ sw $v0, ($t7) +/* 015734 80014B34 8FB8003C */ lw $t8, 0x3c($sp) +/* 015738 80014B38 00000000 */ nop +/* 01573C 80014B3C AF0E0000 */ sw $t6, ($t8) +/* 015740 80014B40 8FBF0014 */ lw $ra, 0x14($sp) +/* 015744 80014B44 27BD0028 */ addiu $sp, $sp, 0x28 +/* 015748 80014B48 03E00008 */ jr $ra +/* 01574C 80014B4C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80014B50.s b/asm/non_matchings/unknown_005740/func_80014B50.s new file mode 100644 index 00000000..e606ac9c --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80014B50.s @@ -0,0 +1,566 @@ +glabel func_80014B50 +/* 015750 80014B50 44866000 */ mtc1 $a2, $f12 +/* 015754 80014B54 2CE1000B */ sltiu $at, $a3, 0xb +/* 015758 80014B58 00801025 */ move $v0, $a0 +/* 01575C 80014B5C 102001F8 */ beqz $at, .L80015340 +/* 015760 80014B60 00A01825 */ move $v1, $a1 +/* 015764 80014B64 00077080 */ sll $t6, $a3, 2 +/* 015768 80014B68 3C01800E */ lui $at, 0x800e +/* 01576C 80014B6C 002E0821 */ addu $at, $at, $t6 +/* 015770 80014B70 8C2E5588 */ lw $t6, 0x5588($at) +/* 015774 80014B74 00000000 */ nop +/* 015778 80014B78 01C00008 */ jr $t6 +/* 01577C 80014B7C 00000000 */ nop +/* 015780 80014B80 00A4082A */ slt $at, $a1, $a0 +/* 015784 80014B84 142001EE */ bnez $at, .L80015340 +/* 015788 80014B88 3C0A8012 */ lui $t2, %hi(D_8011AE58) # $t2, 0x8012 +/* 01578C 80014B8C 254AAE58 */ addiu $t2, %lo(D_8011AE58) # addiu $t2, $t2, -0x51a8 +/* 015790 80014B90 0064082A */ slt $at, $v1, $a0 +.L80014B94: +/* 015794 80014B94 1420001D */ bnez $at, .L80014C0C +/* 015798 80014B98 00A2082A */ slt $at, $a1, $v0 +/* 01579C 80014B9C 8D4F0000 */ lw $t7, ($t2) +/* 0157A0 80014BA0 0004C080 */ sll $t8, $a0, 2 +/* 0157A4 80014BA4 01F83821 */ addu $a3, $t7, $t8 +/* 0157A8 80014BA8 8CE60000 */ lw $a2, ($a3) +/* 0157AC 80014BAC 00000000 */ nop +/* 0157B0 80014BB0 C4C4000C */ lwc1 $f4, 0xc($a2) +/* 0157B4 80014BB4 C4C60034 */ lwc1 $f6, 0x34($a2) +/* 0157B8 80014BB8 00000000 */ nop +/* 0157BC 80014BBC 46062201 */ sub.s $f8, $f4, $f6 +/* 0157C0 80014BC0 460C403C */ c.lt.s $f8, $f12 +/* 0157C4 80014BC4 00000000 */ nop +/* 0157C8 80014BC8 45000010 */ bc1f .L80014C0C +/* 0157CC 80014BCC 00A2082A */ slt $at, $a1, $v0 +.L80014BD0: +/* 0157D0 80014BD0 24840001 */ addiu $a0, $a0, 1 +/* 0157D4 80014BD4 0064082A */ slt $at, $v1, $a0 +/* 0157D8 80014BD8 1420000B */ bnez $at, .L80014C08 +/* 0157DC 80014BDC 24E70004 */ addiu $a3, $a3, 4 +/* 0157E0 80014BE0 8CE60000 */ lw $a2, ($a3) +/* 0157E4 80014BE4 00000000 */ nop +/* 0157E8 80014BE8 C4CA000C */ lwc1 $f10, 0xc($a2) +/* 0157EC 80014BEC C4D00034 */ lwc1 $f16, 0x34($a2) +/* 0157F0 80014BF0 00000000 */ nop +/* 0157F4 80014BF4 46105481 */ sub.s $f18, $f10, $f16 +/* 0157F8 80014BF8 460C903C */ c.lt.s $f18, $f12 +/* 0157FC 80014BFC 00000000 */ nop +/* 015800 80014C00 4501FFF3 */ bc1t .L80014BD0 +/* 015804 80014C04 00000000 */ nop +.L80014C08: +/* 015808 80014C08 00A2082A */ slt $at, $a1, $v0 +.L80014C0C: +/* 01580C 80014C0C 1420001C */ bnez $at, .L80014C80 +/* 015810 80014C10 00046080 */ sll $t4, $a0, 2 +/* 015814 80014C14 8D590000 */ lw $t9, ($t2) +/* 015818 80014C18 00055880 */ sll $t3, $a1, 2 +/* 01581C 80014C1C 032B3021 */ addu $a2, $t9, $t3 +/* 015820 80014C20 8CC70000 */ lw $a3, ($a2) +/* 015824 80014C24 00000000 */ nop +/* 015828 80014C28 C4E4000C */ lwc1 $f4, 0xc($a3) +/* 01582C 80014C2C C4E60034 */ lwc1 $f6, 0x34($a3) +/* 015830 80014C30 00000000 */ nop +/* 015834 80014C34 46062201 */ sub.s $f8, $f4, $f6 +/* 015838 80014C38 4608603E */ c.le.s $f12, $f8 +/* 01583C 80014C3C 00000000 */ nop +/* 015840 80014C40 45000010 */ bc1f .L80014C84 +/* 015844 80014C44 0085082A */ slt $at, $a0, $a1 +.L80014C48: +/* 015848 80014C48 24A5FFFF */ addiu $a1, $a1, -1 +/* 01584C 80014C4C 00A2082A */ slt $at, $a1, $v0 +/* 015850 80014C50 1420000B */ bnez $at, .L80014C80 +/* 015854 80014C54 24C6FFFC */ addiu $a2, $a2, -4 +/* 015858 80014C58 8CC70000 */ lw $a3, ($a2) +/* 01585C 80014C5C 00000000 */ nop +/* 015860 80014C60 C4EA000C */ lwc1 $f10, 0xc($a3) +/* 015864 80014C64 C4F00034 */ lwc1 $f16, 0x34($a3) +/* 015868 80014C68 00000000 */ nop +/* 01586C 80014C6C 46105481 */ sub.s $f18, $f10, $f16 +/* 015870 80014C70 4612603E */ c.le.s $f12, $f18 +/* 015874 80014C74 00000000 */ nop +/* 015878 80014C78 4501FFF3 */ bc1t .L80014C48 +/* 01587C 80014C7C 00000000 */ nop +.L80014C80: +/* 015880 80014C80 0085082A */ slt $at, $a0, $a1 +.L80014C84: +/* 015884 80014C84 1020000C */ beqz $at, .L80014CB8 +/* 015888 80014C88 00054080 */ sll $t0, $a1, 2 +/* 01588C 80014C8C 8D460000 */ lw $a2, ($t2) +/* 015890 80014C90 24840001 */ addiu $a0, $a0, 1 +/* 015894 80014C94 00C86821 */ addu $t5, $a2, $t0 +/* 015898 80014C98 8DAE0000 */ lw $t6, ($t5) +/* 01589C 80014C9C 00CC3821 */ addu $a3, $a2, $t4 +/* 0158A0 80014CA0 8CE90000 */ lw $t1, ($a3) +/* 0158A4 80014CA4 ACEE0000 */ sw $t6, ($a3) +/* 0158A8 80014CA8 8D4F0000 */ lw $t7, ($t2) +/* 0158AC 80014CAC 24A5FFFF */ addiu $a1, $a1, -1 +/* 0158B0 80014CB0 01E8C021 */ addu $t8, $t7, $t0 +/* 0158B4 80014CB4 AF090000 */ sw $t1, ($t8) +.L80014CB8: +/* 0158B8 80014CB8 00A4082A */ slt $at, $a1, $a0 +/* 0158BC 80014CBC 1020FFB5 */ beqz $at, .L80014B94 +/* 0158C0 80014CC0 0064082A */ slt $at, $v1, $a0 +/* 0158C4 80014CC4 03E00008 */ jr $ra +/* 0158C8 80014CC8 00801025 */ move $v0, $a0 + +/* 0158CC 80014CCC 00A4082A */ slt $at, $a1, $a0 +/* 0158D0 80014CD0 1420019B */ bnez $at, .L80015340 +/* 0158D4 80014CD4 3C0A8012 */ lui $t2, %hi(D_8011AE58) # $t2, 0x8012 +/* 0158D8 80014CD8 254AAE58 */ addiu $t2, %lo(D_8011AE58) # addiu $t2, $t2, -0x51a8 +/* 0158DC 80014CDC 0064082A */ slt $at, $v1, $a0 +.L80014CE0: +/* 0158E0 80014CE0 1420001D */ bnez $at, .L80014D58 +/* 0158E4 80014CE4 00A2082A */ slt $at, $a1, $v0 +/* 0158E8 80014CE8 8D590000 */ lw $t9, ($t2) +/* 0158EC 80014CEC 00045880 */ sll $t3, $a0, 2 +/* 0158F0 80014CF0 032B3821 */ addu $a3, $t9, $t3 +/* 0158F4 80014CF4 8CE60000 */ lw $a2, ($a3) +/* 0158F8 80014CF8 00000000 */ nop +/* 0158FC 80014CFC C4C40010 */ lwc1 $f4, 0x10($a2) +/* 015900 80014D00 C4C60034 */ lwc1 $f6, 0x34($a2) +/* 015904 80014D04 00000000 */ nop +/* 015908 80014D08 46062201 */ sub.s $f8, $f4, $f6 +/* 01590C 80014D0C 460C403C */ c.lt.s $f8, $f12 +/* 015910 80014D10 00000000 */ nop +/* 015914 80014D14 45000010 */ bc1f .L80014D58 +/* 015918 80014D18 00A2082A */ slt $at, $a1, $v0 +.L80014D1C: +/* 01591C 80014D1C 24840001 */ addiu $a0, $a0, 1 +/* 015920 80014D20 0064082A */ slt $at, $v1, $a0 +/* 015924 80014D24 1420000B */ bnez $at, .L80014D54 +/* 015928 80014D28 24E70004 */ addiu $a3, $a3, 4 +/* 01592C 80014D2C 8CE60000 */ lw $a2, ($a3) +/* 015930 80014D30 00000000 */ nop +/* 015934 80014D34 C4CA0010 */ lwc1 $f10, 0x10($a2) +/* 015938 80014D38 C4D00034 */ lwc1 $f16, 0x34($a2) +/* 01593C 80014D3C 00000000 */ nop +/* 015940 80014D40 46105481 */ sub.s $f18, $f10, $f16 +/* 015944 80014D44 460C903C */ c.lt.s $f18, $f12 +/* 015948 80014D48 00000000 */ nop +/* 01594C 80014D4C 4501FFF3 */ bc1t .L80014D1C +/* 015950 80014D50 00000000 */ nop +.L80014D54: +/* 015954 80014D54 00A2082A */ slt $at, $a1, $v0 +.L80014D58: +/* 015958 80014D58 1420001C */ bnez $at, .L80014DCC +/* 01595C 80014D5C 00047080 */ sll $t6, $a0, 2 +/* 015960 80014D60 8D4C0000 */ lw $t4, ($t2) +/* 015964 80014D64 00056880 */ sll $t5, $a1, 2 +/* 015968 80014D68 018D3021 */ addu $a2, $t4, $t5 +/* 01596C 80014D6C 8CC70000 */ lw $a3, ($a2) +/* 015970 80014D70 00000000 */ nop +/* 015974 80014D74 C4E40010 */ lwc1 $f4, 0x10($a3) +/* 015978 80014D78 C4E60034 */ lwc1 $f6, 0x34($a3) +/* 01597C 80014D7C 00000000 */ nop +/* 015980 80014D80 46062201 */ sub.s $f8, $f4, $f6 +/* 015984 80014D84 4608603E */ c.le.s $f12, $f8 +/* 015988 80014D88 00000000 */ nop +/* 01598C 80014D8C 45000010 */ bc1f .L80014DD0 +/* 015990 80014D90 0085082A */ slt $at, $a0, $a1 +.L80014D94: +/* 015994 80014D94 24A5FFFF */ addiu $a1, $a1, -1 +/* 015998 80014D98 00A2082A */ slt $at, $a1, $v0 +/* 01599C 80014D9C 1420000B */ bnez $at, .L80014DCC +/* 0159A0 80014DA0 24C6FFFC */ addiu $a2, $a2, -4 +/* 0159A4 80014DA4 8CC70000 */ lw $a3, ($a2) +/* 0159A8 80014DA8 00000000 */ nop +/* 0159AC 80014DAC C4EA0010 */ lwc1 $f10, 0x10($a3) +/* 0159B0 80014DB0 C4F00034 */ lwc1 $f16, 0x34($a3) +/* 0159B4 80014DB4 00000000 */ nop +/* 0159B8 80014DB8 46105481 */ sub.s $f18, $f10, $f16 +/* 0159BC 80014DBC 4612603E */ c.le.s $f12, $f18 +/* 0159C0 80014DC0 00000000 */ nop +/* 0159C4 80014DC4 4501FFF3 */ bc1t .L80014D94 +/* 0159C8 80014DC8 00000000 */ nop +.L80014DCC: +/* 0159CC 80014DCC 0085082A */ slt $at, $a0, $a1 +.L80014DD0: +/* 0159D0 80014DD0 1020000C */ beqz $at, .L80014E04 +/* 0159D4 80014DD4 00054080 */ sll $t0, $a1, 2 +/* 0159D8 80014DD8 8D460000 */ lw $a2, ($t2) +/* 0159DC 80014DDC 24840001 */ addiu $a0, $a0, 1 +/* 0159E0 80014DE0 00C87821 */ addu $t7, $a2, $t0 +/* 0159E4 80014DE4 8DF80000 */ lw $t8, ($t7) +/* 0159E8 80014DE8 00CE3821 */ addu $a3, $a2, $t6 +/* 0159EC 80014DEC 8CE90000 */ lw $t1, ($a3) +/* 0159F0 80014DF0 ACF80000 */ sw $t8, ($a3) +/* 0159F4 80014DF4 8D590000 */ lw $t9, ($t2) +/* 0159F8 80014DF8 24A5FFFF */ addiu $a1, $a1, -1 +/* 0159FC 80014DFC 03285821 */ addu $t3, $t9, $t0 +/* 015A00 80014E00 AD690000 */ sw $t1, ($t3) +.L80014E04: +/* 015A04 80014E04 00A4082A */ slt $at, $a1, $a0 +/* 015A08 80014E08 1020FFB5 */ beqz $at, .L80014CE0 +/* 015A0C 80014E0C 0064082A */ slt $at, $v1, $a0 +/* 015A10 80014E10 03E00008 */ jr $ra +/* 015A14 80014E14 00801025 */ move $v0, $a0 + +/* 015A18 80014E18 00A4082A */ slt $at, $a1, $a0 +/* 015A1C 80014E1C 14200148 */ bnez $at, .L80015340 +/* 015A20 80014E20 3C0A8012 */ lui $t2, %hi(D_8011AE58) # $t2, 0x8012 +/* 015A24 80014E24 254AAE58 */ addiu $t2, %lo(D_8011AE58) # addiu $t2, $t2, -0x51a8 +/* 015A28 80014E28 0064082A */ slt $at, $v1, $a0 +.L80014E2C: +/* 015A2C 80014E2C 1420001D */ bnez $at, .L80014EA4 +/* 015A30 80014E30 00A2082A */ slt $at, $a1, $v0 +/* 015A34 80014E34 8D4C0000 */ lw $t4, ($t2) +/* 015A38 80014E38 00046880 */ sll $t5, $a0, 2 +/* 015A3C 80014E3C 018D3821 */ addu $a3, $t4, $t5 +/* 015A40 80014E40 8CE60000 */ lw $a2, ($a3) +/* 015A44 80014E44 00000000 */ nop +/* 015A48 80014E48 C4C40014 */ lwc1 $f4, 0x14($a2) +/* 015A4C 80014E4C C4C60034 */ lwc1 $f6, 0x34($a2) +/* 015A50 80014E50 00000000 */ nop +/* 015A54 80014E54 46062201 */ sub.s $f8, $f4, $f6 +/* 015A58 80014E58 460C403C */ c.lt.s $f8, $f12 +/* 015A5C 80014E5C 00000000 */ nop +/* 015A60 80014E60 45000010 */ bc1f .L80014EA4 +/* 015A64 80014E64 00A2082A */ slt $at, $a1, $v0 +.L80014E68: +/* 015A68 80014E68 24840001 */ addiu $a0, $a0, 1 +/* 015A6C 80014E6C 0064082A */ slt $at, $v1, $a0 +/* 015A70 80014E70 1420000B */ bnez $at, .L80014EA0 +/* 015A74 80014E74 24E70004 */ addiu $a3, $a3, 4 +/* 015A78 80014E78 8CE60000 */ lw $a2, ($a3) +/* 015A7C 80014E7C 00000000 */ nop +/* 015A80 80014E80 C4CA0014 */ lwc1 $f10, 0x14($a2) +/* 015A84 80014E84 C4D00034 */ lwc1 $f16, 0x34($a2) +/* 015A88 80014E88 00000000 */ nop +/* 015A8C 80014E8C 46105481 */ sub.s $f18, $f10, $f16 +/* 015A90 80014E90 460C903C */ c.lt.s $f18, $f12 +/* 015A94 80014E94 00000000 */ nop +/* 015A98 80014E98 4501FFF3 */ bc1t .L80014E68 +/* 015A9C 80014E9C 00000000 */ nop +.L80014EA0: +/* 015AA0 80014EA0 00A2082A */ slt $at, $a1, $v0 +.L80014EA4: +/* 015AA4 80014EA4 1420001C */ bnez $at, .L80014F18 +/* 015AA8 80014EA8 0004C080 */ sll $t8, $a0, 2 +/* 015AAC 80014EAC 8D4E0000 */ lw $t6, ($t2) +/* 015AB0 80014EB0 00057880 */ sll $t7, $a1, 2 +/* 015AB4 80014EB4 01CF3021 */ addu $a2, $t6, $t7 +/* 015AB8 80014EB8 8CC70000 */ lw $a3, ($a2) +/* 015ABC 80014EBC 00000000 */ nop +/* 015AC0 80014EC0 C4E40014 */ lwc1 $f4, 0x14($a3) +/* 015AC4 80014EC4 C4E60034 */ lwc1 $f6, 0x34($a3) +/* 015AC8 80014EC8 00000000 */ nop +/* 015ACC 80014ECC 46062201 */ sub.s $f8, $f4, $f6 +/* 015AD0 80014ED0 4608603E */ c.le.s $f12, $f8 +/* 015AD4 80014ED4 00000000 */ nop +/* 015AD8 80014ED8 45000010 */ bc1f .L80014F1C +/* 015ADC 80014EDC 0085082A */ slt $at, $a0, $a1 +.L80014EE0: +/* 015AE0 80014EE0 24A5FFFF */ addiu $a1, $a1, -1 +/* 015AE4 80014EE4 00A2082A */ slt $at, $a1, $v0 +/* 015AE8 80014EE8 1420000B */ bnez $at, .L80014F18 +/* 015AEC 80014EEC 24C6FFFC */ addiu $a2, $a2, -4 +/* 015AF0 80014EF0 8CC70000 */ lw $a3, ($a2) +/* 015AF4 80014EF4 00000000 */ nop +/* 015AF8 80014EF8 C4EA0014 */ lwc1 $f10, 0x14($a3) +/* 015AFC 80014EFC C4F00034 */ lwc1 $f16, 0x34($a3) +/* 015B00 80014F00 00000000 */ nop +/* 015B04 80014F04 46105481 */ sub.s $f18, $f10, $f16 +/* 015B08 80014F08 4612603E */ c.le.s $f12, $f18 +/* 015B0C 80014F0C 00000000 */ nop +/* 015B10 80014F10 4501FFF3 */ bc1t .L80014EE0 +/* 015B14 80014F14 00000000 */ nop +.L80014F18: +/* 015B18 80014F18 0085082A */ slt $at, $a0, $a1 +.L80014F1C: +/* 015B1C 80014F1C 1020000C */ beqz $at, .L80014F50 +/* 015B20 80014F20 00054080 */ sll $t0, $a1, 2 +/* 015B24 80014F24 8D460000 */ lw $a2, ($t2) +/* 015B28 80014F28 24840001 */ addiu $a0, $a0, 1 +/* 015B2C 80014F2C 00C8C821 */ addu $t9, $a2, $t0 +/* 015B30 80014F30 8F2B0000 */ lw $t3, ($t9) +/* 015B34 80014F34 00D83821 */ addu $a3, $a2, $t8 +/* 015B38 80014F38 8CE90000 */ lw $t1, ($a3) +/* 015B3C 80014F3C ACEB0000 */ sw $t3, ($a3) +/* 015B40 80014F40 8D4C0000 */ lw $t4, ($t2) +/* 015B44 80014F44 24A5FFFF */ addiu $a1, $a1, -1 +/* 015B48 80014F48 01886821 */ addu $t5, $t4, $t0 +/* 015B4C 80014F4C ADA90000 */ sw $t1, ($t5) +.L80014F50: +/* 015B50 80014F50 00A4082A */ slt $at, $a1, $a0 +/* 015B54 80014F54 1020FFB5 */ beqz $at, .L80014E2C +/* 015B58 80014F58 0064082A */ slt $at, $v1, $a0 +/* 015B5C 80014F5C 03E00008 */ jr $ra +/* 015B60 80014F60 00801025 */ move $v0, $a0 + +/* 015B64 80014F64 00A4082A */ slt $at, $a1, $a0 +/* 015B68 80014F68 142000F5 */ bnez $at, .L80015340 +/* 015B6C 80014F6C 3C0A8012 */ lui $t2, %hi(D_8011AE58) # $t2, 0x8012 +/* 015B70 80014F70 254AAE58 */ addiu $t2, %lo(D_8011AE58) # addiu $t2, $t2, -0x51a8 +/* 015B74 80014F74 0064082A */ slt $at, $v1, $a0 +.L80014F78: +/* 015B78 80014F78 1420001D */ bnez $at, .L80014FF0 +/* 015B7C 80014F7C 00A2082A */ slt $at, $a1, $v0 +/* 015B80 80014F80 8D4E0000 */ lw $t6, ($t2) +/* 015B84 80014F84 00047880 */ sll $t7, $a0, 2 +/* 015B88 80014F88 01CF3821 */ addu $a3, $t6, $t7 +/* 015B8C 80014F8C 8CE60000 */ lw $a2, ($a3) +/* 015B90 80014F90 00000000 */ nop +/* 015B94 80014F94 C4C40034 */ lwc1 $f4, 0x34($a2) +/* 015B98 80014F98 C4C6000C */ lwc1 $f6, 0xc($a2) +/* 015B9C 80014F9C 00000000 */ nop +/* 015BA0 80014FA0 46062200 */ add.s $f8, $f4, $f6 +/* 015BA4 80014FA4 460C403C */ c.lt.s $f8, $f12 +/* 015BA8 80014FA8 00000000 */ nop +/* 015BAC 80014FAC 45000010 */ bc1f .L80014FF0 +/* 015BB0 80014FB0 00A2082A */ slt $at, $a1, $v0 +.L80014FB4: +/* 015BB4 80014FB4 24840001 */ addiu $a0, $a0, 1 +/* 015BB8 80014FB8 0064082A */ slt $at, $v1, $a0 +/* 015BBC 80014FBC 1420000B */ bnez $at, .L80014FEC +/* 015BC0 80014FC0 24E70004 */ addiu $a3, $a3, 4 +/* 015BC4 80014FC4 8CE60000 */ lw $a2, ($a3) +/* 015BC8 80014FC8 00000000 */ nop +/* 015BCC 80014FCC C4CA0034 */ lwc1 $f10, 0x34($a2) +/* 015BD0 80014FD0 C4D0000C */ lwc1 $f16, 0xc($a2) +/* 015BD4 80014FD4 00000000 */ nop +/* 015BD8 80014FD8 46105480 */ add.s $f18, $f10, $f16 +/* 015BDC 80014FDC 460C903C */ c.lt.s $f18, $f12 +/* 015BE0 80014FE0 00000000 */ nop +/* 015BE4 80014FE4 4501FFF3 */ bc1t .L80014FB4 +/* 015BE8 80014FE8 00000000 */ nop +.L80014FEC: +/* 015BEC 80014FEC 00A2082A */ slt $at, $a1, $v0 +.L80014FF0: +/* 015BF0 80014FF0 1420001C */ bnez $at, .L80015064 +/* 015BF4 80014FF4 00045880 */ sll $t3, $a0, 2 +/* 015BF8 80014FF8 8D580000 */ lw $t8, ($t2) +/* 015BFC 80014FFC 0005C880 */ sll $t9, $a1, 2 +/* 015C00 80015000 03193021 */ addu $a2, $t8, $t9 +/* 015C04 80015004 8CC70000 */ lw $a3, ($a2) +/* 015C08 80015008 00000000 */ nop +/* 015C0C 8001500C C4E40034 */ lwc1 $f4, 0x34($a3) +/* 015C10 80015010 C4E6000C */ lwc1 $f6, 0xc($a3) +/* 015C14 80015014 00000000 */ nop +/* 015C18 80015018 46062200 */ add.s $f8, $f4, $f6 +/* 015C1C 8001501C 4608603E */ c.le.s $f12, $f8 +/* 015C20 80015020 00000000 */ nop +/* 015C24 80015024 45000010 */ bc1f .L80015068 +/* 015C28 80015028 0085082A */ slt $at, $a0, $a1 +.L8001502C: +/* 015C2C 8001502C 24A5FFFF */ addiu $a1, $a1, -1 +/* 015C30 80015030 00A2082A */ slt $at, $a1, $v0 +/* 015C34 80015034 1420000B */ bnez $at, .L80015064 +/* 015C38 80015038 24C6FFFC */ addiu $a2, $a2, -4 +/* 015C3C 8001503C 8CC70000 */ lw $a3, ($a2) +/* 015C40 80015040 00000000 */ nop +/* 015C44 80015044 C4EA0034 */ lwc1 $f10, 0x34($a3) +/* 015C48 80015048 C4F0000C */ lwc1 $f16, 0xc($a3) +/* 015C4C 8001504C 00000000 */ nop +/* 015C50 80015050 46105480 */ add.s $f18, $f10, $f16 +/* 015C54 80015054 4612603E */ c.le.s $f12, $f18 +/* 015C58 80015058 00000000 */ nop +/* 015C5C 8001505C 4501FFF3 */ bc1t .L8001502C +/* 015C60 80015060 00000000 */ nop +.L80015064: +/* 015C64 80015064 0085082A */ slt $at, $a0, $a1 +.L80015068: +/* 015C68 80015068 1020000C */ beqz $at, .L8001509C +/* 015C6C 8001506C 00054080 */ sll $t0, $a1, 2 +/* 015C70 80015070 8D460000 */ lw $a2, ($t2) +/* 015C74 80015074 24840001 */ addiu $a0, $a0, 1 +/* 015C78 80015078 00C86021 */ addu $t4, $a2, $t0 +/* 015C7C 8001507C 8D8D0000 */ lw $t5, ($t4) +/* 015C80 80015080 00CB3821 */ addu $a3, $a2, $t3 +/* 015C84 80015084 8CE90000 */ lw $t1, ($a3) +/* 015C88 80015088 ACED0000 */ sw $t5, ($a3) +/* 015C8C 8001508C 8D4E0000 */ lw $t6, ($t2) +/* 015C90 80015090 24A5FFFF */ addiu $a1, $a1, -1 +/* 015C94 80015094 01C87821 */ addu $t7, $t6, $t0 +/* 015C98 80015098 ADE90000 */ sw $t1, ($t7) +.L8001509C: +/* 015C9C 8001509C 00A4082A */ slt $at, $a1, $a0 +/* 015CA0 800150A0 1020FFB5 */ beqz $at, .L80014F78 +/* 015CA4 800150A4 0064082A */ slt $at, $v1, $a0 +/* 015CA8 800150A8 03E00008 */ jr $ra +/* 015CAC 800150AC 00801025 */ move $v0, $a0 + +/* 015CB0 800150B0 00A4082A */ slt $at, $a1, $a0 +/* 015CB4 800150B4 142000A2 */ bnez $at, .L80015340 +/* 015CB8 800150B8 3C0A8012 */ lui $t2, %hi(D_8011AE58) # $t2, 0x8012 +/* 015CBC 800150BC 254AAE58 */ addiu $t2, %lo(D_8011AE58) # addiu $t2, $t2, -0x51a8 +/* 015CC0 800150C0 0064082A */ slt $at, $v1, $a0 +.L800150C4: +/* 015CC4 800150C4 1420001D */ bnez $at, .L8001513C +/* 015CC8 800150C8 00A2082A */ slt $at, $a1, $v0 +/* 015CCC 800150CC 8D580000 */ lw $t8, ($t2) +/* 015CD0 800150D0 0004C880 */ sll $t9, $a0, 2 +/* 015CD4 800150D4 03193821 */ addu $a3, $t8, $t9 +/* 015CD8 800150D8 8CE60000 */ lw $a2, ($a3) +/* 015CDC 800150DC 00000000 */ nop +/* 015CE0 800150E0 C4C40034 */ lwc1 $f4, 0x34($a2) +/* 015CE4 800150E4 C4C60010 */ lwc1 $f6, 0x10($a2) +/* 015CE8 800150E8 00000000 */ nop +/* 015CEC 800150EC 46062200 */ add.s $f8, $f4, $f6 +/* 015CF0 800150F0 460C403C */ c.lt.s $f8, $f12 +/* 015CF4 800150F4 00000000 */ nop +/* 015CF8 800150F8 45000010 */ bc1f .L8001513C +/* 015CFC 800150FC 00A2082A */ slt $at, $a1, $v0 +.L80015100: +/* 015D00 80015100 24840001 */ addiu $a0, $a0, 1 +/* 015D04 80015104 0064082A */ slt $at, $v1, $a0 +/* 015D08 80015108 1420000B */ bnez $at, .L80015138 +/* 015D0C 8001510C 24E70004 */ addiu $a3, $a3, 4 +/* 015D10 80015110 8CE60000 */ lw $a2, ($a3) +/* 015D14 80015114 00000000 */ nop +/* 015D18 80015118 C4CA0034 */ lwc1 $f10, 0x34($a2) +/* 015D1C 8001511C C4D00010 */ lwc1 $f16, 0x10($a2) +/* 015D20 80015120 00000000 */ nop +/* 015D24 80015124 46105480 */ add.s $f18, $f10, $f16 +/* 015D28 80015128 460C903C */ c.lt.s $f18, $f12 +/* 015D2C 8001512C 00000000 */ nop +/* 015D30 80015130 4501FFF3 */ bc1t .L80015100 +/* 015D34 80015134 00000000 */ nop +.L80015138: +/* 015D38 80015138 00A2082A */ slt $at, $a1, $v0 +.L8001513C: +/* 015D3C 8001513C 1420001C */ bnez $at, .L800151B0 +/* 015D40 80015140 00046880 */ sll $t5, $a0, 2 +/* 015D44 80015144 8D4B0000 */ lw $t3, ($t2) +/* 015D48 80015148 00056080 */ sll $t4, $a1, 2 +/* 015D4C 8001514C 016C3021 */ addu $a2, $t3, $t4 +/* 015D50 80015150 8CC70000 */ lw $a3, ($a2) +/* 015D54 80015154 00000000 */ nop +/* 015D58 80015158 C4E40034 */ lwc1 $f4, 0x34($a3) +/* 015D5C 8001515C C4E60010 */ lwc1 $f6, 0x10($a3) +/* 015D60 80015160 00000000 */ nop +/* 015D64 80015164 46062200 */ add.s $f8, $f4, $f6 +/* 015D68 80015168 4608603E */ c.le.s $f12, $f8 +/* 015D6C 8001516C 00000000 */ nop +/* 015D70 80015170 45000010 */ bc1f .L800151B4 +/* 015D74 80015174 0085082A */ slt $at, $a0, $a1 +.L80015178: +/* 015D78 80015178 24A5FFFF */ addiu $a1, $a1, -1 +/* 015D7C 8001517C 00A2082A */ slt $at, $a1, $v0 +/* 015D80 80015180 1420000B */ bnez $at, .L800151B0 +/* 015D84 80015184 24C6FFFC */ addiu $a2, $a2, -4 +/* 015D88 80015188 8CC70000 */ lw $a3, ($a2) +/* 015D8C 8001518C 00000000 */ nop +/* 015D90 80015190 C4EA0034 */ lwc1 $f10, 0x34($a3) +/* 015D94 80015194 C4F00010 */ lwc1 $f16, 0x10($a3) +/* 015D98 80015198 00000000 */ nop +/* 015D9C 8001519C 46105480 */ add.s $f18, $f10, $f16 +/* 015DA0 800151A0 4612603E */ c.le.s $f12, $f18 +/* 015DA4 800151A4 00000000 */ nop +/* 015DA8 800151A8 4501FFF3 */ bc1t .L80015178 +/* 015DAC 800151AC 00000000 */ nop +.L800151B0: +/* 015DB0 800151B0 0085082A */ slt $at, $a0, $a1 +.L800151B4: +/* 015DB4 800151B4 1020000C */ beqz $at, .L800151E8 +/* 015DB8 800151B8 00054080 */ sll $t0, $a1, 2 +/* 015DBC 800151BC 8D460000 */ lw $a2, ($t2) +/* 015DC0 800151C0 24840001 */ addiu $a0, $a0, 1 +/* 015DC4 800151C4 00C87021 */ addu $t6, $a2, $t0 +/* 015DC8 800151C8 8DCF0000 */ lw $t7, ($t6) +/* 015DCC 800151CC 00CD3821 */ addu $a3, $a2, $t5 +/* 015DD0 800151D0 8CE90000 */ lw $t1, ($a3) +/* 015DD4 800151D4 ACEF0000 */ sw $t7, ($a3) +/* 015DD8 800151D8 8D580000 */ lw $t8, ($t2) +/* 015DDC 800151DC 24A5FFFF */ addiu $a1, $a1, -1 +/* 015DE0 800151E0 0308C821 */ addu $t9, $t8, $t0 +/* 015DE4 800151E4 AF290000 */ sw $t1, ($t9) +.L800151E8: +/* 015DE8 800151E8 00A4082A */ slt $at, $a1, $a0 +/* 015DEC 800151EC 1020FFB5 */ beqz $at, .L800150C4 +/* 015DF0 800151F0 0064082A */ slt $at, $v1, $a0 +/* 015DF4 800151F4 03E00008 */ jr $ra +/* 015DF8 800151F8 00801025 */ move $v0, $a0 + +/* 015DFC 800151FC 00A4082A */ slt $at, $a1, $a0 +/* 015E00 80015200 1420004F */ bnez $at, .L80015340 +/* 015E04 80015204 3C0A8012 */ lui $t2, %hi(D_8011AE58) # $t2, 0x8012 +/* 015E08 80015208 254AAE58 */ addiu $t2, %lo(D_8011AE58) # addiu $t2, $t2, -0x51a8 +/* 015E0C 8001520C 0064082A */ slt $at, $v1, $a0 +.L80015210: +/* 015E10 80015210 1420001D */ bnez $at, .L80015288 +/* 015E14 80015214 00A2082A */ slt $at, $a1, $v0 +/* 015E18 80015218 8D4B0000 */ lw $t3, ($t2) +/* 015E1C 8001521C 00046080 */ sll $t4, $a0, 2 +/* 015E20 80015220 016C3821 */ addu $a3, $t3, $t4 +/* 015E24 80015224 8CE60000 */ lw $a2, ($a3) +/* 015E28 80015228 00000000 */ nop +/* 015E2C 8001522C C4C40034 */ lwc1 $f4, 0x34($a2) +/* 015E30 80015230 C4C60014 */ lwc1 $f6, 0x14($a2) +/* 015E34 80015234 00000000 */ nop +/* 015E38 80015238 46062200 */ add.s $f8, $f4, $f6 +/* 015E3C 8001523C 460C403C */ c.lt.s $f8, $f12 +/* 015E40 80015240 00000000 */ nop +/* 015E44 80015244 45000010 */ bc1f .L80015288 +/* 015E48 80015248 00A2082A */ slt $at, $a1, $v0 +.L8001524C: +/* 015E4C 8001524C 24840001 */ addiu $a0, $a0, 1 +/* 015E50 80015250 0064082A */ slt $at, $v1, $a0 +/* 015E54 80015254 1420000B */ bnez $at, .L80015284 +/* 015E58 80015258 24E70004 */ addiu $a3, $a3, 4 +/* 015E5C 8001525C 8CE60000 */ lw $a2, ($a3) +/* 015E60 80015260 00000000 */ nop +/* 015E64 80015264 C4CA0034 */ lwc1 $f10, 0x34($a2) +/* 015E68 80015268 C4D00014 */ lwc1 $f16, 0x14($a2) +/* 015E6C 8001526C 00000000 */ nop +/* 015E70 80015270 46105480 */ add.s $f18, $f10, $f16 +/* 015E74 80015274 460C903C */ c.lt.s $f18, $f12 +/* 015E78 80015278 00000000 */ nop +/* 015E7C 8001527C 4501FFF3 */ bc1t .L8001524C +/* 015E80 80015280 00000000 */ nop +.L80015284: +/* 015E84 80015284 00A2082A */ slt $at, $a1, $v0 +.L80015288: +/* 015E88 80015288 1420001C */ bnez $at, .L800152FC +/* 015E8C 8001528C 00047880 */ sll $t7, $a0, 2 +/* 015E90 80015290 8D4D0000 */ lw $t5, ($t2) +/* 015E94 80015294 00057080 */ sll $t6, $a1, 2 +/* 015E98 80015298 01AE3021 */ addu $a2, $t5, $t6 +/* 015E9C 8001529C 8CC70000 */ lw $a3, ($a2) +/* 015EA0 800152A0 00000000 */ nop +/* 015EA4 800152A4 C4E40034 */ lwc1 $f4, 0x34($a3) +/* 015EA8 800152A8 C4E60014 */ lwc1 $f6, 0x14($a3) +/* 015EAC 800152AC 00000000 */ nop +/* 015EB0 800152B0 46062200 */ add.s $f8, $f4, $f6 +/* 015EB4 800152B4 4608603E */ c.le.s $f12, $f8 +/* 015EB8 800152B8 00000000 */ nop +/* 015EBC 800152BC 45000010 */ bc1f .L80015300 +/* 015EC0 800152C0 0085082A */ slt $at, $a0, $a1 +.L800152C4: +/* 015EC4 800152C4 24A5FFFF */ addiu $a1, $a1, -1 +/* 015EC8 800152C8 00A2082A */ slt $at, $a1, $v0 +/* 015ECC 800152CC 1420000B */ bnez $at, .L800152FC +/* 015ED0 800152D0 24C6FFFC */ addiu $a2, $a2, -4 +/* 015ED4 800152D4 8CC70000 */ lw $a3, ($a2) +/* 015ED8 800152D8 00000000 */ nop +/* 015EDC 800152DC C4EA0034 */ lwc1 $f10, 0x34($a3) +/* 015EE0 800152E0 C4F00014 */ lwc1 $f16, 0x14($a3) +/* 015EE4 800152E4 00000000 */ nop +/* 015EE8 800152E8 46105480 */ add.s $f18, $f10, $f16 +/* 015EEC 800152EC 4612603E */ c.le.s $f12, $f18 +/* 015EF0 800152F0 00000000 */ nop +/* 015EF4 800152F4 4501FFF3 */ bc1t .L800152C4 +/* 015EF8 800152F8 00000000 */ nop +.L800152FC: +/* 015EFC 800152FC 0085082A */ slt $at, $a0, $a1 +.L80015300: +/* 015F00 80015300 1020000C */ beqz $at, .L80015334 +/* 015F04 80015304 00054080 */ sll $t0, $a1, 2 +/* 015F08 80015308 8D460000 */ lw $a2, ($t2) +/* 015F0C 8001530C 24840001 */ addiu $a0, $a0, 1 +/* 015F10 80015310 00C8C021 */ addu $t8, $a2, $t0 +/* 015F14 80015314 8F190000 */ lw $t9, ($t8) +/* 015F18 80015318 00CF3821 */ addu $a3, $a2, $t7 +/* 015F1C 8001531C 8CE90000 */ lw $t1, ($a3) +/* 015F20 80015320 ACF90000 */ sw $t9, ($a3) +/* 015F24 80015324 8D4B0000 */ lw $t3, ($t2) +/* 015F28 80015328 24A5FFFF */ addiu $a1, $a1, -1 +/* 015F2C 8001532C 01686021 */ addu $t4, $t3, $t0 +/* 015F30 80015330 AD890000 */ sw $t1, ($t4) +.L80015334: +/* 015F34 80015334 00A4082A */ slt $at, $a1, $a0 +/* 015F38 80015338 1020FFB5 */ beqz $at, .L80015210 +/* 015F3C 8001533C 0064082A */ slt $at, $v1, $a0 +.L80015340: +/* 015F40 80015340 03E00008 */ jr $ra +/* 015F44 80015344 00801025 */ move $v0, $a0 + diff --git a/asm/non_matchings/unknown_005740/func_80015348.s b/asm/non_matchings/unknown_005740/func_80015348.s new file mode 100644 index 00000000..a06cedc6 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80015348.s @@ -0,0 +1,172 @@ +glabel func_80015348 +/* 015F48 80015348 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 015F4C 8001534C AFB40034 */ sw $s4, 0x34($sp) +/* 015F50 80015350 AFB30030 */ sw $s3, 0x30($sp) +/* 015F54 80015354 00A4082A */ slt $at, $a1, $a0 +/* 015F58 80015358 00809825 */ move $s3, $a0 +/* 015F5C 8001535C 00A0A025 */ move $s4, $a1 +/* 015F60 80015360 AFBF003C */ sw $ra, 0x3c($sp) +/* 015F64 80015364 AFB50038 */ sw $s5, 0x38($sp) +/* 015F68 80015368 AFB2002C */ sw $s2, 0x2c($sp) +/* 015F6C 8001536C AFB10028 */ sw $s1, 0x28($sp) +/* 015F70 80015370 AFB00024 */ sw $s0, 0x24($sp) +/* 015F74 80015374 E7B70018 */ swc1 $f23, 0x18($sp) +/* 015F78 80015378 E7B6001C */ swc1 $f22, 0x1c($sp) +/* 015F7C 8001537C E7B50010 */ swc1 $f21, 0x10($sp) +/* 015F80 80015380 14200080 */ bnez $at, .L80015584 +/* 015F84 80015384 E7B40014 */ swc1 $f20, 0x14($sp) +/* 015F88 80015388 00A4082A */ slt $at, $a1, $a0 +/* 015F8C 8001538C 14200034 */ bnez $at, .L80015460 +/* 015F90 80015390 00048880 */ sll $s1, $a0, 2 +/* 015F94 80015394 3C01C67A */ li $at, 0xC67A0000 # -16000.000000 +/* 015F98 80015398 0005A880 */ sll $s5, $a1, 2 +/* 015F9C 8001539C 3C128012 */ lui $s2, %hi(D_8011AE58) # $s2, 0x8012 +/* 015FA0 800153A0 4481A000 */ mtc1 $at, $f20 +/* 015FA4 800153A4 4480B000 */ mtc1 $zero, $f22 +/* 015FA8 800153A8 2652AE58 */ addiu $s2, %lo(D_8011AE58) # addiu $s2, $s2, -0x51a8 +/* 015FAC 800153AC 26B50004 */ addiu $s5, $s5, 4 +.L800153B0: +/* 015FB0 800153B0 8E4E0000 */ lw $t6, ($s2) +/* 015FB4 800153B4 00000000 */ nop +/* 015FB8 800153B8 01D17821 */ addu $t7, $t6, $s1 +/* 015FBC 800153BC 8DE40000 */ lw $a0, ($t7) +/* 015FC0 800153C0 00000000 */ nop +/* 015FC4 800153C4 10800022 */ beqz $a0, .L80015450 +/* 015FC8 800153C8 00808025 */ move $s0, $a0 +/* 015FCC 800153CC 84980006 */ lh $t8, 6($a0) +/* 015FD0 800153D0 00000000 */ nop +/* 015FD4 800153D4 33198000 */ andi $t9, $t8, 0x8000 +/* 015FD8 800153D8 13200009 */ beqz $t9, .L80015400 +/* 015FDC 800153DC 00000000 */ nop +/* 015FE0 800153E0 C60C000C */ lwc1 $f12, 0xc($s0) +/* 015FE4 800153E4 C60E0010 */ lwc1 $f14, 0x10($s0) +/* 015FE8 800153E8 8E060014 */ lw $a2, 0x14($s0) +/* 015FEC 800153EC 0C01A772 */ jal func_80069DC8 +/* 015FF0 800153F0 00000000 */ nop +/* 015FF4 800153F4 46000107 */ neg.s $f4, $f0 +/* 015FF8 800153F8 10000016 */ b .L80015454 +/* 015FFC 800153FC E6040030 */ swc1 $f4, 0x30($s0) +.L80015400: +/* 016000 80015400 8C880040 */ lw $t0, 0x40($a0) +/* 016004 80015404 00000000 */ nop +/* 016008 80015408 95090030 */ lhu $t1, 0x30($t0) +/* 01600C 8001540C 00000000 */ nop +/* 016010 80015410 312A0080 */ andi $t2, $t1, 0x80 +/* 016014 80015414 11400006 */ beqz $t2, .L80015430 +/* 016018 80015418 00000000 */ nop +/* 01601C 8001541C C6060030 */ lwc1 $f6, 0x30($s0) +/* 016020 80015420 00000000 */ nop +/* 016024 80015424 46143200 */ add.s $f8, $f6, $f20 +/* 016028 80015428 1000000A */ b .L80015454 +/* 01602C 8001542C E6080030 */ swc1 $f8, 0x30($s0) +.L80015430: +/* 016030 80015430 C60C000C */ lwc1 $f12, 0xc($s0) +/* 016034 80015434 C60E0010 */ lwc1 $f14, 0x10($s0) +/* 016038 80015438 8E060014 */ lw $a2, 0x14($s0) +/* 01603C 8001543C 0C01A772 */ jal func_80069DC8 +/* 016040 80015440 00000000 */ nop +/* 016044 80015444 46000287 */ neg.s $f10, $f0 +/* 016048 80015448 10000002 */ b .L80015454 +/* 01604C 8001544C E60A0030 */ swc1 $f10, 0x30($s0) +.L80015450: +/* 016050 80015450 E6160030 */ swc1 $f22, 0x30($s0) +.L80015454: +/* 016054 80015454 26310004 */ addiu $s1, $s1, 4 +/* 016058 80015458 16B1FFD5 */ bne $s5, $s1, .L800153B0 +/* 01605C 8001545C 00000000 */ nop +.L80015460: +/* 016060 80015460 3C128012 */ lui $s2, %hi(D_8011AE58) # $s2, 0x8012 +/* 016064 80015464 2652AE58 */ addiu $s2, %lo(D_8011AE58) # addiu $s2, $s2, -0x51a8 +/* 016068 80015468 0274082A */ slt $at, $s3, $s4 +.L8001546C: +/* 01606C 8001546C 24050001 */ li $a1, 1 +/* 016070 80015470 10200042 */ beqz $at, .L8001557C +/* 016074 80015474 02601025 */ move $v0, $s3 +/* 016078 80015478 02931823 */ subu $v1, $s4, $s3 +/* 01607C 8001547C 306B0001 */ andi $t3, $v1, 1 +/* 016080 80015480 11600015 */ beqz $t3, .L800154D8 +/* 016084 80015484 00028880 */ sll $s1, $v0, 2 +/* 016088 80015488 8E4C0000 */ lw $t4, ($s2) +/* 01608C 8001548C 00131880 */ sll $v1, $s3, 2 +/* 016090 80015490 01831021 */ addu $v0, $t4, $v1 +/* 016094 80015494 8C440000 */ lw $a0, ($v0) +/* 016098 80015498 8C460004 */ lw $a2, 4($v0) +/* 01609C 8001549C C4800030 */ lwc1 $f0, 0x30($a0) +/* 0160A0 800154A0 C4C20030 */ lwc1 $f2, 0x30($a2) +/* 0160A4 800154A4 26670001 */ addiu $a3, $s3, 1 +/* 0160A8 800154A8 4602003C */ c.lt.s $f0, $f2 +/* 0160AC 800154AC 00000000 */ nop +/* 0160B0 800154B0 45000006 */ bc1f .L800154CC +/* 0160B4 800154B4 00000000 */ nop +/* 0160B8 800154B8 AC460000 */ sw $a2, ($v0) +/* 0160BC 800154BC 8E4D0000 */ lw $t5, ($s2) +/* 0160C0 800154C0 00002825 */ move $a1, $zero +/* 0160C4 800154C4 01A37021 */ addu $t6, $t5, $v1 +/* 0160C8 800154C8 ADC40004 */ sw $a0, 4($t6) +.L800154CC: +/* 0160CC 800154CC 10F4002B */ beq $a3, $s4, .L8001557C +/* 0160D0 800154D0 00E01025 */ move $v0, $a3 +/* 0160D4 800154D4 00028880 */ sll $s1, $v0, 2 +.L800154D8: +/* 0160D8 800154D8 00143080 */ sll $a2, $s4, 2 +.L800154DC: +/* 0160DC 800154DC 8E4F0000 */ lw $t7, ($s2) +/* 0160E0 800154E0 00000000 */ nop +/* 0160E4 800154E4 01F11021 */ addu $v0, $t7, $s1 +/* 0160E8 800154E8 8C440000 */ lw $a0, ($v0) +/* 0160EC 800154EC 8C430004 */ lw $v1, 4($v0) +/* 0160F0 800154F0 C4900030 */ lwc1 $f16, 0x30($a0) +/* 0160F4 800154F4 C4600030 */ lwc1 $f0, 0x30($v1) +/* 0160F8 800154F8 00000000 */ nop +/* 0160FC 800154FC 4600803C */ c.lt.s $f16, $f0 +/* 016100 80015500 00000000 */ nop +/* 016104 80015504 4500000D */ bc1f .L8001553C +/* 016108 80015508 00000000 */ nop +/* 01610C 8001550C AC430000 */ sw $v1, ($v0) +/* 016110 80015510 8E580000 */ lw $t8, ($s2) +/* 016114 80015514 00002825 */ move $a1, $zero +/* 016118 80015518 0311C821 */ addu $t9, $t8, $s1 +/* 01611C 8001551C AF240004 */ sw $a0, 4($t9) +/* 016120 80015520 8E480000 */ lw $t0, ($s2) +/* 016124 80015524 00000000 */ nop +/* 016128 80015528 01111021 */ addu $v0, $t0, $s1 +/* 01612C 8001552C 8C430004 */ lw $v1, 4($v0) +/* 016130 80015530 00000000 */ nop +/* 016134 80015534 C4600030 */ lwc1 $f0, 0x30($v1) +/* 016138 80015538 00000000 */ nop +.L8001553C: +/* 01613C 8001553C 8C440008 */ lw $a0, 8($v0) +/* 016140 80015540 00000000 */ nop +/* 016144 80015544 C4920030 */ lwc1 $f18, 0x30($a0) +/* 016148 80015548 00000000 */ nop +/* 01614C 8001554C 4612003C */ c.lt.s $f0, $f18 +/* 016150 80015550 00000000 */ nop +/* 016154 80015554 45000006 */ bc1f .L80015570 +/* 016158 80015558 00000000 */ nop +/* 01615C 8001555C AC440004 */ sw $a0, 4($v0) +/* 016160 80015560 8E490000 */ lw $t1, ($s2) +/* 016164 80015564 00002825 */ move $a1, $zero +/* 016168 80015568 01315021 */ addu $t2, $t1, $s1 +/* 01616C 8001556C AD430008 */ sw $v1, 8($t2) +.L80015570: +/* 016170 80015570 26310008 */ addiu $s1, $s1, 8 +/* 016174 80015574 1626FFD9 */ bne $s1, $a2, .L800154DC +/* 016178 80015578 00000000 */ nop +.L8001557C: +/* 01617C 8001557C 10A0FFBB */ beqz $a1, .L8001546C +/* 016180 80015580 0274082A */ slt $at, $s3, $s4 +.L80015584: +/* 016184 80015584 8FBF003C */ lw $ra, 0x3c($sp) +/* 016188 80015588 C7B50010 */ lwc1 $f21, 0x10($sp) +/* 01618C 8001558C C7B40014 */ lwc1 $f20, 0x14($sp) +/* 016190 80015590 C7B70018 */ lwc1 $f23, 0x18($sp) +/* 016194 80015594 C7B6001C */ lwc1 $f22, 0x1c($sp) +/* 016198 80015598 8FB00024 */ lw $s0, 0x24($sp) +/* 01619C 8001559C 8FB10028 */ lw $s1, 0x28($sp) +/* 0161A0 800155A0 8FB2002C */ lw $s2, 0x2c($sp) +/* 0161A4 800155A4 8FB30030 */ lw $s3, 0x30($sp) +/* 0161A8 800155A8 8FB40034 */ lw $s4, 0x34($sp) +/* 0161AC 800155AC 8FB50038 */ lw $s5, 0x38($sp) +/* 0161B0 800155B0 03E00008 */ jr $ra +/* 0161B4 800155B4 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_005740/func_800155B8.s b/asm/non_matchings/unknown_005740/func_800155B8.s new file mode 100644 index 00000000..0662e3ac --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800155B8.s @@ -0,0 +1,284 @@ +glabel func_800155B8 +/* 0161B8 800155B8 27BDFB70 */ addiu $sp, $sp, -0x490 +/* 0161BC 800155BC AFB30034 */ sw $s3, 0x34($sp) +/* 0161C0 800155C0 3C138012 */ lui $s3, %hi(D_8011AE60) # $s3, 0x8012 +/* 0161C4 800155C4 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 +/* 0161C8 800155C8 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) +/* 0161CC 800155CC 8E73AE60 */ lw $s3, %lo(D_8011AE60)($s3) +/* 0161D0 800155D0 AFB5003C */ sw $s5, 0x3c($sp) +/* 0161D4 800155D4 0263082A */ slt $at, $s3, $v1 +/* 0161D8 800155D8 AFBF004C */ sw $ra, 0x4c($sp) +/* 0161DC 800155DC AFBE0048 */ sw $fp, 0x48($sp) +/* 0161E0 800155E0 AFB70044 */ sw $s7, 0x44($sp) +/* 0161E4 800155E4 AFB60040 */ sw $s6, 0x40($sp) +/* 0161E8 800155E8 AFB40038 */ sw $s4, 0x38($sp) +/* 0161EC 800155EC AFB20030 */ sw $s2, 0x30($sp) +/* 0161F0 800155F0 AFB1002C */ sw $s1, 0x2c($sp) +/* 0161F4 800155F4 AFB00028 */ sw $s0, 0x28($sp) +/* 0161F8 800155F8 E7B70020 */ swc1 $f23, 0x20($sp) +/* 0161FC 800155FC E7B60024 */ swc1 $f22, 0x24($sp) +/* 016200 80015600 E7B50018 */ swc1 $f21, 0x18($sp) +/* 016204 80015604 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 016208 80015608 10200026 */ beqz $at, .L800156A4 +/* 01620C 8001560C 0000A825 */ move $s5, $zero +/* 016210 80015610 3C048012 */ lui $a0, %hi(D_8011AE58) # $a0, 0x8012 +/* 016214 80015614 2484AE58 */ addiu $a0, %lo(D_8011AE58) # addiu $a0, $a0, -0x51a8 +/* 016218 80015618 00131080 */ sll $v0, $s3, 2 +/* 01621C 8001561C 241E0002 */ li $fp, 2 +/* 016220 80015620 27B60064 */ addiu $s6, $sp, 0x64 +/* 016224 80015624 240600FF */ li $a2, 255 +/* 016228 80015628 2405FFB7 */ li $a1, -73 +.L8001562C: +/* 01622C 8001562C 8C8E0000 */ lw $t6, ($a0) +/* 016230 80015630 26730001 */ addiu $s3, $s3, 1 +/* 016234 80015634 01C27821 */ addu $t7, $t6, $v0 +/* 016238 80015638 8DF10000 */ lw $s1, ($t7) +/* 01623C 8001563C 00000000 */ nop +/* 016240 80015640 86380006 */ lh $t8, 6($s1) +/* 016244 80015644 00000000 */ nop +/* 016248 80015648 33198000 */ andi $t9, $t8, 0x8000 +/* 01624C 8001564C 17200013 */ bnez $t9, .L8001569C +/* 016250 80015650 0263082A */ slt $at, $s3, $v1 +/* 016254 80015654 8E32004C */ lw $s2, 0x4c($s1) +/* 016258 80015658 00154080 */ sll $t0, $s5, 2 +/* 01625C 8001565C 1240000E */ beqz $s2, .L80015698 +/* 016260 80015660 02C84821 */ addu $t1, $s6, $t0 +/* 016264 80015664 AD310000 */ sw $s1, ($t1) +/* 016268 80015668 924A0011 */ lbu $t2, 0x11($s2) +/* 01626C 8001566C 26B50001 */ addiu $s5, $s5, 1 +/* 016270 80015670 13CA000A */ beq $fp, $t2, .L8001569C +/* 016274 80015674 0263082A */ slt $at, $s3, $v1 +/* 016278 80015678 864B0014 */ lh $t3, 0x14($s2) +/* 01627C 8001567C AE400000 */ sw $zero, ($s2) +/* 016280 80015680 01656024 */ and $t4, $t3, $a1 +/* 016284 80015684 A64C0014 */ sh $t4, 0x14($s2) +/* 016288 80015688 A2460013 */ sb $a2, 0x13($s2) +/* 01628C 8001568C 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 +/* 016290 80015690 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) +/* 016294 80015694 00000000 */ nop +.L80015698: +/* 016298 80015698 0263082A */ slt $at, $s3, $v1 +.L8001569C: +/* 01629C 8001569C 1420FFE3 */ bnez $at, .L8001562C +/* 0162A0 800156A0 24420004 */ addiu $v0, $v0, 4 +.L800156A4: +/* 0162A4 800156A4 3C018012 */ lui $at, %hi(D_8011AE70) # $at, 0x8012 +/* 0162A8 800156A8 27B60064 */ addiu $s6, $sp, 0x64 +/* 0162AC 800156AC 241E0002 */ li $fp, 2 +/* 0162B0 800156B0 AC20AE70 */ sw $zero, %lo(D_8011AE70)($at) +/* 0162B4 800156B4 1AA0006B */ blez $s5, .L80015864 +/* 0162B8 800156B8 00009825 */ move $s3, $zero +/* 0162BC 800156BC 3C014880 */ li $at, 0x48800000 # 262144.000000 +/* 0162C0 800156C0 4481B000 */ mtc1 $at, $f22 +/* 0162C4 800156C4 3C014A80 */ li $at, 0x4A800000 # 4194304.000000 +/* 0162C8 800156C8 4481A000 */ mtc1 $at, $f20 +/* 0162CC 800156CC 27B70064 */ addiu $s7, $sp, 0x64 +/* 0162D0 800156D0 24140003 */ li $s4, 3 +.L800156D4: +/* 0162D4 800156D4 8EF10000 */ lw $s1, ($s7) +/* 0162D8 800156D8 3C028012 */ lui $v0, %hi(D_8011AE70) # $v0, 0x8012 +/* 0162DC 800156DC 8E32004C */ lw $s2, 0x4c($s1) +/* 0162E0 800156E0 00000000 */ nop +/* 0162E4 800156E4 924D0011 */ lbu $t5, 0x11($s2) +/* 0162E8 800156E8 00000000 */ nop +/* 0162EC 800156EC 17CD000E */ bne $fp, $t5, .L80015728 +/* 0162F0 800156F0 00000000 */ nop +/* 0162F4 800156F4 8C42AE70 */ lw $v0, %lo(D_8011AE70)($v0) +/* 0162F8 800156F8 3C0E8012 */ lui $t6, %hi(D_8011AE6C) # $t6, 0x8012 +/* 0162FC 800156FC 28410014 */ slti $at, $v0, 0x14 +/* 016300 80015700 10200009 */ beqz $at, .L80015728 +/* 016304 80015704 00027880 */ sll $t7, $v0, 2 +/* 016308 80015708 8DCEAE6C */ lw $t6, %lo(D_8011AE6C)($t6) +/* 01630C 8001570C 3C198012 */ lui $t9, %hi(D_8011AE70) # $t9, 0x8012 +/* 016310 80015710 01CFC021 */ addu $t8, $t6, $t7 +/* 016314 80015714 AF110000 */ sw $s1, ($t8) +/* 016318 80015718 8F39AE70 */ lw $t9, %lo(D_8011AE70)($t9) +/* 01631C 8001571C 3C018012 */ lui $at, %hi(D_8011AE70) # $at, 0x8012 +/* 016320 80015720 27280001 */ addiu $t0, $t9, 1 +/* 016324 80015724 AC28AE70 */ sw $t0, %lo(D_8011AE70)($at) +.L80015728: +/* 016328 80015728 86420014 */ lh $v0, 0x14($s2) +/* 01632C 8001572C 00000000 */ nop +/* 016330 80015730 30490004 */ andi $t1, $v0, 4 +/* 016334 80015734 11200033 */ beqz $t1, .L80015804 +/* 016338 80015738 304E0100 */ andi $t6, $v0, 0x100 +/* 01633C 8001573C 1AA00030 */ blez $s5, .L80015800 +/* 016340 80015740 00008025 */ move $s0, $zero +.L80015744: +/* 016344 80015744 12700029 */ beq $s3, $s0, .L800157EC +/* 016348 80015748 00105080 */ sll $t2, $s0, 2 +/* 01634C 8001574C 02CA5821 */ addu $t3, $s6, $t2 +/* 016350 80015750 8D650000 */ lw $a1, ($t3) +/* 016354 80015754 00000000 */ nop +/* 016358 80015758 8CA2004C */ lw $v0, 0x4c($a1) +/* 01635C 8001575C 00000000 */ nop +/* 016360 80015760 84430014 */ lh $v1, 0x14($v0) +/* 016364 80015764 00000000 */ nop +/* 016368 80015768 306C0003 */ andi $t4, $v1, 3 +/* 01636C 8001576C 1180001F */ beqz $t4, .L800157EC +/* 016370 80015770 00000000 */ nop +/* 016374 80015774 90440011 */ lbu $a0, 0x11($v0) +/* 016378 80015778 00000000 */ nop +/* 01637C 8001577C 16840005 */ bne $s4, $a0, .L80015794 +/* 016380 80015780 00000000 */ nop +/* 016384 80015784 0C0059D2 */ jal func_80016748 +/* 016388 80015788 02202025 */ move $a0, $s1 +/* 01638C 8001578C 10000018 */ b .L800157F0 +/* 016390 80015790 26100001 */ addiu $s0, $s0, 1 +.L80015794: +/* 016394 80015794 13C40015 */ beq $fp, $a0, .L800157EC +/* 016398 80015798 306D0020 */ andi $t5, $v1, 0x20 +/* 01639C 8001579C C624000C */ lwc1 $f4, 0xc($s1) +/* 0163A0 800157A0 C4A6000C */ lwc1 $f6, 0xc($a1) +/* 0163A4 800157A4 C6280014 */ lwc1 $f8, 0x14($s1) +/* 0163A8 800157A8 C4AA0014 */ lwc1 $f10, 0x14($a1) +/* 0163AC 800157AC 46062001 */ sub.s $f0, $f4, $f6 +/* 0163B0 800157B0 11A00003 */ beqz $t5, .L800157C0 +/* 0163B4 800157B4 460A4081 */ sub.s $f2, $f8, $f10 +/* 0163B8 800157B8 10000002 */ b .L800157C4 +/* 0163BC 800157BC 4600A306 */ mov.s $f12, $f20 +.L800157C0: +/* 0163C0 800157C0 4600B306 */ mov.s $f12, $f22 +.L800157C4: +/* 0163C4 800157C4 46000402 */ mul.s $f16, $f0, $f0 +/* 0163C8 800157C8 00000000 */ nop +/* 0163CC 800157CC 46021482 */ mul.s $f18, $f2, $f2 +/* 0163D0 800157D0 46128100 */ add.s $f4, $f16, $f18 +/* 0163D4 800157D4 460C203C */ c.lt.s $f4, $f12 +/* 0163D8 800157D8 00000000 */ nop +/* 0163DC 800157DC 45000003 */ bc1f .L800157EC +/* 0163E0 800157E0 00000000 */ nop +/* 0163E4 800157E4 0C005672 */ jal func_800159C8 +/* 0163E8 800157E8 02202025 */ move $a0, $s1 +.L800157EC: +/* 0163EC 800157EC 26100001 */ addiu $s0, $s0, 1 +.L800157F0: +/* 0163F0 800157F0 1615FFD4 */ bne $s0, $s5, .L80015744 +/* 0163F4 800157F4 00000000 */ nop +/* 0163F8 800157F8 86420014 */ lh $v0, 0x14($s2) +/* 0163FC 800157FC 00000000 */ nop +.L80015800: +/* 016400 80015800 304E0100 */ andi $t6, $v0, 0x100 +.L80015804: +/* 016404 80015804 11C00013 */ beqz $t6, .L80015854 +/* 016408 80015808 00000000 */ nop +/* 01640C 8001580C 1AA00011 */ blez $s5, .L80015854 +/* 016410 80015810 00008025 */ move $s0, $zero +.L80015814: +/* 016414 80015814 1270000C */ beq $s3, $s0, .L80015848 +/* 016418 80015818 00107880 */ sll $t7, $s0, 2 +/* 01641C 8001581C 02CFC021 */ addu $t8, $s6, $t7 +/* 016420 80015820 8F050000 */ lw $a1, ($t8) +/* 016424 80015824 00000000 */ nop +/* 016428 80015828 8CA2004C */ lw $v0, 0x4c($a1) +/* 01642C 8001582C 00000000 */ nop +/* 016430 80015830 90590011 */ lbu $t9, 0x11($v0) +/* 016434 80015834 00000000 */ nop +/* 016438 80015838 16990003 */ bne $s4, $t9, .L80015848 +/* 01643C 8001583C 00000000 */ nop +/* 016440 80015840 0C0059D2 */ jal func_80016748 +/* 016444 80015844 02202025 */ move $a0, $s1 +.L80015848: +/* 016448 80015848 26100001 */ addiu $s0, $s0, 1 +/* 01644C 8001584C 1615FFF1 */ bne $s0, $s5, .L80015814 +/* 016450 80015850 00000000 */ nop +.L80015854: +/* 016454 80015854 26730001 */ addiu $s3, $s3, 1 +/* 016458 80015858 1675FF9E */ bne $s3, $s5, .L800156D4 +/* 01645C 8001585C 26F70004 */ addiu $s7, $s7, 4 +/* 016460 80015860 00009825 */ move $s3, $zero +.L80015864: +/* 016464 80015864 1AA00048 */ blez $s5, .L80015988 +/* 016468 80015868 32A30003 */ andi $v1, $s5, 3 +/* 01646C 8001586C 10600011 */ beqz $v1, .L800158B4 +/* 016470 80015870 00601025 */ move $v0, $v1 +/* 016474 80015874 00134080 */ sll $t0, $s3, 2 +/* 016478 80015878 27A90064 */ addiu $t1, $sp, 0x64 +/* 01647C 8001587C 0109B821 */ addu $s7, $t0, $t1 +.L80015880: +/* 016480 80015880 8EF10000 */ lw $s1, ($s7) +/* 016484 80015884 26730001 */ addiu $s3, $s3, 1 +/* 016488 80015888 8E32004C */ lw $s2, 0x4c($s1) +/* 01648C 8001588C C626000C */ lwc1 $f6, 0xc($s1) +/* 016490 80015890 26F70004 */ addiu $s7, $s7, 4 +/* 016494 80015894 E6460004 */ swc1 $f6, 4($s2) +/* 016498 80015898 C6280010 */ lwc1 $f8, 0x10($s1) +/* 01649C 8001589C 00000000 */ nop +/* 0164A0 800158A0 E6480008 */ swc1 $f8, 8($s2) +/* 0164A4 800158A4 C62A0014 */ lwc1 $f10, 0x14($s1) +/* 0164A8 800158A8 1453FFF5 */ bne $v0, $s3, .L80015880 +/* 0164AC 800158AC E64A000C */ swc1 $f10, 0xc($s2) +/* 0164B0 800158B0 12750035 */ beq $s3, $s5, .L80015988 +.L800158B4: +/* 0164B4 800158B4 27AB0064 */ addiu $t3, $sp, 0x64 +/* 0164B8 800158B8 00135080 */ sll $t2, $s3, 2 +/* 0164BC 800158BC 00156080 */ sll $t4, $s5, 2 +/* 0164C0 800158C0 018B1021 */ addu $v0, $t4, $t3 +/* 0164C4 800158C4 014BB821 */ addu $s7, $t2, $t3 +.L800158C8: +/* 0164C8 800158C8 8EF10000 */ lw $s1, ($s7) +/* 0164CC 800158CC 26F70010 */ addiu $s7, $s7, 0x10 +/* 0164D0 800158D0 8E32004C */ lw $s2, 0x4c($s1) +/* 0164D4 800158D4 C630000C */ lwc1 $f16, 0xc($s1) +/* 0164D8 800158D8 00000000 */ nop +/* 0164DC 800158DC E6500004 */ swc1 $f16, 4($s2) +/* 0164E0 800158E0 C6320010 */ lwc1 $f18, 0x10($s1) +/* 0164E4 800158E4 00000000 */ nop +/* 0164E8 800158E8 E6520008 */ swc1 $f18, 8($s2) +/* 0164EC 800158EC C6240014 */ lwc1 $f4, 0x14($s1) +/* 0164F0 800158F0 00000000 */ nop +/* 0164F4 800158F4 E644000C */ swc1 $f4, 0xc($s2) +/* 0164F8 800158F8 8EF1FFF4 */ lw $s1, -0xc($s7) +/* 0164FC 800158FC 00000000 */ nop +/* 016500 80015900 8E32004C */ lw $s2, 0x4c($s1) +/* 016504 80015904 C626000C */ lwc1 $f6, 0xc($s1) +/* 016508 80015908 00000000 */ nop +/* 01650C 8001590C E6460004 */ swc1 $f6, 4($s2) +/* 016510 80015910 C6280010 */ lwc1 $f8, 0x10($s1) +/* 016514 80015914 00000000 */ nop +/* 016518 80015918 E6480008 */ swc1 $f8, 8($s2) +/* 01651C 8001591C C62A0014 */ lwc1 $f10, 0x14($s1) +/* 016520 80015920 00000000 */ nop +/* 016524 80015924 E64A000C */ swc1 $f10, 0xc($s2) +/* 016528 80015928 8EF1FFF8 */ lw $s1, -8($s7) +/* 01652C 8001592C 00000000 */ nop +/* 016530 80015930 8E32004C */ lw $s2, 0x4c($s1) +/* 016534 80015934 C630000C */ lwc1 $f16, 0xc($s1) +/* 016538 80015938 00000000 */ nop +/* 01653C 8001593C E6500004 */ swc1 $f16, 4($s2) +/* 016540 80015940 C6320010 */ lwc1 $f18, 0x10($s1) +/* 016544 80015944 00000000 */ nop +/* 016548 80015948 E6520008 */ swc1 $f18, 8($s2) +/* 01654C 8001594C C6240014 */ lwc1 $f4, 0x14($s1) +/* 016550 80015950 00000000 */ nop +/* 016554 80015954 E644000C */ swc1 $f4, 0xc($s2) +/* 016558 80015958 8EF1FFFC */ lw $s1, -4($s7) +/* 01655C 8001595C 00000000 */ nop +/* 016560 80015960 8E32004C */ lw $s2, 0x4c($s1) +/* 016564 80015964 C626000C */ lwc1 $f6, 0xc($s1) +/* 016568 80015968 00000000 */ nop +/* 01656C 8001596C E6460004 */ swc1 $f6, 4($s2) +/* 016570 80015970 C6280010 */ lwc1 $f8, 0x10($s1) +/* 016574 80015974 00000000 */ nop +/* 016578 80015978 E6480008 */ swc1 $f8, 8($s2) +/* 01657C 8001597C C62A0014 */ lwc1 $f10, 0x14($s1) +/* 016580 80015980 16E2FFD1 */ bne $s7, $v0, .L800158C8 +/* 016584 80015984 E64A000C */ swc1 $f10, 0xc($s2) +.L80015988: +/* 016588 80015988 8FBF004C */ lw $ra, 0x4c($sp) +/* 01658C 8001598C C7B50018 */ lwc1 $f21, 0x18($sp) +/* 016590 80015990 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 016594 80015994 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 016598 80015998 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 01659C 8001599C 8FB00028 */ lw $s0, 0x28($sp) +/* 0165A0 800159A0 8FB1002C */ lw $s1, 0x2c($sp) +/* 0165A4 800159A4 8FB20030 */ lw $s2, 0x30($sp) +/* 0165A8 800159A8 8FB30034 */ lw $s3, 0x34($sp) +/* 0165AC 800159AC 8FB40038 */ lw $s4, 0x38($sp) +/* 0165B0 800159B0 8FB5003C */ lw $s5, 0x3c($sp) +/* 0165B4 800159B4 8FB60040 */ lw $s6, 0x40($sp) +/* 0165B8 800159B8 8FB70044 */ lw $s7, 0x44($sp) +/* 0165BC 800159BC 8FBE0048 */ lw $fp, 0x48($sp) +/* 0165C0 800159C0 03E00008 */ jr $ra +/* 0165C4 800159C4 27BD0490 */ addiu $sp, $sp, 0x490 + diff --git a/asm/non_matchings/unknown_005740/func_800159C8.s b/asm/non_matchings/unknown_005740/func_800159C8.s new file mode 100644 index 00000000..1e067148 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800159C8.s @@ -0,0 +1,752 @@ +glabel func_800159C8 +/* 0165C8 800159C8 27BDFF60 */ addiu $sp, $sp, -0xa0 +/* 0165CC 800159CC AFBF0014 */ sw $ra, 0x14($sp) +/* 0165D0 800159D0 C484000C */ lwc1 $f4, 0xc($a0) +/* 0165D4 800159D4 C4A6000C */ lwc1 $f6, 0xc($a1) +/* 0165D8 800159D8 C48A0010 */ lwc1 $f10, 0x10($a0) +/* 0165DC 800159DC C4A80010 */ lwc1 $f8, 0x10($a1) +/* 0165E0 800159E0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0165E4 800159E4 46043081 */ sub.s $f2, $f6, $f4 +/* 0165E8 800159E8 C4840014 */ lwc1 $f4, 0x14($a0) +/* 0165EC 800159EC 460A4001 */ sub.s $f0, $f8, $f10 +/* 0165F0 800159F0 44814000 */ mtc1 $at, $f8 +/* 0165F4 800159F4 C4A60014 */ lwc1 $f6, 0x14($a1) +/* 0165F8 800159F8 3C018012 */ lui $at, %hi(D_8011ADA8) # $at, 0x8012 +/* 0165FC 800159FC C42AADA8 */ lwc1 $f10, %lo(D_8011ADA8)($at) +/* 016600 80015A00 46043381 */ sub.s $f14, $f6, $f4 +/* 016604 80015A04 8CA6004C */ lw $a2, 0x4c($a1) +/* 016608 80015A08 460A4183 */ div.s $f6, $f8, $f10 +/* 01660C 80015A0C 8C88004C */ lw $t0, 0x4c($a0) +/* 016610 80015A10 24090001 */ li $t1, 1 +/* 016614 80015A14 00A03825 */ move $a3, $a1 +/* 016618 80015A18 E7A60080 */ swc1 $f6, 0x80($sp) +/* 01661C 80015A1C 90C20011 */ lbu $v0, 0x11($a2) +/* 016620 80015A20 00000000 */ nop +/* 016624 80015A24 1522001A */ bne $t1, $v0, .L80015A90 +/* 016628 80015A28 24010004 */ li $at, 4 +/* 01662C 80015A2C 80D90016 */ lb $t9, 0x16($a2) +/* 016630 80015A30 3C014120 */ li $at, 0x41200000 # 10.000000 +/* 016634 80015A34 44992000 */ mtc1 $t9, $f4 +/* 016638 80015A38 44816000 */ mtc1 $at, $f12 +/* 01663C 80015A3C 46802220 */ cvt.s.w $f8, $f4 +/* 016640 80015A40 460C4282 */ mul.s $f10, $f8, $f12 +/* 016644 80015A44 46000007 */ neg.s $f0, $f0 +/* 016648 80015A48 460A003C */ c.lt.s $f0, $f10 +/* 01664C 80015A4C 00000000 */ nop +/* 016650 80015A50 450102A8 */ bc1t .L800164F4 +/* 016654 80015A54 8FBF0014 */ lw $ra, 0x14($sp) +/* 016658 80015A58 80CA0017 */ lb $t2, 0x17($a2) +/* 01665C 80015A5C 00000000 */ nop +/* 016660 80015A60 448A3000 */ mtc1 $t2, $f6 +/* 016664 80015A64 00000000 */ nop +/* 016668 80015A68 46803120 */ cvt.s.w $f4, $f6 +/* 01666C 80015A6C 460C2202 */ mul.s $f8, $f4, $f12 +/* 016670 80015A70 4600403C */ c.lt.s $f8, $f0 +/* 016674 80015A74 00000000 */ nop +/* 016678 80015A78 4501029E */ bc1t .L800164F4 +/* 01667C 80015A7C 8FBF0014 */ lw $ra, 0x14($sp) +/* 016680 80015A80 44800000 */ mtc1 $zero, $f0 +/* 016684 80015A84 00000000 */ nop +/* 016688 80015A88 E7A00064 */ swc1 $f0, 0x64($sp) +/* 01668C 80015A8C 24010004 */ li $at, 4 +.L80015A90: +/* 016690 80015A90 1441000C */ bne $v0, $at, .L80015AC4 +/* 016694 80015A94 00000000 */ nop +/* 016698 80015A98 44803000 */ mtc1 $zero, $f6 +/* 01669C 80015A9C 3C01800E */ lui $at, %hi(D_800E55BC) # $at, 0x800e +/* 0166A0 80015AA0 4606003C */ c.lt.s $f0, $f6 +/* 0166A4 80015AA4 00000000 */ nop +/* 0166A8 80015AA8 45000006 */ bc1f .L80015AC4 +/* 0166AC 80015AAC 00000000 */ nop +/* 0166B0 80015AB0 C42955B8 */ lwc1 $f9, %lo(D_800E55B8)($at) +/* 0166B4 80015AB4 C42855BC */ lwc1 $f8, %lo(D_800E55BC)($at) +/* 0166B8 80015AB8 46000121 */ cvt.d.s $f4, $f0 +/* 0166BC 80015ABC 46282282 */ mul.d $f10, $f4, $f8 +/* 0166C0 80015AC0 46205020 */ cvt.s.d $f0, $f10 +.L80015AC4: +/* 0166C4 80015AC4 46021182 */ mul.s $f6, $f2, $f2 +/* 0166C8 80015AC8 AFA400A0 */ sw $a0, 0xa0($sp) +/* 0166CC 80015ACC AFA60054 */ sw $a2, 0x54($sp) +/* 0166D0 80015AD0 AFA700A4 */ sw $a3, 0xa4($sp) +/* 0166D4 80015AD4 46000102 */ mul.s $f4, $f0, $f0 +/* 0166D8 80015AD8 AFA80058 */ sw $t0, 0x58($sp) +/* 0166DC 80015ADC E7A00064 */ swc1 $f0, 0x64($sp) +/* 0166E0 80015AE0 E7A20068 */ swc1 $f2, 0x68($sp) +/* 0166E4 80015AE4 460E7282 */ mul.s $f10, $f14, $f14 +/* 0166E8 80015AE8 46043200 */ add.s $f8, $f6, $f4 +/* 0166EC 80015AEC E7AE0060 */ swc1 $f14, 0x60($sp) +/* 0166F0 80015AF0 0C0326B4 */ jal sqrtf +/* 0166F4 80015AF4 460A4300 */ add.s $f12, $f8, $f10 +/* 0166F8 80015AF8 46000406 */ mov.s $f16, $f0 +/* 0166FC 80015AFC 444CF800 */ cfc1 $t4, $31 +/* 016700 80015B00 8FA80058 */ lw $t0, 0x58($sp) +/* 016704 80015B04 35810003 */ ori $at, $t4, 3 +/* 016708 80015B08 38210002 */ xori $at, $at, 2 +/* 01670C 80015B0C 44C1F800 */ ctc1 $at, $31 +/* 016710 80015B10 850E0014 */ lh $t6, 0x14($t0) +/* 016714 80015B14 460001A4 */ cvt.w.s $f6, $f0 +/* 016718 80015B18 8FA400A0 */ lw $a0, 0xa0($sp) +/* 01671C 80015B1C 440B3000 */ mfc1 $t3, $f6 +/* 016720 80015B20 44CCF800 */ ctc1 $t4, $31 +/* 016724 80015B24 448B2000 */ mtc1 $t3, $f4 +/* 016728 80015B28 8FA60054 */ lw $a2, 0x54($sp) +/* 01672C 80015B2C 46802220 */ cvt.s.w $f8, $f4 +/* 016730 80015B30 8FA700A4 */ lw $a3, 0xa4($sp) +/* 016734 80015B34 31CF0020 */ andi $t7, $t6, 0x20 +/* 016738 80015B38 444DF800 */ cfc1 $t5, $31 +/* 01673C 80015B3C 24090001 */ li $t1, 1 +/* 016740 80015B40 35A10003 */ ori $at, $t5, 3 +/* 016744 80015B44 38210002 */ xori $at, $at, 2 +/* 016748 80015B48 44C1F800 */ ctc1 $at, $31 +/* 01674C 80015B4C 00000000 */ nop +/* 016750 80015B50 460042A4 */ cvt.w.s $f10, $f8 +/* 016754 80015B54 44035000 */ mfc1 $v1, $f10 +/* 016758 80015B58 44CDF800 */ ctc1 $t5, $31 +/* 01675C 80015B5C 11E00002 */ beqz $t7, .L80015B68 +/* 016760 80015B60 00601025 */ move $v0, $v1 +/* 016764 80015B64 000310C3 */ sra $v0, $v1, 3 +.L80015B68: +/* 016768 80015B68 28410100 */ slti $at, $v0, 0x100 +/* 01676C 80015B6C 14200002 */ bnez $at, .L80015B78 +/* 016770 80015B70 00000000 */ nop +/* 016774 80015B74 240200FF */ li $v0, 255 +.L80015B78: +/* 016778 80015B78 91180013 */ lbu $t8, 0x13($t0) +/* 01677C 80015B7C 00000000 */ nop +/* 016780 80015B80 0302082A */ slt $at, $t8, $v0 +/* 016784 80015B84 14200003 */ bnez $at, .L80015B94 +/* 016788 80015B88 00000000 */ nop +/* 01678C 80015B8C AD070000 */ sw $a3, ($t0) +/* 016790 80015B90 A1020013 */ sb $v0, 0x13($t0) +.L80015B94: +/* 016794 80015B94 84C50014 */ lh $a1, 0x14($a2) +/* 016798 80015B98 00601025 */ move $v0, $v1 +/* 01679C 80015B9C 30B90020 */ andi $t9, $a1, 0x20 +/* 0167A0 80015BA0 13200003 */ beqz $t9, .L80015BB0 +/* 0167A4 80015BA4 28410100 */ slti $at, $v0, 0x100 +/* 0167A8 80015BA8 000310C3 */ sra $v0, $v1, 3 +/* 0167AC 80015BAC 28410100 */ slti $at, $v0, 0x100 +.L80015BB0: +/* 0167B0 80015BB0 14200002 */ bnez $at, .L80015BBC +/* 0167B4 80015BB4 00000000 */ nop +/* 0167B8 80015BB8 240200FF */ li $v0, 255 +.L80015BBC: +/* 0167BC 80015BBC 90CA0013 */ lbu $t2, 0x13($a2) +/* 0167C0 80015BC0 00000000 */ nop +/* 0167C4 80015BC4 0142082A */ slt $at, $t2, $v0 +/* 0167C8 80015BC8 14200005 */ bnez $at, .L80015BE0 +/* 0167CC 80015BCC 30AC0001 */ andi $t4, $a1, 1 +/* 0167D0 80015BD0 84C50014 */ lh $a1, 0x14($a2) +/* 0167D4 80015BD4 ACC40000 */ sw $a0, ($a2) +/* 0167D8 80015BD8 A0C20013 */ sb $v0, 0x13($a2) +/* 0167DC 80015BDC 30AC0001 */ andi $t4, $a1, 1 +.L80015BE0: +/* 0167E0 80015BE0 11800244 */ beqz $t4, .L800164F4 +/* 0167E4 80015BE4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0167E8 80015BE8 80CB0010 */ lb $t3, 0x10($a2) +/* 0167EC 80015BEC 810D0010 */ lb $t5, 0x10($t0) +/* 0167F0 80015BF0 00000000 */ nop +/* 0167F4 80015BF4 016D7021 */ addu $t6, $t3, $t5 +/* 0167F8 80015BF8 448E3000 */ mtc1 $t6, $f6 +/* 0167FC 80015BFC 00000000 */ nop +/* 016800 80015C00 46803120 */ cvt.s.w $f4, $f6 +/* 016804 80015C04 E7A40098 */ swc1 $f4, 0x98($sp) +/* 016808 80015C08 C5080004 */ lwc1 $f8, 4($t0) +/* 01680C 80015C0C 00000000 */ nop +/* 016810 80015C10 E7A8003C */ swc1 $f8, 0x3c($sp) +/* 016814 80015C14 C7A6003C */ lwc1 $f6, 0x3c($sp) +/* 016818 80015C18 C48A000C */ lwc1 $f10, 0xc($a0) +/* 01681C 80015C1C 00000000 */ nop +/* 016820 80015C20 46065101 */ sub.s $f4, $f10, $f6 +/* 016824 80015C24 E7A4007C */ swc1 $f4, 0x7c($sp) +/* 016828 80015C28 C5080008 */ lwc1 $f8, 8($t0) +/* 01682C 80015C2C 00000000 */ nop +/* 016830 80015C30 E7A80038 */ swc1 $f8, 0x38($sp) +/* 016834 80015C34 C48A0010 */ lwc1 $f10, 0x10($a0) +/* 016838 80015C38 C504000C */ lwc1 $f4, 0xc($t0) +/* 01683C 80015C3C C7A60038 */ lwc1 $f6, 0x38($sp) +/* 016840 80015C40 E7A40034 */ swc1 $f4, 0x34($sp) +/* 016844 80015C44 46065301 */ sub.s $f12, $f10, $f6 +/* 016848 80015C48 C7AA0034 */ lwc1 $f10, 0x34($sp) +/* 01684C 80015C4C C4880014 */ lwc1 $f8, 0x14($a0) +/* 016850 80015C50 C7A4007C */ lwc1 $f4, 0x7c($sp) +/* 016854 80015C54 460A4181 */ sub.s $f6, $f8, $f10 +/* 016858 80015C58 E7A60074 */ swc1 $f6, 0x74($sp) +/* 01685C 80015C5C 90CF0011 */ lbu $t7, 0x11($a2) +/* 016860 80015C60 46042202 */ mul.s $f8, $f4, $f4 +/* 016864 80015C64 152F0003 */ bne $t1, $t7, .L80015C74 +/* 016868 80015C68 00000000 */ nop +/* 01686C 80015C6C 44806000 */ mtc1 $zero, $f12 +/* 016870 80015C70 00000000 */ nop +.L80015C74: +/* 016874 80015C74 460C6282 */ mul.s $f10, $f12, $f12 +/* 016878 80015C78 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 01687C 80015C7C 460A4180 */ add.s $f6, $f8, $f10 +/* 016880 80015C80 C7A80074 */ lwc1 $f8, 0x74($sp) +/* 016884 80015C84 44813800 */ mtc1 $at, $f7 +/* 016888 80015C88 46084282 */ mul.s $f10, $f8, $f8 +/* 01688C 80015C8C 460A3380 */ add.s $f14, $f6, $f10 +/* 016890 80015C90 44803000 */ mtc1 $zero, $f6 +/* 016894 80015C94 460072A1 */ cvt.d.s $f10, $f14 +/* 016898 80015C98 462A303C */ c.lt.d $f6, $f10 +/* 01689C 80015C9C 00000000 */ nop +/* 0168A0 80015CA0 4500004E */ bc1f .L80015DDC +/* 0168A4 80015CA4 00000000 */ nop +/* 0168A8 80015CA8 C4E60010 */ lwc1 $f6, 0x10($a3) +/* 0168AC 80015CAC C4F2000C */ lwc1 $f18, 0xc($a3) +/* 0168B0 80015CB0 E7A60044 */ swc1 $f6, 0x44($sp) +/* 0168B4 80015CB4 C4EA0014 */ lwc1 $f10, 0x14($a3) +/* 0168B8 80015CB8 C7A6003C */ lwc1 $f6, 0x3c($sp) +/* 0168BC 80015CBC E7AA0040 */ swc1 $f10, 0x40($sp) +/* 0168C0 80015CC0 46069281 */ sub.s $f10, $f18, $f6 +/* 0168C4 80015CC4 E7A80018 */ swc1 $f8, 0x18($sp) +/* 0168C8 80015CC8 E7A6001C */ swc1 $f6, 0x1c($sp) +/* 0168CC 80015CCC 46045282 */ mul.s $f10, $f10, $f4 +/* 0168D0 80015CD0 C7A60038 */ lwc1 $f6, 0x38($sp) +/* 0168D4 80015CD4 C7A80044 */ lwc1 $f8, 0x44($sp) +/* 0168D8 80015CD8 E7A40020 */ swc1 $f4, 0x20($sp) +/* 0168DC 80015CDC 46064101 */ sub.s $f4, $f8, $f6 +/* 0168E0 80015CE0 E7A80024 */ swc1 $f8, 0x24($sp) +/* 0168E4 80015CE4 460C2102 */ mul.s $f4, $f4, $f12 +/* 0168E8 80015CE8 C7A80034 */ lwc1 $f8, 0x34($sp) +/* 0168EC 80015CEC E7A60028 */ swc1 $f6, 0x28($sp) +/* 0168F0 80015CF0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 0168F4 80015CF4 46045280 */ add.s $f10, $f10, $f4 +/* 0168F8 80015CF8 C7A40040 */ lwc1 $f4, 0x40($sp) +/* 0168FC 80015CFC E7AA002C */ swc1 $f10, 0x2c($sp) +/* 016900 80015D00 C7AA0018 */ lwc1 $f10, 0x18($sp) +/* 016904 80015D04 46082181 */ sub.s $f6, $f4, $f8 +/* 016908 80015D08 E7A40018 */ swc1 $f4, 0x18($sp) +/* 01690C 80015D0C 460A3182 */ mul.s $f6, $f6, $f10 +/* 016910 80015D10 C7A4002C */ lwc1 $f4, 0x2c($sp) +/* 016914 80015D14 E7B20048 */ swc1 $f18, 0x48($sp) +/* 016918 80015D18 46062100 */ add.s $f4, $f4, $f6 +/* 01691C 80015D1C 44803000 */ mtc1 $zero, $f6 +/* 016920 80015D20 460E2083 */ div.s $f2, $f4, $f14 +/* 016924 80015D24 4602303E */ c.le.s $f6, $f2 +/* 016928 80015D28 00000000 */ nop +/* 01692C 80015D2C 4500002B */ bc1f .L80015DDC +/* 016930 80015D30 00000000 */ nop +/* 016934 80015D34 44812800 */ mtc1 $at, $f5 +/* 016938 80015D38 44802000 */ mtc1 $zero, $f4 +/* 01693C 80015D3C 460011A1 */ cvt.d.s $f6, $f2 +/* 016940 80015D40 4624303E */ c.le.d $f6, $f4 +/* 016944 80015D44 C7A60020 */ lwc1 $f6, 0x20($sp) +/* 016948 80015D48 45000024 */ bc1f .L80015DDC +/* 01694C 80015D4C E7AC0078 */ swc1 $f12, 0x78($sp) +/* 016950 80015D50 46061182 */ mul.s $f6, $f2, $f6 +/* 016954 80015D54 E7A8002C */ swc1 $f8, 0x2c($sp) +/* 016958 80015D58 C7A80078 */ lwc1 $f8, 0x78($sp) +/* 01695C 80015D5C C7A4001C */ lwc1 $f4, 0x1c($sp) +/* 016960 80015D60 46081202 */ mul.s $f8, $f2, $f8 +/* 016964 80015D64 46062100 */ add.s $f4, $f4, $f6 +/* 016968 80015D68 C7A60028 */ lwc1 $f6, 0x28($sp) +/* 01696C 80015D6C E7A4008C */ swc1 $f4, 0x8c($sp) +/* 016970 80015D70 46083480 */ add.s $f18, $f6, $f8 +/* 016974 80015D74 C7A6002C */ lwc1 $f6, 0x2c($sp) +/* 016978 80015D78 460A1202 */ mul.s $f8, $f2, $f10 +/* 01697C 80015D7C AFA400A0 */ sw $a0, 0xa0($sp) +/* 016980 80015D80 AFA60054 */ sw $a2, 0x54($sp) +/* 016984 80015D84 AFA700A4 */ sw $a3, 0xa4($sp) +/* 016988 80015D88 46083280 */ add.s $f10, $f6, $f8 +/* 01698C 80015D8C C7A60048 */ lwc1 $f6, 0x48($sp) +/* 016990 80015D90 C7A80024 */ lwc1 $f8, 0x24($sp) +/* 016994 80015D94 46062001 */ sub.s $f0, $f4, $f6 +/* 016998 80015D98 C7A40018 */ lwc1 $f4, 0x18($sp) +/* 01699C 80015D9C 46000182 */ mul.s $f6, $f0, $f0 +/* 0169A0 80015DA0 46089381 */ sub.s $f14, $f18, $f8 +/* 0169A4 80015DA4 E7AA0084 */ swc1 $f10, 0x84($sp) +/* 0169A8 80015DA8 AFA80058 */ sw $t0, 0x58($sp) +/* 0169AC 80015DAC 460E7202 */ mul.s $f8, $f14, $f14 +/* 0169B0 80015DB0 46045401 */ sub.s $f16, $f10, $f4 +/* 0169B4 80015DB4 46108102 */ mul.s $f4, $f16, $f16 +/* 0169B8 80015DB8 46083280 */ add.s $f10, $f6, $f8 +/* 0169BC 80015DBC 0C0326B4 */ jal sqrtf +/* 0169C0 80015DC0 46045300 */ add.s $f12, $f10, $f4 +/* 0169C4 80015DC4 8FA400A0 */ lw $a0, 0xa0($sp) +/* 0169C8 80015DC8 8FA60054 */ lw $a2, 0x54($sp) +/* 0169CC 80015DCC 8FA700A4 */ lw $a3, 0xa4($sp) +/* 0169D0 80015DD0 8FA80058 */ lw $t0, 0x58($sp) +/* 0169D4 80015DD4 24090001 */ li $t1, 1 +/* 0169D8 80015DD8 46000406 */ mov.s $f16, $f0 +.L80015DDC: +/* 0169DC 80015DDC C7A60098 */ lwc1 $f6, 0x98($sp) +/* 0169E0 80015DE0 00000000 */ nop +/* 0169E4 80015DE4 4606003C */ c.lt.s $f0, $f6 +/* 0169E8 80015DE8 00000000 */ nop +/* 0169EC 80015DEC 450001C1 */ bc1f .L800164F4 +/* 0169F0 80015DF0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0169F4 80015DF4 44804000 */ mtc1 $zero, $f8 +/* 0169F8 80015DF8 00000000 */ nop +/* 0169FC 80015DFC 4600403C */ c.lt.s $f8, $f0 +/* 016A00 80015E00 00000000 */ nop +/* 016A04 80015E04 450001BB */ bc1f .L800164F4 +/* 016A08 80015E08 8FBF0014 */ lw $ra, 0x14($sp) +/* 016A0C 80015E0C C4CA0004 */ lwc1 $f10, 4($a2) +/* 016A10 80015E10 C5040004 */ lwc1 $f4, 4($t0) +/* 016A14 80015E14 C4C60008 */ lwc1 $f6, 8($a2) +/* 016A18 80015E18 46045081 */ sub.s $f2, $f10, $f4 +/* 016A1C 80015E1C C5080008 */ lwc1 $f8, 8($t0) +/* 016A20 80015E20 C504000C */ lwc1 $f4, 0xc($t0) +/* 016A24 80015E24 C4CA000C */ lwc1 $f10, 0xc($a2) +/* 016A28 80015E28 90D80011 */ lbu $t8, 0x11($a2) +/* 016A2C 80015E2C 46083481 */ sub.s $f18, $f6, $f8 +/* 016A30 80015E30 15380003 */ bne $t1, $t8, .L80015E40 +/* 016A34 80015E34 46045381 */ sub.s $f14, $f10, $f4 +/* 016A38 80015E38 44809000 */ mtc1 $zero, $f18 +/* 016A3C 80015E3C 00000000 */ nop +.L80015E40: +/* 016A40 80015E40 46021182 */ mul.s $f6, $f2, $f2 +/* 016A44 80015E44 AFA400A0 */ sw $a0, 0xa0($sp) +/* 016A48 80015E48 AFA60054 */ sw $a2, 0x54($sp) +/* 016A4C 80015E4C AFA700A4 */ sw $a3, 0xa4($sp) +/* 016A50 80015E50 46129202 */ mul.s $f8, $f18, $f18 +/* 016A54 80015E54 AFA80058 */ sw $t0, 0x58($sp) +/* 016A58 80015E58 E7A2008C */ swc1 $f2, 0x8c($sp) +/* 016A5C 80015E5C E7AE0084 */ swc1 $f14, 0x84($sp) +/* 016A60 80015E60 460E7102 */ mul.s $f4, $f14, $f14 +/* 016A64 80015E64 46083280 */ add.s $f10, $f6, $f8 +/* 016A68 80015E68 E7B0009C */ swc1 $f16, 0x9c($sp) +/* 016A6C 80015E6C E7B20088 */ swc1 $f18, 0x88($sp) +/* 016A70 80015E70 0C0326B4 */ jal sqrtf +/* 016A74 80015E74 46045300 */ add.s $f12, $f10, $f4 +/* 016A78 80015E78 44803000 */ mtc1 $zero, $f6 +/* 016A7C 80015E7C 8FA400A0 */ lw $a0, 0xa0($sp) +/* 016A80 80015E80 4600303C */ c.lt.s $f6, $f0 +/* 016A84 80015E84 8FA60054 */ lw $a2, 0x54($sp) +/* 016A88 80015E88 8FA700A4 */ lw $a3, 0xa4($sp) +/* 016A8C 80015E8C 8FA80058 */ lw $t0, 0x58($sp) +/* 016A90 80015E90 C7A2008C */ lwc1 $f2, 0x8c($sp) +/* 016A94 80015E94 C7AE0084 */ lwc1 $f14, 0x84($sp) +/* 016A98 80015E98 C7B0009C */ lwc1 $f16, 0x9c($sp) +/* 016A9C 80015E9C C7B20088 */ lwc1 $f18, 0x88($sp) +/* 016AA0 80015EA0 45000009 */ bc1f .L80015EC8 +/* 016AA4 80015EA4 24090001 */ li $t1, 1 +/* 016AA8 80015EA8 00000000 */ nop +/* 016AAC 80015EAC 46009203 */ div.s $f8, $f18, $f0 +/* 016AB0 80015EB0 00000000 */ nop +/* 016AB4 80015EB4 46007283 */ div.s $f10, $f14, $f0 +/* 016AB8 80015EB8 E7A80064 */ swc1 $f8, 0x64($sp) +/* 016ABC 80015EBC 46001303 */ div.s $f12, $f2, $f0 +/* 016AC0 80015EC0 1000000A */ b .L80015EEC +/* 016AC4 80015EC4 E7AA0060 */ swc1 $f10, 0x60($sp) +.L80015EC8: +/* 016AC8 80015EC8 C7A40068 */ lwc1 $f4, 0x68($sp) +/* 016ACC 80015ECC C7A80064 */ lwc1 $f8, 0x64($sp) +/* 016AD0 80015ED0 46102303 */ div.s $f12, $f4, $f16 +/* 016AD4 80015ED4 C7A40060 */ lwc1 $f4, 0x60($sp) +/* 016AD8 80015ED8 46104283 */ div.s $f10, $f8, $f16 +/* 016ADC 80015EDC E7AC0068 */ swc1 $f12, 0x68($sp) +/* 016AE0 80015EE0 46102203 */ div.s $f8, $f4, $f16 +/* 016AE4 80015EE4 E7AA0064 */ swc1 $f10, 0x64($sp) +/* 016AE8 80015EE8 E7A80060 */ swc1 $f8, 0x60($sp) +.L80015EEC: +/* 016AEC 80015EEC 46100401 */ sub.s $f16, $f0, $f16 +/* 016AF0 80015EF0 44805000 */ mtc1 $zero, $f10 +/* 016AF4 80015EF4 3C013FE0 */ lui $at, 0x3fe0 +/* 016AF8 80015EF8 460A803C */ c.lt.s $f16, $f10 +/* 016AFC 80015EFC 00000000 */ nop +/* 016B00 80015F00 45000002 */ bc1f .L80015F0C +/* 016B04 80015F04 00000000 */ nop +/* 016B08 80015F08 46008407 */ neg.s $f16, $f16 +.L80015F0C: +/* 016B0C 80015F0C 46106302 */ mul.s $f12, $f12, $f16 +/* 016B10 80015F10 C7A40064 */ lwc1 $f4, 0x64($sp) +/* 016B14 80015F14 C7A60060 */ lwc1 $f6, 0x60($sp) +/* 016B18 80015F18 C7A00080 */ lwc1 $f0, 0x80($sp) +/* 016B1C 80015F1C 46102202 */ mul.s $f8, $f4, $f16 +/* 016B20 80015F20 00000000 */ nop +/* 016B24 80015F24 46103282 */ mul.s $f10, $f6, $f16 +/* 016B28 80015F28 E7A80064 */ swc1 $f8, 0x64($sp) +/* 016B2C 80015F2C E7AA0060 */ swc1 $f10, 0x60($sp) +/* 016B30 80015F30 85190014 */ lh $t9, 0x14($t0) +/* 016B34 80015F34 46008402 */ mul.s $f16, $f16, $f0 +/* 016B38 80015F38 372A0008 */ ori $t2, $t9, 8 +/* 016B3C 80015F3C A50A0014 */ sh $t2, 0x14($t0) +/* 016B40 80015F40 84CC0014 */ lh $t4, 0x14($a2) +/* 016B44 80015F44 90CD0012 */ lbu $t5, 0x12($a2) +/* 016B48 80015F48 358B0008 */ ori $t3, $t4, 8 +/* 016B4C 80015F4C 15A000C6 */ bnez $t5, .L80016268 +/* 016B50 80015F50 A4CB0014 */ sh $t3, 0x14($a2) +/* 016B54 80015F54 C484000C */ lwc1 $f4, 0xc($a0) +/* 016B58 80015F58 C4860010 */ lwc1 $f6, 0x10($a0) +/* 016B5C 80015F5C 460C2201 */ sub.s $f8, $f4, $f12 +/* 016B60 80015F60 E488000C */ swc1 $f8, 0xc($a0) +/* 016B64 80015F64 C7AA0064 */ lwc1 $f10, 0x64($sp) +/* 016B68 80015F68 C4880014 */ lwc1 $f8, 0x14($a0) +/* 016B6C 80015F6C 460A3101 */ sub.s $f4, $f6, $f10 +/* 016B70 80015F70 E4840010 */ swc1 $f4, 0x10($a0) +/* 016B74 80015F74 C7A60060 */ lwc1 $f6, 0x60($sp) +/* 016B78 80015F78 46006302 */ mul.s $f12, $f12, $f0 +/* 016B7C 80015F7C 46064281 */ sub.s $f10, $f8, $f6 +/* 016B80 80015F80 E48A0014 */ swc1 $f10, 0x14($a0) +/* 016B84 80015F84 C7A40060 */ lwc1 $f4, 0x60($sp) +/* 016B88 80015F88 00000000 */ nop +/* 016B8C 80015F8C 46002202 */ mul.s $f8, $f4, $f0 +/* 016B90 80015F90 E7A80060 */ swc1 $f8, 0x60($sp) +/* 016B94 80015F94 848E0048 */ lh $t6, 0x48($a0) +/* 016B98 80015F98 00000000 */ nop +/* 016B9C 80015F9C 152E0155 */ bne $t1, $t6, .L800164F4 +/* 016BA0 80015FA0 8FBF0014 */ lw $ra, 0x14($sp) +/* 016BA4 80015FA4 8C850064 */ lw $a1, 0x64($a0) +/* 016BA8 80015FA8 00001025 */ move $v0, $zero +/* 016BAC 80015FAC 80AF01D6 */ lb $t7, 0x1d6($a1) +/* 016BB0 80015FB0 3C01800E */ lui $at, 0x800e +/* 016BB4 80015FB4 152F0059 */ bne $t1, $t7, .L8001611C +/* 016BB8 80015FB8 00000000 */ nop +/* 016BBC 80015FBC 3C01800E */ lui $at, %hi(D_800E55C4) # $at, 0x800e +/* 016BC0 80015FC0 C42755C0 */ lwc1 $f7, %lo(D_800E55C0)($at) +/* 016BC4 80015FC4 C42655C4 */ lwc1 $f6, %lo(D_800E55C4)($at) +/* 016BC8 80015FC8 46008021 */ cvt.d.s $f0, $f16 +/* 016BCC 80015FCC 4620303C */ c.lt.d $f6, $f0 +/* 016BD0 80015FD0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 016BD4 80015FD4 4500009A */ bc1f .L80016240 +/* 016BD8 80015FD8 00000000 */ nop +/* 016BDC 80015FDC 44815800 */ mtc1 $at, $f11 +/* 016BE0 80015FE0 44805000 */ mtc1 $zero, $f10 +/* 016BE4 80015FE4 3C01800E */ lui $at, %hi(D_800E55CC) # $at, 0x800e +/* 016BE8 80015FE8 4620503C */ c.lt.d $f10, $f0 +/* 016BEC 80015FEC 00000000 */ nop +/* 016BF0 80015FF0 45000002 */ bc1f .L80015FFC +/* 016BF4 80015FF4 00000000 */ nop +/* 016BF8 80015FF8 24020001 */ li $v0, 1 +.L80015FFC: +/* 016BFC 80015FFC 1040000E */ beqz $v0, .L80016038 +/* 016C00 80016000 00000000 */ nop +/* 016C04 80016004 C484001C */ lwc1 $f4, 0x1c($a0) +/* 016C08 80016008 C42155C8 */ lwc1 $f1, %lo(D_800E55C8)($at) +/* 016C0C 8001600C C42055CC */ lwc1 $f0, %lo(D_800E55CC)($at) +/* 016C10 80016010 46002221 */ cvt.d.s $f8, $f4 +/* 016C14 80016014 46204182 */ mul.d $f6, $f8, $f0 +/* 016C18 80016018 C4840024 */ lwc1 $f4, 0x24($a0) +/* 016C1C 8001601C 00000000 */ nop +/* 016C20 80016020 46002221 */ cvt.d.s $f8, $f4 +/* 016C24 80016024 462032A0 */ cvt.s.d $f10, $f6 +/* 016C28 80016028 46204182 */ mul.d $f6, $f8, $f0 +/* 016C2C 8001602C E48A001C */ swc1 $f10, 0x1c($a0) +/* 016C30 80016030 462032A0 */ cvt.s.d $f10, $f6 +/* 016C34 80016034 E48A0024 */ swc1 $f10, 0x24($a0) +.L80016038: +/* 016C38 80016038 10400081 */ beqz $v0, .L80016240 +/* 016C3C 8001603C 00000000 */ nop +/* 016C40 80016040 84D80014 */ lh $t8, 0x14($a2) +/* 016C44 80016044 240A0007 */ li $t2, 7 +/* 016C48 80016048 37190040 */ ori $t9, $t8, 0x40 +/* 016C4C 8001604C A4D90014 */ sh $t9, 0x14($a2) +/* 016C50 80016050 C484000C */ lwc1 $f4, 0xc($a0) +/* 016C54 80016054 C48C0024 */ lwc1 $f12, 0x24($a0) +/* 016C58 80016058 C4860014 */ lwc1 $f6, 0x14($a0) +/* 016C5C 8001605C 460C2202 */ mul.s $f8, $f4, $f12 +/* 016C60 80016060 C480001C */ lwc1 $f0, 0x1c($a0) +/* 016C64 80016064 C4E4000C */ lwc1 $f4, 0xc($a3) +/* 016C68 80016068 3C01800E */ lui $at, 0x800e +/* 016C6C 8001606C 46003282 */ mul.s $f10, $f6, $f0 +/* 016C70 80016070 460A4081 */ sub.s $f2, $f8, $f10 +/* 016C74 80016074 C4E80014 */ lwc1 $f8, 0x14($a3) +/* 016C78 80016078 460C2182 */ mul.s $f6, $f4, $f12 +/* 016C7C 8001607C A0AA01D2 */ sb $t2, 0x1d2($a1) +/* 016C80 80016080 46004282 */ mul.s $f10, $f8, $f0 +/* 016C84 80016084 44804000 */ mtc1 $zero, $f8 +/* 016C88 80016088 460A3101 */ sub.s $f4, $f6, $f10 +/* 016C8C 8001608C 46022081 */ sub.s $f2, $f4, $f2 +/* 016C90 80016090 4602403E */ c.le.s $f8, $f2 +/* 016C94 80016094 00000000 */ nop +/* 016C98 80016098 45000011 */ bc1f .L800160E0 +/* 016C9C 8001609C 00000000 */ nop +/* 016CA0 800160A0 3C01800E */ li $at, 0x800E0000 # -0.000000 +/* 016CA4 800160A4 C486001C */ lwc1 $f6, 0x1c($a0) +/* 016CA8 800160A8 C42155D0 */ lwc1 $f1, %lo(D_800E55D0)($at) +/* 016CAC 800160AC C42055D4 */ lwc1 $f0, %lo(D_800E55D4)($at) +/* 016CB0 800160B0 460032A1 */ cvt.d.s $f10, $f6 +/* 016CB4 800160B4 46205102 */ mul.d $f4, $f10, $f0 +/* 016CB8 800160B8 46202220 */ cvt.s.d $f8, $f4 +/* 016CBC 800160BC E4A80120 */ swc1 $f8, 0x120($a1) +/* 016CC0 800160C0 C4860024 */ lwc1 $f6, 0x24($a0) +/* 016CC4 800160C4 00000000 */ nop +/* 016CC8 800160C8 46003287 */ neg.s $f10, $f6 +/* 016CCC 800160CC 46005121 */ cvt.d.s $f4, $f10 +/* 016CD0 800160D0 46202202 */ mul.d $f8, $f4, $f0 +/* 016CD4 800160D4 462041A0 */ cvt.s.d $f6, $f8 +/* 016CD8 800160D8 10000059 */ b .L80016240 +/* 016CDC 800160DC E4A6011C */ swc1 $f6, 0x11c($a1) +.L800160E0: +/* 016CE0 800160E0 C48A001C */ lwc1 $f10, 0x1c($a0) +/* 016CE4 800160E4 C42155D8 */ lwc1 $f1, %lo(D_800E55D8)($at) +/* 016CE8 800160E8 C42055DC */ lwc1 $f0, %lo(D_800E55DC)($at) +/* 016CEC 800160EC 46005107 */ neg.s $f4, $f10 +/* 016CF0 800160F0 46002221 */ cvt.d.s $f8, $f4 +/* 016CF4 800160F4 46204182 */ mul.d $f6, $f8, $f0 +/* 016CF8 800160F8 462032A0 */ cvt.s.d $f10, $f6 +/* 016CFC 800160FC E4AA0120 */ swc1 $f10, 0x120($a1) +/* 016D00 80016100 C4840024 */ lwc1 $f4, 0x24($a0) +/* 016D04 80016104 00000000 */ nop +/* 016D08 80016108 46002221 */ cvt.d.s $f8, $f4 +/* 016D0C 8001610C 46204182 */ mul.d $f6, $f8, $f0 +/* 016D10 80016110 462032A0 */ cvt.s.d $f10, $f6 +/* 016D14 80016114 1000004A */ b .L80016240 +/* 016D18 80016118 E4AA011C */ swc1 $f10, 0x11c($a1) +.L8001611C: +/* 016D1C 8001611C C42555E0 */ lwc1 $f5, %lo(D_800E55E0)($at) +/* 016D20 80016120 C42455E4 */ lwc1 $f4, %lo(D_800E55E4)($at) +/* 016D24 80016124 46008021 */ cvt.d.s $f0, $f16 +/* 016D28 80016128 4620203C */ c.lt.d $f4, $f0 +/* 016D2C 8001612C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 016D30 80016130 45000018 */ bc1f .L80016194 +/* 016D34 80016134 00000000 */ nop +/* 016D38 80016138 44814800 */ mtc1 $at, $f9 +/* 016D3C 8001613C 44804000 */ mtc1 $zero, $f8 +/* 016D40 80016140 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 +/* 016D44 80016144 4620403C */ c.lt.d $f8, $f0 +/* 016D48 80016148 00000000 */ nop +/* 016D4C 8001614C 45000002 */ bc1f .L80016158 +/* 016D50 80016150 00000000 */ nop +/* 016D54 80016154 24020001 */ li $v0, 1 +.L80016158: +/* 016D58 80016158 C486001C */ lwc1 $f6, 0x1c($a0) +/* 016D5C 8001615C C4840024 */ lwc1 $f4, 0x24($a0) +/* 016D60 80016160 460C3281 */ sub.s $f10, $f6, $f12 +/* 016D64 80016164 44815800 */ mtc1 $at, $f11 +/* 016D68 80016168 E48A001C */ swc1 $f10, 0x1c($a0) +/* 016D6C 8001616C C7A80060 */ lwc1 $f8, 0x60($sp) +/* 016D70 80016170 44805000 */ mtc1 $zero, $f10 +/* 016D74 80016174 46082181 */ sub.s $f6, $f4, $f8 +/* 016D78 80016178 462A0102 */ mul.d $f4, $f0, $f10 +/* 016D7C 8001617C E4860024 */ swc1 $f6, 0x24($a0) +/* 016D80 80016180 44803000 */ mtc1 $zero, $f6 +/* 016D84 80016184 00000000 */ nop +/* 016D88 80016188 E4A60030 */ swc1 $f6, 0x30($a1) +/* 016D8C 8001618C 46202220 */ cvt.s.d $f8, $f4 +/* 016D90 80016190 E4A8002C */ swc1 $f8, 0x2c($a1) +.L80016194: +/* 016D94 80016194 1040002A */ beqz $v0, .L80016240 +/* 016D98 80016198 00000000 */ nop +/* 016D9C 8001619C 84CC0014 */ lh $t4, 0x14($a2) +/* 016DA0 800161A0 3C01C000 */ li $at, 0xC0000000 # -2.000000 +/* 016DA4 800161A4 358B0040 */ ori $t3, $t4, 0x40 +/* 016DA8 800161A8 A4CB0014 */ sh $t3, 0x14($a2) +/* 016DAC 800161AC C48A000C */ lwc1 $f10, 0xc($a0) +/* 016DB0 800161B0 C48C0024 */ lwc1 $f12, 0x24($a0) +/* 016DB4 800161B4 C4880014 */ lwc1 $f8, 0x14($a0) +/* 016DB8 800161B8 460C5102 */ mul.s $f4, $f10, $f12 +/* 016DBC 800161BC C480001C */ lwc1 $f0, 0x1c($a0) +/* 016DC0 800161C0 C4EA000C */ lwc1 $f10, 0xc($a3) +/* 016DC4 800161C4 46004182 */ mul.s $f6, $f8, $f0 +/* 016DC8 800161C8 46062081 */ sub.s $f2, $f4, $f6 +/* 016DCC 800161CC C4E40014 */ lwc1 $f4, 0x14($a3) +/* 016DD0 800161D0 460C5202 */ mul.s $f8, $f10, $f12 +/* 016DD4 800161D4 00000000 */ nop +/* 016DD8 800161D8 46002182 */ mul.s $f6, $f4, $f0 +/* 016DDC 800161DC 44802000 */ mtc1 $zero, $f4 +/* 016DE0 800161E0 46064281 */ sub.s $f10, $f8, $f6 +/* 016DE4 800161E4 46025081 */ sub.s $f2, $f10, $f2 +/* 016DE8 800161E8 4602203E */ c.le.s $f4, $f2 +/* 016DEC 800161EC 00000000 */ nop +/* 016DF0 800161F0 45000005 */ bc1f .L80016208 +/* 016DF4 800161F4 00000000 */ nop +/* 016DF8 800161F8 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 016DFC 800161FC 44811000 */ mtc1 $at, $f2 +/* 016E00 80016200 10000004 */ b .L80016214 +/* 016E04 80016204 C4A80050 */ lwc1 $f8, 0x50($a1) +.L80016208: +/* 016E08 80016208 44811000 */ mtc1 $at, $f2 +/* 016E0C 8001620C 00000000 */ nop +/* 016E10 80016210 C4A80050 */ lwc1 $f8, 0x50($a1) +.L80016214: +/* 016E14 80016214 C4A0002C */ lwc1 $f0, 0x2c($a1) +/* 016E18 80016218 46024182 */ mul.s $f6, $f8, $f2 +/* 016E1C 8001621C C4A40058 */ lwc1 $f4, 0x58($a1) +/* 016E20 80016220 240D0007 */ li $t5, 7 +/* 016E24 80016224 A0AD01D2 */ sb $t5, 0x1d2($a1) +/* 016E28 80016228 46003282 */ mul.s $f10, $f6, $f0 +/* 016E2C 8001622C 00000000 */ nop +/* 016E30 80016230 46022202 */ mul.s $f8, $f4, $f2 +/* 016E34 80016234 E4AA011C */ swc1 $f10, 0x11c($a1) +/* 016E38 80016238 46004182 */ mul.s $f6, $f8, $f0 +/* 016E3C 8001623C E4A60120 */ swc1 $f6, 0x120($a1) +.L80016240: +/* 016E40 80016240 104000AC */ beqz $v0, .L800164F4 +/* 016E44 80016244 8FBF0014 */ lw $ra, 0x14($sp) +/* 016E48 80016248 84AE0000 */ lh $t6, ($a1) +/* 016E4C 8001624C 2401FFFF */ li $at, -1 +/* 016E50 80016250 11C100A8 */ beq $t6, $at, .L800164F4 +/* 016E54 80016254 8FBF0014 */ lw $ra, 0x14($sp) +/* 016E58 80016258 0C005940 */ jal func_80016500 +/* 016E5C 8001625C 00000000 */ nop +/* 016E60 80016260 100000A4 */ b .L800164F4 +/* 016E64 80016264 8FBF0014 */ lw $ra, 0x14($sp) +.L80016268: +/* 016E68 80016268 44811800 */ mtc1 $at, $f3 +/* 016E6C 8001626C 44801000 */ mtc1 $zero, $f2 +/* 016E70 80016270 460062A1 */ cvt.d.s $f10, $f12 +/* 016E74 80016274 46225102 */ mul.d $f4, $f10, $f2 +/* 016E78 80016278 C7A80064 */ lwc1 $f8, 0x64($sp) +/* 016E7C 8001627C 00000000 */ nop +/* 016E80 80016280 460041A1 */ cvt.d.s $f6, $f8 +/* 016E84 80016284 C7A80060 */ lwc1 $f8, 0x60($sp) +/* 016E88 80016288 46223282 */ mul.d $f10, $f6, $f2 +/* 016E8C 8001628C 46202320 */ cvt.s.d $f12, $f4 +/* 016E90 80016290 460041A1 */ cvt.d.s $f6, $f8 +/* 016E94 80016294 46205120 */ cvt.s.d $f4, $f10 +/* 016E98 80016298 46223282 */ mul.d $f10, $f6, $f2 +/* 016E9C 8001629C E7A40064 */ swc1 $f4, 0x64($sp) +/* 016EA0 800162A0 46205120 */ cvt.s.d $f4, $f10 +/* 016EA4 800162A4 E7A40060 */ swc1 $f4, 0x60($sp) +/* 016EA8 800162A8 910F0012 */ lbu $t7, 0x12($t0) +/* 016EAC 800162AC 00000000 */ nop +/* 016EB0 800162B0 11E0000D */ beqz $t7, .L800162E8 +/* 016EB4 800162B4 00000000 */ nop +/* 016EB8 800162B8 C488000C */ lwc1 $f8, 0xc($a0) +/* 016EBC 800162BC C48A0010 */ lwc1 $f10, 0x10($a0) +/* 016EC0 800162C0 460C4181 */ sub.s $f6, $f8, $f12 +/* 016EC4 800162C4 E486000C */ swc1 $f6, 0xc($a0) +/* 016EC8 800162C8 C7A40064 */ lwc1 $f4, 0x64($sp) +/* 016ECC 800162CC C4860014 */ lwc1 $f6, 0x14($a0) +/* 016ED0 800162D0 46045201 */ sub.s $f8, $f10, $f4 +/* 016ED4 800162D4 E4880010 */ swc1 $f8, 0x10($a0) +/* 016ED8 800162D8 C7AA0060 */ lwc1 $f10, 0x60($sp) +/* 016EDC 800162DC 00000000 */ nop +/* 016EE0 800162E0 460A3101 */ sub.s $f4, $f6, $f10 +/* 016EE4 800162E4 E4840014 */ swc1 $f4, 0x14($a0) +.L800162E8: +/* 016EE8 800162E8 C4E8000C */ lwc1 $f8, 0xc($a3) +/* 016EEC 800162EC C4EA0010 */ lwc1 $f10, 0x10($a3) +/* 016EF0 800162F0 460C4180 */ add.s $f6, $f8, $f12 +/* 016EF4 800162F4 E4E6000C */ swc1 $f6, 0xc($a3) +/* 016EF8 800162F8 C7A40064 */ lwc1 $f4, 0x64($sp) +/* 016EFC 800162FC C4E60014 */ lwc1 $f6, 0x14($a3) +/* 016F00 80016300 46045200 */ add.s $f8, $f10, $f4 +/* 016F04 80016304 E4E80010 */ swc1 $f8, 0x10($a3) +/* 016F08 80016308 C7AA0060 */ lwc1 $f10, 0x60($sp) +/* 016F0C 8001630C 46006302 */ mul.s $f12, $f12, $f0 +/* 016F10 80016310 460A3100 */ add.s $f4, $f6, $f10 +/* 016F14 80016314 E4E40014 */ swc1 $f4, 0x14($a3) +/* 016F18 80016318 C7A80060 */ lwc1 $f8, 0x60($sp) +/* 016F1C 8001631C 00000000 */ nop +/* 016F20 80016320 46004182 */ mul.s $f6, $f8, $f0 +/* 016F24 80016324 E7A60060 */ swc1 $f6, 0x60($sp) +/* 016F28 80016328 84980048 */ lh $t8, 0x48($a0) +/* 016F2C 8001632C 00000000 */ nop +/* 016F30 80016330 15380070 */ bne $t1, $t8, .L800164F4 +/* 016F34 80016334 8FBF0014 */ lw $ra, 0x14($sp) +/* 016F38 80016338 84F90048 */ lh $t9, 0x48($a3) +/* 016F3C 8001633C 3C01800E */ lui $at, %hi(D_800E55EC) # $at, 0x800e +/* 016F40 80016340 1539006C */ bne $t1, $t9, .L800164F4 +/* 016F44 80016344 8FBF0014 */ lw $ra, 0x14($sp) +/* 016F48 80016348 910A0012 */ lbu $t2, 0x12($t0) +/* 016F4C 8001634C 90CC0012 */ lbu $t4, 0x12($a2) +/* 016F50 80016350 C42755E8 */ lwc1 $f7, %lo(D_800E55E8)($at) +/* 016F54 80016354 014C5823 */ subu $t3, $t2, $t4 +/* 016F58 80016358 448B5000 */ mtc1 $t3, $f10 +/* 016F5C 8001635C C42655EC */ lwc1 $f6, %lo(D_800E55EC)($at) +/* 016F60 80016360 46805120 */ cvt.s.w $f4, $f10 +/* 016F64 80016364 8C850064 */ lw $a1, 0x64($a0) +/* 016F68 80016368 8CED0064 */ lw $t5, 0x64($a3) +/* 016F6C 8001636C 46002221 */ cvt.d.s $f8, $f4 +/* 016F70 80016370 46264282 */ mul.d $f10, $f8, $f6 +/* 016F74 80016374 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 016F78 80016378 44812000 */ mtc1 $at, $f4 +/* 016F7C 8001637C AFAD004C */ sw $t5, 0x4c($sp) +/* 016F80 80016380 80A20189 */ lb $v0, 0x189($a1) +/* 016F84 80016384 46002221 */ cvt.d.s $f8, $f4 +/* 016F88 80016388 462A4180 */ add.d $f6, $f8, $f10 +/* 016F8C 8001638C 10400006 */ beqz $v0, .L800163A8 +/* 016F90 80016390 462033A0 */ cvt.s.d $f14, $f6 +/* 016F94 80016394 81AF0189 */ lb $t7, 0x189($t5) +/* 016F98 80016398 00000000 */ nop +/* 016F9C 8001639C 15E00003 */ bnez $t7, .L800163AC +/* 016FA0 800163A0 8FB8004C */ lw $t8, 0x4c($sp) +/* 016FA4 800163A4 A1A201DB */ sb $v0, 0x1db($t5) +.L800163A8: +/* 016FA8 800163A8 8FB8004C */ lw $t8, 0x4c($sp) +.L800163AC: +/* 016FAC 800163AC 3C01800E */ lui $at, %hi(D_800E55F4) # $at, 0x800e +/* 016FB0 800163B0 83020189 */ lb $v0, 0x189($t8) +/* 016FB4 800163B4 00000000 */ nop +/* 016FB8 800163B8 10400006 */ beqz $v0, .L800163D4 +/* 016FBC 800163BC 00000000 */ nop +/* 016FC0 800163C0 80B90189 */ lb $t9, 0x189($a1) +/* 016FC4 800163C4 00000000 */ nop +/* 016FC8 800163C8 17200002 */ bnez $t9, .L800163D4 +/* 016FCC 800163CC 00000000 */ nop +/* 016FD0 800163D0 A0A201DB */ sb $v0, 0x1db($a1) +.L800163D4: +/* 016FD4 800163D4 80AA01D6 */ lb $t2, 0x1d6($a1) +/* 016FD8 800163D8 00001025 */ move $v0, $zero +/* 016FDC 800163DC 152A0004 */ bne $t1, $t2, .L800163F0 +/* 016FE0 800163E0 00000000 */ nop +/* 016FE4 800163E4 24020001 */ li $v0, 1 +/* 016FE8 800163E8 10000014 */ b .L8001643C +/* 016FEC 800163EC E7AC0068 */ swc1 $f12, 0x68($sp) +.L800163F0: +/* 016FF0 800163F0 C42155F0 */ lwc1 $f1, %lo(D_800E55F0)($at) +/* 016FF4 800163F4 C42055F4 */ lwc1 $f0, %lo(D_800E55F4)($at) +/* 016FF8 800163F8 46008121 */ cvt.d.s $f4, $f16 +/* 016FFC 800163FC 4624003C */ c.lt.d $f0, $f4 +/* 017000 80016400 E7AC0068 */ swc1 $f12, 0x68($sp) +/* 017004 80016404 4500000D */ bc1f .L8001643C +/* 017008 80016408 00000000 */ nop +/* 01700C 8001640C C7A80068 */ lwc1 $f8, 0x68($sp) +/* 017010 80016410 24020001 */ li $v0, 1 +/* 017014 80016414 460042A1 */ cvt.d.s $f10, $f8 +/* 017018 80016418 46225182 */ mul.d $f6, $f10, $f2 +/* 01701C 8001641C C7A80060 */ lwc1 $f8, 0x60($sp) +/* 017020 80016420 00000000 */ nop +/* 017024 80016424 460042A1 */ cvt.d.s $f10, $f8 +/* 017028 80016428 46203120 */ cvt.s.d $f4, $f6 +/* 01702C 8001642C 46225182 */ mul.d $f6, $f10, $f2 +/* 017030 80016430 E7A40068 */ swc1 $f4, 0x68($sp) +/* 017034 80016434 46203120 */ cvt.s.d $f4, $f6 +/* 017038 80016438 E7A40060 */ swc1 $f4, 0x60($sp) +.L8001643C: +/* 01703C 8001643C C7AC0068 */ lwc1 $f12, 0x68($sp) +/* 017040 80016440 1040002C */ beqz $v0, .L800164F4 +/* 017044 80016444 8FBF0014 */ lw $ra, 0x14($sp) +/* 017048 80016448 910C0012 */ lbu $t4, 0x12($t0) +/* 01704C 8001644C 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 017050 80016450 11800019 */ beqz $t4, .L800164B8 +/* 017054 80016454 00000000 */ nop +/* 017058 80016458 44814800 */ mtc1 $at, $f9 +/* 01705C 8001645C 44804000 */ mtc1 $zero, $f8 +/* 017060 80016460 460072A1 */ cvt.d.s $f10, $f14 +/* 017064 80016464 462A4181 */ sub.d $f6, $f8, $f10 +/* 017068 80016468 E7AC0068 */ swc1 $f12, 0x68($sp) +/* 01706C 8001646C C7A80068 */ lwc1 $f8, 0x68($sp) +/* 017070 80016470 46203020 */ cvt.s.d $f0, $f6 +/* 017074 80016474 C484001C */ lwc1 $f4, 0x1c($a0) +/* 017078 80016478 46004282 */ mul.s $f10, $f8, $f0 +/* 01707C 8001647C C4880024 */ lwc1 $f8, 0x24($a0) +/* 017080 80016480 460A2181 */ sub.s $f6, $f4, $f10 +/* 017084 80016484 E486001C */ swc1 $f6, 0x1c($a0) +/* 017088 80016488 C7A40060 */ lwc1 $f4, 0x60($sp) +/* 01708C 8001648C 00000000 */ nop +/* 017090 80016490 46002282 */ mul.s $f10, $f4, $f0 +/* 017094 80016494 460A4181 */ sub.s $f6, $f8, $f10 +/* 017098 80016498 E4860024 */ swc1 $f6, 0x24($a0) +/* 01709C 8001649C E7AE0090 */ swc1 $f14, 0x90($sp) +/* 0170A0 800164A0 0C005940 */ jal func_80016500 +/* 0170A4 800164A4 AFA700A4 */ sw $a3, 0xa4($sp) +/* 0170A8 800164A8 8FA700A4 */ lw $a3, 0xa4($sp) +/* 0170AC 800164AC C7AE0090 */ lwc1 $f14, 0x90($sp) +/* 0170B0 800164B0 C7AC0068 */ lwc1 $f12, 0x68($sp) +/* 0170B4 800164B4 00000000 */ nop +.L800164B8: +/* 0170B8 800164B8 460E6202 */ mul.s $f8, $f12, $f14 +/* 0170BC 800164BC C4E4001C */ lwc1 $f4, 0x1c($a3) +/* 0170C0 800164C0 C4E60024 */ lwc1 $f6, 0x24($a3) +/* 0170C4 800164C4 00E02025 */ move $a0, $a3 +/* 0170C8 800164C8 46082280 */ add.s $f10, $f4, $f8 +/* 0170CC 800164CC E4EA001C */ swc1 $f10, 0x1c($a3) +/* 0170D0 800164D0 C7A40060 */ lwc1 $f4, 0x60($sp) +/* 0170D4 800164D4 00000000 */ nop +/* 0170D8 800164D8 460E2202 */ mul.s $f8, $f4, $f14 +/* 0170DC 800164DC 46083280 */ add.s $f10, $f6, $f8 +/* 0170E0 800164E0 E4EA0024 */ swc1 $f10, 0x24($a3) +/* 0170E4 800164E4 8FA5004C */ lw $a1, 0x4c($sp) +/* 0170E8 800164E8 0C005940 */ jal func_80016500 +/* 0170EC 800164EC 00000000 */ nop +/* 0170F0 800164F0 8FBF0014 */ lw $ra, 0x14($sp) +.L800164F4: +/* 0170F4 800164F4 27BD00A0 */ addiu $sp, $sp, 0xa0 +/* 0170F8 800164F8 03E00008 */ jr $ra +/* 0170FC 800164FC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80016500.s b/asm/non_matchings/unknown_005740/func_80016500.s new file mode 100644 index 00000000..a644458b --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80016500.s @@ -0,0 +1,159 @@ +glabel func_80016500 +/* 017100 80016500 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 017104 80016504 AFBF001C */ sw $ra, 0x1c($sp) +/* 017108 80016508 AFB00018 */ sw $s0, 0x18($sp) +/* 01710C 8001650C AFA40040 */ sw $a0, 0x40($sp) +/* 017110 80016510 C4A4002C */ lwc1 $f4, 0x2c($a1) +/* 017114 80016514 00A08025 */ move $s0, $a1 +/* 017118 80016518 E7A40030 */ swc1 $f4, 0x30($sp) +/* 01711C 8001651C 80AE01D6 */ lb $t6, 0x1d6($a1) +/* 017120 80016520 84A201A0 */ lh $v0, 0x1a0($a1) +/* 017124 80016524 15C0000B */ bnez $t6, .L80016554 +/* 017128 80016528 00022023 */ negu $a0, $v0 +/* 01712C 8001652C 80AF01E6 */ lb $t7, 0x1e6($a1) +/* 017130 80016530 00000000 */ nop +/* 017134 80016534 11E00007 */ beqz $t7, .L80016554 +/* 017138 80016538 00022023 */ negu $a0, $v0 +/* 01713C 8001653C 8CB8010C */ lw $t8, 0x10c($a1) +/* 017140 80016540 00000000 */ nop +/* 017144 80016544 00581021 */ addu $v0, $v0, $t8 +/* 017148 80016548 0002CC00 */ sll $t9, $v0, 0x10 +/* 01714C 8001654C 00191403 */ sra $v0, $t9, 0x10 +/* 017150 80016550 00022023 */ negu $a0, $v0 +.L80016554: +/* 017154 80016554 00044C00 */ sll $t1, $a0, 0x10 +/* 017158 80016558 00092403 */ sra $a0, $t1, 0x10 +/* 01715C 8001655C 0C01C1FE */ jal func_800707F8 +/* 017160 80016560 AFA40020 */ sw $a0, 0x20($sp) +/* 017164 80016564 8FA40020 */ lw $a0, 0x20($sp) +/* 017168 80016568 0C01C1F1 */ jal func_800707C4 +/* 01716C 8001656C E7A0002C */ swc1 $f0, 0x2c($sp) +/* 017170 80016570 8FAB0040 */ lw $t3, 0x40($sp) +/* 017174 80016574 C7A2002C */ lwc1 $f2, 0x2c($sp) +/* 017178 80016578 C566001C */ lwc1 $f6, 0x1c($t3) +/* 01717C 8001657C C56A0024 */ lwc1 $f10, 0x24($t3) +/* 017180 80016580 46023202 */ mul.s $f8, $f6, $f2 +/* 017184 80016584 860D0000 */ lh $t5, ($s0) +/* 017188 80016588 2401FFFF */ li $at, -1 +/* 01718C 8001658C 46005402 */ mul.s $f16, $f10, $f0 +/* 017190 80016590 46104480 */ add.s $f18, $f8, $f16 +/* 017194 80016594 E6120030 */ swc1 $f18, 0x30($s0) +/* 017198 80016598 8FAC0040 */ lw $t4, 0x40($sp) +/* 01719C 8001659C 00000000 */ nop +/* 0171A0 800165A0 C584001C */ lwc1 $f4, 0x1c($t4) +/* 0171A4 800165A4 C5880024 */ lwc1 $f8, 0x24($t4) +/* 0171A8 800165A8 46002187 */ neg.s $f6, $f4 +/* 0171AC 800165AC 46003282 */ mul.s $f10, $f6, $f0 +/* 0171B0 800165B0 00000000 */ nop +/* 0171B4 800165B4 46024402 */ mul.s $f16, $f8, $f2 +/* 0171B8 800165B8 46105480 */ add.s $f18, $f10, $f16 +/* 0171BC 800165BC 11A1005E */ beq $t5, $at, .L80016738 +/* 0171C0 800165C0 E612002C */ swc1 $f18, 0x2c($s0) +/* 0171C4 800165C4 C7A40030 */ lwc1 $f4, 0x30($sp) +/* 0171C8 800165C8 C606002C */ lwc1 $f6, 0x2c($s0) +/* 0171CC 800165CC 3C014160 */ li $at, 0x41600000 # 14.000000 +/* 0171D0 800165D0 44815000 */ mtc1 $at, $f10 +/* 0171D4 800165D4 46062201 */ sub.s $f8, $f4, $f6 +/* 0171D8 800165D8 460A4402 */ mul.s $f16, $f8, $f10 +/* 0171DC 800165DC 444EF800 */ cfc1 $t6, $31 +/* 0171E0 800165E0 00000000 */ nop +/* 0171E4 800165E4 35C10003 */ ori $at, $t6, 3 +/* 0171E8 800165E8 38210002 */ xori $at, $at, 2 +/* 0171EC 800165EC 44C1F800 */ ctc1 $at, $31 +/* 0171F0 800165F0 00000000 */ nop +/* 0171F4 800165F4 460084A4 */ cvt.w.s $f18, $f16 +/* 0171F8 800165F8 44029000 */ mfc1 $v0, $f18 +/* 0171FC 800165FC 44CEF800 */ ctc1 $t6, $31 +/* 017200 80016600 04410002 */ bgez $v0, .L8001660C +/* 017204 80016604 00000000 */ nop +/* 017208 80016608 00021023 */ negu $v0, $v0 +.L8001660C: +/* 01720C 8001660C 24420023 */ addiu $v0, $v0, 0x23 +/* 017210 80016610 28410080 */ slti $at, $v0, 0x80 +/* 017214 80016614 14200002 */ bnez $at, .L80016620 +/* 017218 80016618 2404000D */ li $a0, 13 +/* 01721C 8001661C 2402007F */ li $v0, 127 +.L80016620: +/* 017220 80016620 820301F6 */ lb $v1, 0x1f6($s0) +/* 017224 80016624 26050220 */ addiu $a1, $s0, 0x220 +/* 017228 80016628 1460000B */ bnez $v1, .L80016658 +/* 01722C 8001662C 00000000 */ nop +/* 017230 80016630 0C000741 */ jal func_80001D04 +/* 017234 80016634 AFA20038 */ sw $v0, 0x38($sp) +/* 017238 80016638 8FA20038 */ lw $v0, 0x38($sp) +/* 01723C 8001663C 8E050220 */ lw $a1, 0x220($s0) +/* 017240 80016640 2404000D */ li $a0, 13 +/* 017244 80016644 0C0007EE */ jal func_80001FB8 +/* 017248 80016648 304600FF */ andi $a2, $v0, 0xff +/* 01724C 8001664C 8FA20038 */ lw $v0, 0x38($sp) +/* 017250 80016650 820301F6 */ lb $v1, 0x1f6($s0) +/* 017254 80016654 00000000 */ nop +.L80016658: +/* 017258 80016658 14600010 */ bnez $v1, .L8001669C +/* 01725C 8001665C 28410038 */ slti $at, $v0, 0x38 +/* 017260 80016660 1420000F */ bnez $at, .L800166A0 +/* 017264 80016664 28410038 */ slti $at, $v0, 0x38 +/* 017268 80016668 820F01D8 */ lb $t7, 0x1d8($s0) +/* 01726C 8001666C 24050012 */ li $a1, 18 +/* 017270 80016670 15E00006 */ bnez $t7, .L8001668C +/* 017274 80016674 00000000 */ nop +/* 017278 80016678 86040000 */ lh $a0, ($s0) +/* 01727C 8001667C 0C01C8D2 */ jal func_80072348 +/* 017280 80016680 AFA20038 */ sw $v0, 0x38($sp) +/* 017284 80016684 8FA20038 */ lw $v0, 0x38($sp) +/* 017288 80016688 00000000 */ nop +.L8001668C: +/* 01728C 8001668C 921801F3 */ lbu $t8, 0x1f3($s0) +/* 017290 80016690 00000000 */ nop +/* 017294 80016694 37190008 */ ori $t9, $t8, 8 +/* 017298 80016698 A21901F3 */ sb $t9, 0x1f3($s0) +.L8001669C: +/* 01729C 8001669C 28410038 */ slti $at, $v0, 0x38 +.L800166A0: +/* 0172A0 800166A0 14200005 */ bnez $at, .L800166B8 +/* 0172A4 800166A4 240501C2 */ li $a1, 450 +/* 0172A8 800166A8 8FA40040 */ lw $a0, 0x40($sp) +/* 0172AC 800166AC 24060008 */ li $a2, 8 +/* 0172B0 800166B0 0C015C2E */ jal func_800570B8 +/* 0172B4 800166B4 24070001 */ li $a3, 1 +.L800166B8: +/* 0172B8 800166B8 C7A40030 */ lwc1 $f4, 0x30($sp) +/* 0172BC 800166BC C606002C */ lwc1 $f6, 0x2c($s0) +/* 0172C0 800166C0 86040000 */ lh $a0, ($s0) +/* 0172C4 800166C4 46062201 */ sub.s $f8, $f4, $f6 +/* 0172C8 800166C8 2409001E */ li $t1, 30 +/* 0172CC 800166CC 4448F800 */ cfc1 $t0, $31 +/* 0172D0 800166D0 00000000 */ nop +/* 0172D4 800166D4 35010003 */ ori $at, $t0, 3 +/* 0172D8 800166D8 38210002 */ xori $at, $at, 2 +/* 0172DC 800166DC 44C1F800 */ ctc1 $at, $31 +/* 0172E0 800166E0 00000000 */ nop +/* 0172E4 800166E4 460042A4 */ cvt.w.s $f10, $f8 +/* 0172E8 800166E8 44035000 */ mfc1 $v1, $f10 +/* 0172EC 800166EC 44C8F800 */ ctc1 $t0, $31 +/* 0172F0 800166F0 04610003 */ bgez $v1, .L80016700 +/* 0172F4 800166F4 28610004 */ slti $at, $v1, 4 +/* 0172F8 800166F8 00031823 */ negu $v1, $v1 +/* 0172FC 800166FC 28610004 */ slti $at, $v1, 4 +.L80016700: +/* 017300 80016700 14200002 */ bnez $at, .L8001670C +/* 017304 80016704 00000000 */ nop +/* 017308 80016708 24030003 */ li $v1, 3 +.L8001670C: +/* 01730C 8001670C A20901F6 */ sb $t1, 0x1f6($s0) +/* 017310 80016710 0C01997A */ jal func_800665E8 +/* 017314 80016714 AFA3003C */ sw $v1, 0x3c($sp) +/* 017318 80016718 0C01A748 */ jal func_80069D20 +/* 01731C 8001671C 00000000 */ nop +/* 017320 80016720 8FA3003C */ lw $v1, 0x3c($sp) +/* 017324 80016724 00000000 */ nop +/* 017328 80016728 44838000 */ mtc1 $v1, $f16 +/* 01732C 8001672C 00000000 */ nop +/* 017330 80016730 468084A0 */ cvt.s.w $f18, $f16 +/* 017334 80016734 E4520030 */ swc1 $f18, 0x30($v0) +.L80016738: +/* 017338 80016738 8FBF001C */ lw $ra, 0x1c($sp) +/* 01733C 8001673C 8FB00018 */ lw $s0, 0x18($sp) +/* 017340 80016740 03E00008 */ jr $ra +/* 017344 80016744 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_005740/func_80016748.s b/asm/non_matchings/unknown_005740/func_80016748.s new file mode 100644 index 00000000..735e8599 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80016748.s @@ -0,0 +1,295 @@ +glabel func_80016748 +/* 017348 80016748 27BDFF10 */ addiu $sp, $sp, -0xf0 +/* 01734C 8001674C AFBF007C */ sw $ra, 0x7c($sp) +/* 017350 80016750 AFBE0078 */ sw $fp, 0x78($sp) +/* 017354 80016754 AFB70074 */ sw $s7, 0x74($sp) +/* 017358 80016758 AFB60070 */ sw $s6, 0x70($sp) +/* 01735C 8001675C AFB5006C */ sw $s5, 0x6c($sp) +/* 017360 80016760 AFB40068 */ sw $s4, 0x68($sp) +/* 017364 80016764 AFB30064 */ sw $s3, 0x64($sp) +/* 017368 80016768 AFB20060 */ sw $s2, 0x60($sp) +/* 01736C 8001676C AFB1005C */ sw $s1, 0x5c($sp) +/* 017370 80016770 AFB00058 */ sw $s0, 0x58($sp) +/* 017374 80016774 E7BF0050 */ swc1 $f31, 0x50($sp) +/* 017378 80016778 E7BE0054 */ swc1 $f30, 0x54($sp) +/* 01737C 8001677C E7BD0048 */ swc1 $f29, 0x48($sp) +/* 017380 80016780 E7BC004C */ swc1 $f28, 0x4c($sp) +/* 017384 80016784 E7BB0040 */ swc1 $f27, 0x40($sp) +/* 017388 80016788 E7BA0044 */ swc1 $f26, 0x44($sp) +/* 01738C 8001678C E7B90038 */ swc1 $f25, 0x38($sp) +/* 017390 80016790 E7B8003C */ swc1 $f24, 0x3c($sp) +/* 017394 80016794 E7B70030 */ swc1 $f23, 0x30($sp) +/* 017398 80016798 E7B60034 */ swc1 $f22, 0x34($sp) +/* 01739C 8001679C E7B50028 */ swc1 $f21, 0x28($sp) +/* 0173A0 800167A0 E7B4002C */ swc1 $f20, 0x2c($sp) +/* 0173A4 800167A4 8CAE0044 */ lw $t6, 0x44($a1) +/* 0173A8 800167A8 00808025 */ move $s0, $a0 +/* 0173AC 800167AC 11C000ED */ beqz $t6, .L80016B64 +/* 0173B0 800167B0 00A0A825 */ move $s5, $a1 +/* 0173B4 800167B4 8CAF0068 */ lw $t7, 0x68($a1) +/* 0173B8 800167B8 C484000C */ lwc1 $f4, 0xc($a0) +/* 0173BC 800167BC C4A6000C */ lwc1 $f6, 0xc($a1) +/* 0173C0 800167C0 8DE20000 */ lw $v0, ($t7) +/* 0173C4 800167C4 46062201 */ sub.s $f8, $f4, $f6 +/* 0173C8 800167C8 8C530000 */ lw $s3, ($v0) +/* 0173CC 800167CC E7A800A8 */ swc1 $f8, 0xa8($sp) +/* 0173D0 800167D0 C4B00010 */ lwc1 $f16, 0x10($a1) +/* 0173D4 800167D4 C48A0010 */ lwc1 $f10, 0x10($a0) +/* 0173D8 800167D8 00000000 */ nop +/* 0173DC 800167DC 46105481 */ sub.s $f18, $f10, $f16 +/* 0173E0 800167E0 C7AA00A8 */ lwc1 $f10, 0xa8($sp) +/* 0173E4 800167E4 E7B200A4 */ swc1 $f18, 0xa4($sp) +/* 0173E8 800167E8 C4A60014 */ lwc1 $f6, 0x14($a1) +/* 0173EC 800167EC C4840014 */ lwc1 $f4, 0x14($a0) +/* 0173F0 800167F0 460A5402 */ mul.s $f16, $f10, $f10 +/* 0173F4 800167F4 C7B200A4 */ lwc1 $f18, 0xa4($sp) +/* 0173F8 800167F8 46062201 */ sub.s $f8, $f4, $f6 +/* 0173FC 800167FC 46129102 */ mul.s $f4, $f18, $f18 +/* 017400 80016800 E7A800A0 */ swc1 $f8, 0xa0($sp) +/* 017404 80016804 C7A800A0 */ lwc1 $f8, 0xa0($sp) +/* 017408 80016808 00000000 */ nop +/* 01740C 8001680C 46084282 */ mul.s $f10, $f8, $f8 +/* 017410 80016810 46048180 */ add.s $f6, $f16, $f4 +/* 017414 80016814 0C0326B4 */ jal sqrtf +/* 017418 80016818 460A3300 */ add.s $f12, $f6, $f10 +/* 01741C 8001681C C672003C */ lwc1 $f18, 0x3c($s3) +/* 017420 80016820 3C014049 */ li $at, 0x40490000 # 3.140625 +/* 017424 80016824 4481F800 */ mtc1 $at, $f31 +/* 017428 80016828 4480F000 */ mtc1 $zero, $f30 +/* 01742C 8001682C 46009421 */ cvt.d.s $f16, $f18 +/* 017430 80016830 463E8100 */ add.d $f4, $f16, $f30 +/* 017434 80016834 27A400AC */ addiu $a0, $sp, 0xac +/* 017438 80016838 46000221 */ cvt.d.s $f8, $f0 +/* 01743C 8001683C 4628203C */ c.lt.d $f4, $f8 +/* 017440 80016840 00000000 */ nop +/* 017444 80016844 450100C8 */ bc1t .L80016B68 +/* 017448 80016848 8FBF007C */ lw $ra, 0x7c($sp) +/* 01744C 8001684C 8E16004C */ lw $s6, 0x4c($s0) +/* 017450 80016850 8EB4004C */ lw $s4, 0x4c($s5) +/* 017454 80016854 0C01BF0C */ jal func_8006FC30 +/* 017458 80016858 02A02825 */ move $a1, $s5 +/* 01745C 8001685C 86780020 */ lh $t8, 0x20($s3) +/* 017460 80016860 0000F025 */ move $fp, $zero +/* 017464 80016864 1B0000BF */ blez $t8, .L80016B64 +/* 017468 80016868 00009025 */ move $s2, $zero +/* 01746C 8001686C 3C01800E */ lui $at, %hi(D_800E55FC) # $at, 0x800e +/* 017470 80016870 C43D55F8 */ lwc1 $f29, %lo(D_800E55F8)($at) +/* 017474 80016874 C43C55FC */ lwc1 $f28, %lo(D_800E55FC)($at) +/* 017478 80016878 3C01800E */ lui $at, %hi(D_800E5604) # $at, 0x800e +/* 01747C 8001687C C43B5600 */ lwc1 $f27, %lo(D_800E5600)($at) +/* 017480 80016880 C43A5604 */ lwc1 $f26, %lo(D_800E5604)($at) +/* 017484 80016884 4480C000 */ mtc1 $zero, $f24 +/* 017488 80016888 2417000A */ li $s7, 10 +.L8001688C: +/* 01748C 8001688C 8E68001C */ lw $t0, 0x1c($s3) +/* 017490 80016890 8EB90044 */ lw $t9, 0x44($s5) +/* 017494 80016894 01124821 */ addu $t1, $t0, $s2 +/* 017498 80016898 852A0000 */ lh $t2, ($t1) +/* 01749C 8001689C 27A400AC */ addiu $a0, $sp, 0xac +/* 0174A0 800168A0 01570019 */ multu $t2, $s7 +/* 0174A4 800168A4 00005812 */ mflo $t3 +/* 0174A8 800168A8 032B6021 */ addu $t4, $t9, $t3 +/* 0174AC 800168AC 858D0000 */ lh $t5, ($t4) +/* 0174B0 800168B0 00000000 */ nop +/* 0174B4 800168B4 448D3000 */ mtc1 $t5, $f6 +/* 0174B8 800168B8 00000000 */ nop +/* 0174BC 800168BC 468032A0 */ cvt.s.w $f10, $f6 +/* 0174C0 800168C0 E7AA00A8 */ swc1 $f10, 0xa8($sp) +/* 0174C4 800168C4 8E6F001C */ lw $t7, 0x1c($s3) +/* 0174C8 800168C8 8EAE0044 */ lw $t6, 0x44($s5) +/* 0174CC 800168CC 01F2C021 */ addu $t8, $t7, $s2 +/* 0174D0 800168D0 87080000 */ lh $t0, ($t8) +/* 0174D4 800168D4 8FA500A8 */ lw $a1, 0xa8($sp) +/* 0174D8 800168D8 01170019 */ multu $t0, $s7 +/* 0174DC 800168DC 00004812 */ mflo $t1 +/* 0174E0 800168E0 01C95021 */ addu $t2, $t6, $t1 +/* 0174E4 800168E4 85590002 */ lh $t9, 2($t2) +/* 0174E8 800168E8 27AA00A4 */ addiu $t2, $sp, 0xa4 +/* 0174EC 800168EC 44999000 */ mtc1 $t9, $f18 +/* 0174F0 800168F0 27B900A0 */ addiu $t9, $sp, 0xa0 +/* 0174F4 800168F4 46809420 */ cvt.s.w $f16, $f18 +/* 0174F8 800168F8 27A900A8 */ addiu $t1, $sp, 0xa8 +/* 0174FC 800168FC E7B000A4 */ swc1 $f16, 0xa4($sp) +/* 017500 80016900 8E6C001C */ lw $t4, 0x1c($s3) +/* 017504 80016904 8EAB0044 */ lw $t3, 0x44($s5) +/* 017508 80016908 01926821 */ addu $t5, $t4, $s2 +/* 01750C 8001690C 85AF0000 */ lh $t7, ($t5) +/* 017510 80016910 8FA600A4 */ lw $a2, 0xa4($sp) +/* 017514 80016914 01F70019 */ multu $t7, $s7 +/* 017518 80016918 0000C012 */ mflo $t8 +/* 01751C 8001691C 01784021 */ addu $t0, $t3, $t8 +/* 017520 80016920 850E0004 */ lh $t6, 4($t0) +/* 017524 80016924 AFB90018 */ sw $t9, 0x18($sp) +/* 017528 80016928 448E2000 */ mtc1 $t6, $f4 +/* 01752C 8001692C AFAA0014 */ sw $t2, 0x14($sp) +/* 017530 80016930 46802220 */ cvt.s.w $f8, $f4 +/* 017534 80016934 AFA90010 */ sw $t1, 0x10($sp) +/* 017538 80016938 E7A800A0 */ swc1 $f8, 0xa0($sp) +/* 01753C 8001693C 8FA700A0 */ lw $a3, 0xa0($sp) +/* 017540 80016940 0C01BD93 */ jal func_8006F64C +/* 017544 80016944 00000000 */ nop +/* 017548 80016948 8E6C001C */ lw $t4, 0x1c($s3) +/* 01754C 8001694C 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 017550 80016950 01926821 */ addu $t5, $t4, $s2 +/* 017554 80016954 85AF0002 */ lh $t7, 2($t5) +/* 017558 80016958 44819000 */ mtc1 $at, $f18 +/* 01755C 8001695C 448F3000 */ mtc1 $t7, $f6 +/* 017560 80016960 C6A40008 */ lwc1 $f4, 8($s5) +/* 017564 80016964 468032A0 */ cvt.s.w $f10, $f6 +/* 017568 80016968 00000000 */ nop +/* 01756C 8001696C 46125403 */ div.s $f16, $f10, $f18 +/* 017570 80016970 C7B200A8 */ lwc1 $f18, 0xa8($sp) +/* 017574 80016974 46048202 */ mul.s $f8, $f16, $f4 +/* 017578 80016978 C610000C */ lwc1 $f16, 0xc($s0) +/* 01757C 8001697C 460041A1 */ cvt.d.s $f6, $f8 +/* 017580 80016980 463E3282 */ mul.d $f10, $f6, $f30 +/* 017584 80016984 46109101 */ sub.s $f4, $f18, $f16 +/* 017588 80016988 C7A800A4 */ lwc1 $f8, 0xa4($sp) +/* 01758C 8001698C E7A400A8 */ swc1 $f4, 0xa8($sp) +/* 017590 80016990 C6060010 */ lwc1 $f6, 0x10($s0) +/* 017594 80016994 462055A0 */ cvt.s.d $f22, $f10 +/* 017598 80016998 C7B200A0 */ lwc1 $f18, 0xa0($sp) +/* 01759C 8001699C 46064281 */ sub.s $f10, $f8, $f6 +/* 0175A0 800169A0 E7AA00A4 */ swc1 $f10, 0xa4($sp) +/* 0175A4 800169A4 46042182 */ mul.s $f6, $f4, $f4 +/* 0175A8 800169A8 C6100014 */ lwc1 $f16, 0x14($s0) +/* 0175AC 800169AC 00000000 */ nop +/* 0175B0 800169B0 46109201 */ sub.s $f8, $f18, $f16 +/* 0175B4 800169B4 460A5482 */ mul.s $f18, $f10, $f10 +/* 0175B8 800169B8 E7A800A0 */ swc1 $f8, 0xa0($sp) +/* 0175BC 800169BC 46084102 */ mul.s $f4, $f8, $f8 +/* 0175C0 800169C0 46123400 */ add.s $f16, $f6, $f18 +/* 0175C4 800169C4 0C0326B4 */ jal sqrtf +/* 0175C8 800169C8 46048300 */ add.s $f12, $f16, $f4 +/* 0175CC 800169CC 828B0010 */ lb $t3, 0x10($s4) +/* 0175D0 800169D0 00000000 */ nop +/* 0175D4 800169D4 448B5000 */ mtc1 $t3, $f10 +/* 0175D8 800169D8 00000000 */ nop +/* 0175DC 800169DC 468051A0 */ cvt.s.w $f6, $f10 +/* 0175E0 800169E0 4606B580 */ add.s $f22, $f22, $f6 +/* 0175E4 800169E4 4616003C */ c.lt.s $f0, $f22 +/* 0175E8 800169E8 00000000 */ nop +/* 0175EC 800169EC 45000058 */ bc1f .L80016B50 +/* 0175F0 800169F0 00000000 */ nop +/* 0175F4 800169F4 4600C03C */ c.lt.s $f24, $f0 +/* 0175F8 800169F8 00000000 */ nop +/* 0175FC 800169FC 45000054 */ bc1f .L80016B50 +/* 017600 80016A00 00000000 */ nop +/* 017604 80016A04 4600B481 */ sub.s $f18, $f22, $f0 +/* 017608 80016A08 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 01760C 80016A0C 46009503 */ div.s $f20, $f18, $f0 +/* 017610 80016A10 86D80014 */ lh $t8, 0x14($s6) +/* 017614 80016A14 44814000 */ mtc1 $at, $f8 +/* 017618 80016A18 37080008 */ ori $t0, $t8, 8 +/* 01761C 80016A1C A6C80014 */ sh $t0, 0x14($s6) +/* 017620 80016A20 868E0014 */ lh $t6, 0x14($s4) +/* 017624 80016A24 24010001 */ li $at, 1 +/* 017628 80016A28 35C90008 */ ori $t1, $t6, 8 +/* 01762C 80016A2C A6890014 */ sh $t1, 0x14($s4) +/* 017630 80016A30 AED50000 */ sw $s5, ($s6) +/* 017634 80016A34 AE900000 */ sw $s0, ($s4) +/* 017638 80016A38 A2C00013 */ sb $zero, 0x13($s6) +/* 01763C 80016A3C 4608A503 */ div.s $f20, $f20, $f8 +/* 017640 80016A40 A2800013 */ sb $zero, 0x13($s4) +/* 017644 80016A44 C7B000A8 */ lwc1 $f16, 0xa8($sp) +/* 017648 80016A48 C7AA00A4 */ lwc1 $f10, 0xa4($sp) +/* 01764C 80016A4C C7B200A0 */ lwc1 $f18, 0xa0($sp) +/* 017650 80016A50 46148102 */ mul.s $f4, $f16, $f20 +/* 017654 80016A54 00000000 */ nop +/* 017658 80016A58 46145182 */ mul.s $f6, $f10, $f20 +/* 01765C 80016A5C E7A400A8 */ swc1 $f4, 0xa8($sp) +/* 017660 80016A60 46149202 */ mul.s $f8, $f18, $f20 +/* 017664 80016A64 E7A600A4 */ swc1 $f6, 0xa4($sp) +/* 017668 80016A68 E7A800A0 */ swc1 $f8, 0xa0($sp) +/* 01766C 80016A6C C610000C */ lwc1 $f16, 0xc($s0) +/* 017670 80016A70 C6060010 */ lwc1 $f6, 0x10($s0) +/* 017674 80016A74 46048281 */ sub.s $f10, $f16, $f4 +/* 017678 80016A78 C6100014 */ lwc1 $f16, 0x14($s0) +/* 01767C 80016A7C E60A000C */ swc1 $f10, 0xc($s0) +/* 017680 80016A80 C7B200A4 */ lwc1 $f18, 0xa4($sp) +/* 017684 80016A84 860A0048 */ lh $t2, 0x48($s0) +/* 017688 80016A88 46123201 */ sub.s $f8, $f6, $f18 +/* 01768C 80016A8C E6080010 */ swc1 $f8, 0x10($s0) +/* 017690 80016A90 C7A400A0 */ lwc1 $f4, 0xa0($sp) +/* 017694 80016A94 00000000 */ nop +/* 017698 80016A98 46048281 */ sub.s $f10, $f16, $f4 +/* 01769C 80016A9C 1541002C */ bne $t2, $at, .L80016B50 +/* 0176A0 80016AA0 E60A0014 */ swc1 $f10, 0x14($s0) +/* 0176A4 80016AA4 8E110064 */ lw $s1, 0x64($s0) +/* 0176A8 80016AA8 00000000 */ nop +/* 0176AC 80016AAC 823901D8 */ lb $t9, 0x1d8($s1) +/* 0176B0 80016AB0 00000000 */ nop +/* 0176B4 80016AB4 17200004 */ bnez $t9, .L80016AC8 +/* 0176B8 80016AB8 00000000 */ nop +/* 0176BC 80016ABC 86240000 */ lh $a0, ($s1) +/* 0176C0 80016AC0 0C01C8D2 */ jal func_80072348 +/* 0176C4 80016AC4 24050012 */ li $a1, 18 +.L80016AC8: +/* 0176C8 80016AC8 822C01D6 */ lb $t4, 0x1d6($s1) +/* 0176CC 80016ACC 24010001 */ li $at, 1 +/* 0176D0 80016AD0 1581000F */ bne $t4, $at, .L80016B10 +/* 0176D4 80016AD4 00000000 */ nop +/* 0176D8 80016AD8 4600A1A1 */ cvt.d.s $f6, $f20 +/* 0176DC 80016ADC 4626D03C */ c.lt.d $f26, $f6 +/* 0176E0 80016AE0 C7A800A8 */ lwc1 $f8, 0xa8($sp) +/* 0176E4 80016AE4 4500001A */ bc1f .L80016B50 +/* 0176E8 80016AE8 00000000 */ nop +/* 0176EC 80016AEC C612001C */ lwc1 $f18, 0x1c($s0) +/* 0176F0 80016AF0 C6040024 */ lwc1 $f4, 0x24($s0) +/* 0176F4 80016AF4 46089401 */ sub.s $f16, $f18, $f8 +/* 0176F8 80016AF8 E610001C */ swc1 $f16, 0x1c($s0) +/* 0176FC 80016AFC C7AA00A0 */ lwc1 $f10, 0xa0($sp) +/* 017700 80016B00 00000000 */ nop +/* 017704 80016B04 460A2181 */ sub.s $f6, $f4, $f10 +/* 017708 80016B08 10000011 */ b .L80016B50 +/* 01770C 80016B0C E6060024 */ swc1 $f6, 0x24($s0) +.L80016B10: +/* 017710 80016B10 4600A4A1 */ cvt.d.s $f18, $f20 +/* 017714 80016B14 4632E03C */ c.lt.d $f28, $f18 +/* 017718 80016B18 C7B000A8 */ lwc1 $f16, 0xa8($sp) +/* 01771C 80016B1C 4500000C */ bc1f .L80016B50 +/* 017720 80016B20 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 017724 80016B24 C608001C */ lwc1 $f8, 0x1c($s0) +/* 017728 80016B28 C60A0024 */ lwc1 $f10, 0x24($s0) +/* 01772C 80016B2C 46104101 */ sub.s $f4, $f8, $f16 +/* 017730 80016B30 44814000 */ mtc1 $at, $f8 +/* 017734 80016B34 E604001C */ swc1 $f4, 0x1c($s0) +/* 017738 80016B38 C7A600A0 */ lwc1 $f6, 0xa0($sp) +/* 01773C 80016B3C 4608A402 */ mul.s $f16, $f20, $f8 +/* 017740 80016B40 46065481 */ sub.s $f18, $f10, $f6 +/* 017744 80016B44 E6120024 */ swc1 $f18, 0x24($s0) +/* 017748 80016B48 E630002C */ swc1 $f16, 0x2c($s1) +/* 01774C 80016B4C E6380030 */ swc1 $f24, 0x30($s1) +.L80016B50: +/* 017750 80016B50 866D0020 */ lh $t5, 0x20($s3) +/* 017754 80016B54 27DE0002 */ addiu $fp, $fp, 2 +/* 017758 80016B58 03CD082A */ slt $at, $fp, $t5 +/* 01775C 80016B5C 1420FF4B */ bnez $at, .L8001688C +/* 017760 80016B60 26520004 */ addiu $s2, $s2, 4 +.L80016B64: +/* 017764 80016B64 8FBF007C */ lw $ra, 0x7c($sp) +.L80016B68: +/* 017768 80016B68 C7B50028 */ lwc1 $f21, 0x28($sp) +/* 01776C 80016B6C C7B4002C */ lwc1 $f20, 0x2c($sp) +/* 017770 80016B70 C7B70030 */ lwc1 $f23, 0x30($sp) +/* 017774 80016B74 C7B60034 */ lwc1 $f22, 0x34($sp) +/* 017778 80016B78 C7B90038 */ lwc1 $f25, 0x38($sp) +/* 01777C 80016B7C C7B8003C */ lwc1 $f24, 0x3c($sp) +/* 017780 80016B80 C7BB0040 */ lwc1 $f27, 0x40($sp) +/* 017784 80016B84 C7BA0044 */ lwc1 $f26, 0x44($sp) +/* 017788 80016B88 C7BD0048 */ lwc1 $f29, 0x48($sp) +/* 01778C 80016B8C C7BC004C */ lwc1 $f28, 0x4c($sp) +/* 017790 80016B90 C7BF0050 */ lwc1 $f31, 0x50($sp) +/* 017794 80016B94 C7BE0054 */ lwc1 $f30, 0x54($sp) +/* 017798 80016B98 8FB00058 */ lw $s0, 0x58($sp) +/* 01779C 80016B9C 8FB1005C */ lw $s1, 0x5c($sp) +/* 0177A0 80016BA0 8FB20060 */ lw $s2, 0x60($sp) +/* 0177A4 80016BA4 8FB30064 */ lw $s3, 0x64($sp) +/* 0177A8 80016BA8 8FB40068 */ lw $s4, 0x68($sp) +/* 0177AC 80016BAC 8FB5006C */ lw $s5, 0x6c($sp) +/* 0177B0 80016BB0 8FB60070 */ lw $s6, 0x70($sp) +/* 0177B4 80016BB4 8FB70074 */ lw $s7, 0x74($sp) +/* 0177B8 80016BB8 8FBE0078 */ lw $fp, 0x78($sp) +/* 0177BC 80016BBC 03E00008 */ jr $ra +/* 0177C0 80016BC0 27BD00F0 */ addiu $sp, $sp, 0xf0 + diff --git a/asm/non_matchings/unknown_005740/func_80016BC4.s b/asm/non_matchings/unknown_005740/func_80016BC4.s new file mode 100644 index 00000000..e11d4b6b --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80016BC4.s @@ -0,0 +1,46 @@ +glabel func_80016BC4 +/* 0177C4 80016BC4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 0177C8 80016BC8 AFBF0024 */ sw $ra, 0x24($sp) +/* 0177CC 80016BCC AFB20020 */ sw $s2, 0x20($sp) +/* 0177D0 80016BD0 AFB1001C */ sw $s1, 0x1c($sp) +/* 0177D4 80016BD4 AFB00018 */ sw $s0, 0x18($sp) +/* 0177D8 80016BD8 8C8E005C */ lw $t6, 0x5c($a0) +/* 0177DC 80016BDC 00809025 */ move $s2, $a0 +/* 0177E0 80016BE0 0C005C27 */ jal func_8001709C +/* 0177E4 80016BE4 A1C00104 */ sb $zero, 0x104($t6) +/* 0177E8 80016BE8 0C005C27 */ jal func_8001709C +/* 0177EC 80016BEC 02402025 */ move $a0, $s2 +/* 0177F0 80016BF0 8E4F0040 */ lw $t7, 0x40($s2) +/* 0177F4 80016BF4 00008825 */ move $s1, $zero +/* 0177F8 80016BF8 81E30055 */ lb $v1, 0x55($t7) +/* 0177FC 80016BFC 00008025 */ move $s0, $zero +/* 017800 80016C00 18600014 */ blez $v1, .L80016C54 +/* 017804 80016C04 8FBF0024 */ lw $ra, 0x24($sp) +.L80016C08: +/* 017808 80016C08 8E580068 */ lw $t8, 0x68($s2) +/* 01780C 80016C0C 00000000 */ nop +/* 017810 80016C10 0310C821 */ addu $t9, $t8, $s0 +/* 017814 80016C14 8F220000 */ lw $v0, ($t9) +/* 017818 80016C18 00000000 */ nop +/* 01781C 80016C1C 10400008 */ beqz $v0, .L80016C40 +/* 017820 80016C20 00000000 */ nop +/* 017824 80016C24 8C440000 */ lw $a0, ($v0) +/* 017828 80016C28 0C01805F */ jal func_8006017C +/* 01782C 80016C2C 00000000 */ nop +/* 017830 80016C30 8E480040 */ lw $t0, 0x40($s2) +/* 017834 80016C34 00000000 */ nop +/* 017838 80016C38 81030055 */ lb $v1, 0x55($t0) +/* 01783C 80016C3C 00000000 */ nop +.L80016C40: +/* 017840 80016C40 26310001 */ addiu $s1, $s1, 1 +/* 017844 80016C44 0223082A */ slt $at, $s1, $v1 +/* 017848 80016C48 1420FFEF */ bnez $at, .L80016C08 +/* 01784C 80016C4C 26100004 */ addiu $s0, $s0, 4 +/* 017850 80016C50 8FBF0024 */ lw $ra, 0x24($sp) +.L80016C54: +/* 017854 80016C54 8FB00018 */ lw $s0, 0x18($sp) +/* 017858 80016C58 8FB1001C */ lw $s1, 0x1c($sp) +/* 01785C 80016C5C 8FB20020 */ lw $s2, 0x20($sp) +/* 017860 80016C60 03E00008 */ jr $ra +/* 017864 80016C64 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_005740/func_80016C68.s b/asm/non_matchings/unknown_005740/func_80016C68.s new file mode 100644 index 00000000..3b4066d4 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80016C68.s @@ -0,0 +1,104 @@ +glabel func_80016C68 +/* 017868 80016C68 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 01786C 80016C6C AFB60050 */ sw $s6, 0x50($sp) +/* 017870 80016C70 3C168012 */ lui $s6, %hi(D_8011AE5C) # $s6, 0x8012 +/* 017874 80016C74 26D6AE5C */ addiu $s6, %lo(D_8011AE5C) # addiu $s6, $s6, -0x51a4 +/* 017878 80016C78 8ECE0000 */ lw $t6, ($s6) +/* 01787C 80016C7C E7BA0034 */ swc1 $f26, 0x34($sp) +/* 017880 80016C80 E7B60024 */ swc1 $f22, 0x24($sp) +/* 017884 80016C84 4486B000 */ mtc1 $a2, $f22 +/* 017888 80016C88 4487D000 */ mtc1 $a3, $f26 +/* 01788C 80016C8C AFB1003C */ sw $s1, 0x3c($sp) +/* 017890 80016C90 E7B90028 */ swc1 $f25, 0x28($sp) +/* 017894 80016C94 E7B8002C */ swc1 $f24, 0x2c($sp) +/* 017898 80016C98 E7B50018 */ swc1 $f21, 0x18($sp) +/* 01789C 80016C9C E7B4001C */ swc1 $f20, 0x1c($sp) +/* 0178A0 80016CA0 46006506 */ mov.s $f20, $f12 +/* 0178A4 80016CA4 46007606 */ mov.s $f24, $f14 +/* 0178A8 80016CA8 AFBF0054 */ sw $ra, 0x54($sp) +/* 0178AC 80016CAC AFB5004C */ sw $s5, 0x4c($sp) +/* 0178B0 80016CB0 AFB40048 */ sw $s4, 0x48($sp) +/* 0178B4 80016CB4 AFB30044 */ sw $s3, 0x44($sp) +/* 0178B8 80016CB8 AFB20040 */ sw $s2, 0x40($sp) +/* 0178BC 80016CBC AFB00038 */ sw $s0, 0x38($sp) +/* 0178C0 80016CC0 E7BB0030 */ swc1 $f27, 0x30($sp) +/* 0178C4 80016CC4 E7B70020 */ swc1 $f23, 0x20($sp) +/* 0178C8 80016CC8 19C00034 */ blez $t6, .L80016D9C +/* 0178CC 80016CCC 00008825 */ move $s1, $zero +/* 0178D0 80016CD0 3C148012 */ lui $s4, %hi(D_8011AE58) # $s4, 0x8012 +/* 0178D4 80016CD4 8FB30068 */ lw $s3, 0x68($sp) +/* 0178D8 80016CD8 2694AE58 */ addiu $s4, %lo(D_8011AE58) # addiu $s4, $s4, -0x51a8 +/* 0178DC 80016CDC 00009025 */ move $s2, $zero +/* 0178E0 80016CE0 24150055 */ li $s5, 85 +.L80016CE4: +/* 0178E4 80016CE4 8E8F0000 */ lw $t7, ($s4) +/* 0178E8 80016CE8 00000000 */ nop +/* 0178EC 80016CEC 01F2C021 */ addu $t8, $t7, $s2 +/* 0178F0 80016CF0 8F100000 */ lw $s0, ($t8) +/* 0178F4 80016CF4 00000000 */ nop +/* 0178F8 80016CF8 86190006 */ lh $t9, 6($s0) +/* 0178FC 80016CFC 00000000 */ nop +/* 017900 80016D00 33288000 */ andi $t0, $t9, 0x8000 +/* 017904 80016D04 15000020 */ bnez $t0, .L80016D88 +/* 017908 80016D08 00000000 */ nop +/* 01790C 80016D0C 86090048 */ lh $t1, 0x48($s0) +/* 017910 80016D10 00000000 */ nop +/* 017914 80016D14 16A9001C */ bne $s5, $t1, .L80016D88 +/* 017918 80016D18 00000000 */ nop +/* 01791C 80016D1C C604000C */ lwc1 $f4, 0xc($s0) +/* 017920 80016D20 C6060014 */ lwc1 $f6, 0x14($s0) +/* 017924 80016D24 46142081 */ sub.s $f2, $f4, $f20 +/* 017928 80016D28 1660000C */ bnez $s3, .L80016D5C +/* 01792C 80016D2C 46163381 */ sub.s $f14, $f6, $f22 +/* 017930 80016D30 C6080010 */ lwc1 $f8, 0x10($s0) +/* 017934 80016D34 46021282 */ mul.s $f10, $f2, $f2 +/* 017938 80016D38 46184001 */ sub.s $f0, $f8, $f24 +/* 01793C 80016D3C 46000402 */ mul.s $f16, $f0, $f0 +/* 017940 80016D40 00000000 */ nop +/* 017944 80016D44 460E7102 */ mul.s $f4, $f14, $f14 +/* 017948 80016D48 46105480 */ add.s $f18, $f10, $f16 +/* 01794C 80016D4C 0C0326B4 */ jal sqrtf +/* 017950 80016D50 46049300 */ add.s $f12, $f18, $f4 +/* 017954 80016D54 10000007 */ b .L80016D74 +/* 017958 80016D58 461A003C */ c.lt.s $f0, $f26 +.L80016D5C: +/* 01795C 80016D5C 46021182 */ mul.s $f6, $f2, $f2 +/* 017960 80016D60 00000000 */ nop +/* 017964 80016D64 460E7202 */ mul.s $f8, $f14, $f14 +/* 017968 80016D68 0C0326B4 */ jal sqrtf +/* 01796C 80016D6C 46083300 */ add.s $f12, $f6, $f8 +/* 017970 80016D70 461A003C */ c.lt.s $f0, $f26 +.L80016D74: +/* 017974 80016D74 00000000 */ nop +/* 017978 80016D78 45000003 */ bc1f .L80016D88 +/* 01797C 80016D7C 00000000 */ nop +/* 017980 80016D80 10000007 */ b .L80016DA0 +/* 017984 80016D84 02001025 */ move $v0, $s0 +.L80016D88: +/* 017988 80016D88 8ECA0000 */ lw $t2, ($s6) +/* 01798C 80016D8C 26310001 */ addiu $s1, $s1, 1 +/* 017990 80016D90 022A082A */ slt $at, $s1, $t2 +/* 017994 80016D94 1420FFD3 */ bnez $at, .L80016CE4 +/* 017998 80016D98 26520004 */ addiu $s2, $s2, 4 +.L80016D9C: +/* 01799C 80016D9C 00001025 */ move $v0, $zero +.L80016DA0: +/* 0179A0 80016DA0 8FBF0054 */ lw $ra, 0x54($sp) +/* 0179A4 80016DA4 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 0179A8 80016DA8 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 0179AC 80016DAC C7B70020 */ lwc1 $f23, 0x20($sp) +/* 0179B0 80016DB0 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 0179B4 80016DB4 C7B90028 */ lwc1 $f25, 0x28($sp) +/* 0179B8 80016DB8 C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 0179BC 80016DBC C7BB0030 */ lwc1 $f27, 0x30($sp) +/* 0179C0 80016DC0 C7BA0034 */ lwc1 $f26, 0x34($sp) +/* 0179C4 80016DC4 8FB00038 */ lw $s0, 0x38($sp) +/* 0179C8 80016DC8 8FB1003C */ lw $s1, 0x3c($sp) +/* 0179CC 80016DCC 8FB20040 */ lw $s2, 0x40($sp) +/* 0179D0 80016DD0 8FB30044 */ lw $s3, 0x44($sp) +/* 0179D4 80016DD4 8FB40048 */ lw $s4, 0x48($sp) +/* 0179D8 80016DD8 8FB5004C */ lw $s5, 0x4c($sp) +/* 0179DC 80016DDC 8FB60050 */ lw $s6, 0x50($sp) +/* 0179E0 80016DE0 03E00008 */ jr $ra +/* 0179E4 80016DE4 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/unknown_005740/func_80016DE8.s b/asm/non_matchings/unknown_005740/func_80016DE8.s new file mode 100644 index 00000000..3d225cff --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80016DE8.s @@ -0,0 +1,189 @@ +glabel func_80016DE8 +/* 0179E8 80016DE8 27BDFF48 */ addiu $sp, $sp, -0xb8 +/* 0179EC 80016DEC AFB6004C */ sw $s6, 0x4c($sp) +/* 0179F0 80016DF0 3C168012 */ lui $s6, %hi(D_8011AEF0) # $s6, 0x8012 +/* 0179F4 80016DF4 26D6AEF0 */ addiu $s6, %lo(D_8011AEF0) # addiu $s6, $s6, -0x5110 +/* 0179F8 80016DF8 8EC20000 */ lw $v0, ($s6) +/* 0179FC 80016DFC E7BA002C */ swc1 $f26, 0x2c($sp) +/* 017A00 80016E00 E7B6001C */ swc1 $f22, 0x1c($sp) +/* 017A04 80016E04 4486B000 */ mtc1 $a2, $f22 +/* 017A08 80016E08 4487D000 */ mtc1 $a3, $f26 +/* 017A0C 80016E0C AFB40044 */ sw $s4, 0x44($sp) +/* 017A10 80016E10 E7B90020 */ swc1 $f25, 0x20($sp) +/* 017A14 80016E14 E7B80024 */ swc1 $f24, 0x24($sp) +/* 017A18 80016E18 E7B50010 */ swc1 $f21, 0x10($sp) +/* 017A1C 80016E1C E7B40014 */ swc1 $f20, 0x14($sp) +/* 017A20 80016E20 46006506 */ mov.s $f20, $f12 +/* 017A24 80016E24 46007606 */ mov.s $f24, $f14 +/* 017A28 80016E28 AFBF0054 */ sw $ra, 0x54($sp) +/* 017A2C 80016E2C AFB70050 */ sw $s7, 0x50($sp) +/* 017A30 80016E30 AFB50048 */ sw $s5, 0x48($sp) +/* 017A34 80016E34 AFB30040 */ sw $s3, 0x40($sp) +/* 017A38 80016E38 AFB2003C */ sw $s2, 0x3c($sp) +/* 017A3C 80016E3C AFB10038 */ sw $s1, 0x38($sp) +/* 017A40 80016E40 AFB00034 */ sw $s0, 0x34($sp) +/* 017A44 80016E44 E7BB0028 */ swc1 $f27, 0x28($sp) +/* 017A48 80016E48 E7B70018 */ swc1 $f23, 0x18($sp) +/* 017A4C 80016E4C 1840007F */ blez $v0, .L8001704C +/* 017A50 80016E50 0000A025 */ move $s4, $zero +/* 017A54 80016E54 1840003C */ blez $v0, .L80016F48 +/* 017A58 80016E58 00008825 */ move $s1, $zero +/* 017A5C 80016E5C 3C138012 */ lui $s3, %hi(D_8011AEE4) # $s3, 0x8012 +/* 017A60 80016E60 8FB500C8 */ lw $s5, 0xc8($sp) +/* 017A64 80016E64 8FB000CC */ lw $s0, 0xcc($sp) +/* 017A68 80016E68 2673AEE4 */ addiu $s3, %lo(D_8011AEE4) # addiu $s3, $s3, -0x511c +/* 017A6C 80016E6C 00009025 */ move $s2, $zero +/* 017A70 80016E70 27B70098 */ addiu $s7, $sp, 0x98 +.L80016E74: +/* 017A74 80016E74 8E6E0000 */ lw $t6, ($s3) +/* 017A78 80016E78 00000000 */ nop +/* 017A7C 80016E7C 01D27821 */ addu $t7, $t6, $s2 +/* 017A80 80016E80 8DE20000 */ lw $v0, ($t7) +/* 017A84 80016E84 00000000 */ nop +/* 017A88 80016E88 8C430064 */ lw $v1, 0x64($v0) +/* 017A8C 80016E8C 00000000 */ nop +/* 017A90 80016E90 84640000 */ lh $a0, ($v1) +/* 017A94 80016E94 00000000 */ nop +/* 017A98 80016E98 04800026 */ bltz $a0, .L80016F34 +/* 017A9C 80016E9C 28810004 */ slti $at, $a0, 4 +/* 017AA0 80016EA0 10200024 */ beqz $at, .L80016F34 +/* 017AA4 80016EA4 00000000 */ nop +/* 017AA8 80016EA8 12A0000B */ beqz $s5, .L80016ED8 +/* 017AAC 80016EAC 00000000 */ nop +/* 017AB0 80016EB0 C444000C */ lwc1 $f4, 0xc($v0) +/* 017AB4 80016EB4 C4460014 */ lwc1 $f6, 0x14($v0) +/* 017AB8 80016EB8 46142001 */ sub.s $f0, $f4, $f20 +/* 017ABC 80016EBC 46000202 */ mul.s $f8, $f0, $f0 +/* 017AC0 80016EC0 46163081 */ sub.s $f2, $f6, $f22 +/* 017AC4 80016EC4 46021282 */ mul.s $f10, $f2, $f2 +/* 017AC8 80016EC8 0C0326B4 */ jal sqrtf +/* 017ACC 80016ECC 460A4300 */ add.s $f12, $f8, $f10 +/* 017AD0 80016ED0 1000000E */ b .L80016F0C +/* 017AD4 80016ED4 461A003C */ c.lt.s $f0, $f26 +.L80016ED8: +/* 017AD8 80016ED8 C450000C */ lwc1 $f16, 0xc($v0) +/* 017ADC 80016EDC C4520010 */ lwc1 $f18, 0x10($v0) +/* 017AE0 80016EE0 46148001 */ sub.s $f0, $f16, $f20 +/* 017AE4 80016EE4 C4440014 */ lwc1 $f4, 0x14($v0) +/* 017AE8 80016EE8 46000182 */ mul.s $f6, $f0, $f0 +/* 017AEC 80016EEC 46189381 */ sub.s $f14, $f18, $f24 +/* 017AF0 80016EF0 460E7202 */ mul.s $f8, $f14, $f14 +/* 017AF4 80016EF4 46162081 */ sub.s $f2, $f4, $f22 +/* 017AF8 80016EF8 46021402 */ mul.s $f16, $f2, $f2 +/* 017AFC 80016EFC 46083280 */ add.s $f10, $f6, $f8 +/* 017B00 80016F00 0C0326B4 */ jal sqrtf +/* 017B04 80016F04 46105300 */ add.s $f12, $f10, $f16 +/* 017B08 80016F08 461A003C */ c.lt.s $f0, $f26 +.L80016F0C: +/* 017B0C 80016F0C 00141080 */ sll $v0, $s4, 2 +/* 017B10 80016F10 45000008 */ bc1f .L80016F34 +/* 017B14 80016F14 02E2C021 */ addu $t8, $s7, $v0 +/* 017B18 80016F18 E7000000 */ swc1 $f0, ($t8) +/* 017B1C 80016F1C 8E790000 */ lw $t9, ($s3) +/* 017B20 80016F20 02025021 */ addu $t2, $s0, $v0 +/* 017B24 80016F24 03324021 */ addu $t0, $t9, $s2 +/* 017B28 80016F28 8D090000 */ lw $t1, ($t0) +/* 017B2C 80016F2C 26940001 */ addiu $s4, $s4, 1 +/* 017B30 80016F30 AD490000 */ sw $t1, ($t2) +.L80016F34: +/* 017B34 80016F34 8ECB0000 */ lw $t3, ($s6) +/* 017B38 80016F38 26310001 */ addiu $s1, $s1, 1 +/* 017B3C 80016F3C 022B082A */ slt $at, $s1, $t3 +/* 017B40 80016F40 1420FFCC */ bnez $at, .L80016E74 +/* 017B44 80016F44 26520004 */ addiu $s2, $s2, 4 +.L80016F48: +/* 017B48 80016F48 8FB000CC */ lw $s0, 0xcc($sp) +/* 017B4C 80016F4C 2A810002 */ slti $at, $s4, 2 +/* 017B50 80016F50 1420003E */ bnez $at, .L8001704C +/* 017B54 80016F54 2691FFFF */ addiu $s1, $s4, -1 +/* 017B58 80016F58 1A20003D */ blez $s1, .L80017050 +/* 017B5C 80016F5C 8FBF0054 */ lw $ra, 0x54($sp) +.L80016F60: +/* 017B60 80016F60 1A200037 */ blez $s1, .L80017040 +/* 017B64 80016F64 00001025 */ move $v0, $zero +/* 017B68 80016F68 32230001 */ andi $v1, $s1, 1 +/* 017B6C 80016F6C 10600010 */ beqz $v1, .L80016FB0 +/* 017B70 80016F70 27AD0098 */ addiu $t5, $sp, 0x98 +/* 017B74 80016F74 C7B2009C */ lwc1 $f18, 0x9c($sp) +/* 017B78 80016F78 C7A40098 */ lwc1 $f4, 0x98($sp) +/* 017B7C 80016F7C 24020001 */ li $v0, 1 +/* 017B80 80016F80 4604903C */ c.lt.s $f18, $f4 +/* 017B84 80016F84 00000000 */ nop +/* 017B88 80016F88 45000008 */ bc1f .L80016FAC +/* 017B8C 80016F8C 00000000 */ nop +/* 017B90 80016F90 8E040000 */ lw $a0, ($s0) +/* 017B94 80016F94 E7B20098 */ swc1 $f18, 0x98($sp) +/* 017B98 80016F98 8E0C0004 */ lw $t4, 4($s0) +/* 017B9C 80016F9C 00000000 */ nop +/* 017BA0 80016FA0 AE0C0000 */ sw $t4, ($s0) +/* 017BA4 80016FA4 E7A4009C */ swc1 $f4, 0x9c($sp) +/* 017BA8 80016FA8 AE040004 */ sw $a0, 4($s0) +.L80016FAC: +/* 017BAC 80016FAC 10510024 */ beq $v0, $s1, .L80017040 +.L80016FB0: +/* 017BB0 80016FB0 00022880 */ sll $a1, $v0, 2 +/* 017BB4 80016FB4 00117080 */ sll $t6, $s1, 2 +/* 017BB8 80016FB8 01CD3021 */ addu $a2, $t6, $t5 +/* 017BBC 80016FBC 00AD1821 */ addu $v1, $a1, $t5 +.L80016FC0: +/* 017BC0 80016FC0 C4600004 */ lwc1 $f0, 4($v1) +/* 017BC4 80016FC4 C46C0000 */ lwc1 $f12, ($v1) +/* 017BC8 80016FC8 02051021 */ addu $v0, $s0, $a1 +/* 017BCC 80016FCC 460C003C */ c.lt.s $f0, $f12 +/* 017BD0 80016FD0 00000000 */ nop +/* 017BD4 80016FD4 4500000A */ bc1f .L80017000 +/* 017BD8 80016FD8 00000000 */ nop +/* 017BDC 80016FDC 8C440000 */ lw $a0, ($v0) +/* 017BE0 80016FE0 E4600000 */ swc1 $f0, ($v1) +/* 017BE4 80016FE4 8C4F0004 */ lw $t7, 4($v0) +/* 017BE8 80016FE8 00000000 */ nop +/* 017BEC 80016FEC AC4F0000 */ sw $t7, ($v0) +/* 017BF0 80016FF0 E46C0004 */ swc1 $f12, 4($v1) +/* 017BF4 80016FF4 AC440004 */ sw $a0, 4($v0) +/* 017BF8 80016FF8 C4600004 */ lwc1 $f0, 4($v1) +/* 017BFC 80016FFC 00000000 */ nop +.L80017000: +/* 017C00 80017000 C46C0008 */ lwc1 $f12, 8($v1) +/* 017C04 80017004 02051021 */ addu $v0, $s0, $a1 +/* 017C08 80017008 4600603C */ c.lt.s $f12, $f0 +/* 017C0C 8001700C 00000000 */ nop +/* 017C10 80017010 45000008 */ bc1f .L80017034 +/* 017C14 80017014 00000000 */ nop +/* 017C18 80017018 8C440004 */ lw $a0, 4($v0) +/* 017C1C 8001701C E46C0004 */ swc1 $f12, 4($v1) +/* 017C20 80017020 8C580008 */ lw $t8, 8($v0) +/* 017C24 80017024 00000000 */ nop +/* 017C28 80017028 AC580004 */ sw $t8, 4($v0) +/* 017C2C 8001702C E4600008 */ swc1 $f0, 8($v1) +/* 017C30 80017030 AC440008 */ sw $a0, 8($v0) +.L80017034: +/* 017C34 80017034 24630008 */ addiu $v1, $v1, 8 +/* 017C38 80017038 1466FFE1 */ bne $v1, $a2, .L80016FC0 +/* 017C3C 8001703C 24A50008 */ addiu $a1, $a1, 8 +.L80017040: +/* 017C40 80017040 2631FFFF */ addiu $s1, $s1, -1 +/* 017C44 80017044 1620FFC6 */ bnez $s1, .L80016F60 +/* 017C48 80017048 00000000 */ nop +.L8001704C: +/* 017C4C 8001704C 8FBF0054 */ lw $ra, 0x54($sp) +.L80017050: +/* 017C50 80017050 02801025 */ move $v0, $s4 +/* 017C54 80017054 8FB40044 */ lw $s4, 0x44($sp) +/* 017C58 80017058 C7B50010 */ lwc1 $f21, 0x10($sp) +/* 017C5C 8001705C C7B40014 */ lwc1 $f20, 0x14($sp) +/* 017C60 80017060 C7B70018 */ lwc1 $f23, 0x18($sp) +/* 017C64 80017064 C7B6001C */ lwc1 $f22, 0x1c($sp) +/* 017C68 80017068 C7B90020 */ lwc1 $f25, 0x20($sp) +/* 017C6C 8001706C C7B80024 */ lwc1 $f24, 0x24($sp) +/* 017C70 80017070 C7BB0028 */ lwc1 $f27, 0x28($sp) +/* 017C74 80017074 C7BA002C */ lwc1 $f26, 0x2c($sp) +/* 017C78 80017078 8FB00034 */ lw $s0, 0x34($sp) +/* 017C7C 8001707C 8FB10038 */ lw $s1, 0x38($sp) +/* 017C80 80017080 8FB2003C */ lw $s2, 0x3c($sp) +/* 017C84 80017084 8FB30040 */ lw $s3, 0x40($sp) +/* 017C88 80017088 8FB50048 */ lw $s5, 0x48($sp) +/* 017C8C 8001708C 8FB6004C */ lw $s6, 0x4c($sp) +/* 017C90 80017090 8FB70050 */ lw $s7, 0x50($sp) +/* 017C94 80017094 03E00008 */ jr $ra +/* 017C98 80017098 27BD00B8 */ addiu $sp, $sp, 0xb8 + diff --git a/asm/non_matchings/unknown_005740/func_8001709C.s b/asm/non_matchings/unknown_005740/func_8001709C.s new file mode 100644 index 00000000..e2d09ff9 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001709C.s @@ -0,0 +1,110 @@ +glabel func_8001709C +/* 017C9C 8001709C 27BDFF70 */ addiu $sp, $sp, -0x90 +/* 017CA0 800170A0 AFBF001C */ sw $ra, 0x1c($sp) +/* 017CA4 800170A4 AFB00018 */ sw $s0, 0x18($sp) +/* 017CA8 800170A8 8C90005C */ lw $s0, 0x5c($a0) +/* 017CAC 800170AC 00803825 */ move $a3, $a0 +/* 017CB0 800170B0 920E0104 */ lbu $t6, 0x104($s0) +/* 017CB4 800170B4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 017CB8 800170B8 25CF0001 */ addiu $t7, $t6, 1 +/* 017CBC 800170BC 31F80001 */ andi $t8, $t7, 1 +/* 017CC0 800170C0 A2180104 */ sb $t8, 0x104($s0) +/* 017CC4 800170C4 84EA0000 */ lh $t2, ($a3) +/* 017CC8 800170C8 44812000 */ mtc1 $at, $f4 +/* 017CCC 800170CC 000A5823 */ negu $t3, $t2 +/* 017CD0 800170D0 A7AB0078 */ sh $t3, 0x78($sp) +/* 017CD4 800170D4 84EC0002 */ lh $t4, 2($a3) +/* 017CD8 800170D8 330800FF */ andi $t0, $t8, 0xff +/* 017CDC 800170DC 000C6823 */ negu $t5, $t4 +/* 017CE0 800170E0 A7AD007A */ sh $t5, 0x7a($sp) +/* 017CE4 800170E4 84EE0004 */ lh $t6, 4($a3) +/* 017CE8 800170E8 E7A40080 */ swc1 $f4, 0x80($sp) +/* 017CEC 800170EC 000E7823 */ negu $t7, $t6 +/* 017CF0 800170F0 A7AF007C */ sh $t7, 0x7c($sp) +/* 017CF4 800170F4 C4E6000C */ lwc1 $f6, 0xc($a3) +/* 017CF8 800170F8 00084980 */ sll $t1, $t0, 6 +/* 017CFC 800170FC 46003207 */ neg.s $f8, $f6 +/* 017D00 80017100 E7A80084 */ swc1 $f8, 0x84($sp) +/* 017D04 80017104 C4EA0010 */ lwc1 $f10, 0x10($a3) +/* 017D08 80017108 02092021 */ addu $a0, $s0, $t1 +/* 017D0C 8001710C 46005407 */ neg.s $f16, $f10 +/* 017D10 80017110 E7B00088 */ swc1 $f16, 0x88($sp) +/* 017D14 80017114 C4F20014 */ lwc1 $f18, 0x14($a3) +/* 017D18 80017118 AFA70090 */ sw $a3, 0x90($sp) +/* 017D1C 8001711C 46009107 */ neg.s $f4, $f18 +/* 017D20 80017120 E7A4008C */ swc1 $f4, 0x8c($sp) +/* 017D24 80017124 AFA4006C */ sw $a0, 0x6c($sp) +/* 017D28 80017128 0C01BF9D */ jal func_8006FE74 +/* 017D2C 8001712C 27A50078 */ addiu $a1, $sp, 0x78 +/* 017D30 80017130 8FA70090 */ lw $a3, 0x90($sp) +/* 017D34 80017134 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 017D38 80017138 C4E60008 */ lwc1 $f6, 8($a3) +/* 017D3C 8001713C 44816800 */ mtc1 $at, $f13 +/* 017D40 80017140 44806000 */ mtc1 $zero, $f12 +/* 017D44 80017144 46003221 */ cvt.d.s $f8, $f6 +/* 017D48 80017148 00000000 */ nop +/* 017D4C 8001714C 46286283 */ div.d $f10, $f12, $f8 +/* 017D50 80017150 8FA4006C */ lw $a0, 0x6c($sp) +/* 017D54 80017154 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 017D58 80017158 44800000 */ mtc1 $zero, $f0 +/* 017D5C 8001715C 44818000 */ mtc1 $at, $f16 +/* 017D60 80017160 27A2002C */ addiu $v0, $sp, 0x2c +/* 017D64 80017164 27A3006C */ addiu $v1, $sp, 0x6c +/* 017D68 80017168 27A5002C */ addiu $a1, $sp, 0x2c +/* 017D6C 8001716C 00803025 */ move $a2, $a0 +/* 017D70 80017170 462050A0 */ cvt.s.d $f2, $f10 +.L80017174: +/* 017D74 80017174 24420010 */ addiu $v0, $v0, 0x10 +/* 017D78 80017178 E440FFF0 */ swc1 $f0, -0x10($v0) +/* 017D7C 8001717C E440FFF4 */ swc1 $f0, -0xc($v0) +/* 017D80 80017180 E440FFF8 */ swc1 $f0, -8($v0) +/* 017D84 80017184 1443FFFB */ bne $v0, $v1, .L80017174 +/* 017D88 80017188 E440FFFC */ swc1 $f0, -4($v0) +/* 017D8C 8001718C E7A2002C */ swc1 $f2, 0x2c($sp) +/* 017D90 80017190 E7A20040 */ swc1 $f2, 0x40($sp) +/* 017D94 80017194 E7A20054 */ swc1 $f2, 0x54($sp) +/* 017D98 80017198 E7B00068 */ swc1 $f16, 0x68($sp) +/* 017D9C 8001719C AFA70090 */ sw $a3, 0x90($sp) +/* 017DA0 800171A0 0C01BDDA */ jal func_8006F768 +/* 017DA4 800171A4 E7A20070 */ swc1 $f2, 0x70($sp) +/* 017DA8 800171A8 C7A20070 */ lwc1 $f2, 0x70($sp) +/* 017DAC 800171AC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 017DB0 800171B0 44816800 */ mtc1 $at, $f13 +/* 017DB4 800171B4 44806000 */ mtc1 $zero, $f12 +/* 017DB8 800171B8 460014A1 */ cvt.d.s $f18, $f2 +/* 017DBC 800171BC 00000000 */ nop +/* 017DC0 800171C0 46326103 */ div.d $f4, $f12, $f18 +/* 017DC4 800171C4 8FA70090 */ lw $a3, 0x90($sp) +/* 017DC8 800171C8 27A50078 */ addiu $a1, $sp, 0x78 +/* 017DCC 800171CC 84F80000 */ lh $t8, ($a3) +/* 017DD0 800171D0 00000000 */ nop +/* 017DD4 800171D4 A7B80078 */ sh $t8, 0x78($sp) +/* 017DD8 800171D8 84F90002 */ lh $t9, 2($a3) +/* 017DDC 800171DC 00000000 */ nop +/* 017DE0 800171E0 A7B9007A */ sh $t9, 0x7a($sp) +/* 017DE4 800171E4 84E80004 */ lh $t0, 4($a3) +/* 017DE8 800171E8 00000000 */ nop +/* 017DEC 800171EC A7A8007C */ sh $t0, 0x7c($sp) +/* 017DF0 800171F0 462021A0 */ cvt.s.d $f6, $f4 +/* 017DF4 800171F4 E7A60080 */ swc1 $f6, 0x80($sp) +/* 017DF8 800171F8 C4E8000C */ lwc1 $f8, 0xc($a3) +/* 017DFC 800171FC 00000000 */ nop +/* 017E00 80017200 E7A80084 */ swc1 $f8, 0x84($sp) +/* 017E04 80017204 C4EA0010 */ lwc1 $f10, 0x10($a3) +/* 017E08 80017208 00000000 */ nop +/* 017E0C 8001720C E7AA0088 */ swc1 $f10, 0x88($sp) +/* 017E10 80017210 C4F00014 */ lwc1 $f16, 0x14($a3) +/* 017E14 80017214 00000000 */ nop +/* 017E18 80017218 E7B0008C */ swc1 $f16, 0x8c($sp) +/* 017E1C 8001721C 92090104 */ lbu $t1, 0x104($s0) +/* 017E20 80017220 00000000 */ nop +/* 017E24 80017224 252B0002 */ addiu $t3, $t1, 2 +/* 017E28 80017228 000B6180 */ sll $t4, $t3, 6 +/* 017E2C 8001722C 0C01BF0C */ jal func_8006FC30 +/* 017E30 80017230 020C2021 */ addu $a0, $s0, $t4 +/* 017E34 80017234 AE000100 */ sw $zero, 0x100($s0) +/* 017E38 80017238 8FBF001C */ lw $ra, 0x1c($sp) +/* 017E3C 8001723C 8FB00018 */ lw $s0, 0x18($sp) +/* 017E40 80017240 03E00008 */ jr $ra +/* 017E44 80017244 27BD0090 */ addiu $sp, $sp, 0x90 + diff --git a/asm/non_matchings/unknown_005740/func_80017248.s b/asm/non_matchings/unknown_005740/func_80017248.s new file mode 100644 index 00000000..8149022e --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80017248.s @@ -0,0 +1,461 @@ +glabel func_80017248 +/* 017E48 80017248 27BDFE88 */ addiu $sp, $sp, -0x178 +/* 017E4C 8001724C AFB50054 */ sw $s5, 0x54($sp) +/* 017E50 80017250 3C158012 */ lui $s5, %hi(D_8011AE70) # $s5, 0x8012 +/* 017E54 80017254 26B5AE70 */ addiu $s5, %lo(D_8011AE70) # addiu $s5, $s5, -0x5190 +/* 017E58 80017258 8EAE0000 */ lw $t6, ($s5) +/* 017E5C 8001725C AFBF0064 */ sw $ra, 0x64($sp) +/* 017E60 80017260 AFBE0060 */ sw $fp, 0x60($sp) +/* 017E64 80017264 AFB7005C */ sw $s7, 0x5c($sp) +/* 017E68 80017268 AFB60058 */ sw $s6, 0x58($sp) +/* 017E6C 8001726C AFB40050 */ sw $s4, 0x50($sp) +/* 017E70 80017270 AFB3004C */ sw $s3, 0x4c($sp) +/* 017E74 80017274 AFB20048 */ sw $s2, 0x48($sp) +/* 017E78 80017278 AFB10044 */ sw $s1, 0x44($sp) +/* 017E7C 8001727C AFB00040 */ sw $s0, 0x40($sp) +/* 017E80 80017280 E7B50038 */ swc1 $f21, 0x38($sp) +/* 017E84 80017284 E7B4003C */ swc1 $f20, 0x3c($sp) +/* 017E88 80017288 AFA5017C */ sw $a1, 0x17c($sp) +/* 017E8C 8001728C AFA70184 */ sw $a3, 0x184($sp) +/* 017E90 80017290 AFA00160 */ sw $zero, 0x160($sp) +/* 017E94 80017294 AFA00170 */ sw $zero, 0x170($sp) +/* 017E98 80017298 19C0007B */ blez $t6, .L80017488 +/* 017E9C 8001729C AFA60180 */ sw $a2, 0x180($sp) +/* 017EA0 800172A0 00009025 */ move $s2, $zero +/* 017EA4 800172A4 AFA40178 */ sw $a0, 0x178($sp) +/* 017EA8 800172A8 AFA60180 */ sw $a2, 0x180($sp) +/* 017EAC 800172AC 27B4008C */ addiu $s4, $sp, 0x8c +/* 017EB0 800172B0 27B300B4 */ addiu $s3, $sp, 0xb4 +/* 017EB4 800172B4 27B000B8 */ addiu $s0, $sp, 0xb8 +.L800172B8: +/* 017EB8 800172B8 3C0F8012 */ lui $t7, %hi(D_8011AE6C) # $t7, 0x8012 +/* 017EBC 800172BC 8DEFAE6C */ lw $t7, %lo(D_8011AE6C)($t7) +/* 017EC0 800172C0 8FA40178 */ lw $a0, 0x178($sp) +/* 017EC4 800172C4 01F2C021 */ addu $t8, $t7, $s2 +/* 017EC8 800172C8 8F020000 */ lw $v0, ($t8) +/* 017ECC 800172CC 00000000 */ nop +/* 017ED0 800172D0 804A003A */ lb $t2, 0x3a($v0) +/* 017ED4 800172D4 8C590068 */ lw $t9, 0x68($v0) +/* 017ED8 800172D8 000A5880 */ sll $t3, $t2, 2 +/* 017EDC 800172DC 032B6021 */ addu $t4, $t9, $t3 +/* 017EE0 800172E0 8D830000 */ lw $v1, ($t4) +/* 017EE4 800172E4 00000000 */ nop +/* 017EE8 800172E8 8C6D0000 */ lw $t5, ($v1) +/* 017EEC 800172EC 00000000 */ nop +/* 017EF0 800172F0 AFAD0154 */ sw $t5, 0x154($sp) +/* 017EF4 800172F4 C486000C */ lwc1 $f6, 0xc($a0) +/* 017EF8 800172F8 C444000C */ lwc1 $f4, 0xc($v0) +/* 017EFC 800172FC C48A0010 */ lwc1 $f10, 0x10($a0) +/* 017F00 80017300 46062381 */ sub.s $f14, $f4, $f6 +/* 017F04 80017304 C4480010 */ lwc1 $f8, 0x10($v0) +/* 017F08 80017308 460E7102 */ mul.s $f4, $f14, $f14 +/* 017F0C 8001730C 460A4001 */ sub.s $f0, $f8, $f10 +/* 017F10 80017310 C4920014 */ lwc1 $f18, 0x14($a0) +/* 017F14 80017314 C4500014 */ lwc1 $f16, 0x14($v0) +/* 017F18 80017318 46000182 */ mul.s $f6, $f0, $f0 +/* 017F1C 8001731C 46128081 */ sub.s $f2, $f16, $f18 +/* 017F20 80017320 AFA20158 */ sw $v0, 0x158($sp) +/* 017F24 80017324 46021282 */ mul.s $f10, $f2, $f2 +/* 017F28 80017328 46062200 */ add.s $f8, $f4, $f6 +/* 017F2C 8001732C 0C0326B4 */ jal sqrtf +/* 017F30 80017330 460A4300 */ add.s $f12, $f8, $f10 +/* 017F34 80017334 444EF800 */ cfc1 $t6, $31 +/* 017F38 80017338 8FA40158 */ lw $a0, 0x158($sp) +/* 017F3C 8001733C 35C10003 */ ori $at, $t6, 3 +/* 017F40 80017340 38210002 */ xori $at, $at, 2 +/* 017F44 80017344 44C1F800 */ ctc1 $at, $31 +/* 017F48 80017348 8C83004C */ lw $v1, 0x4c($a0) +/* 017F4C 8001734C 46000424 */ cvt.w.s $f16, $f0 +/* 017F50 80017350 846F0014 */ lh $t7, 0x14($v1) +/* 017F54 80017354 44028000 */ mfc1 $v0, $f16 +/* 017F58 80017358 44CEF800 */ ctc1 $t6, $31 +/* 017F5C 8001735C 31F80020 */ andi $t8, $t7, 0x20 +/* 017F60 80017360 13000002 */ beqz $t8, .L8001736C +/* 017F64 80017364 0040F025 */ move $fp, $v0 +/* 017F68 80017368 0002F0C3 */ sra $fp, $v0, 3 +.L8001736C: +/* 017F6C 8001736C 2BC10100 */ slti $at, $fp, 0x100 +/* 017F70 80017370 14200002 */ bnez $at, .L8001737C +/* 017F74 80017374 26520004 */ addiu $s2, $s2, 4 +/* 017F78 80017378 241E00FF */ li $fp, 255 +.L8001737C: +/* 017F7C 8001737C 906A0013 */ lbu $t2, 0x13($v1) +/* 017F80 80017380 00000000 */ nop +/* 017F84 80017384 03CA082A */ slt $at, $fp, $t2 +/* 017F88 80017388 10200007 */ beqz $at, .L800173A8 +/* 017F8C 8001738C 8FAC0154 */ lw $t4, 0x154($sp) +/* 017F90 80017390 A07E0013 */ sb $fp, 0x13($v1) +/* 017F94 80017394 8C8B004C */ lw $t3, 0x4c($a0) +/* 017F98 80017398 8FB90178 */ lw $t9, 0x178($sp) +/* 017F9C 8001739C 00000000 */ nop +/* 017FA0 800173A0 AD790000 */ sw $t9, ($t3) +/* 017FA4 800173A4 8FAC0154 */ lw $t4, 0x154($sp) +.L800173A8: +/* 017FA8 800173A8 C4880008 */ lwc1 $f8, 8($a0) +/* 017FAC 800173AC C586003C */ lwc1 $f6, 0x3c($t4) +/* 017FB0 800173B0 3C0141C8 */ li $at, 0x41C80000 # 25.000000 +/* 017FB4 800173B4 46083282 */ mul.s $f10, $f6, $f8 +/* 017FB8 800173B8 44819000 */ mtc1 $at, $f18 +/* 017FBC 800173BC 8FA50160 */ lw $a1, 0x160($sp) +/* 017FC0 800173C0 8FAD0170 */ lw $t5, 0x170($sp) +/* 017FC4 800173C4 46120101 */ sub.s $f4, $f0, $f18 +/* 017FC8 800173C8 00051080 */ sll $v0, $a1, 2 +/* 017FCC 800173CC 460A203C */ c.lt.s $f4, $f10 +/* 017FD0 800173D0 02627021 */ addu $t6, $s3, $v0 +/* 017FD4 800173D4 45000022 */ bc1f .L80017460 +/* 017FD8 800173D8 02821821 */ addu $v1, $s4, $v0 +/* 017FDC 800173DC ADCD0000 */ sw $t5, ($t6) +/* 017FE0 800173E0 E4600000 */ swc1 $f0, ($v1) +/* 017FE4 800173E4 18A0001C */ blez $a1, .L80017458 +/* 017FE8 800173E8 00A08825 */ move $s1, $a1 +/* 017FEC 800173EC C470FFFC */ lwc1 $f16, -4($v1) +/* 017FF0 800173F0 C4720000 */ lwc1 $f18, ($v1) +/* 017FF4 800173F4 00112080 */ sll $a0, $s1, 2 +/* 017FF8 800173F8 4612803C */ c.lt.s $f16, $f18 +/* 017FFC 800173FC 02841821 */ addu $v1, $s4, $a0 +/* 018000 80017400 45000015 */ bc1f .L80017458 +/* 018004 80017404 00000000 */ nop +/* 018008 80017408 C460FFFC */ lwc1 $f0, -4($v1) +/* 01800C 8001740C C4620000 */ lwc1 $f2, ($v1) +/* 018010 80017410 02641021 */ addu $v0, $s3, $a0 +.L80017414: +/* 018014 80017414 8C480000 */ lw $t0, ($v0) +/* 018018 80017418 8C4FFFFC */ lw $t7, -4($v0) +/* 01801C 8001741C 2442FFFC */ addiu $v0, $v0, -4 +/* 018020 80017420 0050082B */ sltu $at, $v0, $s0 +/* 018024 80017424 E4600000 */ swc1 $f0, ($v1) +/* 018028 80017428 E462FFFC */ swc1 $f2, -4($v1) +/* 01802C 8001742C 2463FFFC */ addiu $v1, $v1, -4 +/* 018030 80017430 AC480000 */ sw $t0, ($v0) +/* 018034 80017434 14200008 */ bnez $at, .L80017458 +/* 018038 80017438 AC4F0004 */ sw $t7, 4($v0) +/* 01803C 8001743C C460FFFC */ lwc1 $f0, -4($v1) +/* 018040 80017440 C4620000 */ lwc1 $f2, ($v1) +/* 018044 80017444 00000000 */ nop +/* 018048 80017448 4602003C */ c.lt.s $f0, $f2 +/* 01804C 8001744C 00000000 */ nop +/* 018050 80017450 4501FFF0 */ bc1t .L80017414 +/* 018054 80017454 00000000 */ nop +.L80017458: +/* 018058 80017458 24A50001 */ addiu $a1, $a1, 1 +/* 01805C 8001745C AFA50160 */ sw $a1, 0x160($sp) +.L80017460: +/* 018060 80017460 8FB80170 */ lw $t8, 0x170($sp) +/* 018064 80017464 8EB90000 */ lw $t9, ($s5) +/* 018068 80017468 270A0001 */ addiu $t2, $t8, 1 +/* 01806C 8001746C 8FA50160 */ lw $a1, 0x160($sp) +/* 018070 80017470 0159082A */ slt $at, $t2, $t9 +/* 018074 80017474 1420FF90 */ bnez $at, .L800172B8 +/* 018078 80017478 AFAA0170 */ sw $t2, 0x170($sp) +/* 01807C 8001747C 8FA40178 */ lw $a0, 0x178($sp) +/* 018080 80017480 AFA00170 */ sw $zero, 0x170($sp) +/* 018084 80017484 AFA50160 */ sw $a1, 0x160($sp) +.L80017488: +/* 018088 80017488 8FAB0160 */ lw $t3, 0x160($sp) +/* 01808C 8001748C 8FA60180 */ lw $a2, 0x180($sp) +/* 018090 80017490 196000F8 */ blez $t3, .L80017874 +/* 018094 80017494 00003825 */ move $a3, $zero +/* 018098 80017498 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 01809C 8001749C 27A900B4 */ addiu $t1, $sp, 0xb4 +/* 0180A0 800174A0 4481A800 */ mtc1 $at, $f21 +/* 0180A4 800174A4 4480A000 */ mtc1 $zero, $f20 +/* 0180A8 800174A8 AFA90088 */ sw $t1, 0x88($sp) +/* 0180AC 800174AC AFA40178 */ sw $a0, 0x178($sp) +/* 0180B0 800174B0 AFA60180 */ sw $a2, 0x180($sp) +/* 0180B4 800174B4 AFA00168 */ sw $zero, 0x168($sp) +.L800174B8: +/* 0180B8 800174B8 8FA90088 */ lw $t1, 0x88($sp) +/* 0180BC 800174BC 3C0C8012 */ lui $t4, %hi(D_8011AE6C) # $t4, 0x8012 +/* 0180C0 800174C0 8D2D0000 */ lw $t5, ($t1) +/* 0180C4 800174C4 8D8CAE6C */ lw $t4, %lo(D_8011AE6C)($t4) +/* 0180C8 800174C8 000D7080 */ sll $t6, $t5, 2 +/* 0180CC 800174CC 018E7821 */ addu $t7, $t4, $t6 +/* 0180D0 800174D0 8DE50000 */ lw $a1, ($t7) +/* 0180D4 800174D4 8FA40178 */ lw $a0, 0x178($sp) +/* 0180D8 800174D8 80AA003A */ lb $t2, 0x3a($a1) +/* 0180DC 800174DC 8CB80068 */ lw $t8, 0x68($a1) +/* 0180E0 800174E0 000AC880 */ sll $t9, $t2, 2 +/* 0180E4 800174E4 03195821 */ addu $t3, $t8, $t9 +/* 0180E8 800174E8 8D630000 */ lw $v1, ($t3) +/* 0180EC 800174EC 24080001 */ li $t0, 1 +/* 0180F0 800174F0 8C6D0000 */ lw $t5, ($v1) +/* 0180F4 800174F4 00008825 */ move $s1, $zero +/* 0180F8 800174F8 AFAD0154 */ sw $t5, 0x154($sp) +/* 0180FC 800174FC 8CA2005C */ lw $v0, 0x5c($a1) +/* 018100 80017500 0000F025 */ move $fp, $zero +/* 018104 80017504 904C0104 */ lbu $t4, 0x104($v0) +/* 018108 80017508 AFA8016C */ sw $t0, 0x16c($sp) +/* 01810C 8001750C 258E0001 */ addiu $t6, $t4, 1 +/* 018110 80017510 31CA0001 */ andi $t2, $t6, 1 +/* 018114 80017514 000AC180 */ sll $t8, $t2, 6 +/* 018118 80017518 0058C821 */ addu $t9, $v0, $t8 +/* 01811C 8001751C AFB900DC */ sw $t9, 0xdc($sp) +/* 018120 80017520 0C005E43 */ jal func_8001790C +/* 018124 80017524 AFA50158 */ sw $a1, 0x158($sp) +/* 018128 80017528 8FA8016C */ lw $t0, 0x16c($sp) +/* 01812C 8001752C 1040002C */ beqz $v0, .L800175E0 +/* 018130 80017530 AFA2014C */ sw $v0, 0x14c($sp) +/* 018134 80017534 8FAB017C */ lw $t3, 0x17c($sp) +/* 018138 80017538 27B2013C */ addiu $s2, $sp, 0x13c +/* 01813C 8001753C 19600041 */ blez $t3, .L80017644 +/* 018140 80017540 00408025 */ move $s0, $v0 +/* 018144 80017544 8FB10188 */ lw $s1, 0x188($sp) +/* 018148 80017548 27B3012C */ addiu $s3, $sp, 0x12c +/* 01814C 8001754C 27B4011C */ addiu $s4, $sp, 0x11c +/* 018150 80017550 27B50100 */ addiu $s5, $sp, 0x100 +/* 018154 80017554 27B600F0 */ addiu $s6, $sp, 0xf0 +/* 018158 80017558 27B700E0 */ addiu $s7, $sp, 0xe0 +.L8001755C: +/* 01815C 8001755C C606000C */ lwc1 $f6, 0xc($s0) +/* 018160 80017560 00000000 */ nop +/* 018164 80017564 E6460000 */ swc1 $f6, ($s2) +/* 018168 80017568 C6080010 */ lwc1 $f8, 0x10($s0) +/* 01816C 8001756C 00000000 */ nop +/* 018170 80017570 E6680000 */ swc1 $f8, ($s3) +/* 018174 80017574 C6040014 */ lwc1 $f4, 0x14($s0) +/* 018178 80017578 00000000 */ nop +/* 01817C 8001757C E6840000 */ swc1 $f4, ($s4) +/* 018180 80017580 8E270008 */ lw $a3, 8($s1) +/* 018184 80017584 8E260004 */ lw $a2, 4($s1) +/* 018188 80017588 8E250000 */ lw $a1, ($s1) +/* 01818C 8001758C 8FA400DC */ lw $a0, 0xdc($sp) +/* 018190 80017590 AFA8016C */ sw $t0, 0x16c($sp) +/* 018194 80017594 AFB70018 */ sw $s7, 0x18($sp) +/* 018198 80017598 AFB60014 */ sw $s6, 0x14($sp) +/* 01819C 8001759C 0C01BD93 */ jal func_8006F64C +/* 0181A0 800175A0 AFB50010 */ sw $s5, 0x10($sp) +/* 0181A4 800175A4 8FAD017C */ lw $t5, 0x17c($sp) +/* 0181A8 800175A8 27DE0001 */ addiu $fp, $fp, 1 +/* 0181AC 800175AC 8FA8016C */ lw $t0, 0x16c($sp) +/* 0181B0 800175B0 26520004 */ addiu $s2, $s2, 4 +/* 0181B4 800175B4 26730004 */ addiu $s3, $s3, 4 +/* 0181B8 800175B8 26940004 */ addiu $s4, $s4, 4 +/* 0181BC 800175BC 26B50004 */ addiu $s5, $s5, 4 +/* 0181C0 800175C0 26D60004 */ addiu $s6, $s6, 4 +/* 0181C4 800175C4 26F70004 */ addiu $s7, $s7, 4 +/* 0181C8 800175C8 2610000C */ addiu $s0, $s0, 0xc +/* 0181CC 800175CC 17CDFFE3 */ bne $fp, $t5, .L8001755C +/* 0181D0 800175D0 2631000C */ addiu $s1, $s1, 0xc +/* 0181D4 800175D4 00008825 */ move $s1, $zero +/* 0181D8 800175D8 1000001A */ b .L80017644 +/* 0181DC 800175DC 0000F025 */ move $fp, $zero +.L800175E0: +/* 0181E0 800175E0 8FAC017C */ lw $t4, 0x17c($sp) +/* 0181E4 800175E4 27B2013C */ addiu $s2, $sp, 0x13c +/* 0181E8 800175E8 19800016 */ blez $t4, .L80017644 +/* 0181EC 800175EC 27B3012C */ addiu $s3, $sp, 0x12c +/* 0181F0 800175F0 8FB00184 */ lw $s0, 0x184($sp) +/* 0181F4 800175F4 27B4011C */ addiu $s4, $sp, 0x11c +.L800175F8: +/* 0181F8 800175F8 8E050000 */ lw $a1, ($s0) +/* 0181FC 800175FC 8E060004 */ lw $a2, 4($s0) +/* 018200 80017600 8E070008 */ lw $a3, 8($s0) +/* 018204 80017604 8FA400DC */ lw $a0, 0xdc($sp) +/* 018208 80017608 AFA8016C */ sw $t0, 0x16c($sp) +/* 01820C 8001760C AFB40018 */ sw $s4, 0x18($sp) +/* 018210 80017610 AFB30014 */ sw $s3, 0x14($sp) +/* 018214 80017614 0C01BD93 */ jal func_8006F64C +/* 018218 80017618 AFB20010 */ sw $s2, 0x10($sp) +/* 01821C 8001761C 8FAE017C */ lw $t6, 0x17c($sp) +/* 018220 80017620 27DE0001 */ addiu $fp, $fp, 1 +/* 018224 80017624 8FA8016C */ lw $t0, 0x16c($sp) +/* 018228 80017628 26520004 */ addiu $s2, $s2, 4 +/* 01822C 8001762C 26730004 */ addiu $s3, $s3, 4 +/* 018230 80017630 26940004 */ addiu $s4, $s4, 4 +/* 018234 80017634 17CEFFF0 */ bne $fp, $t6, .L800175F8 +/* 018238 80017638 2610000C */ addiu $s0, $s0, 0xc +/* 01823C 8001763C 00008825 */ move $s1, $zero +/* 018240 80017640 0000F025 */ move $fp, $zero +.L80017644: +/* 018244 80017644 8FAF017C */ lw $t7, 0x17c($sp) +/* 018248 80017648 27B50100 */ addiu $s5, $sp, 0x100 +/* 01824C 8001764C 19E00015 */ blez $t7, .L800176A4 +/* 018250 80017650 27B600F0 */ addiu $s6, $sp, 0xf0 +/* 018254 80017654 8FB10188 */ lw $s1, 0x188($sp) +/* 018258 80017658 27B700E0 */ addiu $s7, $sp, 0xe0 +.L8001765C: +/* 01825C 8001765C 8E250000 */ lw $a1, ($s1) +/* 018260 80017660 8E260004 */ lw $a2, 4($s1) +/* 018264 80017664 8E270008 */ lw $a3, 8($s1) +/* 018268 80017668 8FA400DC */ lw $a0, 0xdc($sp) +/* 01826C 8001766C AFA8016C */ sw $t0, 0x16c($sp) +/* 018270 80017670 AFB70018 */ sw $s7, 0x18($sp) +/* 018274 80017674 AFB60014 */ sw $s6, 0x14($sp) +/* 018278 80017678 0C01BD93 */ jal func_8006F64C +/* 01827C 8001767C AFB50010 */ sw $s5, 0x10($sp) +/* 018280 80017680 8FAA017C */ lw $t2, 0x17c($sp) +/* 018284 80017684 27DE0001 */ addiu $fp, $fp, 1 +/* 018288 80017688 8FA8016C */ lw $t0, 0x16c($sp) +/* 01828C 8001768C 26B50004 */ addiu $s5, $s5, 4 +/* 018290 80017690 26D60004 */ addiu $s6, $s6, 4 +/* 018294 80017694 26F70004 */ addiu $s7, $s7, 4 +/* 018298 80017698 17CAFFF0 */ bne $fp, $t2, .L8001765C +/* 01829C 8001769C 2631000C */ addiu $s1, $s1, 0xc +/* 0182A0 800176A0 00008825 */ move $s1, $zero +.L800176A4: +/* 0182A4 800176A4 8FA60180 */ lw $a2, 0x180($sp) +/* 0182A8 800176A8 27B8012C */ addiu $t8, $sp, 0x12c +/* 0182AC 800176AC ACC00000 */ sw $zero, ($a2) +/* 0182B0 800176B0 8FAF0190 */ lw $t7, 0x190($sp) +/* 0182B4 800176B4 8FAE018C */ lw $t6, 0x18c($sp) +/* 0182B8 800176B8 8FAA0158 */ lw $t2, 0x158($sp) +/* 0182BC 800176BC 27B9011C */ addiu $t9, $sp, 0x11c +/* 0182C0 800176C0 27AB0100 */ addiu $t3, $sp, 0x100 +/* 0182C4 800176C4 27AD00F0 */ addiu $t5, $sp, 0xf0 +/* 0182C8 800176C8 27AC00E0 */ addiu $t4, $sp, 0xe0 +/* 0182CC 800176CC AFAC0020 */ sw $t4, 0x20($sp) +/* 0182D0 800176D0 AFAD001C */ sw $t5, 0x1c($sp) +/* 0182D4 800176D4 AFAB0018 */ sw $t3, 0x18($sp) +/* 0182D8 800176D8 AFB90014 */ sw $t9, 0x14($sp) +/* 0182DC 800176DC AFB80010 */ sw $t8, 0x10($sp) +/* 0182E0 800176E0 AFAF0028 */ sw $t7, 0x28($sp) +/* 0182E4 800176E4 AFAE0024 */ sw $t6, 0x24($sp) +/* 0182E8 800176E8 C54A0008 */ lwc1 $f10, 8($t2) +/* 0182EC 800176EC 8FA5017C */ lw $a1, 0x17c($sp) +/* 0182F0 800176F0 46005421 */ cvt.d.s $f16, $f10 +/* 0182F4 800176F4 00000000 */ nop +/* 0182F8 800176F8 4630A483 */ div.d $f18, $f20, $f16 +/* 0182FC 800176FC 8FA40154 */ lw $a0, 0x154($sp) +/* 018300 80017700 AFA8016C */ sw $t0, 0x16c($sp) +/* 018304 80017704 27A7013C */ addiu $a3, $sp, 0x13c +/* 018308 80017708 462091A0 */ cvt.s.d $f6, $f18 +/* 01830C 8001770C 0C005E86 */ jal func_80017A18 +/* 018310 80017710 E7A6002C */ swc1 $f6, 0x2c($sp) +/* 018314 80017714 8FA8016C */ lw $t0, 0x16c($sp) +/* 018318 80017718 10400006 */ beqz $v0, .L80017734 +/* 01831C 8001771C 00409025 */ move $s2, $v0 +/* 018320 80017720 8FA50158 */ lw $a1, 0x158($sp) +/* 018324 80017724 8FB80178 */ lw $t8, 0x178($sp) +/* 018328 80017728 8CB9005C */ lw $t9, 0x5c($a1) +/* 01832C 8001772C 00000000 */ nop +/* 018330 80017730 AF380100 */ sw $t8, 0x100($t9) +.L80017734: +/* 018334 80017734 3C0B8012 */ lui $t3, %hi(D_8011AD24) # $t3, 0x8012 +/* 018338 80017738 816BAD24 */ lb $t3, %lo(D_8011AD24)($t3) +/* 01833C 8001773C 8FA50158 */ lw $a1, 0x158($sp) +/* 018340 80017740 15600007 */ bnez $t3, .L80017760 +/* 018344 80017744 0000F025 */ move $fp, $zero +/* 018348 80017748 8FA40178 */ lw $a0, 0x178($sp) +/* 01834C 8001774C 0C005E5E */ jal func_80017978 +/* 018350 80017750 AFA8016C */ sw $t0, 0x16c($sp) +/* 018354 80017754 8FA8016C */ lw $t0, 0x16c($sp) +/* 018358 80017758 8FA50158 */ lw $a1, 0x158($sp) +/* 01835C 8001775C AFA2014C */ sw $v0, 0x14c($sp) +.L80017760: +/* 018360 80017760 8CA2005C */ lw $v0, 0x5c($a1) +/* 018364 80017764 8FB8017C */ lw $t8, 0x17c($sp) +/* 018368 80017768 904D0104 */ lbu $t5, 0x104($v0) +/* 01836C 8001776C 00000000 */ nop +/* 018370 80017770 25AE0002 */ addiu $t6, $t5, 2 +/* 018374 80017774 000E7980 */ sll $t7, $t6, 6 +/* 018378 80017778 004F5021 */ addu $t2, $v0, $t7 +/* 01837C 8001777C 1B000030 */ blez $t8, .L80017840 +/* 018380 80017780 AFAA00DC */ sw $t2, 0xdc($sp) +.L80017784: +/* 018384 80017784 8FB9014C */ lw $t9, 0x14c($sp) +/* 018388 80017788 00115880 */ sll $t3, $s1, 2 +/* 01838C 8001778C 1320000D */ beqz $t9, .L800177C4 +/* 018390 80017790 02487824 */ and $t7, $s2, $t0 +/* 018394 80017794 001E1080 */ sll $v0, $fp, 2 +/* 018398 80017798 03A26821 */ addu $t5, $sp, $v0 +/* 01839C 8001779C C5A80100 */ lwc1 $f8, 0x100($t5) +/* 0183A0 800177A0 032B8021 */ addu $s0, $t9, $t3 +/* 0183A4 800177A4 03A26021 */ addu $t4, $sp, $v0 +/* 0183A8 800177A8 E608000C */ swc1 $f8, 0xc($s0) +/* 0183AC 800177AC C58400F0 */ lwc1 $f4, 0xf0($t4) +/* 0183B0 800177B0 03A27021 */ addu $t6, $sp, $v0 +/* 0183B4 800177B4 E6040010 */ swc1 $f4, 0x10($s0) +/* 0183B8 800177B8 C5CA00E0 */ lwc1 $f10, 0xe0($t6) +/* 0183BC 800177BC 00000000 */ nop +/* 0183C0 800177C0 E60A0014 */ swc1 $f10, 0x14($s0) +.L800177C4: +/* 0183C4 800177C4 11E00018 */ beqz $t7, .L80017828 +/* 0183C8 800177C8 001E1080 */ sll $v0, $fp, 2 +/* 0183CC 800177CC 03A25021 */ addu $t2, $sp, $v0 +/* 0183D0 800177D0 03A2C021 */ addu $t8, $sp, $v0 +/* 0183D4 800177D4 03A2C821 */ addu $t9, $sp, $v0 +/* 0183D8 800177D8 8FA30188 */ lw $v1, 0x188($sp) +/* 0183DC 800177DC 8F2700E0 */ lw $a3, 0xe0($t9) +/* 0183E0 800177E0 8F0600F0 */ lw $a2, 0xf0($t8) +/* 0183E4 800177E4 8D450100 */ lw $a1, 0x100($t2) +/* 0183E8 800177E8 262A0002 */ addiu $t2, $s1, 2 +/* 0183EC 800177EC 262C0001 */ addiu $t4, $s1, 1 +/* 0183F0 800177F0 000C7080 */ sll $t6, $t4, 2 +/* 0183F4 800177F4 000AC080 */ sll $t8, $t2, 2 +/* 0183F8 800177F8 00115880 */ sll $t3, $s1, 2 +/* 0183FC 800177FC 8FA400DC */ lw $a0, 0xdc($sp) +/* 018400 80017800 01636821 */ addu $t5, $t3, $v1 +/* 018404 80017804 0303C821 */ addu $t9, $t8, $v1 +/* 018408 80017808 01C37821 */ addu $t7, $t6, $v1 +/* 01840C 8001780C AFAF0014 */ sw $t7, 0x14($sp) +/* 018410 80017810 AFB90018 */ sw $t9, 0x18($sp) +/* 018414 80017814 AFAD0010 */ sw $t5, 0x10($sp) +/* 018418 80017818 0C01BD93 */ jal func_8006F64C +/* 01841C 8001781C AFA8016C */ sw $t0, 0x16c($sp) +/* 018420 80017820 8FA8016C */ lw $t0, 0x16c($sp) +/* 018424 80017824 00000000 */ nop +.L80017828: +/* 018428 80017828 8FAD017C */ lw $t5, 0x17c($sp) +/* 01842C 8001782C 27DE0001 */ addiu $fp, $fp, 1 +/* 018430 80017830 00085840 */ sll $t3, $t0, 1 +/* 018434 80017834 01604025 */ move $t0, $t3 +/* 018438 80017838 17CDFFD2 */ bne $fp, $t5, .L80017784 +/* 01843C 8001783C 26310003 */ addiu $s1, $s1, 3 +.L80017840: +/* 018440 80017840 8FAC0168 */ lw $t4, 0x168($sp) +/* 018444 80017844 8FAF0170 */ lw $t7, 0x170($sp) +/* 018448 80017848 8FB80088 */ lw $t8, 0x88($sp) +/* 01844C 8001784C 8FAB0160 */ lw $t3, 0x160($sp) +/* 018450 80017850 01927025 */ or $t6, $t4, $s2 +/* 018454 80017854 25EA0001 */ addiu $t2, $t7, 1 +/* 018458 80017858 27190004 */ addiu $t9, $t8, 4 +/* 01845C 8001785C AFAE0168 */ sw $t6, 0x168($sp) +/* 018460 80017860 AFB90088 */ sw $t9, 0x88($sp) +/* 018464 80017864 154BFF14 */ bne $t2, $t3, .L800174B8 +/* 018468 80017868 AFAA0170 */ sw $t2, 0x170($sp) +/* 01846C 8001786C 8FA60180 */ lw $a2, 0x180($sp) +/* 018470 80017870 01C03825 */ move $a3, $t6 +.L80017874: +/* 018474 80017874 30ED0001 */ andi $t5, $a3, 1 +/* 018478 80017878 11A00003 */ beqz $t5, .L80017888 +/* 01847C 8001787C ACC00000 */ sw $zero, ($a2) +/* 018480 80017880 240F0001 */ li $t7, 1 +/* 018484 80017884 ACCF0000 */ sw $t7, ($a2) +.L80017888: +/* 018488 80017888 30F80002 */ andi $t8, $a3, 2 +/* 01848C 8001788C 13000005 */ beqz $t8, .L800178A4 +/* 018490 80017890 30EB0004 */ andi $t3, $a3, 4 +/* 018494 80017894 8CD90000 */ lw $t9, ($a2) +/* 018498 80017898 00000000 */ nop +/* 01849C 8001789C 272A0001 */ addiu $t2, $t9, 1 +/* 0184A0 800178A0 ACCA0000 */ sw $t2, ($a2) +.L800178A4: +/* 0184A4 800178A4 11600005 */ beqz $t3, .L800178BC +/* 0184A8 800178A8 30EC0008 */ andi $t4, $a3, 8 +/* 0184AC 800178AC 8CCE0000 */ lw $t6, ($a2) +/* 0184B0 800178B0 00000000 */ nop +/* 0184B4 800178B4 25CD0001 */ addiu $t5, $t6, 1 +/* 0184B8 800178B8 ACCD0000 */ sw $t5, ($a2) +.L800178BC: +/* 0184BC 800178BC 11800005 */ beqz $t4, .L800178D4 +/* 0184C0 800178C0 00E01025 */ move $v0, $a3 +/* 0184C4 800178C4 8CCF0000 */ lw $t7, ($a2) +/* 0184C8 800178C8 00000000 */ nop +/* 0184CC 800178CC 25F80001 */ addiu $t8, $t7, 1 +/* 0184D0 800178D0 ACD80000 */ sw $t8, ($a2) +.L800178D4: +/* 0184D4 800178D4 8FBF0064 */ lw $ra, 0x64($sp) +/* 0184D8 800178D8 C7B50038 */ lwc1 $f21, 0x38($sp) +/* 0184DC 800178DC C7B4003C */ lwc1 $f20, 0x3c($sp) +/* 0184E0 800178E0 8FB00040 */ lw $s0, 0x40($sp) +/* 0184E4 800178E4 8FB10044 */ lw $s1, 0x44($sp) +/* 0184E8 800178E8 8FB20048 */ lw $s2, 0x48($sp) +/* 0184EC 800178EC 8FB3004C */ lw $s3, 0x4c($sp) +/* 0184F0 800178F0 8FB40050 */ lw $s4, 0x50($sp) +/* 0184F4 800178F4 8FB50054 */ lw $s5, 0x54($sp) +/* 0184F8 800178F8 8FB60058 */ lw $s6, 0x58($sp) +/* 0184FC 800178FC 8FB7005C */ lw $s7, 0x5c($sp) +/* 018500 80017900 8FBE0060 */ lw $fp, 0x60($sp) +/* 018504 80017904 03E00008 */ jr $ra +/* 018508 80017908 27BD0178 */ addiu $sp, $sp, 0x178 + diff --git a/asm/non_matchings/unknown_005740/func_8001790C.s b/asm/non_matchings/unknown_005740/func_8001790C.s new file mode 100644 index 00000000..df09a5f1 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001790C.s @@ -0,0 +1,33 @@ +glabel func_8001790C +/* 01850C 8001790C 3C068012 */ lui $a2, %hi(D_8011AFF4) # $a2, 0x8012 +/* 018510 80017910 8CC6AFF4 */ lw $a2, %lo(D_8011AFF4)($a2) +/* 018514 80017914 00001025 */ move $v0, $zero +/* 018518 80017918 00027180 */ sll $t6, $v0, 6 +.L8001791C: +/* 01851C 8001791C 01C61821 */ addu $v1, $t6, $a2 +/* 018520 80017920 8C6F0000 */ lw $t7, ($v1) +/* 018524 80017924 24420001 */ addiu $v0, $v0, 1 +/* 018528 80017928 11E0000C */ beqz $t7, .L8001795C +/* 01852C 8001792C 00024400 */ sll $t0, $v0, 0x10 +/* 018530 80017930 8C780004 */ lw $t8, 4($v1) +/* 018534 80017934 00000000 */ nop +/* 018538 80017938 14980008 */ bne $a0, $t8, .L8001795C +/* 01853C 8001793C 00000000 */ nop +/* 018540 80017940 8C790008 */ lw $t9, 8($v1) +/* 018544 80017944 00000000 */ nop +/* 018548 80017948 14B90005 */ bne $a1, $t9, .L80017960 +/* 01854C 8001794C 00081403 */ sra $v0, $t0, 0x10 +/* 018550 80017950 AC600000 */ sw $zero, ($v1) +/* 018554 80017954 03E00008 */ jr $ra +/* 018558 80017958 00601025 */ move $v0, $v1 + +.L8001795C: +/* 01855C 8001795C 00081403 */ sra $v0, $t0, 0x10 +.L80017960: +/* 018560 80017960 28410010 */ slti $at, $v0, 0x10 +/* 018564 80017964 1420FFED */ bnez $at, .L8001791C +/* 018568 80017968 00027180 */ sll $t6, $v0, 6 +/* 01856C 8001796C 00001025 */ move $v0, $zero +/* 018570 80017970 03E00008 */ jr $ra +/* 018574 80017974 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80017978.s b/asm/non_matchings/unknown_005740/func_80017978.s new file mode 100644 index 00000000..b77b3d60 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80017978.s @@ -0,0 +1,27 @@ +glabel func_80017978 +/* 018578 80017978 3C068012 */ lui $a2, %hi(D_8011AFF4) # $a2, 0x8012 +/* 01857C 8001797C 8CC6AFF4 */ lw $a2, %lo(D_8011AFF4)($a2) +/* 018580 80017980 00001025 */ move $v0, $zero +/* 018584 80017984 00027180 */ sll $t6, $v0, 6 +.L80017988: +/* 018588 80017988 01C61821 */ addu $v1, $t6, $a2 +/* 01858C 8001798C 8C6F0000 */ lw $t7, ($v1) +/* 018590 80017990 24420001 */ addiu $v0, $v0, 1 +/* 018594 80017994 15E00007 */ bnez $t7, .L800179B4 +/* 018598 80017998 0002CC00 */ sll $t9, $v0, 0x10 +/* 01859C 8001799C 24180002 */ li $t8, 2 +/* 0185A0 800179A0 AC640004 */ sw $a0, 4($v1) +/* 0185A4 800179A4 AC650008 */ sw $a1, 8($v1) +/* 0185A8 800179A8 AC780000 */ sw $t8, ($v1) +/* 0185AC 800179AC 03E00008 */ jr $ra +/* 0185B0 800179B0 00601025 */ move $v0, $v1 + +.L800179B4: +/* 0185B4 800179B4 00191403 */ sra $v0, $t9, 0x10 +/* 0185B8 800179B8 28410010 */ slti $at, $v0, 0x10 +/* 0185BC 800179BC 1420FFF2 */ bnez $at, .L80017988 +/* 0185C0 800179C0 00027180 */ sll $t6, $v0, 6 +/* 0185C4 800179C4 00001025 */ move $v0, $zero +/* 0185C8 800179C8 03E00008 */ jr $ra +/* 0185CC 800179CC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800179D0.s b/asm/non_matchings/unknown_005740/func_800179D0.s new file mode 100644 index 00000000..9e3c75ad --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800179D0.s @@ -0,0 +1,22 @@ +glabel func_800179D0 +/* 0185D0 800179D0 3C058012 */ lui $a1, %hi(D_8011AFF4) # $a1, 0x8012 +/* 0185D4 800179D4 00001025 */ move $v0, $zero +/* 0185D8 800179D8 24A5AFF4 */ addiu $a1, %lo(D_8011AFF4) # addiu $a1, $a1, -0x500c +.L800179DC: +/* 0185DC 800179DC 8CAF0000 */ lw $t7, ($a1) +/* 0185E0 800179E0 00027180 */ sll $t6, $v0, 6 +/* 0185E4 800179E4 01CF1821 */ addu $v1, $t6, $t7 +/* 0185E8 800179E8 8C640000 */ lw $a0, ($v1) +/* 0185EC 800179EC 24420001 */ addiu $v0, $v0, 1 +/* 0185F0 800179F0 10800003 */ beqz $a0, .L80017A00 +/* 0185F4 800179F4 0002CC00 */ sll $t9, $v0, 0x10 +/* 0185F8 800179F8 2498FFFF */ addiu $t8, $a0, -1 +/* 0185FC 800179FC AC780000 */ sw $t8, ($v1) +.L80017A00: +/* 018600 80017A00 00191403 */ sra $v0, $t9, 0x10 +/* 018604 80017A04 28410010 */ slti $at, $v0, 0x10 +/* 018608 80017A08 1420FFF4 */ bnez $at, .L800179DC +/* 01860C 80017A0C 00000000 */ nop +/* 018610 80017A10 03E00008 */ jr $ra +/* 018614 80017A14 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80017A18.s b/asm/non_matchings/unknown_005740/func_80017A18.s new file mode 100644 index 00000000..fe772f57 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80017A18.s @@ -0,0 +1,296 @@ +glabel func_80017A18 +/* 018618 80017A18 27BDFEE0 */ addiu $sp, $sp, -0x120 +/* 01861C 80017A1C AFBF005C */ sw $ra, 0x5c($sp) +/* 018620 80017A20 AFBE0058 */ sw $fp, 0x58($sp) +/* 018624 80017A24 AFB70054 */ sw $s7, 0x54($sp) +/* 018628 80017A28 AFB60050 */ sw $s6, 0x50($sp) +/* 01862C 80017A2C AFB5004C */ sw $s5, 0x4c($sp) +/* 018630 80017A30 AFB40048 */ sw $s4, 0x48($sp) +/* 018634 80017A34 AFB30044 */ sw $s3, 0x44($sp) +/* 018638 80017A38 AFB20040 */ sw $s2, 0x40($sp) +/* 01863C 80017A3C AFB1003C */ sw $s1, 0x3c($sp) +/* 018640 80017A40 AFB00038 */ sw $s0, 0x38($sp) +/* 018644 80017A44 E7BF0030 */ swc1 $f31, 0x30($sp) +/* 018648 80017A48 E7BE0034 */ swc1 $f30, 0x34($sp) +/* 01864C 80017A4C E7BD0028 */ swc1 $f29, 0x28($sp) +/* 018650 80017A50 E7BC002C */ swc1 $f28, 0x2c($sp) +/* 018654 80017A54 E7BB0020 */ swc1 $f27, 0x20($sp) +/* 018658 80017A58 E7BA0024 */ swc1 $f26, 0x24($sp) +/* 01865C 80017A5C E7B90018 */ swc1 $f25, 0x18($sp) +/* 018660 80017A60 E7B8001C */ swc1 $f24, 0x1c($sp) +/* 018664 80017A64 E7B70010 */ swc1 $f23, 0x10($sp) +/* 018668 80017A68 E7B60014 */ swc1 $f22, 0x14($sp) +/* 01866C 80017A6C E7B50008 */ swc1 $f21, 8($sp) +/* 018670 80017A70 E7B4000C */ swc1 $f20, 0xc($sp) +/* 018674 80017A74 AFA50124 */ sw $a1, 0x124($sp) +/* 018678 80017A78 AFA60128 */ sw $a2, 0x128($sp) +/* 01867C 80017A7C AFA000F8 */ sw $zero, 0xf8($sp) +/* 018680 80017A80 8C880010 */ lw $t0, 0x10($a0) +/* 018684 80017A84 00808025 */ move $s0, $a0 +/* 018688 80017A88 24160001 */ li $s6, 1 +/* 01868C 80017A8C 18A000E0 */ blez $a1, .L80017E10 +/* 018690 80017A90 00008825 */ move $s1, $zero +/* 018694 80017A94 8FAF0144 */ lw $t7, 0x144($sp) +/* 018698 80017A98 3C014080 */ li $at, 0x40800000 # 4.000000 +/* 01869C 80017A9C 00E0B825 */ move $s7, $a3 +/* 0186A0 80017AA0 4481C000 */ mtc1 $at, $f24 +/* 0186A4 80017AA4 8FB20138 */ lw $s2, 0x138($sp) +/* 0186A8 80017AA8 8FB3013C */ lw $s3, 0x13c($sp) +/* 0186AC 80017AAC 8FB40140 */ lw $s4, 0x140($sp) +/* 0186B0 80017AB0 8FBE0130 */ lw $fp, 0x130($sp) +/* 0186B4 80017AB4 8FBF0134 */ lw $ra, 0x134($sp) +/* 0186B8 80017AB8 8FB50148 */ lw $s5, 0x148($sp) +/* 0186BC 80017ABC 24070001 */ li $a3, 1 +/* 0186C0 80017AC0 AFAF0080 */ sw $t7, 0x80($sp) +.L80017AC4: +/* 0186C4 80017AC4 C6440000 */ lwc1 $f4, ($s2) +/* 0186C8 80017AC8 8FAE0080 */ lw $t6, 0x80($sp) +/* 0186CC 80017ACC E7A400BC */ swc1 $f4, 0xbc($sp) +/* 0186D0 80017AD0 C6880000 */ lwc1 $f8, ($s4) +/* 0186D4 80017AD4 C67E0000 */ lwc1 $f30, ($s3) +/* 0186D8 80017AD8 E7A800B4 */ swc1 $f8, 0xb4($sp) +/* 0186DC 80017ADC C7AA014C */ lwc1 $f10, 0x14c($sp) +/* 0186E0 80017AE0 C5C60000 */ lwc1 $f6, ($t6) +/* 0186E4 80017AE4 C6F20000 */ lwc1 $f18, ($s7) +/* 0186E8 80017AE8 460A3102 */ mul.s $f4, $f6, $f10 +/* 0186EC 80017AEC C7D40000 */ lwc1 $f20, ($fp) +/* 0186F0 80017AF0 C7F60000 */ lwc1 $f22, ($ra) +/* 0186F4 80017AF4 26F70004 */ addiu $s7, $s7, 4 +/* 0186F8 80017AF8 E7A400C0 */ swc1 $f4, 0xc0($sp) +/* 0186FC 80017AFC 860B0032 */ lh $t3, 0x32($s0) +/* 018700 80017B00 00006025 */ move $t4, $zero +/* 018704 80017B04 00006825 */ move $t5, $zero +.L80017B08: +/* 018708 80017B08 196000A7 */ blez $t3, .L80017DA8 +/* 01870C 80017B0C 00005025 */ move $t2, $zero +/* 018710 80017B10 E7B200A4 */ swc1 $f18, 0xa4($sp) +/* 018714 80017B14 E7B400A0 */ swc1 $f20, 0xa0($sp) +/* 018718 80017B18 E7B6009C */ swc1 $f22, 0x9c($sp) +.L80017B1C: +/* 01871C 80017B1C 8E18000C */ lw $t8, 0xc($s0) +/* 018720 80017B20 C7BC00A4 */ lwc1 $f28, 0xa4($sp) +/* 018724 80017B24 C7A600A0 */ lwc1 $f6, 0xa0($sp) +/* 018728 80017B28 C7B4009C */ lwc1 $f20, 0x9c($sp) +/* 01872C 80017B2C 000AC8C0 */ sll $t9, $t2, 3 +/* 018730 80017B30 03194821 */ addu $t1, $t8, $t9 +/* 018734 80017B34 952F0000 */ lhu $t7, ($t1) +/* 018738 80017B38 C7B200C0 */ lwc1 $f18, 0xc0($sp) +/* 01873C 80017B3C 000F7100 */ sll $t6, $t7, 4 +/* 018740 80017B40 010E1021 */ addu $v0, $t0, $t6 +/* 018744 80017B44 C45A0004 */ lwc1 $f26, 4($v0) +/* 018748 80017B48 C4500000 */ lwc1 $f16, ($v0) +/* 01874C 80017B4C 4606D382 */ mul.s $f14, $f26, $f6 +/* 018750 80017B50 C44C0008 */ lwc1 $f12, 8($v0) +/* 018754 80017B54 C44A000C */ lwc1 $f10, 0xc($v0) +/* 018758 80017B58 E7B000E4 */ swc1 $f16, 0xe4($sp) +/* 01875C 80017B5C 461C8102 */ mul.s $f4, $f16, $f28 +/* 018760 80017B60 C7B000E4 */ lwc1 $f16, 0xe4($sp) +/* 018764 80017B64 E7AC00DC */ swc1 $f12, 0xdc($sp) +/* 018768 80017B68 C7A800DC */ lwc1 $f8, 0xdc($sp) +/* 01876C 80017B6C 46146302 */ mul.s $f12, $f12, $f20 +/* 018770 80017B70 460E2100 */ add.s $f4, $f4, $f14 +/* 018774 80017B74 E7A60064 */ swc1 $f6, 0x64($sp) +/* 018778 80017B78 C7A600B4 */ lwc1 $f6, 0xb4($sp) +/* 01877C 80017B7C 461ED382 */ mul.s $f14, $f26, $f30 +/* 018780 80017B80 460C2100 */ add.s $f4, $f4, $f12 +/* 018784 80017B84 E7AA00D8 */ swc1 $f10, 0xd8($sp) +/* 018788 80017B88 C7AC00D8 */ lwc1 $f12, 0xd8($sp) +/* 01878C 80017B8C 46064202 */ mul.s $f8, $f8, $f6 +/* 018790 80017B90 460A2280 */ add.s $f10, $f4, $f10 +/* 018794 80017B94 C7A400BC */ lwc1 $f4, 0xbc($sp) +/* 018798 80017B98 3C01800E */ lui $at, %hi(D_800E5608) # $at, 0x800e +/* 01879C 80017B9C 46048402 */ mul.s $f16, $f16, $f4 +/* 0187A0 80017BA0 46125001 */ sub.s $f0, $f10, $f18 +/* 0187A4 80017BA4 C42A560C */ lwc1 $f10, %lo(D_800E560C)($at) +/* 0187A8 80017BA8 E7BC0060 */ swc1 $f28, 0x60($sp) +/* 0187AC 80017BAC 460E8380 */ add.s $f14, $f16, $f14 +/* 0187B0 80017BB0 E7B40068 */ swc1 $f20, 0x68($sp) +/* 0187B4 80017BB4 46087380 */ add.s $f14, $f14, $f8 +/* 0187B8 80017BB8 E7B00074 */ swc1 $f16, 0x74($sp) +/* 0187BC 80017BBC 460C7300 */ add.s $f12, $f14, $f12 +/* 0187C0 80017BC0 C42B5608 */ lwc1 $f11, %lo(D_800E5608)($at) +/* 0187C4 80017BC4 460003A1 */ cvt.d.s $f14, $f0 +/* 0187C8 80017BC8 462E503E */ c.le.d $f10, $f14 +/* 0187CC 80017BCC 46126581 */ sub.s $f22, $f12, $f18 +/* 0187D0 80017BD0 4500006D */ bc1f .L80017D88 +/* 0187D4 80017BD4 E7A80070 */ swc1 $f8, 0x70($sp) +/* 0187D8 80017BD8 3C01800E */ lui $at, %hi(D_800E5614) # $at, 0x800e +/* 0187DC 80017BDC C4295610 */ lwc1 $f9, %lo(D_800E5610)($at) +/* 0187E0 80017BE0 C4285614 */ lwc1 $f8, %lo(D_800E5614)($at) +/* 0187E4 80017BE4 4600B2A1 */ cvt.d.s $f10, $f22 +/* 0187E8 80017BE8 4628503C */ c.lt.d $f10, $f8 +/* 0187EC 80017BEC C7AA0060 */ lwc1 $f10, 0x60($sp) +/* 0187F0 80017BF0 45000065 */ bc1f .L80017D88 +/* 0187F4 80017BF4 24060001 */ li $a2, 1 +/* 0187F8 80017BF8 460A2301 */ sub.s $f12, $f4, $f10 +/* 0187FC 80017BFC C7A40068 */ lwc1 $f4, 0x68($sp) +/* 018800 80017C00 C7A80064 */ lwc1 $f8, 0x64($sp) +/* 018804 80017C04 46160032 */ c.eq.s $f0, $f22 +/* 018808 80017C08 00001025 */ move $v0, $zero +/* 01880C 80017C0C 46043701 */ sub.s $f28, $f6, $f4 +/* 018810 80017C10 45010004 */ bc1t .L80017C24 +/* 018814 80017C14 4608F381 */ sub.s $f14, $f30, $f8 +/* 018818 80017C18 46160281 */ sub.s $f10, $f0, $f22 +/* 01881C 80017C1C 10000003 */ b .L80017C2C +/* 018820 80017C20 460A0083 */ div.s $f2, $f0, $f10 +.L80017C24: +/* 018824 80017C24 44801000 */ mtc1 $zero, $f2 +/* 018828 80017C28 00000000 */ nop +.L80017C2C: +/* 01882C 80017C2C 46026202 */ mul.s $f8, $f12, $f2 +/* 018830 80017C30 C7A600A4 */ lwc1 $f6, 0xa4($sp) +/* 018834 80017C34 C7AA00A0 */ lwc1 $f10, 0xa0($sp) +/* 018838 80017C38 00021840 */ sll $v1, $v0, 1 +/* 01883C 80017C3C 46027102 */ mul.s $f4, $f14, $f2 +/* 018840 80017C40 46064400 */ add.s $f16, $f8, $f6 +/* 018844 80017C44 C7A6009C */ lwc1 $f6, 0x9c($sp) +/* 018848 80017C48 01232021 */ addu $a0, $t1, $v1 +/* 01884C 80017C4C 4602E202 */ mul.s $f8, $f28, $f2 +/* 018850 80017C50 460A2480 */ add.s $f18, $f4, $f10 +/* 018854 80017C54 46064500 */ add.s $f20, $f8, $f6 +.L80017C58: +/* 018858 80017C58 94980002 */ lhu $t8, 2($a0) +/* 01885C 80017C5C 24630002 */ addiu $v1, $v1, 2 +/* 018860 80017C60 0018C900 */ sll $t9, $t8, 4 +/* 018864 80017C64 01191021 */ addu $v0, $t0, $t9 +/* 018868 80017C68 C4400000 */ lwc1 $f0, ($v0) +/* 01886C 80017C6C C4420004 */ lwc1 $f2, 4($v0) +/* 018870 80017C70 46100102 */ mul.s $f4, $f0, $f16 +/* 018874 80017C74 C44C0008 */ lwc1 $f12, 8($v0) +/* 018878 80017C78 C44E000C */ lwc1 $f14, 0xc($v0) +/* 01887C 80017C7C 28610006 */ slti $at, $v1, 6 +/* 018880 80017C80 46121282 */ mul.s $f10, $f2, $f18 +/* 018884 80017C84 00000000 */ nop +/* 018888 80017C88 46146182 */ mul.s $f6, $f12, $f20 +/* 01888C 80017C8C 460A2200 */ add.s $f8, $f4, $f10 +/* 018890 80017C90 46064100 */ add.s $f4, $f8, $f6 +/* 018894 80017C94 460E2280 */ add.s $f10, $f4, $f14 +/* 018898 80017C98 460AC03C */ c.lt.s $f24, $f10 +/* 01889C 80017C9C 00000000 */ nop +/* 0188A0 80017CA0 45000002 */ bc1f .L80017CAC +/* 0188A4 80017CA4 00000000 */ nop +/* 0188A8 80017CA8 00003025 */ move $a2, $zero +.L80017CAC: +/* 0188AC 80017CAC 10200003 */ beqz $at, .L80017CBC +/* 0188B0 80017CB0 24840002 */ addiu $a0, $a0, 2 +/* 0188B4 80017CB4 10C7FFE8 */ beq $a2, $a3, .L80017C58 +/* 0188B8 80017CB8 00000000 */ nop +.L80017CBC: +/* 0188BC 80017CBC 10C00032 */ beqz $a2, .L80017D88 +/* 0188C0 80017CC0 3C01800E */ lui $at, %hi(D_800E561C) # $at, 0x800e +/* 0188C4 80017CC4 C4295618 */ lwc1 $f9, %lo(D_800E5618)($at) +/* 0188C8 80017CC8 C428561C */ lwc1 $f8, %lo(D_800E561C)($at) +/* 0188CC 80017CCC 4600D1A1 */ cvt.d.s $f6, $f26 +/* 0188D0 80017CD0 4626403C */ c.lt.d $f8, $f6 +/* 0188D4 80017CD4 240D0001 */ li $t5, 1 +/* 0188D8 80017CD8 4500000A */ bc1f .L80017D04 +/* 0188DC 80017CDC 02B11021 */ addu $v0, $s5, $s1 +/* 0188E0 80017CE0 C7A40074 */ lwc1 $f4, 0x74($sp) +/* 0188E4 80017CE4 C7AA0070 */ lwc1 $f10, 0x70($sp) +/* 0188E8 80017CE8 C7A600D8 */ lwc1 $f6, 0xd8($sp) +/* 0188EC 80017CEC 460A2200 */ add.s $f8, $f4, $f10 +/* 0188F0 80017CF0 C7AA00C0 */ lwc1 $f10, 0xc0($sp) +/* 0188F4 80017CF4 46064100 */ add.s $f4, $f8, $f6 +/* 0188F8 80017CF8 46045201 */ sub.s $f8, $f10, $f4 +/* 0188FC 80017CFC 1000000D */ b .L80017D34 +/* 018900 80017D00 461A4783 */ div.s $f30, $f8, $f26 +.L80017D04: +/* 018904 80017D04 C7AA00E4 */ lwc1 $f10, 0xe4($sp) +/* 018908 80017D08 C7A600BC */ lwc1 $f6, 0xbc($sp) +/* 01890C 80017D0C 460AB102 */ mul.s $f4, $f22, $f10 +/* 018910 80017D10 46043201 */ sub.s $f8, $f6, $f4 +/* 018914 80017D14 C7A400DC */ lwc1 $f4, 0xdc($sp) +/* 018918 80017D18 461AB282 */ mul.s $f10, $f22, $f26 +/* 01891C 80017D1C E7A800BC */ swc1 $f8, 0xbc($sp) +/* 018920 80017D20 C7A600B4 */ lwc1 $f6, 0xb4($sp) +/* 018924 80017D24 4604B202 */ mul.s $f8, $f22, $f4 +/* 018928 80017D28 460AF781 */ sub.s $f30, $f30, $f10 +/* 01892C 80017D2C 46083281 */ sub.s $f10, $f6, $f8 +/* 018930 80017D30 E7AA00B4 */ swc1 $f10, 0xb4($sp) +.L80017D34: +/* 018934 80017D34 258C0001 */ addiu $t4, $t4, 1 +/* 018938 80017D38 2981000B */ slti $at, $t4, 0xb +/* 01893C 80017D3C 14200007 */ bnez $at, .L80017D5C +/* 018940 80017D40 00000000 */ nop +/* 018944 80017D44 C7A400A4 */ lwc1 $f4, 0xa4($sp) +/* 018948 80017D48 C7A6009C */ lwc1 $f6, 0x9c($sp) +/* 01894C 80017D4C C7BE00A0 */ lwc1 $f30, 0xa0($sp) +/* 018950 80017D50 00006825 */ move $t5, $zero +/* 018954 80017D54 E7A400BC */ swc1 $f4, 0xbc($sp) +/* 018958 80017D58 E7A600B4 */ swc1 $f6, 0xb4($sp) +.L80017D5C: +/* 01895C 80017D5C A0400000 */ sb $zero, ($v0) +/* 018960 80017D60 C7A800BC */ lwc1 $f8, 0xbc($sp) +/* 018964 80017D64 00000000 */ nop +/* 018968 80017D68 E6480000 */ swc1 $f8, ($s2) +/* 01896C 80017D6C E67E0000 */ swc1 $f30, ($s3) +/* 018970 80017D70 C7AA00B4 */ lwc1 $f10, 0xb4($sp) +/* 018974 80017D74 00000000 */ nop +/* 018978 80017D78 E68A0000 */ swc1 $f10, ($s4) +/* 01897C 80017D7C 860B0032 */ lh $t3, 0x32($s0) +/* 018980 80017D80 00000000 */ nop +/* 018984 80017D84 01605025 */ move $t2, $t3 +.L80017D88: +/* 018988 80017D88 254A0001 */ addiu $t2, $t2, 1 +/* 01898C 80017D8C 014B082A */ slt $at, $t2, $t3 +/* 018990 80017D90 1420FF62 */ bnez $at, .L80017B1C +/* 018994 80017D94 00000000 */ nop +/* 018998 80017D98 C7B6009C */ lwc1 $f22, 0x9c($sp) +/* 01899C 80017D9C C7B400A0 */ lwc1 $f20, 0xa0($sp) +/* 0189A0 80017DA0 C7B200A4 */ lwc1 $f18, 0xa4($sp) +/* 0189A4 80017DA4 00000000 */ nop +.L80017DA8: +/* 0189A8 80017DA8 15A0FF57 */ bnez $t5, .L80017B08 +/* 0189AC 80017DAC 00006825 */ move $t5, $zero +/* 0189B0 80017DB0 1980000B */ blez $t4, .L80017DE0 +/* 0189B4 80017DB4 26310001 */ addiu $s1, $s1, 1 +/* 0189B8 80017DB8 8FAF0128 */ lw $t7, 0x128($sp) +/* 0189BC 80017DBC 00000000 */ nop +/* 0189C0 80017DC0 8DEE0000 */ lw $t6, ($t7) +/* 0189C4 80017DC4 00000000 */ nop +/* 0189C8 80017DC8 25D80001 */ addiu $t8, $t6, 1 +/* 0189CC 80017DCC ADF80000 */ sw $t8, ($t7) +/* 0189D0 80017DD0 8FB900F8 */ lw $t9, 0xf8($sp) +/* 0189D4 80017DD4 00000000 */ nop +/* 0189D8 80017DD8 03367025 */ or $t6, $t9, $s6 +/* 0189DC 80017DDC AFAE00F8 */ sw $t6, 0xf8($sp) +.L80017DE0: +/* 0189E0 80017DE0 8FAF0080 */ lw $t7, 0x80($sp) +/* 0189E4 80017DE4 8FAE0124 */ lw $t6, 0x124($sp) +/* 0189E8 80017DE8 0016C040 */ sll $t8, $s6, 1 +/* 0189EC 80017DEC 25F90004 */ addiu $t9, $t7, 4 +/* 0189F0 80017DF0 AFB90080 */ sw $t9, 0x80($sp) +/* 0189F4 80017DF4 26520004 */ addiu $s2, $s2, 4 +/* 0189F8 80017DF8 26730004 */ addiu $s3, $s3, 4 +/* 0189FC 80017DFC 26940004 */ addiu $s4, $s4, 4 +/* 018A00 80017E00 27DE0004 */ addiu $fp, $fp, 4 +/* 018A04 80017E04 27FF0004 */ addiu $ra, $ra, 4 +/* 018A08 80017E08 162EFF2E */ bne $s1, $t6, .L80017AC4 +/* 018A0C 80017E0C 0300B025 */ move $s6, $t8 +.L80017E10: +/* 018A10 80017E10 8FBF005C */ lw $ra, 0x5c($sp) +/* 018A14 80017E14 8FA200F8 */ lw $v0, 0xf8($sp) +/* 018A18 80017E18 C7B50008 */ lwc1 $f21, 8($sp) +/* 018A1C 80017E1C C7B4000C */ lwc1 $f20, 0xc($sp) +/* 018A20 80017E20 C7B70010 */ lwc1 $f23, 0x10($sp) +/* 018A24 80017E24 C7B60014 */ lwc1 $f22, 0x14($sp) +/* 018A28 80017E28 C7B90018 */ lwc1 $f25, 0x18($sp) +/* 018A2C 80017E2C C7B8001C */ lwc1 $f24, 0x1c($sp) +/* 018A30 80017E30 C7BB0020 */ lwc1 $f27, 0x20($sp) +/* 018A34 80017E34 C7BA0024 */ lwc1 $f26, 0x24($sp) +/* 018A38 80017E38 C7BD0028 */ lwc1 $f29, 0x28($sp) +/* 018A3C 80017E3C C7BC002C */ lwc1 $f28, 0x2c($sp) +/* 018A40 80017E40 C7BF0030 */ lwc1 $f31, 0x30($sp) +/* 018A44 80017E44 C7BE0034 */ lwc1 $f30, 0x34($sp) +/* 018A48 80017E48 8FB00038 */ lw $s0, 0x38($sp) +/* 018A4C 80017E4C 8FB1003C */ lw $s1, 0x3c($sp) +/* 018A50 80017E50 8FB20040 */ lw $s2, 0x40($sp) +/* 018A54 80017E54 8FB30044 */ lw $s3, 0x44($sp) +/* 018A58 80017E58 8FB40048 */ lw $s4, 0x48($sp) +/* 018A5C 80017E5C 8FB5004C */ lw $s5, 0x4c($sp) +/* 018A60 80017E60 8FB60050 */ lw $s6, 0x50($sp) +/* 018A64 80017E64 8FB70054 */ lw $s7, 0x54($sp) +/* 018A68 80017E68 8FBE0058 */ lw $fp, 0x58($sp) +/* 018A6C 80017E6C 03E00008 */ jr $ra +/* 018A70 80017E70 27BD0120 */ addiu $sp, $sp, 0x120 + diff --git a/asm/non_matchings/unknown_005740/func_80017E74.s b/asm/non_matchings/unknown_005740/func_80017E74.s new file mode 100644 index 00000000..09cbf945 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80017E74.s @@ -0,0 +1,12 @@ +glabel func_80017E74 +/* 018A74 80017E74 3C018012 */ lui $at, %hi(D_8011AED8) # $at, 0x8012 +/* 018A78 80017E78 A424AED8 */ sh $a0, %lo(D_8011AED8)($at) +/* 018A7C 80017E7C 3C018012 */ lui $at, 0x8012 +/* 018A80 80017E80 03E00008 */ jr $ra +/* 018A84 80017E84 AC20ADAC */ sw $zero, -0x5254($at) + +/* 018A88 80017E88 3C028012 */ lui $v0, %hi(D_8011AED8) # $v0, 0x8012 +/* 018A8C 80017E8C 8442AED8 */ lh $v0, %lo(D_8011AED8)($v0) +/* 018A90 80017E90 03E00008 */ jr $ra +/* 018A94 80017E94 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80017E98.s b/asm/non_matchings/unknown_005740/func_80017E98.s new file mode 100644 index 00000000..656d1ae5 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80017E98.s @@ -0,0 +1,492 @@ +glabel func_80017E98 +/* 018A98 80017E98 27BDFEE8 */ addiu $sp, $sp, -0x118 +/* 018A9C 80017E9C 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 +/* 018AA0 80017EA0 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) +/* 018AA4 80017EA4 AFB30044 */ sw $s3, 0x44($sp) +/* 018AA8 80017EA8 3C018012 */ lui $at, %hi(D_8011AED0) # $at, 0x8012 +/* 018AAC 80017EAC AFBF005C */ sw $ra, 0x5c($sp) +/* 018AB0 80017EB0 AFBE0058 */ sw $fp, 0x58($sp) +/* 018AB4 80017EB4 AFB70054 */ sw $s7, 0x54($sp) +/* 018AB8 80017EB8 AFB60050 */ sw $s6, 0x50($sp) +/* 018ABC 80017EBC AFB5004C */ sw $s5, 0x4c($sp) +/* 018AC0 80017EC0 AFB40048 */ sw $s4, 0x48($sp) +/* 018AC4 80017EC4 AFB20040 */ sw $s2, 0x40($sp) +/* 018AC8 80017EC8 AFB1003C */ sw $s1, 0x3c($sp) +/* 018ACC 80017ECC AFB00038 */ sw $s0, 0x38($sp) +/* 018AD0 80017ED0 E7B70030 */ swc1 $f23, 0x30($sp) +/* 018AD4 80017ED4 E7B60034 */ swc1 $f22, 0x34($sp) +/* 018AD8 80017ED8 E7B50028 */ swc1 $f21, 0x28($sp) +/* 018ADC 80017EDC E7B4002C */ swc1 $f20, 0x2c($sp) +/* 018AE0 80017EE0 00005025 */ move $t2, $zero +/* 018AE4 80017EE4 AC20AED0 */ sw $zero, %lo(D_8011AED0)($at) +/* 018AE8 80017EE8 18600047 */ blez $v1, .L80018008 +/* 018AEC 80017EEC 00009825 */ move $s3, $zero +/* 018AF0 80017EF0 3C148012 */ lui $s4, %hi(D_8011AECC) # $s4, 0x8012 +/* 018AF4 80017EF4 3C098012 */ lui $t1, %hi(D_8011AED8) # $t1, 0x8012 +/* 018AF8 80017EF8 3C068012 */ lui $a2, %hi(D_8011AE58) # $a2, 0x8012 +/* 018AFC 80017EFC 24C6AE58 */ addiu $a2, %lo(D_8011AE58) # addiu $a2, $a2, -0x51a8 +/* 018B00 80017F00 2529AED8 */ addiu $t1, %lo(D_8011AED8) # addiu $t1, $t1, -0x5128 +/* 018B04 80017F04 2694AECC */ addiu $s4, %lo(D_8011AECC) # addiu $s4, $s4, -0x5134 +/* 018B08 80017F08 00001025 */ move $v0, $zero +/* 018B0C 80017F0C 2408000D */ li $t0, 13 +/* 018B10 80017F10 2405003C */ li $a1, 60 +.L80017F14: +/* 018B14 80017F14 8CCE0000 */ lw $t6, ($a2) +/* 018B18 80017F18 26730001 */ addiu $s3, $s3, 1 +/* 018B1C 80017F1C 01C27821 */ addu $t7, $t6, $v0 +/* 018B20 80017F20 8DF00000 */ lw $s0, ($t7) +/* 018B24 80017F24 00000000 */ nop +/* 018B28 80017F28 86180006 */ lh $t8, 6($s0) +/* 018B2C 80017F2C 00000000 */ nop +/* 018B30 80017F30 33198000 */ andi $t9, $t8, 0x8000 +/* 018B34 80017F34 17200032 */ bnez $t9, .L80018000 +/* 018B38 80017F38 0263082A */ slt $at, $s3, $v1 +/* 018B3C 80017F3C 860B0048 */ lh $t3, 0x48($s0) +/* 018B40 80017F40 3C078012 */ lui $a3, %hi(D_8011AED0) # $a3, 0x8012 +/* 018B44 80017F44 150B002E */ bne $t0, $t3, .L80018000 +/* 018B48 80017F48 0263082A */ slt $at, $s3, $v1 +/* 018B4C 80017F4C 8CE7AED0 */ lw $a3, %lo(D_8011AED0)($a3) +/* 018B50 80017F50 00000000 */ nop +/* 018B54 80017F54 28E1003C */ slti $at, $a3, 0x3c +/* 018B58 80017F58 10200029 */ beqz $at, .L80018000 +/* 018B5C 80017F5C 0263082A */ slt $at, $s3, $v1 +/* 018B60 80017F60 8E17003C */ lw $s7, 0x3c($s0) +/* 018B64 80017F64 852C0000 */ lh $t4, ($t1) +/* 018B68 80017F68 82ED001A */ lb $t5, 0x1a($s7) +/* 018B6C 80017F6C 00000000 */ nop +/* 018B70 80017F70 158D0023 */ bne $t4, $t5, .L80018000 +/* 018B74 80017F74 0263082A */ slt $at, $s3, $v1 +/* 018B78 80017F78 00E50019 */ multu $a3, $a1 +/* 018B7C 80017F7C 8E8E0000 */ lw $t6, ($s4) +/* 018B80 80017F80 3C078012 */ lui $a3, %hi(D_8011AED0) # $a3, 0x8012 +/* 018B84 80017F84 24E7AED0 */ addiu $a3, %lo(D_8011AED0) # addiu $a3, $a3, -0x5130 +/* 018B88 80017F88 00007812 */ mflo $t7 +/* 018B8C 80017F8C 01CFC021 */ addu $t8, $t6, $t7 +/* 018B90 80017F90 AF100028 */ sw $s0, 0x28($t8) +/* 018B94 80017F94 92F90017 */ lbu $t9, 0x17($s7) +/* 018B98 80017F98 92E40009 */ lbu $a0, 9($s7) +/* 018B9C 80017F9C 13200003 */ beqz $t9, .L80017FAC +/* 018BA0 80017FA0 00000000 */ nop +/* 018BA4 80017FA4 248400FF */ addiu $a0, $a0, 0xff +/* 018BA8 80017FA8 254A0001 */ addiu $t2, $t2, 1 +.L80017FAC: +/* 018BAC 80017FAC 8CEC0000 */ lw $t4, ($a3) +/* 018BB0 80017FB0 8E8B0000 */ lw $t3, ($s4) +/* 018BB4 80017FB4 01850019 */ multu $t4, $a1 +/* 018BB8 80017FB8 240FFFFF */ li $t7, -1 +/* 018BBC 80017FBC 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 +/* 018BC0 80017FC0 00006812 */ mflo $t5 +/* 018BC4 80017FC4 016D7021 */ addu $t6, $t3, $t5 +/* 018BC8 80017FC8 A5C4002C */ sh $a0, 0x2c($t6) +/* 018BCC 80017FCC 8CF90000 */ lw $t9, ($a3) +/* 018BD0 80017FD0 8E980000 */ lw $t8, ($s4) +/* 018BD4 80017FD4 03250019 */ multu $t9, $a1 +/* 018BD8 80017FD8 00006012 */ mflo $t4 +/* 018BDC 80017FDC 030C5821 */ addu $t3, $t8, $t4 +/* 018BE0 80017FE0 A16F003A */ sb $t7, 0x3a($t3) +/* 018BE4 80017FE4 8CED0000 */ lw $t5, ($a3) +/* 018BE8 80017FE8 00000000 */ nop +/* 018BEC 80017FEC 25AE0001 */ addiu $t6, $t5, 1 +/* 018BF0 80017FF0 ACEE0000 */ sw $t6, ($a3) +/* 018BF4 80017FF4 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) +/* 018BF8 80017FF8 00000000 */ nop +/* 018BFC 80017FFC 0263082A */ slt $at, $s3, $v1 +.L80018000: +/* 018C00 80018000 1420FFC4 */ bnez $at, .L80017F14 +/* 018C04 80018004 24420004 */ addiu $v0, $v0, 4 +.L80018008: +/* 018C08 80018008 3C078012 */ lui $a3, %hi(D_8011AED0) # $a3, 0x8012 +/* 018C0C 8001800C 8CE7AED0 */ lw $a3, %lo(D_8011AED0)($a3) +/* 018C10 80018010 3C148012 */ lui $s4, %hi(D_8011AECC) # $s4, 0x8012 +/* 018C14 80018014 8FB20104 */ lw $s2, 0x104($sp) +/* 018C18 80018018 2694AECC */ addiu $s4, %lo(D_8011AECC) # addiu $s4, $s4, -0x5134 +/* 018C1C 8001801C 00004825 */ move $t1, $zero +/* 018C20 80018020 24E6FFFF */ addiu $a2, $a3, -1 +/* 018C24 80018024 24080001 */ li $t0, 1 +.L80018028: +/* 018C28 80018028 18C00023 */ blez $a2, .L800180B8 +/* 018C2C 8001802C 00009825 */ move $s3, $zero +/* 018C30 80018030 00008825 */ move $s1, $zero +.L80018034: +/* 018C34 80018034 8E990000 */ lw $t9, ($s4) +/* 018C38 80018038 26730001 */ addiu $s3, $s3, 1 +/* 018C3C 8001803C 03311021 */ addu $v0, $t9, $s1 +/* 018C40 80018040 8443002C */ lh $v1, 0x2c($v0) +/* 018C44 80018044 84440068 */ lh $a0, 0x68($v0) +/* 018C48 80018048 00000000 */ nop +/* 018C4C 8001804C 14640003 */ bne $v1, $a0, .L8001805C +/* 018C50 80018050 0083082A */ slt $at, $a0, $v1 +/* 018C54 80018054 24090001 */ li $t1, 1 +/* 018C58 80018058 00609025 */ move $s2, $v1 +.L8001805C: +/* 018C5C 8001805C 10200014 */ beqz $at, .L800180B0 +/* 018C60 80018060 0266082A */ slt $at, $s3, $a2 +/* 018C64 80018064 A444002C */ sh $a0, 0x2c($v0) +/* 018C68 80018068 8E980000 */ lw $t8, ($s4) +/* 018C6C 8001806C 8C500028 */ lw $s0, 0x28($v0) +/* 018C70 80018070 03111021 */ addu $v0, $t8, $s1 +/* 018C74 80018074 8C4C0064 */ lw $t4, 0x64($v0) +/* 018C78 80018078 3C078012 */ lui $a3, %hi(D_8011AED0) # $a3, 0x8012 +/* 018C7C 8001807C AC4C0028 */ sw $t4, 0x28($v0) +/* 018C80 80018080 8E8F0000 */ lw $t7, ($s4) +/* 018C84 80018084 00004025 */ move $t0, $zero +/* 018C88 80018088 01F15821 */ addu $t3, $t7, $s1 +/* 018C8C 8001808C A5630068 */ sh $v1, 0x68($t3) +/* 018C90 80018090 8E8D0000 */ lw $t5, ($s4) +/* 018C94 80018094 00000000 */ nop +/* 018C98 80018098 01B17021 */ addu $t6, $t5, $s1 +/* 018C9C 8001809C ADD00064 */ sw $s0, 0x64($t6) +/* 018CA0 800180A0 8CE7AED0 */ lw $a3, %lo(D_8011AED0)($a3) +/* 018CA4 800180A4 00000000 */ nop +/* 018CA8 800180A8 24E6FFFF */ addiu $a2, $a3, -1 +/* 018CAC 800180AC 0266082A */ slt $at, $s3, $a2 +.L800180B0: +/* 018CB0 800180B0 1420FFE0 */ bnez $at, .L80018034 +/* 018CB4 800180B4 2631003C */ addiu $s1, $s1, 0x3c +.L800180B8: +/* 018CB8 800180B8 1100FFDB */ beqz $t0, .L80018028 +/* 018CBC 800180BC 24080001 */ li $t0, 1 +/* 018CC0 800180C0 3C088012 */ lui $t0, %hi(D_8011AED4) # $t0, 0x8012 +/* 018CC4 800180C4 2508AED4 */ addiu $t0, %lo(D_8011AED4) # addiu $t0, $t0, -0x512c +/* 018CC8 800180C8 AD070000 */ sw $a3, ($t0) +/* 018CCC 800180CC 00EAC823 */ subu $t9, $a3, $t2 +/* 018CD0 800180D0 3C018012 */ lui $at, %hi(D_8011AED0) # $at, 0x8012 +/* 018CD4 800180D4 1120000A */ beqz $t1, .L80018100 +/* 018CD8 800180D8 AC39AED0 */ sw $t9, %lo(D_8011AED0)($at) +/* 018CDC 800180DC 24040014 */ li $a0, 20 +/* 018CE0 800180E0 0C02D8D7 */ jal func_800B635C +/* 018CE4 800180E4 240500DC */ li $a1, 220 +/* 018CE8 800180E8 3C04800E */ lui $a0, %hi(D_800E50D4) # $a0, 0x800e +/* 018CEC 800180EC 248450D4 */ addiu $a0, %lo(D_800E50D4) # addiu $a0, $a0, 0x50d4 +/* 018CF0 800180F0 0C02D7B7 */ jal func_800B5EDC +/* 018CF4 800180F4 02402825 */ move $a1, $s2 +/* 018CF8 800180F8 3C088012 */ lui $t0, %hi(D_8011AED4) # $t0, 0x8012 +/* 018CFC 800180FC 2508AED4 */ addiu $t0, %lo(D_8011AED4) # addiu $t0, $t0, -0x512c +.L80018100: +/* 018D00 80018100 3C078012 */ lui $a3, %hi(D_8011AED0) # $a3, 0x8012 +/* 018D04 80018104 8CE7AED0 */ lw $a3, %lo(D_8011AED0)($a3) +/* 018D08 80018108 8D020000 */ lw $v0, ($t0) +/* 018D0C 8001810C 00E09825 */ move $s3, $a3 +/* 018D10 80018110 00E2082A */ slt $at, $a3, $v0 +/* 018D14 80018114 10200026 */ beqz $at, .L800181B0 +/* 018D18 80018118 00078900 */ sll $s1, $a3, 4 +/* 018D1C 8001811C 02278823 */ subu $s1, $s1, $a3 +/* 018D20 80018120 00118880 */ sll $s1, $s1, 2 +.L80018124: +/* 018D24 80018124 8E980000 */ lw $t8, ($s4) +/* 018D28 80018128 00002025 */ move $a0, $zero +/* 018D2C 8001812C 03116021 */ addu $t4, $t8, $s1 +/* 018D30 80018130 8585002C */ lh $a1, 0x2c($t4) +/* 018D34 80018134 00003025 */ move $a2, $zero +/* 018D38 80018138 18E00018 */ blez $a3, .L8001819C +/* 018D3C 8001813C 24A5FF01 */ addiu $a1, $a1, -0xff +/* 018D40 80018140 00001100 */ sll $v0, $zero, 4 +/* 018D44 80018144 00401023 */ subu $v0, $v0, $zero +/* 018D48 80018148 00021080 */ sll $v0, $v0, 2 +.L8001814C: +/* 018D4C 8001814C 8E8F0000 */ lw $t7, ($s4) +/* 018D50 80018150 00000000 */ nop +/* 018D54 80018154 01E21821 */ addu $v1, $t7, $v0 +/* 018D58 80018158 846B002C */ lh $t3, 0x2c($v1) +/* 018D5C 8001815C 00000000 */ nop +/* 018D60 80018160 14AB0008 */ bne $a1, $t3, .L80018184 +/* 018D64 80018164 00000000 */ nop +/* 018D68 80018168 A073003A */ sb $s3, 0x3a($v1) +/* 018D6C 8001816C 8E8D0000 */ lw $t5, ($s4) +/* 018D70 80018170 3C078012 */ lui $a3, %hi(D_8011AED0) # $a3, 0x8012 +/* 018D74 80018174 01B17021 */ addu $t6, $t5, $s1 +/* 018D78 80018178 A1C4003A */ sb $a0, 0x3a($t6) +/* 018D7C 8001817C 8CE7AED0 */ lw $a3, %lo(D_8011AED0)($a3) +/* 018D80 80018180 24060001 */ li $a2, 1 +.L80018184: +/* 018D84 80018184 24840001 */ addiu $a0, $a0, 1 +/* 018D88 80018188 0087082A */ slt $at, $a0, $a3 +/* 018D8C 8001818C 10200003 */ beqz $at, .L8001819C +/* 018D90 80018190 2442003C */ addiu $v0, $v0, 0x3c +/* 018D94 80018194 10C0FFED */ beqz $a2, .L8001814C +/* 018D98 80018198 00000000 */ nop +.L8001819C: +/* 018D9C 8001819C 8D020000 */ lw $v0, ($t0) +/* 018DA0 800181A0 26730001 */ addiu $s3, $s3, 1 +/* 018DA4 800181A4 0262082A */ slt $at, $s3, $v0 +/* 018DA8 800181A8 1420FFDE */ bnez $at, .L80018124 +/* 018DAC 800181AC 2631003C */ addiu $s1, $s1, 0x3c +.L800181B0: +/* 018DB0 800181B0 184000FC */ blez $v0, .L800185A4 +/* 018DB4 800181B4 00009825 */ move $s3, $zero +/* 018DB8 800181B8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 018DBC 800181BC 4481B000 */ mtc1 $at, $f22 +/* 018DC0 800181C0 4480A000 */ mtc1 $zero, $f20 +/* 018DC4 800181C4 00008825 */ move $s1, $zero +.L800181C8: +/* 018DC8 800181C8 8E990000 */ lw $t9, ($s4) +/* 018DCC 800181CC 27A40094 */ addiu $a0, $sp, 0x94 +/* 018DD0 800181D0 02399021 */ addu $s2, $s1, $t9 +/* 018DD4 800181D4 8E500028 */ lw $s0, 0x28($s2) +/* 018DD8 800181D8 27A5007C */ addiu $a1, $sp, 0x7c +/* 018DDC 800181DC 86180000 */ lh $t8, ($s0) +/* 018DE0 800181E0 8E17003C */ lw $s7, 0x3c($s0) +/* 018DE4 800181E4 A7B8007C */ sh $t8, 0x7c($sp) +/* 018DE8 800181E8 860C0002 */ lh $t4, 2($s0) +/* 018DEC 800181EC 00000000 */ nop +/* 018DF0 800181F0 A7AC007E */ sh $t4, 0x7e($sp) +/* 018DF4 800181F4 860F0004 */ lh $t7, 4($s0) +/* 018DF8 800181F8 E7B60084 */ swc1 $f22, 0x84($sp) +/* 018DFC 800181FC E7B40088 */ swc1 $f20, 0x88($sp) +/* 018E00 80018200 E7B4008C */ swc1 $f20, 0x8c($sp) +/* 018E04 80018204 E7B40090 */ swc1 $f20, 0x90($sp) +/* 018E08 80018208 0C01BF0C */ jal func_8006FC30 +/* 018E0C 8001820C A7AF0080 */ sh $t7, 0x80($sp) +/* 018E10 80018210 4405A000 */ mfc1 $a1, $f20 +/* 018E14 80018214 4406A000 */ mfc1 $a2, $f20 +/* 018E18 80018218 4407B000 */ mfc1 $a3, $f22 +/* 018E1C 8001821C 27AB00E8 */ addiu $t3, $sp, 0xe8 +/* 018E20 80018220 27AD00E4 */ addiu $t5, $sp, 0xe4 +/* 018E24 80018224 27AE00E0 */ addiu $t6, $sp, 0xe0 +/* 018E28 80018228 AFAE0018 */ sw $t6, 0x18($sp) +/* 018E2C 8001822C AFAD0014 */ sw $t5, 0x14($sp) +/* 018E30 80018230 AFAB0010 */ sw $t3, 0x10($sp) +/* 018E34 80018234 0C01BD93 */ jal func_8006F64C +/* 018E38 80018238 27A40094 */ addiu $a0, $sp, 0x94 +/* 018E3C 8001823C C7A400E8 */ lwc1 $f4, 0xe8($sp) +/* 018E40 80018240 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 018E44 80018244 E6440000 */ swc1 $f4, ($s2) +/* 018E48 80018248 C7A600E4 */ lwc1 $f6, 0xe4($sp) +/* 018E4C 8001824C 3C078012 */ lui $a3, %hi(D_8011AED0) # $a3, 0x8012 +/* 018E50 80018250 E6460004 */ swc1 $f6, 4($s2) +/* 018E54 80018254 C7A800E0 */ lwc1 $f8, 0xe0($sp) +/* 018E58 80018258 266C0001 */ addiu $t4, $s3, 1 +/* 018E5C 8001825C E6480008 */ swc1 $f8, 8($s2) +/* 018E60 80018260 C60A000C */ lwc1 $f10, 0xc($s0) +/* 018E64 80018264 C7B000E8 */ lwc1 $f16, 0xe8($sp) +/* 018E68 80018268 C6040010 */ lwc1 $f4, 0x10($s0) +/* 018E6C 8001826C 46105482 */ mul.s $f18, $f10, $f16 +/* 018E70 80018270 C7A600E4 */ lwc1 $f6, 0xe4($sp) +/* 018E74 80018274 C6100014 */ lwc1 $f16, 0x14($s0) +/* 018E78 80018278 46062202 */ mul.s $f8, $f4, $f6 +/* 018E7C 8001827C C7A400E0 */ lwc1 $f4, 0xe0($sp) +/* 018E80 80018280 00000000 */ nop +/* 018E84 80018284 46048182 */ mul.s $f6, $f16, $f4 +/* 018E88 80018288 46089280 */ add.s $f10, $f18, $f8 +/* 018E8C 8001828C 46065480 */ add.s $f18, $f10, $f6 +/* 018E90 80018290 46009207 */ neg.s $f8, $f18 +/* 018E94 80018294 E648000C */ swc1 $f8, 0xc($s2) +/* 018E98 80018298 C610000C */ lwc1 $f16, 0xc($s0) +/* 018E9C 8001829C 44819000 */ mtc1 $at, $f18 +/* 018EA0 800182A0 E6500010 */ swc1 $f16, 0x10($s2) +/* 018EA4 800182A4 C6040010 */ lwc1 $f4, 0x10($s0) +/* 018EA8 800182A8 3C014300 */ li $at, 0x43000000 # 128.000000 +/* 018EAC 800182AC E6440014 */ swc1 $f4, 0x14($s2) +/* 018EB0 800182B0 C60A0014 */ lwc1 $f10, 0x14($s0) +/* 018EB4 800182B4 44812000 */ mtc1 $at, $f4 +/* 018EB8 800182B8 E64A0018 */ swc1 $f10, 0x18($s2) +/* 018EBC 800182BC C6060008 */ lwc1 $f6, 8($s0) +/* 018EC0 800182C0 00000000 */ nop +/* 018EC4 800182C4 46123202 */ mul.s $f8, $f6, $f18 +/* 018EC8 800182C8 E648001C */ swc1 $f8, 0x1c($s2) +/* 018ECC 800182CC C6100008 */ lwc1 $f16, 8($s0) +/* 018ED0 800182D0 E6540024 */ swc1 $f20, 0x24($s2) +/* 018ED4 800182D4 46048282 */ mul.s $f10, $f16, $f4 +/* 018ED8 800182D8 E6540020 */ swc1 $f20, 0x20($s2) +/* 018EDC 800182DC 4459F800 */ cfc1 $t9, $31 +/* 018EE0 800182E0 00000000 */ nop +/* 018EE4 800182E4 37210003 */ ori $at, $t9, 3 +/* 018EE8 800182E8 38210002 */ xori $at, $at, 2 +/* 018EEC 800182EC 44C1F800 */ ctc1 $at, $31 +/* 018EF0 800182F0 00000000 */ nop +/* 018EF4 800182F4 460051A4 */ cvt.w.s $f6, $f10 +/* 018EF8 800182F8 44183000 */ mfc1 $t8, $f6 +/* 018EFC 800182FC 44D9F800 */ ctc1 $t9, $31 +/* 018F00 80018300 A658002C */ sh $t8, 0x2c($s2) +/* 018F04 80018304 8CE7AED0 */ lw $a3, %lo(D_8011AED0)($a3) +/* 018F08 80018308 00000000 */ nop +/* 018F0C 8001830C 0267082A */ slt $at, $s3, $a3 +/* 018F10 80018310 1020003A */ beqz $at, .L800183FC +/* 018F14 80018314 00000000 */ nop +/* 018F18 80018318 267E0001 */ addiu $fp, $s3, 1 +/* 018F1C 8001831C 15870002 */ bne $t4, $a3, .L80018328 +/* 018F20 80018320 03C02825 */ move $a1, $fp +/* 018F24 80018324 00002825 */ move $a1, $zero +.L80018328: +/* 018F28 80018328 0005B100 */ sll $s6, $a1, 4 +/* 018F2C 8001832C 8E8F0000 */ lw $t7, ($s4) +/* 018F30 80018330 02C5B023 */ subu $s6, $s6, $a1 +/* 018F34 80018334 0016B080 */ sll $s6, $s6, 2 +/* 018F38 80018338 01F65821 */ addu $t3, $t7, $s6 +/* 018F3C 8001833C 8D620028 */ lw $v0, 0x28($t3) +/* 018F40 80018340 C612000C */ lwc1 $f18, 0xc($s0) +/* 018F44 80018344 C448000C */ lwc1 $f8, 0xc($v0) +/* 018F48 80018348 C6100010 */ lwc1 $f16, 0x10($s0) +/* 018F4C 8001834C 46089001 */ sub.s $f0, $f18, $f8 +/* 018F50 80018350 C4440010 */ lwc1 $f4, 0x10($v0) +/* 018F54 80018354 46000482 */ mul.s $f18, $f0, $f0 +/* 018F58 80018358 46048081 */ sub.s $f2, $f16, $f4 +/* 018F5C 8001835C C60A0014 */ lwc1 $f10, 0x14($s0) +/* 018F60 80018360 C4460014 */ lwc1 $f6, 0x14($v0) +/* 018F64 80018364 46021202 */ mul.s $f8, $f2, $f2 +/* 018F68 80018368 46065381 */ sub.s $f14, $f10, $f6 +/* 018F6C 8001836C 460E7102 */ mul.s $f4, $f14, $f14 +/* 018F70 80018370 46089400 */ add.s $f16, $f18, $f8 +/* 018F74 80018374 0C0326B4 */ jal sqrtf +/* 018F78 80018378 46048300 */ add.s $f12, $f16, $f4 +/* 018F7C 8001837C E6400020 */ swc1 $f0, 0x20($s2) +/* 018F80 80018380 8E950000 */ lw $s5, ($s4) +/* 018F84 80018384 2401FFFF */ li $at, -1 +/* 018F88 80018388 02B66821 */ addu $t5, $s5, $s6 +/* 018F8C 8001838C 81A3003A */ lb $v1, 0x3a($t5) +/* 018F90 80018390 00000000 */ nop +/* 018F94 80018394 10610016 */ beq $v1, $at, .L800183F0 +/* 018F98 80018398 00037100 */ sll $t6, $v1, 4 +/* 018F9C 8001839C 01C37023 */ subu $t6, $t6, $v1 +/* 018FA0 800183A0 000E7080 */ sll $t6, $t6, 2 +/* 018FA4 800183A4 02AEC821 */ addu $t9, $s5, $t6 +/* 018FA8 800183A8 8F220028 */ lw $v0, 0x28($t9) +/* 018FAC 800183AC C60A000C */ lwc1 $f10, 0xc($s0) +/* 018FB0 800183B0 C446000C */ lwc1 $f6, 0xc($v0) +/* 018FB4 800183B4 C6120010 */ lwc1 $f18, 0x10($s0) +/* 018FB8 800183B8 46065001 */ sub.s $f0, $f10, $f6 +/* 018FBC 800183BC C4480010 */ lwc1 $f8, 0x10($v0) +/* 018FC0 800183C0 46000282 */ mul.s $f10, $f0, $f0 +/* 018FC4 800183C4 46089081 */ sub.s $f2, $f18, $f8 +/* 018FC8 800183C8 C6100014 */ lwc1 $f16, 0x14($s0) +/* 018FCC 800183CC C4440014 */ lwc1 $f4, 0x14($v0) +/* 018FD0 800183D0 46021182 */ mul.s $f6, $f2, $f2 +/* 018FD4 800183D4 46048381 */ sub.s $f14, $f16, $f4 +/* 018FD8 800183D8 460E7202 */ mul.s $f8, $f14, $f14 +/* 018FDC 800183DC 46065480 */ add.s $f18, $f10, $f6 +/* 018FE0 800183E0 0C0326B4 */ jal sqrtf +/* 018FE4 800183E4 46089300 */ add.s $f12, $f18, $f8 +/* 018FE8 800183E8 10000042 */ b .L800184F4 +/* 018FEC 800183EC E6400024 */ swc1 $f0, 0x24($s2) +.L800183F0: +/* 018FF0 800183F0 C6500020 */ lwc1 $f16, 0x20($s2) +/* 018FF4 800183F4 1000003F */ b .L800184F4 +/* 018FF8 800183F8 E6500024 */ swc1 $f16, 0x24($s2) +.L800183FC: +/* 018FFC 800183FC 8E950000 */ lw $s5, ($s4) +/* 019000 80018400 00000000 */ nop +/* 019004 80018404 02B1C021 */ addu $t8, $s5, $s1 +/* 019008 80018408 8305003A */ lb $a1, 0x3a($t8) +/* 01900C 8001840C 00000000 */ nop +/* 019010 80018410 24A50001 */ addiu $a1, $a1, 1 +/* 019014 80018414 14A70003 */ bne $a1, $a3, .L80018424 +/* 019018 80018418 0005B100 */ sll $s6, $a1, 4 +/* 01901C 8001841C 00002825 */ move $a1, $zero +/* 019020 80018420 0005B100 */ sll $s6, $a1, 4 +.L80018424: +/* 019024 80018424 02C5B023 */ subu $s6, $s6, $a1 +/* 019028 80018428 0016B080 */ sll $s6, $s6, 2 +/* 01902C 8001842C 02B66021 */ addu $t4, $s5, $s6 +/* 019030 80018430 8D820028 */ lw $v0, 0x28($t4) +/* 019034 80018434 C604000C */ lwc1 $f4, 0xc($s0) +/* 019038 80018438 C44A000C */ lwc1 $f10, 0xc($v0) +/* 01903C 8001843C C6060010 */ lwc1 $f6, 0x10($s0) +/* 019040 80018440 460A2001 */ sub.s $f0, $f4, $f10 +/* 019044 80018444 C4520010 */ lwc1 $f18, 0x10($v0) +/* 019048 80018448 46000102 */ mul.s $f4, $f0, $f0 +/* 01904C 8001844C 46123081 */ sub.s $f2, $f6, $f18 +/* 019050 80018450 C6080014 */ lwc1 $f8, 0x14($s0) +/* 019054 80018454 C4500014 */ lwc1 $f16, 0x14($v0) +/* 019058 80018458 46021282 */ mul.s $f10, $f2, $f2 +/* 01905C 8001845C 46104381 */ sub.s $f14, $f8, $f16 +/* 019060 80018460 460E7482 */ mul.s $f18, $f14, $f14 +/* 019064 80018464 460A2180 */ add.s $f6, $f4, $f10 +/* 019068 80018468 0C0326B4 */ jal sqrtf +/* 01906C 8001846C 46123300 */ add.s $f12, $f6, $f18 +/* 019070 80018470 E6400020 */ swc1 $f0, 0x20($s2) +/* 019074 80018474 8E950000 */ lw $s5, ($s4) +/* 019078 80018478 2401FFFF */ li $at, -1 +/* 01907C 8001847C 02B67821 */ addu $t7, $s5, $s6 +/* 019080 80018480 81E3003A */ lb $v1, 0x3a($t7) +/* 019084 80018484 00000000 */ nop +/* 019088 80018488 10610017 */ beq $v1, $at, .L800184E8 +/* 01908C 8001848C 00035900 */ sll $t3, $v1, 4 +/* 019090 80018490 01635823 */ subu $t3, $t3, $v1 +/* 019094 80018494 000B5880 */ sll $t3, $t3, 2 +/* 019098 80018498 02AB6821 */ addu $t5, $s5, $t3 +/* 01909C 8001849C 8DA20028 */ lw $v0, 0x28($t5) +/* 0190A0 800184A0 C608000C */ lwc1 $f8, 0xc($s0) +/* 0190A4 800184A4 C450000C */ lwc1 $f16, 0xc($v0) +/* 0190A8 800184A8 C6040010 */ lwc1 $f4, 0x10($s0) +/* 0190AC 800184AC 46104001 */ sub.s $f0, $f8, $f16 +/* 0190B0 800184B0 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 0190B4 800184B4 46000202 */ mul.s $f8, $f0, $f0 +/* 0190B8 800184B8 460A2081 */ sub.s $f2, $f4, $f10 +/* 0190BC 800184BC C6060014 */ lwc1 $f6, 0x14($s0) +/* 0190C0 800184C0 C4520014 */ lwc1 $f18, 0x14($v0) +/* 0190C4 800184C4 46021402 */ mul.s $f16, $f2, $f2 +/* 0190C8 800184C8 46123381 */ sub.s $f14, $f6, $f18 +/* 0190CC 800184CC 460E7282 */ mul.s $f10, $f14, $f14 +/* 0190D0 800184D0 46104100 */ add.s $f4, $f8, $f16 +/* 0190D4 800184D4 0C0326B4 */ jal sqrtf +/* 0190D8 800184D8 460A2300 */ add.s $f12, $f4, $f10 +/* 0190DC 800184DC E6400024 */ swc1 $f0, 0x24($s2) +/* 0190E0 800184E0 10000004 */ b .L800184F4 +/* 0190E4 800184E4 267E0001 */ addiu $fp, $s3, 1 +.L800184E8: +/* 0190E8 800184E8 C6460020 */ lwc1 $f6, 0x20($s2) +/* 0190EC 800184EC 267E0001 */ addiu $fp, $s3, 1 +/* 0190F0 800184F0 E6460024 */ swc1 $f6, 0x24($s2) +.L800184F4: +/* 0190F4 800184F4 82EE000B */ lb $t6, 0xb($s7) +/* 0190F8 800184F8 03C09825 */ move $s3, $fp +/* 0190FC 800184FC A24E002E */ sb $t6, 0x2e($s2) +/* 019100 80018500 82F9000F */ lb $t9, 0xf($s7) +/* 019104 80018504 2631003C */ addiu $s1, $s1, 0x3c +/* 019108 80018508 A2590032 */ sb $t9, 0x32($s2) +/* 01910C 8001850C 82F80013 */ lb $t8, 0x13($s7) +/* 019110 80018510 00000000 */ nop +/* 019114 80018514 A2580036 */ sb $t8, 0x36($s2) +/* 019118 80018518 82EC000C */ lb $t4, 0xc($s7) +/* 01911C 8001851C 00000000 */ nop +/* 019120 80018520 A24C002F */ sb $t4, 0x2f($s2) +/* 019124 80018524 82EF0010 */ lb $t7, 0x10($s7) +/* 019128 80018528 00000000 */ nop +/* 01912C 8001852C A24F0033 */ sb $t7, 0x33($s2) +/* 019130 80018530 82EB0014 */ lb $t3, 0x14($s7) +/* 019134 80018534 00000000 */ nop +/* 019138 80018538 A24B0037 */ sb $t3, 0x37($s2) +/* 01913C 8001853C 82ED000D */ lb $t5, 0xd($s7) +/* 019140 80018540 00000000 */ nop +/* 019144 80018544 A24D0030 */ sb $t5, 0x30($s2) +/* 019148 80018548 82EE0011 */ lb $t6, 0x11($s7) +/* 01914C 8001854C 3C0D8012 */ lui $t5, %hi(D_8011AED4) # $t5, 0x8012 +/* 019150 80018550 A24E0034 */ sb $t6, 0x34($s2) +/* 019154 80018554 82F90015 */ lb $t9, 0x15($s7) +/* 019158 80018558 00000000 */ nop +/* 01915C 8001855C A2590038 */ sb $t9, 0x38($s2) +/* 019160 80018560 82F8000E */ lb $t8, 0xe($s7) +/* 019164 80018564 00000000 */ nop +/* 019168 80018568 A2580031 */ sb $t8, 0x31($s2) +/* 01916C 8001856C 82EC0012 */ lb $t4, 0x12($s7) +/* 019170 80018570 00000000 */ nop +/* 019174 80018574 A24C0035 */ sb $t4, 0x35($s2) +/* 019178 80018578 82EF0016 */ lb $t7, 0x16($s7) +/* 01917C 8001857C 00000000 */ nop +/* 019180 80018580 A24F0039 */ sb $t7, 0x39($s2) +/* 019184 80018584 92EB0019 */ lbu $t3, 0x19($s7) +/* 019188 80018588 00000000 */ nop +/* 01918C 8001858C A24B003B */ sb $t3, 0x3b($s2) +/* 019190 80018590 8DADAED4 */ lw $t5, %lo(D_8011AED4)($t5) +/* 019194 80018594 00000000 */ nop +/* 019198 80018598 03CD082A */ slt $at, $fp, $t5 +/* 01919C 8001859C 1420FF0A */ bnez $at, .L800181C8 +/* 0191A0 800185A0 00000000 */ nop +.L800185A4: +/* 0191A4 800185A4 8FBF005C */ lw $ra, 0x5c($sp) +/* 0191A8 800185A8 C7B50028 */ lwc1 $f21, 0x28($sp) +/* 0191AC 800185AC C7B4002C */ lwc1 $f20, 0x2c($sp) +/* 0191B0 800185B0 C7B70030 */ lwc1 $f23, 0x30($sp) +/* 0191B4 800185B4 C7B60034 */ lwc1 $f22, 0x34($sp) +/* 0191B8 800185B8 8FB00038 */ lw $s0, 0x38($sp) +/* 0191BC 800185BC 8FB1003C */ lw $s1, 0x3c($sp) +/* 0191C0 800185C0 8FB20040 */ lw $s2, 0x40($sp) +/* 0191C4 800185C4 8FB30044 */ lw $s3, 0x44($sp) +/* 0191C8 800185C8 8FB40048 */ lw $s4, 0x48($sp) +/* 0191CC 800185CC 8FB5004C */ lw $s5, 0x4c($sp) +/* 0191D0 800185D0 8FB60050 */ lw $s6, 0x50($sp) +/* 0191D4 800185D4 8FB70054 */ lw $s7, 0x54($sp) +/* 0191D8 800185D8 8FBE0058 */ lw $fp, 0x58($sp) +/* 0191DC 800185DC 03E00008 */ jr $ra +/* 0191E0 800185E0 27BD0118 */ addiu $sp, $sp, 0x118 + diff --git a/asm/non_matchings/unknown_005740/func_800185E4.s b/asm/non_matchings/unknown_005740/func_800185E4.s new file mode 100644 index 00000000..91c53a4d --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800185E4.s @@ -0,0 +1,441 @@ +glabel func_800185E4 +/* 0191E4 800185E4 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 0191E8 800185E8 3C028012 */ lui $v0, %hi(D_8011AED0) # $v0, 0x8012 +/* 0191EC 800185EC 8C42AED0 */ lw $v0, %lo(D_8011AED0)($v0) +/* 0191F0 800185F0 AFA70084 */ sw $a3, 0x84($sp) +/* 0191F4 800185F4 00A03825 */ move $a3, $a1 +/* 0191F8 800185F8 AFBF001C */ sw $ra, 0x1c($sp) +/* 0191FC 800185FC E7B50010 */ swc1 $f21, 0x10($sp) +/* 019200 80018600 E7B40014 */ swc1 $f20, 0x14($sp) +/* 019204 80018604 AFA40078 */ sw $a0, 0x78($sp) +/* 019208 80018608 AFA5007C */ sw $a1, 0x7c($sp) +/* 01920C 8001860C 14400003 */ bnez $v0, .L8001861C +/* 019210 80018610 AFA60080 */ sw $a2, 0x80($sp) +/* 019214 80018614 10000190 */ b .L80018C58 +/* 019218 80018618 24020001 */ li $v0, 1 +.L8001861C: +/* 01921C 8001861C 8FAF0078 */ lw $t7, 0x78($sp) +/* 019220 80018620 2408003C */ li $t0, 60 +/* 019224 80018624 01E80019 */ multu $t7, $t0 +/* 019228 80018628 3C068012 */ lui $a2, %hi(D_8011AECC) # $a2, 0x8012 +/* 01922C 8001862C 8CC6AECC */ lw $a2, %lo(D_8011AECC)($a2) +/* 019230 80018630 8FB90090 */ lw $t9, 0x90($sp) +/* 019234 80018634 00005825 */ move $t3, $zero +/* 019238 80018638 00004812 */ mflo $t1 +/* 01923C 8001863C 01261821 */ addu $v1, $t1, $a2 +/* 019240 80018640 11E00003 */ beqz $t7, .L80018650 +/* 019244 80018644 00602825 */ move $a1, $v1 +/* 019248 80018648 10000005 */ b .L80018660 +/* 01924C 8001864C 2464FFC4 */ addiu $a0, $v1, -0x3c +.L80018650: +/* 019250 80018650 00480019 */ multu $v0, $t0 +/* 019254 80018654 0000C012 */ mflo $t8 +/* 019258 80018658 03062021 */ addu $a0, $t8, $a2 +/* 01925C 8001865C 2484FFC4 */ addiu $a0, $a0, -0x3c +.L80018660: +/* 019260 80018660 93230000 */ lbu $v1, ($t9) +/* 019264 80018664 00000000 */ nop +/* 019268 80018668 10600011 */ beqz $v1, .L800186B0 +/* 01926C 8001866C 00000000 */ nop +/* 019270 80018670 80A2003A */ lb $v0, 0x3a($a1) +/* 019274 80018674 240AFFFF */ li $t2, -1 +/* 019278 80018678 11420005 */ beq $t2, $v0, .L80018690 +/* 01927C 8001867C 00000000 */ nop +/* 019280 80018680 00480019 */ multu $v0, $t0 +/* 019284 80018684 00006012 */ mflo $t4 +/* 019288 80018688 01862821 */ addu $a1, $t4, $a2 +/* 01928C 8001868C 00000000 */ nop +.L80018690: +/* 019290 80018690 8082003A */ lb $v0, 0x3a($a0) +/* 019294 80018694 00000000 */ nop +/* 019298 80018698 11420005 */ beq $t2, $v0, .L800186B0 +/* 01929C 8001869C 00000000 */ nop +/* 0192A0 800186A0 00480019 */ multu $v0, $t0 +/* 0192A4 800186A4 00006812 */ mflo $t5 +/* 0192A8 800186A8 01A62021 */ addu $a0, $t5, $a2 +/* 0192AC 800186AC 00000000 */ nop +.L800186B0: +/* 0192B0 800186B0 14600031 */ bnez $v1, .L80018778 +/* 0192B4 800186B4 240AFFFF */ li $t2, -1 +/* 0192B8 800186B8 808E003A */ lb $t6, 0x3a($a0) +/* 0192BC 800186BC 00000000 */ nop +/* 0192C0 800186C0 154E002D */ bne $t2, $t6, .L80018778 +/* 0192C4 800186C4 00000000 */ nop +/* 0192C8 800186C8 80A2003A */ lb $v0, 0x3a($a1) +/* 0192CC 800186CC 00000000 */ nop +/* 0192D0 800186D0 11420029 */ beq $t2, $v0, .L80018778 +/* 0192D4 800186D4 00000000 */ nop +/* 0192D8 800186D8 00480019 */ multu $v0, $t0 +/* 0192DC 800186DC C4E8000C */ lwc1 $f8, 0xc($a3) +/* 0192E0 800186E0 C4E60010 */ lwc1 $f6, 0x10($a3) +/* 0192E4 800186E4 00007812 */ mflo $t7 +/* 0192E8 800186E8 01E61821 */ addu $v1, $t7, $a2 +/* 0192EC 800186EC C4640010 */ lwc1 $f4, 0x10($v1) +/* 0192F0 800186F0 C46A0014 */ lwc1 $f10, 0x14($v1) +/* 0192F4 800186F4 46082001 */ sub.s $f0, $f4, $f8 +/* 0192F8 800186F8 C4E80014 */ lwc1 $f8, 0x14($a3) +/* 0192FC 800186FC 46065501 */ sub.s $f20, $f10, $f6 +/* 019300 80018700 C4640018 */ lwc1 $f4, 0x18($v1) +/* 019304 80018704 46000282 */ mul.s $f10, $f0, $f0 +/* 019308 80018708 46082081 */ sub.s $f2, $f4, $f8 +/* 01930C 8001870C AFA00070 */ sw $zero, 0x70($sp) +/* 019310 80018710 AFA90038 */ sw $t1, 0x38($sp) +/* 019314 80018714 4614A182 */ mul.s $f6, $f20, $f20 +/* 019318 80018718 AFA7007C */ sw $a3, 0x7c($sp) +/* 01931C 8001871C AFA5004C */ sw $a1, 0x4c($sp) +/* 019320 80018720 AFA40048 */ sw $a0, 0x48($sp) +/* 019324 80018724 46021202 */ mul.s $f8, $f2, $f2 +/* 019328 80018728 46065100 */ add.s $f4, $f10, $f6 +/* 01932C 8001872C AFA30044 */ sw $v1, 0x44($sp) +/* 019330 80018730 0C0326B4 */ jal sqrtf +/* 019334 80018734 46082300 */ add.s $f12, $f4, $f8 +/* 019338 80018738 8FA30044 */ lw $v1, 0x44($sp) +/* 01933C 8001873C 8FA40048 */ lw $a0, 0x48($sp) +/* 019340 80018740 8478002C */ lh $t8, 0x2c($v1) +/* 019344 80018744 8FA5004C */ lw $a1, 0x4c($sp) +/* 019348 80018748 44985000 */ mtc1 $t8, $f10 +/* 01934C 8001874C 8FA7007C */ lw $a3, 0x7c($sp) +/* 019350 80018750 468051A0 */ cvt.s.w $f6, $f10 +/* 019354 80018754 8FA80078 */ lw $t0, 0x78($sp) +/* 019358 80018758 8FA90038 */ lw $t1, 0x38($sp) +/* 01935C 8001875C 4606003C */ c.lt.s $f0, $f6 +/* 019360 80018760 8FAB0070 */ lw $t3, 0x70($sp) +/* 019364 80018764 45000004 */ bc1f .L80018778 +/* 019368 80018768 00000000 */ nop +/* 01936C 8001876C 00602825 */ move $a1, $v1 +/* 019370 80018770 240B0001 */ li $t3, 1 +/* 019374 80018774 AFA80078 */ sw $t0, 0x78($sp) +.L80018778: +/* 019378 80018778 C4A40010 */ lwc1 $f4, 0x10($a1) +/* 01937C 8001877C C4880010 */ lwc1 $f8, 0x10($a0) +/* 019380 80018780 C4AA0014 */ lwc1 $f10, 0x14($a1) +/* 019384 80018784 C4860014 */ lwc1 $f6, 0x14($a0) +/* 019388 80018788 46082001 */ sub.s $f0, $f4, $f8 +/* 01938C 8001878C C4880018 */ lwc1 $f8, 0x18($a0) +/* 019390 80018790 46065501 */ sub.s $f20, $f10, $f6 +/* 019394 80018794 C4A40018 */ lwc1 $f4, 0x18($a1) +/* 019398 80018798 46000282 */ mul.s $f10, $f0, $f0 +/* 01939C 8001879C 46082081 */ sub.s $f2, $f4, $f8 +/* 0193A0 800187A0 E7A0006C */ swc1 $f0, 0x6c($sp) +/* 0193A4 800187A4 E7A20064 */ swc1 $f2, 0x64($sp) +/* 0193A8 800187A8 4614A182 */ mul.s $f6, $f20, $f20 +/* 0193AC 800187AC AFAB0070 */ sw $t3, 0x70($sp) +/* 0193B0 800187B0 AFA90038 */ sw $t1, 0x38($sp) +/* 0193B4 800187B4 AFA7007C */ sw $a3, 0x7c($sp) +/* 0193B8 800187B8 46021202 */ mul.s $f8, $f2, $f2 +/* 0193BC 800187BC 46065100 */ add.s $f4, $f10, $f6 +/* 0193C0 800187C0 AFA5004C */ sw $a1, 0x4c($sp) +/* 0193C4 800187C4 AFA40048 */ sw $a0, 0x48($sp) +/* 0193C8 800187C8 0C0326B4 */ jal sqrtf +/* 0193CC 800187CC 46082300 */ add.s $f12, $f4, $f8 +/* 0193D0 800187D0 44805800 */ mtc1 $zero, $f11 +/* 0193D4 800187D4 44805000 */ mtc1 $zero, $f10 +/* 0193D8 800187D8 460001A1 */ cvt.d.s $f6, $f0 +/* 0193DC 800187DC 4626503C */ c.lt.d $f10, $f6 +/* 0193E0 800187E0 8FA40048 */ lw $a0, 0x48($sp) +/* 0193E4 800187E4 8FA5004C */ lw $a1, 0x4c($sp) +/* 0193E8 800187E8 8FA7007C */ lw $a3, 0x7c($sp) +/* 0193EC 800187EC 8FA80078 */ lw $t0, 0x78($sp) +/* 0193F0 800187F0 8FA90038 */ lw $t1, 0x38($sp) +/* 0193F4 800187F4 8FAB0070 */ lw $t3, 0x70($sp) +/* 0193F8 800187F8 4500000C */ bc1f .L8001882C +/* 0193FC 800187FC 240AFFFF */ li $t2, -1 +/* 019400 80018800 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 019404 80018804 44812000 */ mtc1 $at, $f4 +/* 019408 80018808 C7A8006C */ lwc1 $f8, 0x6c($sp) +/* 01940C 8001880C 46002083 */ div.s $f2, $f4, $f0 +/* 019410 80018810 C7A60064 */ lwc1 $f6, 0x64($sp) +/* 019414 80018814 46024282 */ mul.s $f10, $f8, $f2 +/* 019418 80018818 00000000 */ nop +/* 01941C 8001881C 4602A502 */ mul.s $f20, $f20, $f2 +/* 019420 80018820 E7AA006C */ swc1 $f10, 0x6c($sp) +/* 019424 80018824 46023102 */ mul.s $f4, $f6, $f2 +/* 019428 80018828 E7A40064 */ swc1 $f4, 0x64($sp) +.L8001882C: +/* 01942C 8001882C C4AE0000 */ lwc1 $f14, ($a1) +/* 019430 80018830 C4E0000C */ lwc1 $f0, 0xc($a3) +/* 019434 80018834 C4B00004 */ lwc1 $f16, 4($a1) +/* 019438 80018838 46007202 */ mul.s $f8, $f14, $f0 +/* 01943C 8001883C C4E20010 */ lwc1 $f2, 0x10($a3) +/* 019440 80018840 C4B20008 */ lwc1 $f18, 8($a1) +/* 019444 80018844 C4EC0014 */ lwc1 $f12, 0x14($a3) +/* 019448 80018848 46028282 */ mul.s $f10, $f16, $f2 +/* 01944C 8001884C 8FA6008C */ lw $a2, 0x8c($sp) +/* 019450 80018850 460C9102 */ mul.s $f4, $f18, $f12 +/* 019454 80018854 460A4180 */ add.s $f6, $f8, $f10 +/* 019458 80018858 C4AA000C */ lwc1 $f10, 0xc($a1) +/* 01945C 8001885C 46043200 */ add.s $f8, $f6, $f4 +/* 019460 80018860 C7A4006C */ lwc1 $f4, 0x6c($sp) +/* 019464 80018864 460A4180 */ add.s $f6, $f8, $f10 +/* 019468 80018868 46047202 */ mul.s $f8, $f14, $f4 +/* 01946C 8001886C E7A60058 */ swc1 $f6, 0x58($sp) +/* 019470 80018870 E7A60020 */ swc1 $f6, 0x20($sp) +/* 019474 80018874 46148282 */ mul.s $f10, $f16, $f20 +/* 019478 80018878 460A4200 */ add.s $f8, $f8, $f10 +/* 01947C 8001887C C7AA0064 */ lwc1 $f10, 0x64($sp) +/* 019480 80018880 00000000 */ nop +/* 019484 80018884 460A9182 */ mul.s $f6, $f18, $f10 +/* 019488 80018888 46064200 */ add.s $f8, $f8, $f6 +/* 01948C 8001888C C7A60020 */ lwc1 $f6, 0x20($sp) +/* 019490 80018890 E7A8005C */ swc1 $f8, 0x5c($sp) +/* 019494 80018894 46003187 */ neg.s $f6, $f6 +/* 019498 80018898 00000000 */ nop +/* 01949C 8001889C 46083183 */ div.s $f6, $f6, $f8 +/* 0194A0 800188A0 E7A6005C */ swc1 $f6, 0x5c($sp) +/* 0194A4 800188A4 C4880000 */ lwc1 $f8, ($a0) +/* 0194A8 800188A8 00000000 */ nop +/* 0194AC 800188AC E7A8003C */ swc1 $f8, 0x3c($sp) +/* 0194B0 800188B0 C4880004 */ lwc1 $f8, 4($a0) +/* 0194B4 800188B4 00000000 */ nop +/* 0194B8 800188B8 E7A80034 */ swc1 $f8, 0x34($sp) +/* 0194BC 800188BC C4880008 */ lwc1 $f8, 8($a0) +/* 0194C0 800188C0 E7A40020 */ swc1 $f4, 0x20($sp) +/* 0194C4 800188C4 E7A80030 */ swc1 $f8, 0x30($sp) +/* 0194C8 800188C8 C7A8003C */ lwc1 $f8, 0x3c($sp) +/* 0194CC 800188CC E7AA0024 */ swc1 $f10, 0x24($sp) +/* 0194D0 800188D0 46004102 */ mul.s $f4, $f8, $f0 +/* 0194D4 800188D4 C7AA0034 */ lwc1 $f10, 0x34($sp) +/* 0194D8 800188D8 E7A60028 */ swc1 $f6, 0x28($sp) +/* 0194DC 800188DC E7A8002C */ swc1 $f8, 0x2c($sp) +/* 0194E0 800188E0 46025182 */ mul.s $f6, $f10, $f2 +/* 0194E4 800188E4 46062100 */ add.s $f4, $f4, $f6 +/* 0194E8 800188E8 C7A60030 */ lwc1 $f6, 0x30($sp) +/* 0194EC 800188EC 00000000 */ nop +/* 0194F0 800188F0 460C3202 */ mul.s $f8, $f6, $f12 +/* 0194F4 800188F4 C7AC0028 */ lwc1 $f12, 0x28($sp) +/* 0194F8 800188F8 46082100 */ add.s $f4, $f4, $f8 +/* 0194FC 800188FC C488000C */ lwc1 $f8, 0xc($a0) +/* 019500 80018900 00000000 */ nop +/* 019504 80018904 46082100 */ add.s $f4, $f4, $f8 +/* 019508 80018908 C7A8002C */ lwc1 $f8, 0x2c($sp) +/* 01950C 8001890C E7AA002C */ swc1 $f10, 0x2c($sp) +/* 019510 80018910 C7AA0020 */ lwc1 $f10, 0x20($sp) +/* 019514 80018914 E7A40050 */ swc1 $f4, 0x50($sp) +/* 019518 80018918 460A4202 */ mul.s $f8, $f8, $f10 +/* 01951C 8001891C C7AA002C */ lwc1 $f10, 0x2c($sp) +/* 019520 80018920 00000000 */ nop +/* 019524 80018924 46145282 */ mul.s $f10, $f10, $f20 +/* 019528 80018928 44805800 */ mtc1 $zero, $f11 +/* 01952C 8001892C 460A4200 */ add.s $f8, $f8, $f10 +/* 019530 80018930 C7AA0024 */ lwc1 $f10, 0x24($sp) +/* 019534 80018934 00000000 */ nop +/* 019538 80018938 460A3182 */ mul.s $f6, $f6, $f10 +/* 01953C 8001893C 44805000 */ mtc1 $zero, $f10 +/* 019540 80018940 46064000 */ add.s $f0, $f8, $f6 +/* 019544 80018944 00000000 */ nop +/* 019548 80018948 46002003 */ div.s $f0, $f4, $f0 +/* 01954C 8001894C 46006080 */ add.s $f2, $f12, $f0 +/* 019550 80018950 46001221 */ cvt.d.s $f8, $f2 +/* 019554 80018954 46285032 */ c.eq.d $f10, $f8 +/* 019558 80018958 00000000 */ nop +/* 01955C 8001895C 45010003 */ bc1t .L8001896C +/* 019560 80018960 00000000 */ nop +/* 019564 80018964 10000003 */ b .L80018974 +/* 019568 80018968 46026003 */ div.s $f0, $f12, $f2 +.L8001896C: +/* 01956C 8001896C 44800000 */ mtc1 $zero, $f0 +/* 019570 80018970 00000000 */ nop +.L80018974: +/* 019574 80018974 E4C00000 */ swc1 $f0, ($a2) +/* 019578 80018978 84F90048 */ lh $t9, 0x48($a3) +/* 01957C 8001897C 24030001 */ li $v1, 1 +/* 019580 80018980 14790019 */ bne $v1, $t9, .L800189E8 +/* 019584 80018984 00000000 */ nop +/* 019588 80018988 8CE20064 */ lw $v0, 0x64($a3) +/* 01958C 8001898C 3C01800E */ lui $at, %hi(D_800E5624) # $at, 0x800e +/* 019590 80018990 844C0000 */ lh $t4, ($v0) +/* 019594 80018994 00000000 */ nop +/* 019598 80018998 154C0013 */ bne $t2, $t4, .L800189E8 +/* 01959C 8001899C 00000000 */ nop +/* 0195A0 800189A0 C4275620 */ lwc1 $f7, %lo(D_800E5620)($at) +/* 0195A4 800189A4 C4265624 */ lwc1 $f6, %lo(D_800E5624)($at) +/* 0195A8 800189A8 460000A1 */ cvt.d.s $f2, $f0 +/* 0195AC 800189AC 4626103C */ c.lt.d $f2, $f6 +/* 0195B0 800189B0 3C01800E */ lui $at, %hi(D_800E562C) # $at, 0x800e +/* 0195B4 800189B4 45000003 */ bc1f .L800189C4 +/* 0195B8 800189B8 00000000 */ nop +/* 0195BC 800189BC 100000A6 */ b .L80018C58 +/* 0195C0 800189C0 2402FF9C */ li $v0, -100 +.L800189C4: +/* 0195C4 800189C4 C4255628 */ lwc1 $f5, %lo(D_800E5628)($at) +/* 0195C8 800189C8 C424562C */ lwc1 $f4, %lo(D_800E562C)($at) +/* 0195CC 800189CC 00000000 */ nop +/* 0195D0 800189D0 4622203C */ c.lt.d $f4, $f2 +/* 0195D4 800189D4 00000000 */ nop +/* 0195D8 800189D8 45000003 */ bc1f .L800189E8 +/* 0195DC 800189DC 00000000 */ nop +/* 0195E0 800189E0 1000009D */ b .L80018C58 +/* 0195E4 800189E4 2402FF9C */ li $v0, -100 +.L800189E8: +/* 0195E8 800189E8 44801000 */ mtc1 $zero, $f2 +/* 0195EC 800189EC 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 0195F0 800189F0 4602603E */ c.le.s $f12, $f2 +/* 0195F4 800189F4 00000000 */ nop +/* 0195F8 800189F8 45000087 */ bc1f .L80018C18 +/* 0195FC 800189FC 00000000 */ nop +/* 019600 80018A00 11600004 */ beqz $t3, .L80018A14 +/* 019604 80018A04 240D0001 */ li $t5, 1 +/* 019608 80018A08 8FAE0090 */ lw $t6, 0x90($sp) +/* 01960C 80018A0C 10000006 */ b .L80018A28 +/* 019610 80018A10 A1CD0000 */ sb $t5, ($t6) +.L80018A14: +/* 019614 80018A14 80AF003A */ lb $t7, 0x3a($a1) +/* 019618 80018A18 8FB80090 */ lw $t8, 0x90($sp) +/* 01961C 80018A1C 154F0002 */ bne $t2, $t7, .L80018A28 +/* 019620 80018A20 00000000 */ nop +/* 019624 80018A24 A3000000 */ sb $zero, ($t8) +.L80018A28: +/* 019628 80018A28 C4AA0000 */ lwc1 $f10, ($a1) +/* 01962C 80018A2C C7A80080 */ lwc1 $f8, 0x80($sp) +/* 019630 80018A30 C4A40004 */ lwc1 $f4, 4($a1) +/* 019634 80018A34 46085182 */ mul.s $f6, $f10, $f8 +/* 019638 80018A38 C7AA0084 */ lwc1 $f10, 0x84($sp) +/* 01963C 80018A3C 00A02025 */ move $a0, $a1 +/* 019640 80018A40 3C0D8012 */ lui $t5, %hi(D_8011AED0) # $t5, 0x8012 +/* 019644 80018A44 460A2202 */ mul.s $f8, $f4, $f10 +/* 019648 80018A48 C4AA0008 */ lwc1 $f10, 8($a1) +/* 01964C 80018A4C 3C0E8012 */ lui $t6, %hi(D_8011AECC) # $t6, 0x8012 +/* 019650 80018A50 46083100 */ add.s $f4, $f6, $f8 +/* 019654 80018A54 C7A60088 */ lwc1 $f6, 0x88($sp) +/* 019658 80018A58 00000000 */ nop +/* 01965C 80018A5C 46065202 */ mul.s $f8, $f10, $f6 +/* 019660 80018A60 C4A6000C */ lwc1 $f6, 0xc($a1) +/* 019664 80018A64 46082280 */ add.s $f10, $f4, $f8 +/* 019668 80018A68 46065500 */ add.s $f20, $f10, $f6 +/* 01966C 80018A6C 4614103C */ c.lt.s $f2, $f20 +/* 019670 80018A70 00000000 */ nop +/* 019674 80018A74 45000065 */ bc1f .L80018C0C +/* 019678 80018A78 00000000 */ nop +/* 01967C 80018A7C 84F90048 */ lh $t9, 0x48($a3) +/* 019680 80018A80 00000000 */ nop +/* 019684 80018A84 14790007 */ bne $v1, $t9, .L80018AA4 +/* 019688 80018A88 00000000 */ nop +/* 01968C 80018A8C 90A3003B */ lbu $v1, 0x3b($a1) +/* 019690 80018A90 8CE20064 */ lw $v0, 0x64($a3) +/* 019694 80018A94 10600003 */ beqz $v1, .L80018AA4 +/* 019698 80018A98 240C0078 */ li $t4, 120 +/* 01969C 80018A9C A04301F8 */ sb $v1, 0x1f8($v0) +/* 0196A0 80018AA0 A04C01F9 */ sb $t4, 0x1f9($v0) +.L80018AA4: +/* 0196A4 80018AA4 8DADAED0 */ lw $t5, %lo(D_8011AED0)($t5) +/* 0196A8 80018AA8 25080001 */ addiu $t0, $t0, 1 +/* 0196AC 80018AAC 150D0002 */ bne $t0, $t5, .L80018AB8 +/* 0196B0 80018AB0 2529003C */ addiu $t1, $t1, 0x3c +/* 0196B4 80018AB4 00004825 */ move $t1, $zero +.L80018AB8: +/* 0196B8 80018AB8 8DCEAECC */ lw $t6, %lo(D_8011AECC)($t6) +/* 0196BC 80018ABC C4E0000C */ lwc1 $f0, 0xc($a3) +/* 0196C0 80018AC0 012E2821 */ addu $a1, $t1, $t6 +/* 0196C4 80018AC4 C4AE0000 */ lwc1 $f14, ($a1) +/* 0196C8 80018AC8 C4B00004 */ lwc1 $f16, 4($a1) +/* 0196CC 80018ACC 46007102 */ mul.s $f4, $f14, $f0 +/* 0196D0 80018AD0 C4E20010 */ lwc1 $f2, 0x10($a3) +/* 0196D4 80018AD4 C4B20008 */ lwc1 $f18, 8($a1) +/* 0196D8 80018AD8 C4EC0014 */ lwc1 $f12, 0x14($a3) +/* 0196DC 80018ADC 46028202 */ mul.s $f8, $f16, $f2 +/* 0196E0 80018AE0 00001025 */ move $v0, $zero +/* 0196E4 80018AE4 460C9182 */ mul.s $f6, $f18, $f12 +/* 0196E8 80018AE8 46082280 */ add.s $f10, $f4, $f8 +/* 0196EC 80018AEC C4A8000C */ lwc1 $f8, 0xc($a1) +/* 0196F0 80018AF0 46065100 */ add.s $f4, $f10, $f6 +/* 0196F4 80018AF4 C7A6006C */ lwc1 $f6, 0x6c($sp) +/* 0196F8 80018AF8 46082280 */ add.s $f10, $f4, $f8 +/* 0196FC 80018AFC 46067102 */ mul.s $f4, $f14, $f6 +/* 019700 80018B00 E7AA0058 */ swc1 $f10, 0x58($sp) +/* 019704 80018B04 E7AA002C */ swc1 $f10, 0x2c($sp) +/* 019708 80018B08 46148202 */ mul.s $f8, $f16, $f20 +/* 01970C 80018B0C 46082100 */ add.s $f4, $f4, $f8 +/* 019710 80018B10 C7A80064 */ lwc1 $f8, 0x64($sp) +/* 019714 80018B14 00000000 */ nop +/* 019718 80018B18 46089282 */ mul.s $f10, $f18, $f8 +/* 01971C 80018B1C 460A2100 */ add.s $f4, $f4, $f10 +/* 019720 80018B20 C7AA002C */ lwc1 $f10, 0x2c($sp) +/* 019724 80018B24 E7A4005C */ swc1 $f4, 0x5c($sp) +/* 019728 80018B28 46005287 */ neg.s $f10, $f10 +/* 01972C 80018B2C 00000000 */ nop +/* 019730 80018B30 46045283 */ div.s $f10, $f10, $f4 +/* 019734 80018B34 E7AA005C */ swc1 $f10, 0x5c($sp) +/* 019738 80018B38 C4840000 */ lwc1 $f4, ($a0) +/* 01973C 80018B3C 00000000 */ nop +/* 019740 80018B40 E7A4003C */ swc1 $f4, 0x3c($sp) +/* 019744 80018B44 C4840004 */ lwc1 $f4, 4($a0) +/* 019748 80018B48 00000000 */ nop +/* 01974C 80018B4C E7A40034 */ swc1 $f4, 0x34($sp) +/* 019750 80018B50 C4840008 */ lwc1 $f4, 8($a0) +/* 019754 80018B54 E7A6002C */ swc1 $f6, 0x2c($sp) +/* 019758 80018B58 E7A40030 */ swc1 $f4, 0x30($sp) +/* 01975C 80018B5C C7A4003C */ lwc1 $f4, 0x3c($sp) +/* 019760 80018B60 E7A80028 */ swc1 $f8, 0x28($sp) +/* 019764 80018B64 46002182 */ mul.s $f6, $f4, $f0 +/* 019768 80018B68 C7A80034 */ lwc1 $f8, 0x34($sp) +/* 01976C 80018B6C E7AA0024 */ swc1 $f10, 0x24($sp) +/* 019770 80018B70 E7A40020 */ swc1 $f4, 0x20($sp) +/* 019774 80018B74 46024282 */ mul.s $f10, $f8, $f2 +/* 019778 80018B78 460A3180 */ add.s $f6, $f6, $f10 +/* 01977C 80018B7C C7AA0030 */ lwc1 $f10, 0x30($sp) +/* 019780 80018B80 00000000 */ nop +/* 019784 80018B84 460C5102 */ mul.s $f4, $f10, $f12 +/* 019788 80018B88 C7AC0024 */ lwc1 $f12, 0x24($sp) +/* 01978C 80018B8C 46043180 */ add.s $f6, $f6, $f4 +/* 019790 80018B90 C484000C */ lwc1 $f4, 0xc($a0) +/* 019794 80018B94 E7A80024 */ swc1 $f8, 0x24($sp) +/* 019798 80018B98 46043180 */ add.s $f6, $f6, $f4 +/* 01979C 80018B9C C7A40020 */ lwc1 $f4, 0x20($sp) +/* 0197A0 80018BA0 C7A8002C */ lwc1 $f8, 0x2c($sp) +/* 0197A4 80018BA4 E7A60050 */ swc1 $f6, 0x50($sp) +/* 0197A8 80018BA8 46082102 */ mul.s $f4, $f4, $f8 +/* 0197AC 80018BAC C7A80024 */ lwc1 $f8, 0x24($sp) +/* 0197B0 80018BB0 00000000 */ nop +/* 0197B4 80018BB4 46144202 */ mul.s $f8, $f8, $f20 +/* 0197B8 80018BB8 44804800 */ mtc1 $zero, $f9 +/* 0197BC 80018BBC 46082100 */ add.s $f4, $f4, $f8 +/* 0197C0 80018BC0 C7A80028 */ lwc1 $f8, 0x28($sp) +/* 0197C4 80018BC4 00000000 */ nop +/* 0197C8 80018BC8 46085282 */ mul.s $f10, $f10, $f8 +/* 0197CC 80018BCC 44804000 */ mtc1 $zero, $f8 +/* 0197D0 80018BD0 460A2000 */ add.s $f0, $f4, $f10 +/* 0197D4 80018BD4 00000000 */ nop +/* 0197D8 80018BD8 46003003 */ div.s $f0, $f6, $f0 +/* 0197DC 80018BDC 46006080 */ add.s $f2, $f12, $f0 +/* 0197E0 80018BE0 46001121 */ cvt.d.s $f4, $f2 +/* 0197E4 80018BE4 46244032 */ c.eq.d $f8, $f4 +/* 0197E8 80018BE8 00000000 */ nop +/* 0197EC 80018BEC 45010003 */ bc1t .L80018BFC +/* 0197F0 80018BF0 00000000 */ nop +/* 0197F4 80018BF4 10000003 */ b .L80018C04 +/* 0197F8 80018BF8 46026003 */ div.s $f0, $f12, $f2 +.L80018BFC: +/* 0197FC 80018BFC 44800000 */ mtc1 $zero, $f0 +/* 019800 80018C00 00000000 */ nop +.L80018C04: +/* 019804 80018C04 10000014 */ b .L80018C58 +/* 019808 80018C08 E4C00000 */ swc1 $f0, ($a2) +.L80018C0C: +/* 01980C 80018C0C E4C20000 */ swc1 $f2, ($a2) +/* 019810 80018C10 10000011 */ b .L80018C58 +/* 019814 80018C14 00001025 */ move $v0, $zero +.L80018C18: +/* 019818 80018C18 44815000 */ mtc1 $at, $f10 +/* 01981C 80018C1C 00000000 */ nop +/* 019820 80018C20 460A0182 */ mul.s $f6, $f0, $f10 +/* 019824 80018C24 444FF800 */ cfc1 $t7, $31 +/* 019828 80018C28 00000000 */ nop +/* 01982C 80018C2C 35E10003 */ ori $at, $t7, 3 +/* 019830 80018C30 38210002 */ xori $at, $at, 2 +/* 019834 80018C34 44C1F800 */ ctc1 $at, $31 +/* 019838 80018C38 00000000 */ nop +/* 01983C 80018C3C 46003224 */ cvt.w.s $f8, $f6 +/* 019840 80018C40 44024000 */ mfc1 $v0, $f8 +/* 019844 80018C44 44CFF800 */ ctc1 $t7, $31 +/* 019848 80018C48 14400002 */ bnez $v0, .L80018C54 +/* 01984C 80018C4C 00401825 */ move $v1, $v0 +/* 019850 80018C50 24430001 */ addiu $v1, $v0, 1 +.L80018C54: +/* 019854 80018C54 00601025 */ move $v0, $v1 +.L80018C58: +/* 019858 80018C58 8FBF001C */ lw $ra, 0x1c($sp) +/* 01985C 80018C5C C7B50010 */ lwc1 $f21, 0x10($sp) +/* 019860 80018C60 C7B40014 */ lwc1 $f20, 0x14($sp) +/* 019864 80018C64 03E00008 */ jr $ra +/* 019868 80018C68 27BD0078 */ addiu $sp, $sp, 0x78 + diff --git a/asm/non_matchings/unknown_005740/func_80018C6C.s b/asm/non_matchings/unknown_005740/func_80018C6C.s new file mode 100644 index 00000000..d4b90b0d --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80018C6C.s @@ -0,0 +1,35 @@ +glabel func_80018C6C +/* 01986C 80018C6C 3C028012 */ lui $v0, %hi(D_8011AE60) # $v0, 0x8012 +/* 019870 80018C70 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 +/* 019874 80018C74 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) +/* 019878 80018C78 8C42AE60 */ lw $v0, %lo(D_8011AE60)($v0) +/* 01987C 80018C7C 3C0E8012 */ lui $t6, %hi(D_8011AE58) # $t6, 0x8012 +/* 019880 80018C80 0043082A */ slt $at, $v0, $v1 +/* 019884 80018C84 10200013 */ beqz $at, .L80018CD4 +/* 019888 80018C88 00027880 */ sll $t7, $v0, 2 +/* 01988C 80018C8C 8DCEAE58 */ lw $t6, %lo(D_8011AE58)($t6) +/* 019890 80018C90 2406003E */ li $a2, 62 +/* 019894 80018C94 01CF2821 */ addu $a1, $t6, $t7 +.L80018C98: +/* 019898 80018C98 8CA40000 */ lw $a0, ($a1) +/* 01989C 80018C9C 24420001 */ addiu $v0, $v0, 1 +/* 0198A0 80018CA0 84980006 */ lh $t8, 6($a0) +/* 0198A4 80018CA4 0043082A */ slt $at, $v0, $v1 +/* 0198A8 80018CA8 33198000 */ andi $t9, $t8, 0x8000 +/* 0198AC 80018CAC 17200007 */ bnez $t9, .L80018CCC +/* 0198B0 80018CB0 00000000 */ nop +/* 0198B4 80018CB4 84880048 */ lh $t0, 0x48($a0) +/* 0198B8 80018CB8 00000000 */ nop +/* 0198BC 80018CBC 14C80003 */ bne $a2, $t0, .L80018CCC +/* 0198C0 80018CC0 00000000 */ nop +/* 0198C4 80018CC4 03E00008 */ jr $ra +/* 0198C8 80018CC8 00801025 */ move $v0, $a0 + +.L80018CCC: +/* 0198CC 80018CCC 1420FFF2 */ bnez $at, .L80018C98 +/* 0198D0 80018CD0 24A50004 */ addiu $a1, $a1, 4 +.L80018CD4: +/* 0198D4 80018CD4 00001025 */ move $v0, $zero +/* 0198D8 80018CD8 03E00008 */ jr $ra +/* 0198DC 80018CDC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80018CE0.s b/asm/non_matchings/unknown_005740/func_80018CE0.s new file mode 100644 index 00000000..c96a7917 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80018CE0.s @@ -0,0 +1,580 @@ +glabel func_80018CE0 +/* 0198E0 80018CE0 27BDFF00 */ addiu $sp, $sp, -0x100 +/* 0198E4 80018CE4 AFBF006C */ sw $ra, 0x6c($sp) +/* 0198E8 80018CE8 AFBE0068 */ sw $fp, 0x68($sp) +/* 0198EC 80018CEC AFB70064 */ sw $s7, 0x64($sp) +/* 0198F0 80018CF0 AFB60060 */ sw $s6, 0x60($sp) +/* 0198F4 80018CF4 AFB5005C */ sw $s5, 0x5c($sp) +/* 0198F8 80018CF8 AFB40058 */ sw $s4, 0x58($sp) +/* 0198FC 80018CFC AFB30054 */ sw $s3, 0x54($sp) +/* 019900 80018D00 AFB20050 */ sw $s2, 0x50($sp) +/* 019904 80018D04 AFB1004C */ sw $s1, 0x4c($sp) +/* 019908 80018D08 AFB00048 */ sw $s0, 0x48($sp) +/* 01990C 80018D0C E7BF0040 */ swc1 $f31, 0x40($sp) +/* 019910 80018D10 E7BE0044 */ swc1 $f30, 0x44($sp) +/* 019914 80018D14 E7BD0038 */ swc1 $f29, 0x38($sp) +/* 019918 80018D18 E7BC003C */ swc1 $f28, 0x3c($sp) +/* 01991C 80018D1C E7BB0030 */ swc1 $f27, 0x30($sp) +/* 019920 80018D20 E7BA0034 */ swc1 $f26, 0x34($sp) +/* 019924 80018D24 E7B90028 */ swc1 $f25, 0x28($sp) +/* 019928 80018D28 E7B8002C */ swc1 $f24, 0x2c($sp) +/* 01992C 80018D2C E7B70020 */ swc1 $f23, 0x20($sp) +/* 019930 80018D30 E7B60024 */ swc1 $f22, 0x24($sp) +/* 019934 80018D34 E7B50018 */ swc1 $f21, 0x18($sp) +/* 019938 80018D38 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 01993C 80018D3C AFA50104 */ sw $a1, 0x104($sp) +/* 019940 80018D40 AFA60108 */ sw $a2, 0x108($sp) +/* 019944 80018D44 AFA7010C */ sw $a3, 0x10c($sp) +/* 019948 80018D48 8C820064 */ lw $v0, 0x64($a0) +/* 01994C 80018D4C 0080A025 */ move $s4, $a0 +/* 019950 80018D50 844B0000 */ lh $t3, ($v0) +/* 019954 80018D54 00000000 */ nop +/* 019958 80018D58 156001E9 */ bnez $t3, .L80019500 +/* 01995C 80018D5C 8FBF006C */ lw $ra, 0x6c($sp) +/* 019960 80018D60 0C019884 */ jal func_80066210 +/* 019964 80018D64 00000000 */ nop +/* 019968 80018D68 144001E4 */ bnez $v0, .L800194FC +/* 01996C 80018D6C 3C0C8012 */ lui $t4, %hi(D_8011AE60) # $t4, 0x8012 +/* 019970 80018D70 8D8CAE60 */ lw $t4, %lo(D_8011AE60)($t4) +/* 019974 80018D74 3C0D8012 */ lui $t5, %hi(D_8011AE5C) # $t5, 0x8012 +/* 019978 80018D78 8DADAE5C */ lw $t5, %lo(D_8011AE5C)($t5) +/* 01997C 80018D7C AFAC00F4 */ sw $t4, 0xf4($sp) +/* 019980 80018D80 018D082A */ slt $at, $t4, $t5 +/* 019984 80018D84 10200135 */ beqz $at, .L8001925C +/* 019988 80018D88 000CC080 */ sll $t8, $t4, 2 +/* 01998C 80018D8C AFB80098 */ sw $t8, 0x98($sp) +/* 019990 80018D90 241E007F */ li $fp, 127 +/* 019994 80018D94 24170010 */ li $s7, 16 +/* 019998 80018D98 24160002 */ li $s6, 2 +/* 01999C 80018D9C 24150001 */ li $s5, 1 +.L80018DA0: +/* 0199A0 80018DA0 3C0F8012 */ lui $t7, %hi(D_8011AE58) # $t7, 0x8012 +/* 0199A4 80018DA4 8DEFAE58 */ lw $t7, %lo(D_8011AE58)($t7) +/* 0199A8 80018DA8 8FAE0098 */ lw $t6, 0x98($sp) +/* 0199AC 80018DAC 00000000 */ nop +/* 0199B0 80018DB0 01EEC821 */ addu $t9, $t7, $t6 +/* 0199B4 80018DB4 8F300000 */ lw $s0, ($t9) +/* 0199B8 80018DB8 00000000 */ nop +/* 0199BC 80018DBC 86080006 */ lh $t0, 6($s0) +/* 0199C0 80018DC0 00000000 */ nop +/* 0199C4 80018DC4 31098000 */ andi $t1, $t0, 0x8000 +/* 0199C8 80018DC8 1520011B */ bnez $t1, .L80019238 +/* 0199CC 80018DCC 8FAA00F4 */ lw $t2, 0xf4($sp) +/* 0199D0 80018DD0 86020048 */ lh $v0, 0x48($s0) +/* 0199D4 80018DD4 24010070 */ li $at, 112 +/* 0199D8 80018DD8 14410070 */ bne $v0, $at, .L80018F9C +/* 0199DC 80018DDC 24010047 */ li $at, 71 +/* 0199E0 80018DE0 C686000C */ lwc1 $f6, 0xc($s4) +/* 0199E4 80018DE4 C604000C */ lwc1 $f4, 0xc($s0) +/* 0199E8 80018DE8 C68A0010 */ lwc1 $f10, 0x10($s4) +/* 0199EC 80018DEC C6080010 */ lwc1 $f8, 0x10($s0) +/* 0199F0 80018DF0 46043001 */ sub.s $f0, $f6, $f4 +/* 0199F4 80018DF4 C6040014 */ lwc1 $f4, 0x14($s0) +/* 0199F8 80018DF8 46085081 */ sub.s $f2, $f10, $f8 +/* 0199FC 80018DFC C6860014 */ lwc1 $f6, 0x14($s4) +/* 019A00 80018E00 46000282 */ mul.s $f10, $f0, $f0 +/* 019A04 80018E04 46043381 */ sub.s $f14, $f6, $f4 +/* 019A08 80018E08 46021202 */ mul.s $f8, $f2, $f2 +/* 019A0C 80018E0C 00000000 */ nop +/* 019A10 80018E10 460E7102 */ mul.s $f4, $f14, $f14 +/* 019A14 80018E14 46085180 */ add.s $f6, $f10, $f8 +/* 019A18 80018E18 0C0326B4 */ jal sqrtf +/* 019A1C 80018E1C 46043300 */ add.s $f12, $f6, $f4 +/* 019A20 80018E20 8E030064 */ lw $v1, 0x64($s0) +/* 019A24 80018E24 46000086 */ mov.s $f2, $f0 +/* 019A28 80018E28 946A0002 */ lhu $t2, 2($v1) +/* 019A2C 80018E2C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 019A30 80018E30 448A5000 */ mtc1 $t2, $f10 +/* 019A34 80018E34 05410004 */ bgez $t2, .L80018E48 +/* 019A38 80018E38 46805220 */ cvt.s.w $f8, $f10 +/* 019A3C 80018E3C 44813000 */ mtc1 $at, $f6 +/* 019A40 80018E40 00000000 */ nop +/* 019A44 80018E44 46064200 */ add.s $f8, $f8, $f6 +.L80018E48: +/* 019A48 80018E48 4608003C */ c.lt.s $f0, $f8 +/* 019A4C 80018E4C 00000000 */ nop +/* 019A50 80018E50 450000F9 */ bc1f .L80019238 +/* 019A54 80018E54 8FAA00F4 */ lw $t2, 0xf4($sp) +/* 019A58 80018E58 AFA300BC */ sw $v1, 0xbc($sp) +/* 019A5C 80018E5C 0C000646 */ jal func_80001918 +/* 019A60 80018E60 E7A200C0 */ swc1 $f2, 0xc0($sp) +/* 019A64 80018E64 8FA300BC */ lw $v1, 0xbc($sp) +/* 019A68 80018E68 C7A200C0 */ lwc1 $f2, 0xc0($sp) +/* 019A6C 80018E6C 906B001C */ lbu $t3, 0x1c($v1) +/* 019A70 80018E70 00008825 */ move $s1, $zero +/* 019A74 80018E74 156200EF */ bne $t3, $v0, .L80019234 +/* 019A78 80018E78 00609825 */ move $s3, $v1 +/* 019A7C 80018E7C 94620000 */ lhu $v0, ($v1) +/* 019A80 80018E80 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 019A84 80018E84 44822000 */ mtc1 $v0, $f4 +/* 019A88 80018E88 04410004 */ bgez $v0, .L80018E9C +/* 019A8C 80018E8C 46802320 */ cvt.s.w $f12, $f4 +/* 019A90 80018E90 44815000 */ mtc1 $at, $f10 +/* 019A94 80018E94 00000000 */ nop +/* 019A98 80018E98 460A6300 */ add.s $f12, $f12, $f10 +.L80018E9C: +/* 019A9C 80018E9C 460C103E */ c.le.s $f2, $f12 +/* 019AA0 80018EA0 3C0142FE */ li $at, 0x42FE0000 # 127.000000 +/* 019AA4 80018EA4 45000003 */ bc1f .L80018EB4 +/* 019AA8 80018EA8 00000000 */ nop +/* 019AAC 80018EAC 10000014 */ b .L80018F00 +/* 019AB0 80018EB0 00009025 */ move $s2, $zero +.L80018EB4: +/* 019AB4 80018EB4 946D0002 */ lhu $t5, 2($v1) +/* 019AB8 80018EB8 460C1081 */ sub.s $f2, $f2, $f12 +/* 019ABC 80018EBC 44814000 */ mtc1 $at, $f8 +/* 019AC0 80018EC0 01A26023 */ subu $t4, $t5, $v0 +/* 019AC4 80018EC4 448C3000 */ mtc1 $t4, $f6 +/* 019AC8 80018EC8 46024102 */ mul.s $f4, $f8, $f2 +/* 019ACC 80018ECC 46803020 */ cvt.s.w $f0, $f6 +/* 019AD0 80018ED0 00000000 */ nop +/* 019AD4 80018ED4 46002283 */ div.s $f10, $f4, $f0 +/* 019AD8 80018ED8 4458F800 */ cfc1 $t8, $31 +/* 019ADC 80018EDC 00000000 */ nop +/* 019AE0 80018EE0 37010003 */ ori $at, $t8, 3 +/* 019AE4 80018EE4 38210002 */ xori $at, $at, 2 +/* 019AE8 80018EE8 44C1F800 */ ctc1 $at, $31 +/* 019AEC 80018EEC 00000000 */ nop +/* 019AF0 80018EF0 460051A4 */ cvt.w.s $f6, $f10 +/* 019AF4 80018EF4 44D8F800 */ ctc1 $t8, $31 +/* 019AF8 80018EF8 44123000 */ mfc1 $s2, $f6 +/* 019AFC 80018EFC 00000000 */ nop +.L80018F00: +/* 019B00 80018F00 9262000C */ lbu $v0, 0xc($s3) +/* 019B04 80018F04 2A41007B */ slti $at, $s2, 0x7b +/* 019B08 80018F08 10550005 */ beq $v0, $s5, .L80018F20 +/* 019B0C 80018F0C 00000000 */ nop +/* 019B10 80018F10 10560012 */ beq $v0, $s6, .L80018F5C +/* 019B14 80018F14 323000FF */ andi $s0, $s1, 0xff +/* 019B18 80018F18 1000001B */ b .L80018F88 +/* 019B1C 80018F1C 26310001 */ addiu $s1, $s1, 1 +.L80018F20: +/* 019B20 80018F20 14200005 */ bnez $at, .L80018F38 +/* 019B24 80018F24 323000FF */ andi $s0, $s1, 0xff +/* 019B28 80018F28 0C000445 */ jal func_80001114 +/* 019B2C 80018F2C 322400FF */ andi $a0, $s1, 0xff +/* 019B30 80018F30 10000015 */ b .L80018F88 +/* 019B34 80018F34 26310001 */ addiu $s1, $s1, 1 +.L80018F38: +/* 019B38 80018F38 03D22823 */ subu $a1, $fp, $s2 +/* 019B3C 80018F3C 30AF00FF */ andi $t7, $a1, 0xff +/* 019B40 80018F40 01E02825 */ move $a1, $t7 +/* 019B44 80018F44 0C00049A */ jal func_80001268 +/* 019B48 80018F48 320400FF */ andi $a0, $s0, 0xff +/* 019B4C 80018F4C 0C00045C */ jal func_80001170 +/* 019B50 80018F50 320400FF */ andi $a0, $s0, 0xff +/* 019B54 80018F54 1000000C */ b .L80018F88 +/* 019B58 80018F58 26310001 */ addiu $s1, $s1, 1 +.L80018F5C: +/* 019B5C 80018F5C 0C0004AA */ jal func_800012A8 +/* 019B60 80018F60 320400FF */ andi $a0, $s0, 0xff +/* 019B64 80018F64 18400007 */ blez $v0, .L80018F84 +/* 019B68 80018F68 00000000 */ nop +/* 019B6C 80018F6C 0C000453 */ jal func_8000114C +/* 019B70 80018F70 02202025 */ move $a0, $s1 +/* 019B74 80018F74 14400003 */ bnez $v0, .L80018F84 +/* 019B78 80018F78 320400FF */ andi $a0, $s0, 0xff +/* 019B7C 80018F7C 0C00049A */ jal func_80001268 +/* 019B80 80018F80 324500FF */ andi $a1, $s2, 0xff +.L80018F84: +/* 019B84 80018F84 26310001 */ addiu $s1, $s1, 1 +.L80018F88: +/* 019B88 80018F88 1637FFDD */ bne $s1, $s7, .L80018F00 +/* 019B8C 80018F8C 26730001 */ addiu $s3, $s3, 1 +/* 019B90 80018F90 100000A9 */ b .L80019238 +/* 019B94 80018F94 8FAA00F4 */ lw $t2, 0xf4($sp) +/* 019B98 80018F98 24010047 */ li $at, 71 +.L80018F9C: +/* 019B9C 80018F9C 14410079 */ bne $v0, $at, .L80019184 +/* 019BA0 80018FA0 24010076 */ li $at, 118 +/* 019BA4 80018FA4 8E020064 */ lw $v0, 0x64($s0) +/* 019BA8 80018FA8 C7A80108 */ lwc1 $f8, 0x108($sp) +/* 019BAC 80018FAC C450000C */ lwc1 $f16, 0xc($v0) +/* 019BB0 80018FB0 C7A4010C */ lwc1 $f4, 0x10c($sp) +/* 019BB4 80018FB4 46088782 */ mul.s $f30, $f16, $f8 +/* 019BB8 80018FB8 C4520010 */ lwc1 $f18, 0x10($v0) +/* 019BBC 80018FBC C7AA0104 */ lwc1 $f10, 0x104($sp) +/* 019BC0 80018FC0 C44C0008 */ lwc1 $f12, 8($v0) +/* 019BC4 80018FC4 46049382 */ mul.s $f14, $f18, $f4 +/* 019BC8 80018FC8 C698000C */ lwc1 $f24, 0xc($s4) +/* 019BCC 80018FCC C69A0010 */ lwc1 $f26, 0x10($s4) +/* 019BD0 80018FD0 C4540014 */ lwc1 $f20, 0x14($v0) +/* 019BD4 80018FD4 460A6182 */ mul.s $f6, $f12, $f10 +/* 019BD8 80018FD8 C69C0014 */ lwc1 $f28, 0x14($s4) +/* 019BDC 80018FDC E7AE0078 */ swc1 $f14, 0x78($sp) +/* 019BE0 80018FE0 46186282 */ mul.s $f10, $f12, $f24 +/* 019BE4 80018FE4 461E3200 */ add.s $f8, $f6, $f30 +/* 019BE8 80018FE8 461A8182 */ mul.s $f6, $f16, $f26 +/* 019BEC 80018FEC 460E4100 */ add.s $f4, $f8, $f14 +/* 019BF0 80018FF0 46142000 */ add.s $f0, $f4, $f20 +/* 019BF4 80018FF4 461C9102 */ mul.s $f4, $f18, $f28 +/* 019BF8 80018FF8 46065200 */ add.s $f8, $f10, $f6 +/* 019BFC 80018FFC 44803000 */ mtc1 $zero, $f6 +/* 019C00 80019000 00000000 */ nop +/* 019C04 80019004 4600303C */ c.lt.s $f6, $f0 +/* 019C08 80019008 46044280 */ add.s $f10, $f8, $f4 +/* 019C0C 8001900C 45000009 */ bc1f .L80019034 +/* 019C10 80019010 46145080 */ add.s $f2, $f10, $f20 +/* 019C14 80019014 44804000 */ mtc1 $zero, $f8 +/* 019C18 80019018 00151E00 */ sll $v1, $s5, 0x18 +/* 019C1C 8001901C 4608103E */ c.le.s $f2, $f8 +/* 019C20 80019020 00037603 */ sra $t6, $v1, 0x18 +/* 019C24 80019024 45000003 */ bc1f .L80019034 +/* 019C28 80019028 00000000 */ nop +/* 019C2C 8001902C 1000000F */ b .L8001906C +/* 019C30 80019030 01C01825 */ move $v1, $t6 +.L80019034: +/* 019C34 80019034 44802000 */ mtc1 $zero, $f4 +/* 019C38 80019038 00001825 */ move $v1, $zero +/* 019C3C 8001903C 4602203C */ c.lt.s $f4, $f2 +/* 019C40 80019040 00000000 */ nop +/* 019C44 80019044 45000009 */ bc1f .L8001906C +/* 019C48 80019048 00000000 */ nop +/* 019C4C 8001904C 44805000 */ mtc1 $zero, $f10 +/* 019C50 80019050 00000000 */ nop +/* 019C54 80019054 460A003E */ c.le.s $f0, $f10 +/* 019C58 80019058 00000000 */ nop +/* 019C5C 8001905C 45000003 */ bc1f .L8001906C +/* 019C60 80019060 00000000 */ nop +/* 019C64 80019064 10000001 */ b .L8001906C +/* 019C68 80019068 2403FFFF */ li $v1, -1 +.L8001906C: +/* 019C6C 8001906C 10600072 */ beqz $v1, .L80019238 +/* 019C70 80019070 8FAA00F4 */ lw $t2, 0xf4($sp) +/* 019C74 80019074 C7A60104 */ lwc1 $f6, 0x104($sp) +/* 019C78 80019078 46006287 */ neg.s $f10, $f12 +/* 019C7C 8001907C 46065282 */ mul.s $f10, $f10, $f6 +/* 019C80 80019080 C7A80108 */ lwc1 $f8, 0x108($sp) +/* 019C84 80019084 C7A4010C */ lwc1 $f4, 0x10c($sp) +/* 019C88 80019088 E7A80070 */ swc1 $f8, 0x70($sp) +/* 019C8C 8001908C 4608D081 */ sub.s $f2, $f26, $f8 +/* 019C90 80019090 C7A80078 */ lwc1 $f8, 0x78($sp) +/* 019C94 80019094 461E5281 */ sub.s $f10, $f10, $f30 +/* 019C98 80019098 E7A40074 */ swc1 $f4, 0x74($sp) +/* 019C9C 8001909C 46085281 */ sub.s $f10, $f10, $f8 +/* 019CA0 800190A0 4606C001 */ sub.s $f0, $f24, $f6 +/* 019CA4 800190A4 46145201 */ sub.s $f8, $f10, $f20 +/* 019CA8 800190A8 46006282 */ mul.s $f10, $f12, $f0 +/* 019CAC 800190AC 4604E381 */ sub.s $f14, $f28, $f4 +/* 019CB0 800190B0 46028102 */ mul.s $f4, $f16, $f2 +/* 019CB4 800190B4 46045280 */ add.s $f10, $f10, $f4 +/* 019CB8 800190B8 460E9102 */ mul.s $f4, $f18, $f14 +/* 019CBC 800190BC 46045280 */ add.s $f10, $f10, $f4 +/* 019CC0 800190C0 00000000 */ nop +/* 019CC4 800190C4 460A4583 */ div.s $f22, $f8, $f10 +/* 019CC8 800190C8 C4480018 */ lwc1 $f8, 0x18($v0) +/* 019CCC 800190CC 4600B102 */ mul.s $f4, $f22, $f0 +/* 019CD0 800190D0 46062300 */ add.s $f12, $f4, $f6 +/* 019CD4 800190D4 460C403E */ c.le.s $f8, $f12 +/* 019CD8 800190D8 00000000 */ nop +/* 019CDC 800190DC 45000056 */ bc1f .L80019238 +/* 019CE0 800190E0 8FAA00F4 */ lw $t2, 0xf4($sp) +/* 019CE4 800190E4 C44A0024 */ lwc1 $f10, 0x24($v0) +/* 019CE8 800190E8 00000000 */ nop +/* 019CEC 800190EC 460A603E */ c.le.s $f12, $f10 +/* 019CF0 800190F0 00000000 */ nop +/* 019CF4 800190F4 45000050 */ bc1f .L80019238 +/* 019CF8 800190F8 8FAA00F4 */ lw $t2, 0xf4($sp) +/* 019CFC 800190FC 4602B102 */ mul.s $f4, $f22, $f2 +/* 019D00 80019100 C7A60070 */ lwc1 $f6, 0x70($sp) +/* 019D04 80019104 C448001C */ lwc1 $f8, 0x1c($v0) +/* 019D08 80019108 46062000 */ add.s $f0, $f4, $f6 +/* 019D0C 8001910C 4600403E */ c.le.s $f8, $f0 +/* 019D10 80019110 00000000 */ nop +/* 019D14 80019114 45000048 */ bc1f .L80019238 +/* 019D18 80019118 8FAA00F4 */ lw $t2, 0xf4($sp) +/* 019D1C 8001911C C44A0028 */ lwc1 $f10, 0x28($v0) +/* 019D20 80019120 00000000 */ nop +/* 019D24 80019124 460A003E */ c.le.s $f0, $f10 +/* 019D28 80019128 00000000 */ nop +/* 019D2C 8001912C 45000042 */ bc1f .L80019238 +/* 019D30 80019130 8FAA00F4 */ lw $t2, 0xf4($sp) +/* 019D34 80019134 460EB102 */ mul.s $f4, $f22, $f14 +/* 019D38 80019138 C7A60074 */ lwc1 $f6, 0x74($sp) +/* 019D3C 8001913C C4480020 */ lwc1 $f8, 0x20($v0) +/* 019D40 80019140 46062000 */ add.s $f0, $f4, $f6 +/* 019D44 80019144 4600403E */ c.le.s $f8, $f0 +/* 019D48 80019148 00000000 */ nop +/* 019D4C 8001914C 4500003A */ bc1f .L80019238 +/* 019D50 80019150 8FAA00F4 */ lw $t2, 0xf4($sp) +/* 019D54 80019154 C44A002C */ lwc1 $f10, 0x2c($v0) +/* 019D58 80019158 3C018012 */ lui $at, %hi(D_8011AF60) # $at, 0x8012 +/* 019D5C 8001915C 460A003E */ c.le.s $f0, $f10 +/* 019D60 80019160 00000000 */ nop +/* 019D64 80019164 45000034 */ bc1f .L80019238 +/* 019D68 80019168 8FAA00F4 */ lw $t2, 0xf4($sp) +/* 019D6C 8001916C A0430000 */ sb $v1, ($v0) +/* 019D70 80019170 A0400001 */ sb $zero, 1($v0) +/* 019D74 80019174 A4400004 */ sh $zero, 4($v0) +/* 019D78 80019178 1000002E */ b .L80019234 +/* 019D7C 8001917C AC22AF60 */ sw $v0, %lo(D_8011AF60)($at) +/* 019D80 80019180 24010076 */ li $at, 118 +.L80019184: +/* 019D84 80019184 1441002C */ bne $v0, $at, .L80019238 +/* 019D88 80019188 8FAA00F4 */ lw $t2, 0xf4($sp) +/* 019D8C 8001918C C684000C */ lwc1 $f4, 0xc($s4) +/* 019D90 80019190 C606000C */ lwc1 $f6, 0xc($s0) +/* 019D94 80019194 C6880010 */ lwc1 $f8, 0x10($s4) +/* 019D98 80019198 C60A0010 */ lwc1 $f10, 0x10($s0) +/* 019D9C 8001919C 46062001 */ sub.s $f0, $f4, $f6 +/* 019DA0 800191A0 C6060014 */ lwc1 $f6, 0x14($s0) +/* 019DA4 800191A4 460A4081 */ sub.s $f2, $f8, $f10 +/* 019DA8 800191A8 C6840014 */ lwc1 $f4, 0x14($s4) +/* 019DAC 800191AC 46000202 */ mul.s $f8, $f0, $f0 +/* 019DB0 800191B0 46062381 */ sub.s $f14, $f4, $f6 +/* 019DB4 800191B4 8E110064 */ lw $s1, 0x64($s0) +/* 019DB8 800191B8 46021282 */ mul.s $f10, $f2, $f2 +/* 019DBC 800191BC 00000000 */ nop +/* 019DC0 800191C0 460E7182 */ mul.s $f6, $f14, $f14 +/* 019DC4 800191C4 460A4100 */ add.s $f4, $f8, $f10 +/* 019DC8 800191C8 0C0326B4 */ jal sqrtf +/* 019DCC 800191CC 46062300 */ add.s $f12, $f4, $f6 +/* 019DD0 800191D0 92220002 */ lbu $v0, 2($s1) +/* 019DD4 800191D4 00000000 */ nop +/* 019DD8 800191D8 0002C880 */ sll $t9, $v0, 2 +/* 019DDC 800191DC 44994000 */ mtc1 $t9, $f8 +/* 019DE0 800191E0 00000000 */ nop +/* 019DE4 800191E4 468042A0 */ cvt.s.w $f10, $f8 +/* 019DE8 800191E8 460A003C */ c.lt.s $f0, $f10 +/* 019DEC 800191EC 00000000 */ nop +/* 019DF0 800191F0 45000011 */ bc1f .L80019238 +/* 019DF4 800191F4 8FAA00F4 */ lw $t2, 0xf4($sp) +/* 019DF8 800191F8 0C000417 */ jal func_8000105C +/* 019DFC 800191FC 00000000 */ nop +/* 019E00 80019200 96280000 */ lhu $t0, ($s1) +/* 019E04 80019204 00000000 */ nop +/* 019E08 80019208 1102000B */ beq $t0, $v0, .L80019238 +/* 019E0C 8001920C 8FAA00F4 */ lw $t2, 0xf4($sp) +/* 019E10 80019210 0C000646 */ jal func_80001918 +/* 019E14 80019214 00000000 */ nop +/* 019E18 80019218 92290003 */ lbu $t1, 3($s1) +/* 019E1C 8001921C 00000000 */ nop +/* 019E20 80019220 15220005 */ bne $t1, $v0, .L80019238 +/* 019E24 80019224 8FAA00F4 */ lw $t2, 0xf4($sp) +/* 019E28 80019228 96240000 */ lhu $a0, ($s1) +/* 019E2C 8001922C 0C00041D */ jal func_80001074 +/* 019E30 80019230 00000000 */ nop +.L80019234: +/* 019E34 80019234 8FAA00F4 */ lw $t2, 0xf4($sp) +.L80019238: +/* 019E38 80019238 3C188012 */ lui $t8, %hi(D_8011AE5C) # $t8, 0x8012 +/* 019E3C 8001923C 8F18AE5C */ lw $t8, %lo(D_8011AE5C)($t8) +/* 019E40 80019240 8FAD0098 */ lw $t5, 0x98($sp) +/* 019E44 80019244 254B0001 */ addiu $t3, $t2, 1 +/* 019E48 80019248 0178082A */ slt $at, $t3, $t8 +/* 019E4C 8001924C 25AC0004 */ addiu $t4, $t5, 4 +/* 019E50 80019250 AFAC0098 */ sw $t4, 0x98($sp) +/* 019E54 80019254 1420FED2 */ bnez $at, .L80018DA0 +/* 019E58 80019258 AFAB00F4 */ sw $t3, 0xf4($sp) +.L8001925C: +/* 019E5C 8001925C 3C0F8012 */ lui $t7, %hi(D_8011AF60) # $t7, 0x8012 +/* 019E60 80019260 8DEFAF60 */ lw $t7, %lo(D_8011AF60)($t7) +/* 019E64 80019264 24150001 */ li $s5, 1 +/* 019E68 80019268 24160002 */ li $s6, 2 +/* 019E6C 8001926C 24170010 */ li $s7, 16 +/* 019E70 80019270 11E000A2 */ beqz $t7, .L800194FC +/* 019E74 80019274 241E007F */ li $fp, 127 +/* 019E78 80019278 0C000646 */ jal func_80001918 +/* 019E7C 8001927C 00000000 */ nop +/* 019E80 80019280 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 +/* 019E84 80019284 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) +/* 019E88 80019288 8FA80110 */ lw $t0, 0x110($sp) +/* 019E8C 8001928C 906E0040 */ lbu $t6, 0x40($v1) +/* 019E90 80019290 00008825 */ move $s1, $zero +/* 019E94 80019294 15C2008B */ bne $t6, $v0, .L800194C4 +/* 019E98 80019298 24140003 */ li $s4, 3 +/* 019E9C 8001929C 94790004 */ lhu $t9, 4($v1) +/* 019EA0 800192A0 3C0D8012 */ lui $t5, %hi(D_80126170) # $t5, 0x8012 +/* 019EA4 800192A4 03284821 */ addu $t1, $t9, $t0 +/* 019EA8 800192A8 A4690004 */ sh $t1, 4($v1) +/* 019EAC 800192AC 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 +/* 019EB0 800192B0 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) +/* 019EB4 800192B4 8DAD6170 */ lw $t5, %lo(D_80126170)($t5) +/* 019EB8 800192B8 906A0002 */ lbu $t2, 2($v1) +/* 019EBC 800192BC 94620004 */ lhu $v0, 4($v1) +/* 019EC0 800192C0 014D0019 */ multu $t2, $t5 +/* 019EC4 800192C4 241800FE */ li $t8, 254 +/* 019EC8 800192C8 00002012 */ mflo $a0 +/* 019ECC 800192CC 308CFFFF */ andi $t4, $a0, 0xffff +/* 019ED0 800192D0 0182082A */ slt $at, $t4, $v0 +/* 019ED4 800192D4 10200007 */ beqz $at, .L800192F4 +/* 019ED8 800192D8 01802025 */ move $a0, $t4 +/* 019EDC 800192DC A46C0004 */ sh $t4, 4($v1) +/* 019EE0 800192E0 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 +/* 019EE4 800192E4 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) +/* 019EE8 800192E8 00000000 */ nop +/* 019EEC 800192EC 94620004 */ lhu $v0, 4($v1) +/* 019EF0 800192F0 00000000 */ nop +.L800192F4: +/* 019EF4 800192F4 44822000 */ mtc1 $v0, $f4 +/* 019EF8 800192F8 04410005 */ bgez $v0, .L80019310 +/* 019EFC 800192FC 468021A0 */ cvt.s.w $f6, $f4 +/* 019F00 80019300 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 019F04 80019304 44814000 */ mtc1 $at, $f8 +/* 019F08 80019308 00000000 */ nop +/* 019F0C 8001930C 46083180 */ add.s $f6, $f6, $f8 +.L80019310: +/* 019F10 80019310 3C01437E */ li $at, 0x437E0000 # 254.000000 +/* 019F14 80019314 44815000 */ mtc1 $at, $f10 +/* 019F18 80019318 44844000 */ mtc1 $a0, $f8 +/* 019F1C 8001931C 460A3102 */ mul.s $f4, $f6, $f10 +/* 019F20 80019320 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 +/* 019F24 80019324 04810004 */ bgez $a0, .L80019338 +/* 019F28 80019328 468041A0 */ cvt.s.w $f6, $f8 +/* 019F2C 8001932C 44815000 */ mtc1 $at, $f10 +/* 019F30 80019330 00000000 */ nop +/* 019F34 80019334 460A3180 */ add.s $f6, $f6, $f10 +.L80019338: +/* 019F38 80019338 00000000 */ nop +/* 019F3C 8001933C 46062203 */ div.s $f8, $f4, $f6 +/* 019F40 80019340 444BF800 */ cfc1 $t3, $31 +/* 019F44 80019344 00000000 */ nop +/* 019F48 80019348 35610003 */ ori $at, $t3, 3 +/* 019F4C 8001934C 38210002 */ xori $at, $at, 2 +/* 019F50 80019350 44C1F800 */ ctc1 $at, $31 +/* 019F54 80019354 00000000 */ nop +/* 019F58 80019358 460042A4 */ cvt.w.s $f10, $f8 +/* 019F5C 8001935C 44055000 */ mfc1 $a1, $f10 +/* 019F60 80019360 44CBF800 */ ctc1 $t3, $31 +/* 019F64 80019364 28A100FE */ slti $at, $a1, 0xfe +/* 019F68 80019368 10200003 */ beqz $at, .L80019378 +/* 019F6C 8001936C 00000000 */ nop +/* 019F70 80019370 10000002 */ b .L8001937C +/* 019F74 80019374 A0650001 */ sb $a1, 1($v1) +.L80019378: +/* 019F78 80019378 A0780001 */ sb $t8, 1($v1) +.L8001937C: +/* 019F7C 8001937C 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 +/* 019F80 80019380 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) +/* 019F84 80019384 2413FFFF */ li $s3, -1 +.L80019388: +/* 019F88 80019388 806E0000 */ lb $t6, ($v1) +/* 019F8C 8001938C 00717821 */ addu $t7, $v1, $s1 +/* 019F90 80019390 81E20030 */ lb $v0, 0x30($t7) +/* 019F94 80019394 166E0003 */ bne $s3, $t6, .L800193A4 +/* 019F98 80019398 0002C883 */ sra $t9, $v0, 2 +/* 019F9C 8001939C 00194600 */ sll $t0, $t9, 0x18 +/* 019FA0 800193A0 00081603 */ sra $v0, $t0, 0x18 +.L800193A4: +/* 019FA4 800193A4 304A0003 */ andi $t2, $v0, 3 +/* 019FA8 800193A8 000A6E00 */ sll $t5, $t2, 0x18 +/* 019FAC 800193AC 000D6603 */ sra $t4, $t5, 0x18 +/* 019FB0 800193B0 11800012 */ beqz $t4, .L800193FC +/* 019FB4 800193B4 00000000 */ nop +/* 019FB8 800193B8 11950007 */ beq $t4, $s5, .L800193D8 +/* 019FBC 800193BC 323000FF */ andi $s0, $s1, 0xff +/* 019FC0 800193C0 11960028 */ beq $t4, $s6, .L80019464 +/* 019FC4 800193C4 00000000 */ nop +/* 019FC8 800193C8 11940012 */ beq $t4, $s4, .L80019414 +/* 019FCC 800193CC 00000000 */ nop +/* 019FD0 800193D0 1000003A */ b .L800194BC +/* 019FD4 800193D4 26310001 */ addiu $s1, $s1, 1 +.L800193D8: +/* 019FD8 800193D8 0C00045C */ jal func_80001170 +/* 019FDC 800193DC 320400FF */ andi $a0, $s0, 0xff +/* 019FE0 800193E0 320400FF */ andi $a0, $s0, 0xff +/* 019FE4 800193E4 0C00049A */ jal func_80001268 +/* 019FE8 800193E8 2405007F */ li $a1, 127 +/* 019FEC 800193EC 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 +/* 019FF0 800193F0 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) +/* 019FF4 800193F4 10000031 */ b .L800194BC +/* 019FF8 800193F8 26310001 */ addiu $s1, $s1, 1 +.L800193FC: +/* 019FFC 800193FC 0C000445 */ jal func_80001114 +/* 01A000 80019400 322400FF */ andi $a0, $s1, 0xff +/* 01A004 80019404 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 +/* 01A008 80019408 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) +/* 01A00C 8001940C 1000002B */ b .L800194BC +/* 01A010 80019410 26310001 */ addiu $s1, $s1, 1 +.L80019414: +/* 01A014 80019414 90620001 */ lbu $v0, 1($v1) +/* 01A018 80019418 323000FF */ andi $s0, $s1, 0xff +/* 01A01C 8001941C 28410080 */ slti $at, $v0, 0x80 +/* 01A020 80019420 1420000C */ bnez $at, .L80019454 +/* 01A024 80019424 2452FF81 */ addiu $s2, $v0, -0x7f +/* 01A028 80019428 324B00FF */ andi $t3, $s2, 0xff +/* 01A02C 8001942C 01609025 */ move $s2, $t3 +/* 01A030 80019430 0C00045C */ jal func_80001170 +/* 01A034 80019434 320400FF */ andi $a0, $s0, 0xff +/* 01A038 80019438 0C0004AA */ jal func_800012A8 +/* 01A03C 8001943C 320400FF */ andi $a0, $s0, 0xff +/* 01A040 80019440 0052082A */ slt $at, $v0, $s2 +/* 01A044 80019444 10200003 */ beqz $at, .L80019454 +/* 01A048 80019448 320400FF */ andi $a0, $s0, 0xff +/* 01A04C 8001944C 0C00049A */ jal func_80001268 +/* 01A050 80019450 324500FF */ andi $a1, $s2, 0xff +.L80019454: +/* 01A054 80019454 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 +/* 01A058 80019458 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) +/* 01A05C 8001945C 10000017 */ b .L800194BC +/* 01A060 80019460 26310001 */ addiu $s1, $s1, 1 +.L80019464: +/* 01A064 80019464 90620001 */ lbu $v0, 1($v1) +/* 01A068 80019468 323000FF */ andi $s0, $s1, 0xff +/* 01A06C 8001946C 2841007F */ slti $at, $v0, 0x7f +/* 01A070 80019470 1020000C */ beqz $at, .L800194A4 +/* 01A074 80019474 03C29023 */ subu $s2, $fp, $v0 +/* 01A078 80019478 325800FF */ andi $t8, $s2, 0xff +/* 01A07C 8001947C 03009025 */ move $s2, $t8 +/* 01A080 80019480 0C0004AA */ jal func_800012A8 +/* 01A084 80019484 320400FF */ andi $a0, $s0, 0xff +/* 01A088 80019488 0242082A */ slt $at, $s2, $v0 +/* 01A08C 8001948C 10200007 */ beqz $at, .L800194AC +/* 01A090 80019490 320400FF */ andi $a0, $s0, 0xff +/* 01A094 80019494 0C00049A */ jal func_80001268 +/* 01A098 80019498 324500FF */ andi $a1, $s2, 0xff +/* 01A09C 8001949C 10000003 */ b .L800194AC +/* 01A0A0 800194A0 00000000 */ nop +.L800194A4: +/* 01A0A4 800194A4 0C000445 */ jal func_80001114 +/* 01A0A8 800194A8 322400FF */ andi $a0, $s1, 0xff +.L800194AC: +/* 01A0AC 800194AC 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 +/* 01A0B0 800194B0 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) +/* 01A0B4 800194B4 00000000 */ nop +/* 01A0B8 800194B8 26310001 */ addiu $s1, $s1, 1 +.L800194BC: +/* 01A0BC 800194BC 1637FFB2 */ bne $s1, $s7, .L80019388 +/* 01A0C0 800194C0 00000000 */ nop +.L800194C4: +/* 01A0C4 800194C4 906F0001 */ lbu $t7, 1($v1) +/* 01A0C8 800194C8 240100FE */ li $at, 254 +/* 01A0CC 800194CC 15E1000C */ bne $t7, $at, .L80019500 +/* 01A0D0 800194D0 8FBF006C */ lw $ra, 0x6c($sp) +/* 01A0D4 800194D4 0C000646 */ jal func_80001918 +/* 01A0D8 800194D8 00000000 */ nop +/* 01A0DC 800194DC 3C0E8012 */ lui $t6, %hi(D_8011AF60) # $t6, 0x8012 +/* 01A0E0 800194E0 8DCEAF60 */ lw $t6, %lo(D_8011AF60)($t6) +/* 01A0E4 800194E4 3C018012 */ lui $at, %hi(D_8011AF60) # $at, 0x8012 +/* 01A0E8 800194E8 91D90040 */ lbu $t9, 0x40($t6) +/* 01A0EC 800194EC 00000000 */ nop +/* 01A0F0 800194F0 17220003 */ bne $t9, $v0, .L80019500 +/* 01A0F4 800194F4 8FBF006C */ lw $ra, 0x6c($sp) +/* 01A0F8 800194F8 AC20AF60 */ sw $zero, %lo(D_8011AF60)($at) +.L800194FC: +/* 01A0FC 800194FC 8FBF006C */ lw $ra, 0x6c($sp) +.L80019500: +/* 01A100 80019500 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 01A104 80019504 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 01A108 80019508 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 01A10C 8001950C C7B60024 */ lwc1 $f22, 0x24($sp) +/* 01A110 80019510 C7B90028 */ lwc1 $f25, 0x28($sp) +/* 01A114 80019514 C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 01A118 80019518 C7BB0030 */ lwc1 $f27, 0x30($sp) +/* 01A11C 8001951C C7BA0034 */ lwc1 $f26, 0x34($sp) +/* 01A120 80019520 C7BD0038 */ lwc1 $f29, 0x38($sp) +/* 01A124 80019524 C7BC003C */ lwc1 $f28, 0x3c($sp) +/* 01A128 80019528 C7BF0040 */ lwc1 $f31, 0x40($sp) +/* 01A12C 8001952C C7BE0044 */ lwc1 $f30, 0x44($sp) +/* 01A130 80019530 8FB00048 */ lw $s0, 0x48($sp) +/* 01A134 80019534 8FB1004C */ lw $s1, 0x4c($sp) +/* 01A138 80019538 8FB20050 */ lw $s2, 0x50($sp) +/* 01A13C 8001953C 8FB30054 */ lw $s3, 0x54($sp) +/* 01A140 80019540 8FB40058 */ lw $s4, 0x58($sp) +/* 01A144 80019544 8FB5005C */ lw $s5, 0x5c($sp) +/* 01A148 80019548 8FB60060 */ lw $s6, 0x60($sp) +/* 01A14C 8001954C 8FB70064 */ lw $s7, 0x64($sp) +/* 01A150 80019550 8FBE0068 */ lw $fp, 0x68($sp) +/* 01A154 80019554 03E00008 */ jr $ra +/* 01A158 80019558 27BD0100 */ addiu $sp, $sp, 0x100 + diff --git a/asm/non_matchings/unknown_005740/func_8001955C.s b/asm/non_matchings/unknown_005740/func_8001955C.s new file mode 100644 index 00000000..c840d476 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001955C.s @@ -0,0 +1,181 @@ +glabel func_8001955C +/* 01A15C 8001955C 27BDFF40 */ addiu $sp, $sp, -0xc0 +/* 01A160 80019560 AFB60040 */ sw $s6, 0x40($sp) +/* 01A164 80019564 3C168012 */ lui $s6, %hi(D_8011AED0) # $s6, 0x8012 +/* 01A168 80019568 8ED6AED0 */ lw $s6, %lo(D_8011AED0)($s6) +/* 01A16C 8001956C AFA600C8 */ sw $a2, 0xc8($sp) +/* 01A170 80019570 30CE00FF */ andi $t6, $a2, 0xff +/* 01A174 80019574 01C03025 */ move $a2, $t6 +/* 01A178 80019578 AFBF0044 */ sw $ra, 0x44($sp) +/* 01A17C 8001957C AFB5003C */ sw $s5, 0x3c($sp) +/* 01A180 80019580 AFB40038 */ sw $s4, 0x38($sp) +/* 01A184 80019584 AFB30034 */ sw $s3, 0x34($sp) +/* 01A188 80019588 AFB20030 */ sw $s2, 0x30($sp) +/* 01A18C 8001958C AFB1002C */ sw $s1, 0x2c($sp) +/* 01A190 80019590 AFB00028 */ sw $s0, 0x28($sp) +/* 01A194 80019594 E7B70020 */ swc1 $f23, 0x20($sp) +/* 01A198 80019598 E7B60024 */ swc1 $f22, 0x24($sp) +/* 01A19C 8001959C E7B50018 */ swc1 $f21, 0x18($sp) +/* 01A1A0 800195A0 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 01A1A4 800195A4 16C00003 */ bnez $s6, .L800195B4 +/* 01A1A8 800195A8 AFA400C0 */ sw $a0, 0xc0($sp) +/* 01A1AC 800195AC 10000088 */ b .L800197D0 +/* 01A1B0 800195B0 00001025 */ move $v0, $zero +.L800195B4: +/* 01A1B4 800195B4 24A2FFFE */ addiu $v0, $a1, -2 +/* 01A1B8 800195B8 04410002 */ bgez $v0, .L800195C4 +/* 01A1BC 800195BC 00408825 */ move $s1, $v0 +/* 01A1C0 800195C0 00568821 */ addu $s1, $v0, $s6 +.L800195C4: +/* 01A1C4 800195C4 44879000 */ mtc1 $a3, $f18 +/* 01A1C8 800195C8 8FAF00D0 */ lw $t7, 0xd0($sp) +/* 01A1CC 800195CC 46809520 */ cvt.s.w $f20, $f18 +/* 01A1D0 800195D0 448F9000 */ mtc1 $t7, $f18 +/* 01A1D4 800195D4 00C0A025 */ move $s4, $a2 +/* 01A1D8 800195D8 468095A0 */ cvt.s.w $f22, $f18 +/* 01A1DC 800195DC 27B200A4 */ addiu $s2, $sp, 0xa4 +/* 01A1E0 800195E0 27B30094 */ addiu $s3, $sp, 0x94 +/* 01A1E4 800195E4 27B00084 */ addiu $s0, $sp, 0x84 +/* 01A1E8 800195E8 27B50094 */ addiu $s5, $sp, 0x94 +.L800195EC: +/* 01A1EC 800195EC 02202025 */ move $a0, $s1 +/* 01A1F0 800195F0 0C006E87 */ jal func_8001BA1C +/* 01A1F4 800195F4 02802825 */ move $a1, $s4 +/* 01A1F8 800195F8 C448001C */ lwc1 $f8, 0x1c($v0) +/* 01A1FC 800195FC C44A0008 */ lwc1 $f10, 8($v0) +/* 01A200 80019600 C4460010 */ lwc1 $f6, 0x10($v0) +/* 01A204 80019604 460A4482 */ mul.s $f18, $f8, $f10 +/* 01A208 80019608 26310001 */ addiu $s1, $s1, 1 +/* 01A20C 8001960C 26520004 */ addiu $s2, $s2, 4 +/* 01A210 80019610 26100004 */ addiu $s0, $s0, 4 +/* 01A214 80019614 46149102 */ mul.s $f4, $f18, $f20 +/* 01A218 80019618 46043200 */ add.s $f8, $f6, $f4 +/* 01A21C 8001961C E648FFFC */ swc1 $f8, -4($s2) +/* 01A220 80019620 C452001C */ lwc1 $f18, 0x1c($v0) +/* 01A224 80019624 C44A0014 */ lwc1 $f10, 0x14($v0) +/* 01A228 80019628 46169182 */ mul.s $f6, $f18, $f22 +/* 01A22C 8001962C 46065100 */ add.s $f4, $f10, $f6 +/* 01A230 80019630 E6640000 */ swc1 $f4, ($s3) +/* 01A234 80019634 C4520000 */ lwc1 $f18, ($v0) +/* 01A238 80019638 C448001C */ lwc1 $f8, 0x1c($v0) +/* 01A23C 8001963C 46009287 */ neg.s $f10, $f18 +/* 01A240 80019640 460A4182 */ mul.s $f6, $f8, $f10 +/* 01A244 80019644 C4520018 */ lwc1 $f18, 0x18($v0) +/* 01A248 80019648 46143102 */ mul.s $f4, $f6, $f20 +/* 01A24C 8001964C 46049200 */ add.s $f8, $f18, $f4 +/* 01A250 80019650 16360002 */ bne $s1, $s6, .L8001965C +/* 01A254 80019654 E608FFFC */ swc1 $f8, -4($s0) +/* 01A258 80019658 00008825 */ move $s1, $zero +.L8001965C: +/* 01A25C 8001965C 1615FFE3 */ bne $s0, $s5, .L800195EC +/* 01A260 80019660 26730004 */ addiu $s3, $s3, 4 +/* 01A264 80019664 C7AA00D4 */ lwc1 $f10, 0xd4($sp) +/* 01A268 80019668 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 01A26C 8001966C 44811800 */ mtc1 $at, $f3 +/* 01A270 80019670 44801000 */ mtc1 $zero, $f2 +/* 01A274 80019674 460051A1 */ cvt.d.s $f6, $f10 +/* 01A278 80019678 46261481 */ sub.d $f18, $f2, $f6 +/* 01A27C 8001967C 44806000 */ mtc1 $zero, $f12 +/* 01A280 80019680 46209520 */ cvt.s.d $f20, $f18 +/* 01A284 80019684 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 01A288 80019688 460CA03C */ c.lt.s $f20, $f12 +/* 01A28C 8001968C 27A400A4 */ addiu $a0, $sp, 0xa4 +/* 01A290 80019690 45000002 */ bc1f .L8001969C +/* 01A294 80019694 00002825 */ move $a1, $zero +/* 01A298 80019698 46006506 */ mov.s $f20, $f12 +.L8001969C: +/* 01A29C 8001969C 4600A121 */ cvt.d.s $f4, $f20 +/* 01A2A0 800196A0 4624103C */ c.lt.d $f2, $f4 +/* 01A2A4 800196A4 00000000 */ nop +/* 01A2A8 800196A8 45000003 */ bc1f .L800196B8 +/* 01A2AC 800196AC 00000000 */ nop +/* 01A2B0 800196B0 4481A000 */ mtc1 $at, $f20 +/* 01A2B4 800196B4 00000000 */ nop +.L800196B8: +/* 01A2B8 800196B8 4406A000 */ mfc1 $a2, $f20 +/* 01A2BC 800196BC 0C00898F */ jal func_8002263C +/* 01A2C0 800196C0 27A70070 */ addiu $a3, $sp, 0x70 +/* 01A2C4 800196C4 4406A000 */ mfc1 $a2, $f20 +/* 01A2C8 800196C8 E7A00080 */ swc1 $f0, 0x80($sp) +/* 01A2CC 800196CC 27A40094 */ addiu $a0, $sp, 0x94 +/* 01A2D0 800196D0 00002825 */ move $a1, $zero +/* 01A2D4 800196D4 0C00898F */ jal func_8002263C +/* 01A2D8 800196D8 27A7006C */ addiu $a3, $sp, 0x6c +/* 01A2DC 800196DC 4406A000 */ mfc1 $a2, $f20 +/* 01A2E0 800196E0 46000586 */ mov.s $f22, $f0 +/* 01A2E4 800196E4 27A40084 */ addiu $a0, $sp, 0x84 +/* 01A2E8 800196E8 00002825 */ move $a1, $zero +/* 01A2EC 800196EC 0C00898F */ jal func_8002263C +/* 01A2F0 800196F0 27A70068 */ addiu $a3, $sp, 0x68 +/* 01A2F4 800196F4 C7A20070 */ lwc1 $f2, 0x70($sp) +/* 01A2F8 800196F8 C7AE006C */ lwc1 $f14, 0x6c($sp) +/* 01A2FC 800196FC 46021202 */ mul.s $f8, $f2, $f2 +/* 01A300 80019700 C7B00068 */ lwc1 $f16, 0x68($sp) +/* 01A304 80019704 E7A00078 */ swc1 $f0, 0x78($sp) +/* 01A308 80019708 460E7282 */ mul.s $f10, $f14, $f14 +/* 01A30C 8001970C 00000000 */ nop +/* 01A310 80019710 46108482 */ mul.s $f18, $f16, $f16 +/* 01A314 80019714 460A4180 */ add.s $f6, $f8, $f10 +/* 01A318 80019718 0C0326B4 */ jal sqrtf +/* 01A31C 8001971C 46123300 */ add.s $f12, $f6, $f18 +/* 01A320 80019720 44802000 */ mtc1 $zero, $f4 +/* 01A324 80019724 3C01800E */ lui $at, %hi(D_800E5634) # $at, 0x800e +/* 01A328 80019728 46040032 */ c.eq.s $f0, $f4 +/* 01A32C 8001972C 00000000 */ nop +/* 01A330 80019730 45010011 */ bc1t .L80019778 +/* 01A334 80019734 00000000 */ nop +/* 01A338 80019738 C4295630 */ lwc1 $f9, %lo(D_800E5630)($at) +/* 01A33C 8001973C C4285634 */ lwc1 $f8, %lo(D_800E5634)($at) +/* 01A340 80019740 460002A1 */ cvt.d.s $f10, $f0 +/* 01A344 80019744 00000000 */ nop +/* 01A348 80019748 462A4183 */ div.d $f6, $f8, $f10 +/* 01A34C 8001974C C7A20070 */ lwc1 $f2, 0x70($sp) +/* 01A350 80019750 C7AE006C */ lwc1 $f14, 0x6c($sp) +/* 01A354 80019754 C7B00068 */ lwc1 $f16, 0x68($sp) +/* 01A358 80019758 46203520 */ cvt.s.d $f20, $f6 +/* 01A35C 8001975C 46141082 */ mul.s $f2, $f2, $f20 +/* 01A360 80019760 00000000 */ nop +/* 01A364 80019764 46147382 */ mul.s $f14, $f14, $f20 +/* 01A368 80019768 E7A20070 */ swc1 $f2, 0x70($sp) +/* 01A36C 8001976C 46148402 */ mul.s $f16, $f16, $f20 +/* 01A370 80019770 E7AE006C */ swc1 $f14, 0x6c($sp) +/* 01A374 80019774 E7B00068 */ swc1 $f16, 0x68($sp) +.L80019778: +/* 01A378 80019778 C7B20080 */ lwc1 $f18, 0x80($sp) +/* 01A37C 8001977C C7A40070 */ lwc1 $f4, 0x70($sp) +/* 01A380 80019780 8FB800C0 */ lw $t8, 0xc0($sp) +/* 01A384 80019784 46049200 */ add.s $f8, $f18, $f4 +/* 01A388 80019788 C70A000C */ lwc1 $f10, 0xc($t8) +/* 01A38C 8001978C 8FB900D8 */ lw $t9, 0xd8($sp) +/* 01A390 80019790 460A4181 */ sub.s $f6, $f8, $f10 +/* 01A394 80019794 24020001 */ li $v0, 1 +/* 01A398 80019798 E7260000 */ swc1 $f6, ($t9) +/* 01A39C 8001979C C7B2006C */ lwc1 $f18, 0x6c($sp) +/* 01A3A0 800197A0 C7080010 */ lwc1 $f8, 0x10($t8) +/* 01A3A4 800197A4 4612B100 */ add.s $f4, $f22, $f18 +/* 01A3A8 800197A8 8FA800DC */ lw $t0, 0xdc($sp) +/* 01A3AC 800197AC 46082281 */ sub.s $f10, $f4, $f8 +/* 01A3B0 800197B0 E50A0000 */ swc1 $f10, ($t0) +/* 01A3B4 800197B4 C7B20068 */ lwc1 $f18, 0x68($sp) +/* 01A3B8 800197B8 C7A60078 */ lwc1 $f6, 0x78($sp) +/* 01A3BC 800197BC C7080014 */ lwc1 $f8, 0x14($t8) +/* 01A3C0 800197C0 46123100 */ add.s $f4, $f6, $f18 +/* 01A3C4 800197C4 8FA900E0 */ lw $t1, 0xe0($sp) +/* 01A3C8 800197C8 46082281 */ sub.s $f10, $f4, $f8 +/* 01A3CC 800197CC E52A0000 */ swc1 $f10, ($t1) +.L800197D0: +/* 01A3D0 800197D0 8FBF0044 */ lw $ra, 0x44($sp) +/* 01A3D4 800197D4 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 01A3D8 800197D8 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 01A3DC 800197DC C7B70020 */ lwc1 $f23, 0x20($sp) +/* 01A3E0 800197E0 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 01A3E4 800197E4 8FB00028 */ lw $s0, 0x28($sp) +/* 01A3E8 800197E8 8FB1002C */ lw $s1, 0x2c($sp) +/* 01A3EC 800197EC 8FB20030 */ lw $s2, 0x30($sp) +/* 01A3F0 800197F0 8FB30034 */ lw $s3, 0x34($sp) +/* 01A3F4 800197F4 8FB40038 */ lw $s4, 0x38($sp) +/* 01A3F8 800197F8 8FB5003C */ lw $s5, 0x3c($sp) +/* 01A3FC 800197FC 8FB60040 */ lw $s6, 0x40($sp) +/* 01A400 80019800 03E00008 */ jr $ra +/* 01A404 80019804 27BD00C0 */ addiu $sp, $sp, 0xc0 + diff --git a/asm/non_matchings/unknown_005740/func_8001A7D8.s b/asm/non_matchings/unknown_005740/func_8001A7D8.s new file mode 100644 index 00000000..a9a52aae --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001A7D8.s @@ -0,0 +1,69 @@ +glabel func_8001A7D8 +/* 01B3D8 8001A7D8 3C0E8012 */ lui $t6, %hi(D_8011AEE8) # $t6, 0x8012 +/* 01B3DC 8001A7DC 8DCEAEE8 */ lw $t6, %lo(D_8011AEE8)($t6) +/* 01B3E0 8001A7E0 2401FFFF */ li $at, -1 +/* 01B3E4 8001A7E4 8DCF0000 */ lw $t7, ($t6) +/* 01B3E8 8001A7E8 3C038012 */ lui $v1, %hi(D_8011ADC4) # $v1, 0x8012 +/* 01B3EC 8001A7EC 8DE20064 */ lw $v0, 0x64($t7) +/* 01B3F0 8001A7F0 2463ADC4 */ addiu $v1, %lo(D_8011ADC4) # addiu $v1, $v1, -0x523c +/* 01B3F4 8001A7F4 84580000 */ lh $t8, ($v0) +/* 01B3F8 8001A7F8 00000000 */ nop +/* 01B3FC 8001A7FC 17010003 */ bne $t8, $at, .L8001A80C +/* 01B400 8001A800 00000000 */ nop +/* 01B404 8001A804 03E00008 */ jr $ra +/* 01B408 8001A808 00001025 */ move $v0, $zero + +.L8001A80C: +/* 01B40C 8001A80C A0600000 */ sb $zero, ($v1) +/* 01B410 8001A810 90880049 */ lbu $t0, 0x49($a0) +/* 01B414 8001A814 8C990004 */ lw $t9, 4($a0) +/* 01B418 8001A818 00084880 */ sll $t1, $t0, 2 +/* 01B41C 8001A81C 03295021 */ addu $t2, $t9, $t1 +/* 01B420 8001A820 8D4B0000 */ lw $t3, ($t2) +/* 01B424 8001A824 3C0D8012 */ lui $t5, %hi(D_8011AEF5) # $t5, 0x8012 +/* 01B428 8001A828 316C0002 */ andi $t4, $t3, 2 +/* 01B42C 8001A82C 1580000F */ bnez $t4, .L8001A86C +/* 01B430 8001A830 3C0A8012 */ lui $t2, %hi(D_8011AE03) # $t2, 0x8012 +/* 01B434 8001A834 91ADAEF5 */ lbu $t5, %lo(D_8011AEF5)($t5) +/* 01B438 8001A838 240E0001 */ li $t6, 1 +/* 01B43C 8001A83C 15A00021 */ bnez $t5, .L8001A8C4 +/* 01B440 8001A840 00000000 */ nop +/* 01B444 8001A844 A06E0000 */ sb $t6, ($v1) +/* 01B448 8001A848 90980049 */ lbu $t8, 0x49($a0) +/* 01B44C 8001A84C 8C8F0004 */ lw $t7, 4($a0) +/* 01B450 8001A850 00184080 */ sll $t0, $t8, 2 +/* 01B454 8001A854 01E81021 */ addu $v0, $t7, $t0 +/* 01B458 8001A858 8C590000 */ lw $t9, ($v0) +/* 01B45C 8001A85C 00000000 */ nop +/* 01B460 8001A860 37290002 */ ori $t1, $t9, 2 +/* 01B464 8001A864 10000017 */ b .L8001A8C4 +/* 01B468 8001A868 AC490000 */ sw $t1, ($v0) +.L8001A86C: +/* 01B46C 8001A86C 814AAE03 */ lb $t2, %lo(D_8011AE03)($t2) +/* 01B470 8001A870 00000000 */ nop +/* 01B474 8001A874 11400013 */ beqz $t2, .L8001A8C4 +/* 01B478 8001A878 00000000 */ nop +/* 01B47C 8001A87C 804B0202 */ lb $t3, 0x202($v0) +/* 01B480 8001A880 3C0C8012 */ lui $t4, %hi(D_8011AEF5) # $t4, 0x8012 +/* 01B484 8001A884 29610008 */ slti $at, $t3, 8 +/* 01B488 8001A888 1420000E */ bnez $at, .L8001A8C4 +/* 01B48C 8001A88C 00000000 */ nop +/* 01B490 8001A890 918CAEF5 */ lbu $t4, %lo(D_8011AEF5)($t4) +/* 01B494 8001A894 240D0001 */ li $t5, 1 +/* 01B498 8001A898 1580000A */ bnez $t4, .L8001A8C4 +/* 01B49C 8001A89C 00000000 */ nop +/* 01B4A0 8001A8A0 A06D0000 */ sb $t5, ($v1) +/* 01B4A4 8001A8A4 90980049 */ lbu $t8, 0x49($a0) +/* 01B4A8 8001A8A8 8C8E0004 */ lw $t6, 4($a0) +/* 01B4AC 8001A8AC 00187880 */ sll $t7, $t8, 2 +/* 01B4B0 8001A8B0 01CF1021 */ addu $v0, $t6, $t7 +/* 01B4B4 8001A8B4 8C480000 */ lw $t0, ($v0) +/* 01B4B8 8001A8B8 00000000 */ nop +/* 01B4BC 8001A8BC 35190004 */ ori $t9, $t0, 4 +/* 01B4C0 8001A8C0 AC590000 */ sw $t9, ($v0) +.L8001A8C4: +/* 01B4C4 8001A8C4 80620000 */ lb $v0, ($v1) +/* 01B4C8 8001A8C8 00000000 */ nop +/* 01B4CC 8001A8CC 03E00008 */ jr $ra +/* 01B4D0 8001A8D0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001A8D4.s b/asm/non_matchings/unknown_005740/func_8001A8D4.s new file mode 100644 index 00000000..47eac5e9 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001A8D4.s @@ -0,0 +1,10 @@ +glabel func_8001A8D4 +/* 01B4D4 8001A8D4 240E012C */ li $t6, 300 +/* 01B4D8 8001A8D8 3C018012 */ lui $at, %hi(D_8011AD4E) # $at, 0x8012 +/* 01B4DC 8001A8DC A42EAD4E */ sh $t6, %lo(D_8011AD4E)($at) +/* 01B4E0 8001A8E0 3C018012 */ lui $at, %hi(D_8011AD50) # $at, 0x8012 +/* 01B4E4 8001A8E4 A020AD50 */ sb $zero, %lo(D_8011AD50)($at) +/* 01B4E8 8001A8E8 3C018012 */ lui $at, 0x8012 +/* 01B4EC 8001A8EC 03E00008 */ jr $ra +/* 01B4F0 8001A8F0 A024AD52 */ sb $a0, -0x52ae($at) + diff --git a/asm/non_matchings/unknown_005740/func_8001A8F4.s b/asm/non_matchings/unknown_005740/func_8001A8F4.s new file mode 100644 index 00000000..2854ece1 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001A8F4.s @@ -0,0 +1,367 @@ +glabel func_8001A8F4 +/* 01B4F4 8001A8F4 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 01B4F8 8001A8F8 AFBF001C */ sw $ra, 0x1c($sp) +/* 01B4FC 8001A8FC AFA40040 */ sw $a0, 0x40($sp) +/* 01B500 8001A900 AFB10018 */ sw $s1, 0x18($sp) +/* 01B504 8001A904 AFB00014 */ sw $s0, 0x14($sp) +/* 01B508 8001A908 0C01BCE2 */ jal func_8006F388 +/* 01B50C 8001A90C 24040001 */ li $a0, 1 +/* 01B510 8001A910 3C108012 */ lui $s0, %hi(D_8011AD4E) # $s0, 0x8012 +/* 01B514 8001A914 2610AD4E */ addiu $s0, %lo(D_8011AD4E) # addiu $s0, $s0, -0x52b2 +/* 01B518 8001A918 86030000 */ lh $v1, ($s0) +/* 01B51C 8001A91C 8FAE0040 */ lw $t6, 0x40($sp) +/* 01B520 8001A920 2419FFFF */ li $t9, -1 +/* 01B524 8001A924 006E7823 */ subu $t7, $v1, $t6 +/* 01B528 8001A928 A60F0000 */ sh $t7, ($s0) +/* 01B52C 8001A92C 86180000 */ lh $t8, ($s0) +/* 01B530 8001A930 28610033 */ slti $at, $v1, 0x33 +/* 01B534 8001A934 1F000002 */ bgtz $t8, .L8001A940 +/* 01B538 8001A938 00000000 */ nop +/* 01B53C 8001A93C A6190000 */ sh $t9, ($s0) +.L8001A940: +/* 01B540 8001A940 14200008 */ bnez $at, .L8001A964 +/* 01B544 8001A944 00000000 */ nop +/* 01B548 8001A948 86090000 */ lh $t1, ($s0) +/* 01B54C 8001A94C 3C04800E */ lui $a0, %hi(D_800DC858) # $a0, 0x800e +/* 01B550 8001A950 29210033 */ slti $at, $t1, 0x33 +/* 01B554 8001A954 10200003 */ beqz $at, .L8001A964 +/* 01B558 8001A958 00000000 */ nop +/* 01B55C 8001A95C 0C030076 */ jal func_800C01D8 +/* 01B560 8001A960 2484C858 */ addiu $a0, %lo(D_800DC858) # addiu $a0, $a0, -0x37a8 +.L8001A964: +/* 01B564 8001A964 3C028012 */ lui $v0, %hi(D_8011AD50) # $v0, 0x8012 +/* 01B568 8001A968 8042AD50 */ lb $v0, %lo(D_8011AD50)($v0) +/* 01B56C 8001A96C AFA00030 */ sw $zero, 0x30($sp) +/* 01B570 8001A970 14400071 */ bnez $v0, .L8001AB38 +/* 01B574 8001A974 00000000 */ nop +/* 01B578 8001A978 860A0000 */ lh $t2, ($s0) +/* 01B57C 8001A97C 2401FFFF */ li $at, -1 +/* 01B580 8001A980 1541006D */ bne $t2, $at, .L8001AB38 +/* 01B584 8001A984 3C118012 */ lui $s1, %hi(D_8011AEF0) # $s1, 0x8012 +/* 01B588 8001A988 2631AEF0 */ addiu $s1, %lo(D_8011AEF0) # addiu $s1, $s1, -0x5110 +/* 01B58C 8001A98C 8E2B0000 */ lw $t3, ($s1) +/* 01B590 8001A990 00008025 */ move $s0, $zero +/* 01B594 8001A994 19600029 */ blez $t3, .L8001AA3C +/* 01B598 8001A998 00001825 */ move $v1, $zero +.L8001A99C: +/* 01B59C 8001A99C 3C0C8012 */ lui $t4, %hi(D_8011AEE4) # $t4, 0x8012 +/* 01B5A0 8001A9A0 8D8CAEE4 */ lw $t4, %lo(D_8011AEE4)($t4) +/* 01B5A4 8001A9A4 2401FFFF */ li $at, -1 +/* 01B5A8 8001A9A8 01836821 */ addu $t5, $t4, $v1 +/* 01B5AC 8001A9AC 8DAE0000 */ lw $t6, ($t5) +/* 01B5B0 8001A9B0 00000000 */ nop +/* 01B5B4 8001A9B4 8DC50064 */ lw $a1, 0x64($t6) +/* 01B5B8 8001A9B8 00000000 */ nop +/* 01B5BC 8001A9BC 84AF0000 */ lh $t7, ($a1) +/* 01B5C0 8001A9C0 ACA00140 */ sw $zero, 0x140($a1) +/* 01B5C4 8001A9C4 11E10006 */ beq $t7, $at, .L8001A9E0 +/* 01B5C8 8001A9C8 00000000 */ nop +/* 01B5CC 8001A9CC 84B801AC */ lh $t8, 0x1ac($a1) +/* 01B5D0 8001A9D0 24010001 */ li $at, 1 +/* 01B5D4 8001A9D4 17010002 */ bne $t8, $at, .L8001A9E0 +/* 01B5D8 8001A9D8 00000000 */ nop +/* 01B5DC 8001A9DC AFB00030 */ sw $s0, 0x30($sp) +.L8001A9E0: +/* 01B5E0 8001A9E0 8CA40178 */ lw $a0, 0x178($a1) +/* 01B5E4 8001A9E4 00000000 */ nop +/* 01B5E8 8001A9E8 10800007 */ beqz $a0, .L8001AA08 +/* 01B5EC 8001A9EC 00000000 */ nop +/* 01B5F0 8001A9F0 AFA30020 */ sw $v1, 0x20($sp) +/* 01B5F4 8001A9F4 0C001223 */ jal func_8000488C +/* 01B5F8 8001A9F8 AFA50038 */ sw $a1, 0x38($sp) +/* 01B5FC 8001A9FC 8FA30020 */ lw $v1, 0x20($sp) +/* 01B600 8001AA00 8FA50038 */ lw $a1, 0x38($sp) +/* 01B604 8001AA04 00000000 */ nop +.L8001AA08: +/* 01B608 8001AA08 8CA4017C */ lw $a0, 0x17c($a1) +/* 01B60C 8001AA0C 00000000 */ nop +/* 01B610 8001AA10 10800005 */ beqz $a0, .L8001AA28 +/* 01B614 8001AA14 00000000 */ nop +/* 01B618 8001AA18 0C0025BE */ jal func_800096F8 +/* 01B61C 8001AA1C AFA30020 */ sw $v1, 0x20($sp) +/* 01B620 8001AA20 8FA30020 */ lw $v1, 0x20($sp) +/* 01B624 8001AA24 00000000 */ nop +.L8001AA28: +/* 01B628 8001AA28 8E390000 */ lw $t9, ($s1) +/* 01B62C 8001AA2C 26100001 */ addiu $s0, $s0, 1 +/* 01B630 8001AA30 0219082A */ slt $at, $s0, $t9 +/* 01B634 8001AA34 1420FFD9 */ bnez $at, .L8001A99C +/* 01B638 8001AA38 24630004 */ addiu $v1, $v1, 4 +.L8001AA3C: +/* 01B63C 8001AA3C 8FA30030 */ lw $v1, 0x30($sp) +/* 01B640 8001AA40 3C028012 */ lui $v0, %hi(D_8011AEE4) # $v0, 0x8012 +/* 01B644 8001AA44 8C42AEE4 */ lw $v0, %lo(D_8011AEE4)($v0) +/* 01B648 8001AA48 00034880 */ sll $t1, $v1, 2 +/* 01B64C 8001AA4C 00495021 */ addu $t2, $v0, $t1 +/* 01B650 8001AA50 8D4B0000 */ lw $t3, ($t2) +/* 01B654 8001AA54 8C460000 */ lw $a2, ($v0) +/* 01B658 8001AA58 3C0C8012 */ lui $t4, %hi(D_8011AEE4) # $t4, 0x8012 +/* 01B65C 8001AA5C AC4B0000 */ sw $t3, ($v0) +/* 01B660 8001AA60 8D8CAEE4 */ lw $t4, %lo(D_8011AEE4)($t4) +/* 01B664 8001AA64 3C0E8012 */ lui $t6, %hi(D_8011AEE4) # $t6, 0x8012 +/* 01B668 8001AA68 01896821 */ addu $t5, $t4, $t1 +/* 01B66C 8001AA6C ADA60000 */ sw $a2, ($t5) +/* 01B670 8001AA70 8DCEAEE4 */ lw $t6, %lo(D_8011AEE4)($t6) +/* 01B674 8001AA74 00000000 */ nop +/* 01B678 8001AA78 8DC40000 */ lw $a0, ($t6) +/* 01B67C 8001AA7C 0C001AB2 */ jal func_80006AC8 +/* 01B680 8001AA80 00000000 */ nop +/* 01B684 8001AA84 0C0282DD */ jal func_800A0B74 +/* 01B688 8001AA88 00000000 */ nop +/* 01B68C 8001AA8C 0C00FC34 */ jal func_8003F0D0 +/* 01B690 8001AA90 00000000 */ nop +/* 01B694 8001AA94 0C001276 */ jal func_800049D8 +/* 01B698 8001AA98 00000000 */ nop +/* 01B69C 8001AA9C 0C027B20 */ jal func_8009EC80 +/* 01B6A0 8001AAA0 00000000 */ nop +/* 01B6A4 8001AAA4 1040001C */ beqz $v0, .L8001AB18 +/* 01B6A8 8001AAA8 00000000 */ nop +/* 01B6AC 8001AAAC 0C009278 */ jal func_800249E0 +/* 01B6B0 8001AAB0 00002025 */ move $a0, $zero +/* 01B6B4 8001AAB4 0C01994B */ jal func_8006652C +/* 01B6B8 8001AAB8 00002025 */ move $a0, $zero +/* 01B6BC 8001AABC 3C0F8012 */ lui $t7, %hi(D_8011AEE4) # $t7, 0x8012 +/* 01B6C0 8001AAC0 8DEFAEE4 */ lw $t7, %lo(D_8011AEE4)($t7) +/* 01B6C4 8001AAC4 3C078012 */ lui $a3, %hi(D_8011AEEC) # $a3, 0x8012 +/* 01B6C8 8001AAC8 24E7AEEC */ addiu $a3, %lo(D_8011AEEC) # addiu $a3, $a3, -0x5114 +/* 01B6CC 8001AACC 8CE40000 */ lw $a0, ($a3) +/* 01B6D0 8001AAD0 8DE30000 */ lw $v1, ($t7) +/* 01B6D4 8001AAD4 8C860000 */ lw $a2, ($a0) +/* 01B6D8 8001AAD8 8C650064 */ lw $a1, 0x64($v1) +/* 01B6DC 8001AADC AC830000 */ sw $v1, ($a0) +/* 01B6E0 8001AAE0 8CF80000 */ lw $t8, ($a3) +/* 01B6E4 8001AAE4 3C08800E */ lui $t0, %hi(D_800DC744) # $t0, 0x800e +/* 01B6E8 8001AAE8 2508C744 */ addiu $t0, %lo(D_800DC744) # addiu $t0, $t0, -0x38bc +/* 01B6EC 8001AAEC AF060004 */ sw $a2, 4($t8) +/* 01B6F0 8001AAF0 81190000 */ lb $t9, ($t0) +/* 01B6F4 8001AAF4 00000000 */ nop +/* 01B6F8 8001AAF8 13200007 */ beqz $t9, .L8001AB18 +/* 01B6FC 8001AAFC 00000000 */ nop +/* 01B700 8001AB00 A1000000 */ sb $zero, ($t0) +/* 01B704 8001AB04 0C01BCE6 */ jal func_8006F398 +/* 01B708 8001AB08 AFA50038 */ sw $a1, 0x38($sp) +/* 01B70C 8001AB0C 8FA50038 */ lw $a1, 0x38($sp) +/* 01B710 8001AB10 00000000 */ nop +/* 01B714 8001AB14 A4A00000 */ sh $zero, ($a1) +.L8001AB18: +/* 01B718 8001AB18 8E290000 */ lw $t1, ($s1) +/* 01B71C 8001AB1C 3C078012 */ lui $a3, %hi(D_8011AD51) # $a3, 0x8012 +/* 01B720 8001AB20 24E7AD51 */ addiu $a3, %lo(D_8011AD51) # addiu $a3, $a3, -0x52af +/* 01B724 8001AB24 240A0001 */ li $t2, 1 +/* 01B728 8001AB28 3C018012 */ lui $at, %hi(D_8011AD50) # $at, 0x8012 +/* 01B72C 8001AB2C A0E90000 */ sb $t1, ($a3) +/* 01B730 8001AB30 A02AAD50 */ sb $t2, %lo(D_8011AD50)($at) +/* 01B734 8001AB34 24020001 */ li $v0, 1 +.L8001AB38: +/* 01B738 8001AB38 3C118012 */ lui $s1, %hi(D_8011AEF0) # $s1, 0x8012 +/* 01B73C 8001AB3C 24010001 */ li $at, 1 +/* 01B740 8001AB40 14410055 */ bne $v0, $at, .L8001AC98 +/* 01B744 8001AB44 2631AEF0 */ addiu $s1, %lo(D_8011AEF0) # addiu $s1, $s1, -0x5110 +/* 01B748 8001AB48 0C02AC75 */ jal func_800AB1D4 +/* 01B74C 8001AB4C 00002025 */ move $a0, $zero +/* 01B750 8001AB50 3C078012 */ lui $a3, %hi(D_8011AD51) # $a3, 0x8012 +/* 01B754 8001AB54 24E7AD51 */ addiu $a3, %lo(D_8011AD51) # addiu $a3, $a3, -0x52af +/* 01B758 8001AB58 80EB0000 */ lb $t3, ($a3) +/* 01B75C 8001AB5C 00000000 */ nop +/* 01B760 8001AB60 256CFFFF */ addiu $t4, $t3, -1 +/* 01B764 8001AB64 A0EC0000 */ sb $t4, ($a3) +/* 01B768 8001AB68 80E60000 */ lb $a2, ($a3) +/* 01B76C 8001AB6C 00000000 */ nop +/* 01B770 8001AB70 18C00046 */ blez $a2, .L8001AC8C +/* 01B774 8001AB74 24180002 */ li $t8, 2 +/* 01B778 8001AB78 8E240000 */ lw $a0, ($s1) +/* 01B77C 8001AB7C 00008025 */ move $s0, $zero +/* 01B780 8001AB80 18800015 */ blez $a0, .L8001ABD8 +/* 01B784 8001AB84 3C058012 */ lui $a1, %hi(D_8011AEE8) # $a1, 0x8012 +/* 01B788 8001AB88 3C0D8012 */ lui $t5, %hi(D_8011AEE4) # $t5, 0x8012 +/* 01B78C 8001AB8C 8DADAEE4 */ lw $t5, %lo(D_8011AEE4)($t5) +/* 01B790 8001AB90 24A5AEE8 */ addiu $a1, %lo(D_8011AEE8) # addiu $a1, $a1, -0x5118 +/* 01B794 8001AB94 8CA20000 */ lw $v0, ($a1) +/* 01B798 8001AB98 00067080 */ sll $t6, $a2, 2 +/* 01B79C 8001AB9C 01AE7821 */ addu $t7, $t5, $t6 +/* 01B7A0 8001ABA0 8DE30000 */ lw $v1, ($t7) +/* 01B7A4 8001ABA4 8C580000 */ lw $t8, ($v0) +/* 01B7A8 8001ABA8 00000000 */ nop +/* 01B7AC 8001ABAC 1303000A */ beq $t8, $v1, .L8001ABD8 +/* 01B7B0 8001ABB0 00000000 */ nop +.L8001ABB4: +/* 01B7B4 8001ABB4 26100001 */ addiu $s0, $s0, 1 +/* 01B7B8 8001ABB8 0204082A */ slt $at, $s0, $a0 +/* 01B7BC 8001ABBC 10200006 */ beqz $at, .L8001ABD8 +/* 01B7C0 8001ABC0 0010C880 */ sll $t9, $s0, 2 +/* 01B7C4 8001ABC4 00594821 */ addu $t1, $v0, $t9 +/* 01B7C8 8001ABC8 8D2A0000 */ lw $t2, ($t1) +/* 01B7CC 8001ABCC 00000000 */ nop +/* 01B7D0 8001ABD0 1543FFF8 */ bne $t2, $v1, .L8001ABB4 +/* 01B7D4 8001ABD4 00000000 */ nop +.L8001ABD8: +/* 01B7D8 8001ABD8 3C058012 */ lui $a1, %hi(D_8011AEE8) # $a1, 0x8012 +/* 01B7DC 8001ABDC 0204082A */ slt $at, $s0, $a0 +/* 01B7E0 8001ABE0 10200013 */ beqz $at, .L8001AC30 +/* 01B7E4 8001ABE4 24A5AEE8 */ addiu $a1, %lo(D_8011AEE8) # addiu $a1, $a1, -0x5118 +/* 01B7E8 8001ABE8 248BFFFF */ addiu $t3, $a0, -1 +/* 01B7EC 8001ABEC 020B082A */ slt $at, $s0, $t3 +/* 01B7F0 8001ABF0 1020000F */ beqz $at, .L8001AC30 +/* 01B7F4 8001ABF4 00101880 */ sll $v1, $s0, 2 +.L8001ABF8: +/* 01B7F8 8001ABF8 8CAC0000 */ lw $t4, ($a1) +/* 01B7FC 8001ABFC 26100001 */ addiu $s0, $s0, 1 +/* 01B800 8001AC00 01831021 */ addu $v0, $t4, $v1 +/* 01B804 8001AC04 8C4D0004 */ lw $t5, 4($v0) +/* 01B808 8001AC08 24630004 */ addiu $v1, $v1, 4 +/* 01B80C 8001AC0C AC4D0000 */ sw $t5, ($v0) +/* 01B810 8001AC10 8E2E0000 */ lw $t6, ($s1) +/* 01B814 8001AC14 00000000 */ nop +/* 01B818 8001AC18 25CFFFFF */ addiu $t7, $t6, -1 +/* 01B81C 8001AC1C 020F082A */ slt $at, $s0, $t7 +/* 01B820 8001AC20 1420FFF5 */ bnez $at, .L8001ABF8 +/* 01B824 8001AC24 00000000 */ nop +/* 01B828 8001AC28 80E60000 */ lb $a2, ($a3) +/* 01B82C 8001AC2C 00000000 */ nop +.L8001AC30: +/* 01B830 8001AC30 3C188012 */ lui $t8, %hi(D_8011AEE4) # $t8, 0x8012 +/* 01B834 8001AC34 8F18AEE4 */ lw $t8, %lo(D_8011AEE4)($t8) +/* 01B838 8001AC38 0006C880 */ sll $t9, $a2, 2 +/* 01B83C 8001AC3C 03194821 */ addu $t1, $t8, $t9 +/* 01B840 8001AC40 8D240000 */ lw $a0, ($t1) +/* 01B844 8001AC44 0C003FEE */ jal func_8000FFB8 +/* 01B848 8001AC48 00000000 */ nop +/* 01B84C 8001AC4C 3C078012 */ lui $a3, %hi(D_8011AD51) # $a3, 0x8012 +/* 01B850 8001AC50 24E7AD51 */ addiu $a3, %lo(D_8011AD51) # addiu $a3, $a3, -0x52af +/* 01B854 8001AC54 80EB0000 */ lb $t3, ($a3) +/* 01B858 8001AC58 3C0A8012 */ lui $t2, %hi(D_8011AEE4) # $t2, 0x8012 +/* 01B85C 8001AC5C 8D4AAEE4 */ lw $t2, %lo(D_8011AEE4)($t2) +/* 01B860 8001AC60 000B6080 */ sll $t4, $t3, 2 +/* 01B864 8001AC64 014C6821 */ addu $t5, $t2, $t4 +/* 01B868 8001AC68 ADA00000 */ sw $zero, ($t5) +/* 01B86C 8001AC6C 8E2E0000 */ lw $t6, ($s1) +/* 01B870 8001AC70 3C028012 */ lui $v0, %hi(D_8011AD50) # $v0, 0x8012 +/* 01B874 8001AC74 25CFFFFF */ addiu $t7, $t6, -1 +/* 01B878 8001AC78 AE2F0000 */ sw $t7, ($s1) +/* 01B87C 8001AC7C 8042AD50 */ lb $v0, %lo(D_8011AD50)($v0) +/* 01B880 8001AC80 10000006 */ b .L8001AC9C +/* 01B884 8001AC84 24010002 */ li $at, 2 +/* 01B888 8001AC88 24180002 */ li $t8, 2 +.L8001AC8C: +/* 01B88C 8001AC8C 3C018012 */ lui $at, %hi(D_8011AD50) # $at, 0x8012 +/* 01B890 8001AC90 A038AD50 */ sb $t8, %lo(D_8011AD50)($at) +/* 01B894 8001AC94 24020002 */ li $v0, 2 +.L8001AC98: +/* 01B898 8001AC98 24010002 */ li $at, 2 +.L8001AC9C: +/* 01B89C 8001AC9C 14410016 */ bne $v0, $at, .L8001ACF8 +/* 01B8A0 8001ACA0 3C198012 */ lui $t9, %hi(D_8011AEE4) # $t9, 0x8012 +/* 01B8A4 8001ACA4 8F39AEE4 */ lw $t9, %lo(D_8011AEE4)($t9) +/* 01B8A8 8001ACA8 00000000 */ nop +/* 01B8AC 8001ACAC 8F240000 */ lw $a0, ($t9) +/* 01B8B0 8001ACB0 00000000 */ nop +/* 01B8B4 8001ACB4 8C850064 */ lw $a1, 0x64($a0) +/* 01B8B8 8001ACB8 0C008C34 */ jal func_800230D0 +/* 01B8BC 8001ACBC AFA50038 */ sw $a1, 0x38($sp) +/* 01B8C0 8001ACC0 8FA50038 */ lw $a1, 0x38($sp) +/* 01B8C4 8001ACC4 24090003 */ li $t1, 3 +/* 01B8C8 8001ACC8 3C018012 */ lui $at, %hi(D_8011AD50) # $at, 0x8012 +/* 01B8CC 8001ACCC A0A001D8 */ sb $zero, 0x1d8($a1) +/* 01B8D0 8001ACD0 A029AD50 */ sb $t1, %lo(D_8011AD50)($at) +/* 01B8D4 8001ACD4 0C007917 */ jal func_8001E45C +/* 01B8D8 8001ACD8 2404000A */ li $a0, 10 +/* 01B8DC 8001ACDC 3C108012 */ lui $s0, %hi(D_8011ADC8) # $s0, 0x8012 +/* 01B8E0 8001ACE0 2610ADC8 */ addiu $s0, %lo(D_8011ADC8) # addiu $s0, $s0, -0x5238 +/* 01B8E4 8001ACE4 0C007A4F */ jal func_8001E93C +/* 01B8E8 8001ACE8 AE000000 */ sw $zero, ($s0) +/* 01B8EC 8001ACEC 3C028012 */ lui $v0, %hi(D_8011AD50) # $v0, 0x8012 +/* 01B8F0 8001ACF0 8042AD50 */ lb $v0, %lo(D_8011AD50)($v0) +/* 01B8F4 8001ACF4 00000000 */ nop +.L8001ACF8: +/* 01B8F8 8001ACF8 3C108012 */ lui $s0, %hi(D_8011ADC8) # $s0, 0x8012 +/* 01B8FC 8001ACFC 24010003 */ li $at, 3 +/* 01B900 8001AD00 1441000C */ bne $v0, $at, .L8001AD34 +/* 01B904 8001AD04 2610ADC8 */ addiu $s0, %lo(D_8011ADC8) # addiu $s0, $s0, -0x5238 +/* 01B908 8001AD08 3C04800E */ lui $a0, %hi(D_800DC860) # $a0, 0x800e +/* 01B90C 8001AD0C 0C030076 */ jal func_800C01D8 +/* 01B910 8001AD10 2484C860 */ addiu $a0, %lo(D_800DC860) # addiu $a0, $a0, -0x37a0 +/* 01B914 8001AD14 240B0004 */ li $t3, 4 +/* 01B918 8001AD18 3C018012 */ lui $at, %hi(D_8011AD50) # $at, 0x8012 +/* 01B91C 8001AD1C A02BAD50 */ sb $t3, %lo(D_8011AD50)($at) +/* 01B920 8001AD20 0C00A3E8 */ jal func_80028FA0 +/* 01B924 8001AD24 24040001 */ li $a0, 1 +/* 01B928 8001AD28 3C028012 */ lui $v0, %hi(D_80120010) # $v0, 0x8012 +/* 01B92C 8001AD2C 8042AD50 */ lb $v0, %lo(D_8011AD50)($v0) +/* 01B930 8001AD30 00000000 */ nop +.L8001AD34: +/* 01B934 8001AD34 24010004 */ li $at, 4 +/* 01B938 8001AD38 1441003E */ bne $v0, $at, .L8001AE34 +/* 01B93C 8001AD3C 8FBF001C */ lw $ra, 0x1c($sp) +/* 01B940 8001AD40 0C00A3E8 */ jal func_80028FA0 +/* 01B944 8001AD44 24040001 */ li $a0, 1 +/* 01B948 8001AD48 0C0168EC */ jal func_8005A3B0 +/* 01B94C 8001AD4C 00000000 */ nop +/* 01B950 8001AD50 0C01AF66 */ jal func_8006BD98 +/* 01B954 8001AD54 00000000 */ nop +/* 01B958 8001AD58 304A0040 */ andi $t2, $v0, 0x40 +/* 01B95C 8001AD5C 15400013 */ bnez $t2, .L8001ADAC +/* 01B960 8001AD60 3C0C8000 */ lui $t4, %hi(D_80000300) # $t4, 0x8000 +/* 01B964 8001AD64 8D8C0300 */ lw $t4, %lo(D_80000300)($t4) +/* 01B968 8001AD68 8FAE0040 */ lw $t6, 0x40($sp) +/* 01B96C 8001AD6C 15800003 */ bnez $t4, .L8001AD7C +/* 01B970 8001AD70 2402021C */ li $v0, 540 +/* 01B974 8001AD74 10000001 */ b .L8001AD7C +/* 01B978 8001AD78 2402019F */ li $v0, 415 +.L8001AD7C: +/* 01B97C 8001AD7C 8E0D0000 */ lw $t5, ($s0) +/* 01B980 8001AD80 00000000 */ nop +/* 01B984 8001AD84 01AE7821 */ addu $t7, $t5, $t6 +/* 01B988 8001AD88 01E2082B */ sltu $at, $t7, $v0 +/* 01B98C 8001AD8C 10200005 */ beqz $at, .L8001ADA4 +/* 01B990 8001AD90 AE0F0000 */ sw $t7, ($s0) +/* 01B994 8001AD94 0C02AC65 */ jal func_800AB194 +/* 01B998 8001AD98 24040001 */ li $a0, 1 +/* 01B99C 8001AD9C 10000003 */ b .L8001ADAC +/* 01B9A0 8001ADA0 00000000 */ nop +.L8001ADA4: +/* 01B9A4 8001ADA4 0C02AC75 */ jal func_800AB1D4 +/* 01B9A8 8001ADA8 24040001 */ li $a0, 1 +.L8001ADAC: +/* 01B9AC 8001ADAC 0C01A955 */ jal func_8006A554 +/* 01B9B0 8001ADB0 00002025 */ move $a0, $zero +/* 01B9B4 8001ADB4 0C01BAA4 */ jal func_8006EA90 +/* 01B9B8 8001ADB8 30508000 */ andi $s0, $v0, 0x8000 +/* 01B9BC 8001ADBC 8C590010 */ lw $t9, %lo(D_80120010)($v0) +/* 01B9C0 8001ADC0 00408825 */ move $s1, $v0 +/* 01B9C4 8001ADC4 00194B40 */ sll $t1, $t9, 0xd +/* 01B9C8 8001ADC8 05200002 */ bltz $t1, .L8001ADD4 +/* 01B9CC 8001ADCC 00000000 */ nop +/* 01B9D0 8001ADD0 00008025 */ move $s0, $zero +.L8001ADD4: +/* 01B9D4 8001ADD4 0C008531 */ jal func_800214C4 +/* 01B9D8 8001ADD8 00000000 */ nop +/* 01B9DC 8001ADDC 14400007 */ bnez $v0, .L8001ADFC +/* 01B9E0 8001ADE0 00000000 */ nop +/* 01B9E4 8001ADE4 12000013 */ beqz $s0, .L8001AE34 +/* 01B9E8 8001ADE8 8FBF001C */ lw $ra, 0x1c($sp) +/* 01B9EC 8001ADEC 0C030063 */ jal func_800C018C +/* 01B9F0 8001ADF0 00000000 */ nop +/* 01B9F4 8001ADF4 1440000F */ bnez $v0, .L8001AE34 +/* 01B9F8 8001ADF8 8FBF001C */ lw $ra, 0x1c($sp) +.L8001ADFC: +/* 01B9FC 8001ADFC 12000003 */ beqz $s0, .L8001AE0C +/* 01BA00 8001AE00 3C04800E */ lui $a0, %hi(D_800DC6F8) # $a0, 0x800e +/* 01BA04 8001AE04 0C030076 */ jal func_800C01D8 +/* 01BA08 8001AE08 2484C6F8 */ addiu $a0, %lo(D_800DC6F8) # addiu $a0, $a0, -0x3908 +.L8001AE0C: +/* 01BA0C 8001AE0C 0C01BC50 */ jal func_8006F140 +/* 01BA10 8001AE10 24040002 */ li $a0, 2 +/* 01BA14 8001AE14 240B0005 */ li $t3, 5 +/* 01BA18 8001AE18 3C018012 */ lui $at, %hi(D_8011AD50) # $at, 0x8012 +/* 01BA1C 8001AE1C A02BAD50 */ sb $t3, %lo(D_8011AD50)($at) +/* 01BA20 8001AE20 8E2A0010 */ lw $t2, 0x10($s1) +/* 01BA24 8001AE24 3C010004 */ lui $at, 4 +/* 01BA28 8001AE28 01416025 */ or $t4, $t2, $at +/* 01BA2C 8001AE2C AE2C0010 */ sw $t4, 0x10($s1) +/* 01BA30 8001AE30 8FBF001C */ lw $ra, 0x1c($sp) +.L8001AE34: +/* 01BA34 8001AE34 8FB00014 */ lw $s0, 0x14($sp) +/* 01BA38 8001AE38 8FB10018 */ lw $s1, 0x18($sp) +/* 01BA3C 8001AE3C 03E00008 */ jr $ra +/* 01BA40 8001AE40 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_005740/func_8001AE44.s b/asm/non_matchings/unknown_005740/func_8001AE44.s new file mode 100644 index 00000000..b4ca3b53 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001AE44.s @@ -0,0 +1,6 @@ +glabel func_8001AE44 +/* 01BA44 8001AE44 3C028012 */ lui $v0, %hi(D_8011AD4E) # $v0, 0x8012 +/* 01BA48 8001AE48 8442AD4E */ lh $v0, %lo(D_8011AD4E)($v0) +/* 01BA4C 8001AE4C 03E00008 */ jr $ra +/* 01BA50 8001AE50 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001AE54.s b/asm/non_matchings/unknown_005740/func_8001AE54.s new file mode 100644 index 00000000..79fa879f --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001AE54.s @@ -0,0 +1,6 @@ +glabel func_8001AE54 +/* 01BA54 8001AE54 3C028012 */ lui $v0, %hi(D_8011ADC8) # $v0, 0x8012 +/* 01BA58 8001AE58 8C42ADC8 */ lw $v0, %lo(D_8011ADC8)($v0) +/* 01BA5C 8001AE5C 03E00008 */ jr $ra +/* 01BA60 8001AE60 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001AE64.s b/asm/non_matchings/unknown_005740/func_8001AE64.s new file mode 100644 index 00000000..0fe7a2be --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001AE64.s @@ -0,0 +1,288 @@ +glabel func_8001AE64 +/* 01BA64 8001AE64 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 01BA68 8001AE68 AFBF001C */ sw $ra, 0x1c($sp) +/* 01BA6C 8001AE6C 0C01AF6C */ jal func_8006BDB0 +/* 01BA70 8001AE70 AFB00018 */ sw $s0, 0x18($sp) +/* 01BA74 8001AE74 0C01BAA4 */ jal func_8006EA90 +/* 01BA78 8001AE78 AFA2002C */ sw $v0, 0x2c($sp) +/* 01BA7C 8001AE7C 8FAA002C */ lw $t2, 0x2c($sp) +/* 01BA80 8001AE80 A0400114 */ sb $zero, 0x114($v0) +/* 01BA84 8001AE84 A0400116 */ sb $zero, 0x116($v0) +/* 01BA88 8001AE88 A0400115 */ sb $zero, 0x115($v0) +/* 01BA8C 8001AE8C 3C0E8012 */ lui $t6, %hi(D_8011AEE8) # $t6, 0x8012 +/* 01BA90 8001AE90 8DCEAEE8 */ lw $t6, %lo(D_8011AEE8)($t6) +/* 01BA94 8001AE94 3C198012 */ lui $t9, %hi(D_8011AEF0) # $t9, 0x8012 +/* 01BA98 8001AE98 8DCF0000 */ lw $t7, ($t6) +/* 01BA9C 8001AE9C 8F39AEF0 */ lw $t9, %lo(D_8011AEF0)($t9) +/* 01BAA0 8001AEA0 8DF80064 */ lw $t8, 0x64($t7) +/* 01BAA4 8001AEA4 00404025 */ move $t0, $v0 +/* 01BAA8 8001AEA8 34108CA1 */ li $s0, 36001 +/* 01BAAC 8001AEAC 34098CA1 */ li $t1, 36001 +/* 01BAB0 8001AEB0 00006825 */ move $t5, $zero +/* 01BAB4 8001AEB4 1B20005A */ blez $t9, .L8001B020 +/* 01BAB8 8001AEB8 AFB80034 */ sw $t8, 0x34($sp) +/* 01BABC 8001AEBC 00006025 */ move $t4, $zero +.L8001AEC0: +/* 01BAC0 8001AEC0 3C0E8012 */ lui $t6, %hi(D_8011AEE8) # $t6, 0x8012 +/* 01BAC4 8001AEC4 8DCEAEE8 */ lw $t6, %lo(D_8011AEE8)($t6) +/* 01BAC8 8001AEC8 00000000 */ nop +/* 01BACC 8001AECC 01CC7821 */ addu $t7, $t6, $t4 +/* 01BAD0 8001AED0 8DF80000 */ lw $t8, ($t7) +/* 01BAD4 8001AED4 00000000 */ nop +/* 01BAD8 8001AED8 8F070064 */ lw $a3, 0x64($t8) +/* 01BADC 8001AEDC 00000000 */ nop +/* 01BAE0 8001AEE0 80F90002 */ lb $t9, 2($a3) +/* 01BAE4 8001AEE4 00000000 */ nop +/* 01BAE8 8001AEE8 07200047 */ bltz $t9, .L8001B008 +/* 01BAEC 8001AEEC 00000000 */ nop +/* 01BAF0 8001AEF0 AFA70038 */ sw $a3, 0x38($sp) +/* 01BAF4 8001AEF4 AFA80030 */ sw $t0, 0x30($sp) +/* 01BAF8 8001AEF8 AFA90050 */ sw $t1, 0x50($sp) +/* 01BAFC 8001AEFC AFAA002C */ sw $t2, 0x2c($sp) +/* 01BB00 8001AF00 AFAC0024 */ sw $t4, 0x24($sp) +/* 01BB04 8001AF04 0C0270F2 */ jal func_8009C3C8 +/* 01BB08 8001AF08 AFAD004C */ sw $t5, 0x4c($sp) +/* 01BB0C 8001AF0C 8FA70038 */ lw $a3, 0x38($sp) +/* 01BB10 8001AF10 8FA80030 */ lw $t0, 0x30($sp) +/* 01BB14 8001AF14 80E30002 */ lb $v1, 2($a3) +/* 01BB18 8001AF18 8FA90050 */ lw $t1, 0x50($sp) +/* 01BB1C 8001AF1C 8FAA002C */ lw $t2, 0x2c($sp) +/* 01BB20 8001AF20 8FAC0024 */ lw $t4, 0x24($sp) +/* 01BB24 8001AF24 8FAD004C */ lw $t5, 0x4c($sp) +/* 01BB28 8001AF28 0062082A */ slt $at, $v1, $v0 +/* 01BB2C 8001AF2C 240B0005 */ li $t3, 5 +/* 01BB30 8001AF30 10200035 */ beqz $at, .L8001B008 +/* 01BB34 8001AF34 241F0018 */ li $ra, 24 +/* 01BB38 8001AF38 007F0019 */ multu $v1, $ra +/* 01BB3C 8001AF3C 00007012 */ mflo $t6 +/* 01BB40 8001AF40 010E7821 */ addu $t7, $t0, $t6 +/* 01BB44 8001AF44 A1E00058 */ sb $zero, 0x58($t7) +/* 01BB48 8001AF48 80E201D7 */ lb $v0, 0x1d7($a3) +/* 01BB4C 8001AF4C 00000000 */ nop +/* 01BB50 8001AF50 0440002D */ bltz $v0, .L8001B008 +/* 01BB54 8001AF54 28410003 */ slti $at, $v0, 3 +/* 01BB58 8001AF58 1020002B */ beqz $at, .L8001B008 +/* 01BB5C 8001AF5C 00000000 */ nop +/* 01BB60 8001AF60 8158004B */ lb $t8, 0x4b($t2) +/* 01BB64 8001AF64 00003025 */ move $a2, $zero +/* 01BB68 8001AF68 1B00001C */ blez $t8, .L8001AFDC +/* 01BB6C 8001AF6C 00002025 */ move $a0, $zero +/* 01BB70 8001AF70 0004C880 */ sll $t9, $a0, 2 +/* 01BB74 8001AF74 00F91021 */ addu $v0, $a3, $t9 +/* 01BB78 8001AF78 00042840 */ sll $a1, $a0, 1 +.L8001AF7C: +/* 01BB7C 8001AF7C 80EF0002 */ lb $t7, 2($a3) +/* 01BB80 8001AF80 8C4E0128 */ lw $t6, 0x128($v0) +/* 01BB84 8001AF84 000FC080 */ sll $t8, $t7, 2 +/* 01BB88 8001AF88 030FC023 */ subu $t8, $t8, $t7 +/* 01BB8C 8001AF8C 0018C0C0 */ sll $t8, $t8, 3 +/* 01BB90 8001AF90 0118C821 */ addu $t9, $t0, $t8 +/* 01BB94 8001AF94 03257821 */ addu $t7, $t9, $a1 +/* 01BB98 8001AF98 A5EE0066 */ sh $t6, 0x66($t7) +/* 01BB9C 8001AF9C 8C430128 */ lw $v1, 0x128($v0) +/* 01BBA0 8001AFA0 24A50002 */ addiu $a1, $a1, 2 +/* 01BBA4 8001AFA4 0069082A */ slt $at, $v1, $t1 +/* 01BBA8 8001AFA8 10200005 */ beqz $at, .L8001AFC0 +/* 01BBAC 8001AFAC 00C33021 */ addu $a2, $a2, $v1 +/* 01BBB0 8001AFB0 A1040116 */ sb $a0, 0x116($t0) +/* 01BBB4 8001AFB4 80F80002 */ lb $t8, 2($a3) +/* 01BBB8 8001AFB8 00604825 */ move $t1, $v1 +/* 01BBBC 8001AFBC A1180115 */ sb $t8, 0x115($t0) +.L8001AFC0: +/* 01BBC0 8001AFC0 8159004B */ lb $t9, 0x4b($t2) +/* 01BBC4 8001AFC4 24840001 */ addiu $a0, $a0, 1 +/* 01BBC8 8001AFC8 0099082A */ slt $at, $a0, $t9 +/* 01BBCC 8001AFCC 10200003 */ beqz $at, .L8001AFDC +/* 01BBD0 8001AFD0 24420004 */ addiu $v0, $v0, 4 +/* 01BBD4 8001AFD4 148BFFE9 */ bne $a0, $t3, .L8001AF7C +/* 01BBD8 8001AFD8 00000000 */ nop +.L8001AFDC: +/* 01BBDC 8001AFDC 80EE0002 */ lb $t6, 2($a3) +/* 01BBE0 8001AFE0 00D0082A */ slt $at, $a2, $s0 +/* 01BBE4 8001AFE4 01DF0019 */ multu $t6, $ra +/* 01BBE8 8001AFE8 00007812 */ mflo $t7 +/* 01BBEC 8001AFEC 010FC021 */ addu $t8, $t0, $t7 +/* 01BBF0 8001AFF0 10200005 */ beqz $at, .L8001B008 +/* 01BBF4 8001AFF4 A7060064 */ sh $a2, 0x64($t8) +/* 01BBF8 8001AFF8 80F90002 */ lb $t9, 2($a3) +/* 01BBFC 8001AFFC 00C08025 */ move $s0, $a2 +/* 01BC00 8001B000 A1190114 */ sb $t9, 0x114($t0) +/* 01BC04 8001B004 AFA70034 */ sw $a3, 0x34($sp) +.L8001B008: +/* 01BC08 8001B008 3C0E8012 */ lui $t6, %hi(D_8011AEF0) # $t6, 0x8012 +/* 01BC0C 8001B00C 8DCEAEF0 */ lw $t6, %lo(D_8011AEF0)($t6) +/* 01BC10 8001B010 25AD0001 */ addiu $t5, $t5, 1 +/* 01BC14 8001B014 01AE082A */ slt $at, $t5, $t6 +/* 01BC18 8001B018 1420FFA9 */ bnez $at, .L8001AEC0 +/* 01BC1C 8001B01C 258C0004 */ addiu $t4, $t4, 4 +.L8001B020: +/* 01BC20 8001B020 A1000117 */ sb $zero, 0x117($t0) +/* 01BC24 8001B024 3C0F8012 */ lui $t7, %hi(D_8011AEF5) # $t7, 0x8012 +/* 01BC28 8001B028 91EFAEF5 */ lbu $t7, %lo(D_8011AEF5)($t7) +/* 01BC2C 8001B02C 240B0005 */ li $t3, 5 +/* 01BC30 8001B030 11E00091 */ beqz $t7, .L8001B278 +/* 01BC34 8001B034 241F0018 */ li $ra, 24 +/* 01BC38 8001B038 3C028012 */ lui $v0, %hi(D_8011AE82) # $v0, 0x8012 +/* 01BC3C 8001B03C 8442AE82 */ lh $v0, %lo(D_8011AE82)($v0) +/* 01BC40 8001B040 00000000 */ nop +/* 01BC44 8001B044 28410003 */ slti $at, $v0, 3 +/* 01BC48 8001B048 10200003 */ beqz $at, .L8001B058 +/* 01BC4C 8001B04C 00000000 */ nop +/* 01BC50 8001B050 04410002 */ bgez $v0, .L8001B05C +/* 01BC54 8001B054 00000000 */ nop +.L8001B058: +/* 01BC58 8001B058 00001025 */ move $v0, $zero +.L8001B05C: +/* 01BC5C 8001B05C 81190115 */ lb $t9, 0x115($t0) +/* 01BC60 8001B060 24180001 */ li $t8, 1 +/* 01BC64 8001B064 17200018 */ bnez $t9, .L8001B0C8 +/* 01BC68 8001B068 A1180117 */ sb $t8, 0x117($t0) +/* 01BC6C 8001B06C 00027080 */ sll $t6, $v0, 2 +/* 01BC70 8001B070 91190049 */ lbu $t9, 0x49($t0) +/* 01BC74 8001B074 010E7821 */ addu $t7, $t0, $t6 +/* 01BC78 8001B078 8DF80024 */ lw $t8, 0x24($t7) +/* 01BC7C 8001B07C 00197040 */ sll $t6, $t9, 1 +/* 01BC80 8001B080 030E2021 */ addu $a0, $t8, $t6 +/* 01BC84 8001B084 94830000 */ lhu $v1, ($a0) +/* 01BC88 8001B088 00000000 */ nop +/* 01BC8C 8001B08C 10600003 */ beqz $v1, .L8001B09C +/* 01BC90 8001B090 0123082A */ slt $at, $t1, $v1 +/* 01BC94 8001B094 1020000C */ beqz $at, .L8001B0C8 +/* 01BC98 8001B098 00000000 */ nop +.L8001B09C: +/* 01BC9C 8001B09C A4890000 */ sh $t1, ($a0) +/* 01BCA0 8001B0A0 810F0115 */ lb $t7, 0x115($t0) +/* 01BCA4 8001B0A4 810E0116 */ lb $t6, 0x116($t0) +/* 01BCA8 8001B0A8 01FF0019 */ multu $t7, $ra +/* 01BCAC 8001B0AC 240F0001 */ li $t7, 1 +/* 01BCB0 8001B0B0 0000C812 */ mflo $t9 +/* 01BCB4 8001B0B4 01191821 */ addu $v1, $t0, $t9 +/* 01BCB8 8001B0B8 80780058 */ lb $t8, 0x58($v1) +/* 01BCBC 8001B0BC 01CFC804 */ sllv $t9, $t7, $t6 +/* 01BCC0 8001B0C0 03197825 */ or $t7, $t8, $t9 +/* 01BCC4 8001B0C4 A06F0058 */ sb $t7, 0x58($v1) +.L8001B0C8: +/* 01BCC8 8001B0C8 81050114 */ lb $a1, 0x114($t0) +/* 01BCCC 8001B0CC 00027080 */ sll $t6, $v0, 2 +/* 01BCD0 8001B0D0 14A00018 */ bnez $a1, .L8001B134 +/* 01BCD4 8001B0D4 00000000 */ nop +/* 01BCD8 8001B0D8 910F0049 */ lbu $t7, 0x49($t0) +/* 01BCDC 8001B0DC 010EC021 */ addu $t8, $t0, $t6 +/* 01BCE0 8001B0E0 8F19003C */ lw $t9, 0x3c($t8) +/* 01BCE4 8001B0E4 000F7040 */ sll $t6, $t7, 1 +/* 01BCE8 8001B0E8 032E2021 */ addu $a0, $t9, $t6 +/* 01BCEC 8001B0EC 94830000 */ lhu $v1, ($a0) +/* 01BCF0 8001B0F0 00000000 */ nop +/* 01BCF4 8001B0F4 10600003 */ beqz $v1, .L8001B104 +/* 01BCF8 8001B0F8 0203082A */ slt $at, $s0, $v1 +/* 01BCFC 8001B0FC 1020000D */ beqz $at, .L8001B134 +/* 01BD00 8001B100 00000000 */ nop +.L8001B104: +/* 01BD04 8001B104 A4900000 */ sh $s0, ($a0) +/* 01BD08 8001B108 81180114 */ lb $t8, 0x114($t0) +/* 01BD0C 8001B10C 00000000 */ nop +/* 01BD10 8001B110 031F0019 */ multu $t8, $ra +/* 01BD14 8001B114 00007812 */ mflo $t7 +/* 01BD18 8001B118 010F1821 */ addu $v1, $t0, $t7 +/* 01BD1C 8001B11C 80790058 */ lb $t9, 0x58($v1) +/* 01BD20 8001B120 00000000 */ nop +/* 01BD24 8001B124 372E0080 */ ori $t6, $t9, 0x80 +/* 01BD28 8001B128 A06E0058 */ sb $t6, 0x58($v1) +/* 01BD2C 8001B12C 81050114 */ lb $a1, 0x114($t0) +/* 01BD30 8001B130 00000000 */ nop +.L8001B134: +/* 01BD34 8001B134 14A00050 */ bnez $a1, .L8001B278 +/* 01BD38 8001B138 2A012A30 */ slti $at, $s0, 0x2a30 +/* 01BD3C 8001B13C 10200024 */ beqz $at, .L8001B1D0 +/* 01BD40 8001B140 00000000 */ nop +/* 01BD44 8001B144 3C18800E */ lui $t8, %hi(D_800DC728) # $t8, 0x800e +/* 01BD48 8001B148 8718C728 */ lh $t8, %lo(D_800DC728)($t8) +/* 01BD4C 8001B14C 00000000 */ nop +/* 01BD50 8001B150 1458000F */ bne $v0, $t8, .L8001B190 +/* 01BD54 8001B154 00000000 */ nop +/* 01BD58 8001B158 0C01666A */ jal func_800599A8 +/* 01BD5C 8001B15C AFA80030 */ sw $t0, 0x30($sp) +/* 01BD60 8001B160 0C01AF62 */ jal func_8006BD88 +/* 01BD64 8001B164 AFA20028 */ sw $v0, 0x28($sp) +/* 01BD68 8001B168 8FAF0028 */ lw $t7, 0x28($sp) +/* 01BD6C 8001B16C 8FA80030 */ lw $t0, 0x30($sp) +/* 01BD70 8001B170 144F0007 */ bne $v0, $t7, .L8001B190 +/* 01BD74 8001B174 240B0005 */ li $t3, 5 +/* 01BD78 8001B178 3C19800E */ lui $t9, %hi(D_800DC724) # $t9, 0x800e +/* 01BD7C 8001B17C 8739C724 */ lh $t9, %lo(D_800DC724)($t9) +/* 01BD80 8001B180 00000000 */ nop +/* 01BD84 8001B184 0219082A */ slt $at, $s0, $t9 +/* 01BD88 8001B188 10200011 */ beqz $at, .L8001B1D0 +/* 01BD8C 8001B18C 00000000 */ nop +.L8001B190: +/* 01BD90 8001B190 3C01800E */ lui $at, %hi(D_800DC724) # $at, 0x800e +/* 01BD94 8001B194 3C0E8012 */ lui $t6, %hi(D_8011AE82) # $t6, 0x8012 +/* 01BD98 8001B198 85CEAE82 */ lh $t6, %lo(D_8011AE82)($t6) +/* 01BD9C 8001B19C A430C724 */ sh $s0, %lo(D_800DC724)($at) +/* 01BDA0 8001B1A0 3C01800E */ lui $at, %hi(D_800DC728) # $at, 0x800e +/* 01BDA4 8001B1A4 A42EC728 */ sh $t6, %lo(D_800DC728)($at) +/* 01BDA8 8001B1A8 81180059 */ lb $t8, 0x59($t0) +/* 01BDAC 8001B1AC 3C01800E */ lui $at, %hi(D_800DC72C) # $at, 0x800e +/* 01BDB0 8001B1B0 0C01AF62 */ jal func_8006BD88 +/* 01BDB4 8001B1B4 A438C72C */ sh $t8, %lo(D_800DC72C)($at) +/* 01BDB8 8001B1B8 0C016661 */ jal func_80059984 +/* 01BDBC 8001B1BC 00402025 */ move $a0, $v0 +/* 01BDC0 8001B1C0 240F0001 */ li $t7, 1 +/* 01BDC4 8001B1C4 3C01800E */ lui $at, %hi(D_800DC730) # $at, 0x800e +/* 01BDC8 8001B1C8 240B0005 */ li $t3, 5 +/* 01BDCC 8001B1CC A02FC730 */ sb $t7, %lo(D_800DC730)($at) +.L8001B1D0: +/* 01BDD0 8001B1D0 3C198000 */ lui $t9, %hi(D_80000300) # $t9, 0x8000 +/* 01BDD4 8001B1D4 8F390300 */ lw $t9, %lo(D_80000300)($t9) +/* 01BDD8 8001B1D8 00107080 */ sll $t6, $s0, 2 +/* 01BDDC 8001B1DC 17200010 */ bnez $t9, .L8001B220 +/* 01BDE0 8001B1E0 3C188012 */ lui $t8, %hi(D_8011AE80) # $t8, 0x8012 +/* 01BDE4 8001B1E4 01D07023 */ subu $t6, $t6, $s0 +/* 01BDE8 8001B1E8 000E7040 */ sll $t6, $t6, 1 +/* 01BDEC 8001B1EC 01CB001A */ div $zero, $t6, $t3 +/* 01BDF0 8001B1F0 15600002 */ bnez $t3, .L8001B1FC +/* 01BDF4 8001B1F4 00000000 */ nop +/* 01BDF8 8001B1F8 0007000D */ break 7 +.L8001B1FC: +/* 01BDFC 8001B1FC 2401FFFF */ li $at, -1 +/* 01BE00 8001B200 15610004 */ bne $t3, $at, .L8001B214 +/* 01BE04 8001B204 3C018000 */ lui $at, 0x8000 +/* 01BE08 8001B208 15C10002 */ bne $t6, $at, .L8001B214 +/* 01BE0C 8001B20C 00000000 */ nop +/* 01BE10 8001B210 0006000D */ break 6 +.L8001B214: +/* 01BE14 8001B214 00008012 */ mflo $s0 +/* 01BE18 8001B218 00000000 */ nop +/* 01BE1C 8001B21C 00000000 */ nop +.L8001B220: +/* 01BE20 8001B220 8718AE80 */ lh $t8, %lo(D_8011AE80)($t8) +/* 01BE24 8001B224 8FA40034 */ lw $a0, 0x34($sp) +/* 01BE28 8001B228 0218082A */ slt $at, $s0, $t8 +/* 01BE2C 8001B22C 10200010 */ beqz $at, .L8001B270 +/* 01BE30 8001B230 3C0F800E */ lui $t7, %hi(D_800DC734) # $t7, 0x800e +/* 01BE34 8001B234 91EFC734 */ lbu $t7, %lo(D_800DC734)($t7) +/* 01BE38 8001B238 8FA40034 */ lw $a0, 0x34($sp) +/* 01BE3C 8001B23C 11E00008 */ beqz $t7, .L8001B260 +/* 01BE40 8001B240 00000000 */ nop +/* 01BE44 8001B244 0C01AF62 */ jal func_8006BD88 +/* 01BE48 8001B248 00000000 */ nop +/* 01BE4C 8001B24C 8FA50034 */ lw $a1, 0x34($sp) +/* 01BE50 8001B250 0C006CF1 */ jal func_8001B3C4 +/* 01BE54 8001B254 00402025 */ move $a0, $v0 +/* 01BE58 8001B258 10000008 */ b .L8001B27C +/* 01BE5C 8001B25C 8FBF001C */ lw $ra, 0x1c($sp) +.L8001B260: +/* 01BE60 8001B260 0C029B6D */ jal func_800A6DB4 +/* 01BE64 8001B264 00000000 */ nop +/* 01BE68 8001B268 10000004 */ b .L8001B27C +/* 01BE6C 8001B26C 8FBF001C */ lw $ra, 0x1c($sp) +.L8001B270: +/* 01BE70 8001B270 0C029B6D */ jal func_800A6DB4 +/* 01BE74 8001B274 00000000 */ nop +.L8001B278: +/* 01BE78 8001B278 8FBF001C */ lw $ra, 0x1c($sp) +.L8001B27C: +/* 01BE7C 8001B27C 8FB00018 */ lw $s0, 0x18($sp) +/* 01BE80 8001B280 03E00008 */ jr $ra +/* 01BE84 8001B284 27BD0058 */ addiu $sp, $sp, 0x58 + diff --git a/asm/non_matchings/unknown_005740/func_8001B288.s b/asm/non_matchings/unknown_005740/func_8001B288.s new file mode 100644 index 00000000..6fcb6d7b --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001B288.s @@ -0,0 +1,26 @@ +glabel func_8001B288 +/* 01BE88 8001B288 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 01BE8C 8001B28C AFBF0014 */ sw $ra, 0x14($sp) +/* 01BE90 8001B290 0C01666A */ jal func_800599A8 +/* 01BE94 8001B294 00000000 */ nop +/* 01BE98 8001B298 0C01AF62 */ jal func_8006BD88 +/* 01BE9C 8001B29C AFA2001C */ sw $v0, 0x1c($sp) +/* 01BEA0 8001B2A0 8FAE001C */ lw $t6, 0x1c($sp) +/* 01BEA4 8001B2A4 8FBF0014 */ lw $ra, 0x14($sp) +/* 01BEA8 8001B2A8 104E0003 */ beq $v0, $t6, .L8001B2B8 +/* 01BEAC 8001B2AC 3C0F8012 */ lui $t7, %hi(D_8011AE82) # $t7, 0x8012 +/* 01BEB0 8001B2B0 10000009 */ b .L8001B2D8 +/* 01BEB4 8001B2B4 00001025 */ move $v0, $zero +.L8001B2B8: +/* 01BEB8 8001B2B8 3C18800E */ lui $t8, %hi(D_800DC728) # $t8, 0x800e +/* 01BEBC 8001B2BC 8718C728 */ lh $t8, %lo(D_800DC728)($t8) +/* 01BEC0 8001B2C0 85EFAE82 */ lh $t7, %lo(D_8011AE82)($t7) +/* 01BEC4 8001B2C4 24020001 */ li $v0, 1 +/* 01BEC8 8001B2C8 11F80003 */ beq $t7, $t8, .L8001B2D8 +/* 01BECC 8001B2CC 00000000 */ nop +/* 01BED0 8001B2D0 10000001 */ b .L8001B2D8 +/* 01BED4 8001B2D4 00001025 */ move $v0, $zero +.L8001B2D8: +/* 01BED8 8001B2D8 03E00008 */ jr $ra +/* 01BEDC 8001B2DC 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_005740/func_8001B2E0.s b/asm/non_matchings/unknown_005740/func_8001B2E0.s new file mode 100644 index 00000000..3dab4223 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001B2E0.s @@ -0,0 +1,6 @@ +glabel func_8001B2E0 +/* 01BEE0 8001B2E0 3C028012 */ lui $v0, %hi(D_8011AD34) # $v0, 0x8012 +/* 01BEE4 8001B2E4 8C42AD34 */ lw $v0, %lo(D_8011AD34)($v0) +/* 01BEE8 8001B2E8 03E00008 */ jr $ra +/* 01BEEC 8001B2EC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001B2F0.s b/asm/non_matchings/unknown_005740/func_8001B2F0.s new file mode 100644 index 00000000..cc3f9127 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001B2F0.s @@ -0,0 +1,53 @@ +glabel func_8001B2F0 +/* 01BEF0 8001B2F0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 01BEF4 8001B2F4 AFBF0014 */ sw $ra, 0x14($sp) +/* 01BEF8 8001B2F8 0C01AC2B */ jal func_8006B0AC +/* 01BEFC 8001B2FC AFA40028 */ sw $a0, 0x28($sp) +/* 01BF00 8001B300 3C058012 */ lui $a1, %hi(D_8011AE84) # $a1, 0x8012 +/* 01BF04 8001B304 24A5AE84 */ addiu $a1, %lo(D_8011AE84) # addiu $a1, $a1, -0x517c +/* 01BF08 8001B308 A4A20000 */ sh $v0, ($a1) +/* 01BF0C 8001B30C 0C01DB16 */ jal func_80076C58 +/* 01BF10 8001B310 24040030 */ li $a0, 48 +/* 01BF14 8001B314 3C058012 */ lui $a1, %hi(D_8011AE84) # $a1, 0x8012 +/* 01BF18 8001B318 8FA60028 */ lw $a2, 0x28($sp) +/* 01BF1C 8001B31C 24A5AE84 */ addiu $a1, %lo(D_8011AE84) # addiu $a1, $a1, -0x517c +/* 01BF20 8001B320 AFA20024 */ sw $v0, 0x24($sp) +/* 01BF24 8001B324 00401825 */ move $v1, $v0 +/* 01BF28 8001B328 240700FF */ li $a3, 255 +.L8001B32C: +/* 01BF2C 8001B32C 906E0000 */ lbu $t6, ($v1) +/* 01BF30 8001B330 00602025 */ move $a0, $v1 +/* 01BF34 8001B334 14CE0009 */ bne $a2, $t6, .L8001B35C +/* 01BF38 8001B338 00000000 */ nop +/* 01BF3C 8001B33C 84AF0000 */ lh $t7, ($a1) +/* 01BF40 8001B340 90780001 */ lbu $t8, 1($v1) +/* 01BF44 8001B344 00000000 */ nop +/* 01BF48 8001B348 15F80004 */ bne $t7, $t8, .L8001B35C +/* 01BF4C 8001B34C 00000000 */ nop +/* 01BF50 8001B350 90820000 */ lbu $v0, ($a0) +/* 01BF54 8001B354 10000005 */ b .L8001B36C +/* 01BF58 8001B358 00000000 */ nop +.L8001B35C: +/* 01BF5C 8001B35C 90820000 */ lbu $v0, ($a0) +/* 01BF60 8001B360 24630008 */ addiu $v1, $v1, 8 +/* 01BF64 8001B364 14E2FFF1 */ bne $a3, $v0, .L8001B32C +/* 01BF68 8001B368 00000000 */ nop +.L8001B36C: +/* 01BF6C 8001B36C 10E20008 */ beq $a3, $v0, .L8001B390 +/* 01BF70 8001B370 24050001 */ li $a1, 1 +/* 01BF74 8001B374 8C640004 */ lw $a0, 4($v1) +/* 01BF78 8001B378 8C79000C */ lw $t9, 0xc($v1) +/* 01BF7C 8001B37C 3C068012 */ lui $a2, %hi(D_8011AE80) # $a2, 0x8012 +/* 01BF80 8001B380 24C6AE80 */ addiu $a2, %lo(D_8011AE80) # addiu $a2, $a2, -0x5180 +/* 01BF84 8001B384 0C01669A */ jal func_80059A68 +/* 01BF88 8001B388 03242823 */ subu $a1, $t9, $a0 +/* 01BF8C 8001B38C 00402825 */ move $a1, $v0 +.L8001B390: +/* 01BF90 8001B390 8FA40024 */ lw $a0, 0x24($sp) +/* 01BF94 8001B394 0C01C450 */ jal func_80071140 +/* 01BF98 8001B398 AFA5001C */ sw $a1, 0x1c($sp) +/* 01BF9C 8001B39C 8FBF0014 */ lw $ra, 0x14($sp) +/* 01BFA0 8001B3A0 8FA2001C */ lw $v0, 0x1c($sp) +/* 01BFA4 8001B3A4 03E00008 */ jr $ra +/* 01BFA8 8001B3A8 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_005740/func_8001B3AC.s b/asm/non_matchings/unknown_005740/func_8001B3AC.s new file mode 100644 index 00000000..5b57075d --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001B3AC.s @@ -0,0 +1,8 @@ +glabel func_8001B3AC +/* 01BFAC 8001B3AC 3C0E800E */ lui $t6, %hi(D_800DC718) # $t6, 0x800e +/* 01BFB0 8001B3B0 8DCEC718 */ lw $t6, %lo(D_800DC718)($t6) +/* 01BFB4 8001B3B4 00000000 */ nop +/* 01BFB8 8001B3B8 008E1026 */ xor $v0, $a0, $t6 +/* 01BFBC 8001B3BC 03E00008 */ jr $ra +/* 01BFC0 8001B3C0 2C420001 */ sltiu $v0, $v0, 1 + diff --git a/asm/non_matchings/unknown_005740/func_8001B3C4.s b/asm/non_matchings/unknown_005740/func_8001B3C4.s new file mode 100644 index 00000000..3053e821 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001B3C4.s @@ -0,0 +1,86 @@ +glabel func_8001B3C4 +/* 01BFC4 8001B3C4 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 01BFC8 8001B3C8 AFBF001C */ sw $ra, 0x1c($sp) +/* 01BFCC 8001B3CC AFB00018 */ sw $s0, 0x18($sp) +/* 01BFD0 8001B3D0 3C01800E */ lui $at, %hi(D_800DC718) # $at, 0x800e +/* 01BFD4 8001B3D4 00808025 */ move $s0, $a0 +/* 01BFD8 8001B3D8 AFA50024 */ sw $a1, 0x24($sp) +/* 01BFDC 8001B3DC 0C0166D3 */ jal func_80059B4C +/* 01BFE0 8001B3E0 AC20C718 */ sw $zero, %lo(D_800DC718)($at) +/* 01BFE4 8001B3E4 3C01800E */ lui $at, %hi(D_800DC734) # $at, 0x800e +/* 01BFE8 8001B3E8 A020C734 */ sb $zero, %lo(D_800DC734)($at) +/* 01BFEC 8001B3EC 0C0078A7 */ jal func_8001E29C +/* 01BFF0 8001B3F0 2404001C */ li $a0, 28 +/* 01BFF4 8001B3F4 804E0000 */ lb $t6, ($v0) +/* 01BFF8 8001B3F8 2407FFFF */ li $a3, -1 +/* 01BFFC 8001B3FC 00402825 */ move $a1, $v0 +/* 01C000 8001B400 10EE000E */ beq $a3, $t6, .L8001B43C +/* 01C004 8001B404 00003025 */ move $a2, $zero +/* 01C008 8001B408 804F0000 */ lb $t7, ($v0) +/* 01C00C 8001B40C 00402021 */ addu $a0, $v0, $zero +/* 01C010 8001B410 120F000A */ beq $s0, $t7, .L8001B43C +/* 01C014 8001B414 00000000 */ nop +.L8001B418: +/* 01C018 8001B418 80980001 */ lb $t8, 1($a0) +/* 01C01C 8001B41C 24C60001 */ addiu $a2, $a2, 1 +/* 01C020 8001B420 10F80006 */ beq $a3, $t8, .L8001B43C +/* 01C024 8001B424 24840001 */ addiu $a0, $a0, 1 +/* 01C028 8001B428 00A6C821 */ addu $t9, $a1, $a2 +/* 01C02C 8001B42C 83280000 */ lb $t0, ($t9) +/* 01C030 8001B430 00000000 */ nop +/* 01C034 8001B434 1608FFF8 */ bne $s0, $t0, .L8001B418 +/* 01C038 8001B438 00000000 */ nop +.L8001B43C: +/* 01C03C 8001B43C 3C10800E */ lui $s0, %hi(D_800DC738) # $s0, 0x800e +/* 01C040 8001B440 2610C738 */ addiu $s0, %lo(D_800DC738) # addiu $s0, $s0, -0x38c8 +/* 01C044 8001B444 92090000 */ lbu $t1, ($s0) +/* 01C048 8001B448 240A0010 */ li $t2, 16 +/* 01C04C 8001B44C 11200024 */ beqz $t1, .L8001B4E0 +/* 01C050 8001B450 00CA2804 */ sllv $a1, $t2, $a2 +/* 01C054 8001B454 0C027A9E */ jal func_8009EA78 +/* 01C058 8001B458 000527C3 */ sra $a0, $a1, 0x1f +/* 01C05C 8001B45C 0C027AC2 */ jal func_8009EB08 +/* 01C060 8001B460 00000000 */ nop +/* 01C064 8001B464 3C0100FF */ lui $at, (0x00FFFFF0 >> 16) # lui $at, 0xff +/* 01C068 8001B468 3421FFF0 */ ori $at, (0x00FFFFF0 & 0xFFFF) # ori $at, $at, 0xfff0 +/* 01C06C 8001B46C 00616824 */ and $t5, $v1, $at +/* 01C070 8001B470 3C0100FF */ lui $at, (0x00FFFFF0 >> 16) # lui $at, 0xff +/* 01C074 8001B474 3421FFF0 */ ori $at, (0x00FFFFF0 & 0xFFFF) # ori $at, $at, 0xfff0 +/* 01C078 8001B478 15A1000F */ bne $t5, $at, .L8001B4B8 +/* 01C07C 8001B47C 2404024C */ li $a0, 588 +/* 01C080 8001B480 0C0270B8 */ jal func_8009C2E0 +/* 01C084 8001B484 24040001 */ li $a0, 1 +/* 01C088 8001B488 2404024E */ li $a0, 590 +/* 01C08C 8001B48C 0C000741 */ jal func_80001D04 +/* 01C090 8001B490 00002825 */ move $a1, $zero +/* 01C094 8001B494 2404024F */ li $a0, 591 +/* 01C098 8001B498 00002825 */ move $a1, $zero +/* 01C09C 8001B49C 0C0003F7 */ jal func_80000FDC +/* 01C0A0 8001B4A0 3C063FC0 */ lui $a2, 0x3fc0 +/* 01C0A4 8001B4A4 0C030C7B */ jal func_800C31EC +/* 01C0A8 8001B4A8 24040054 */ li $a0, 84 +/* 01C0AC 8001B4AC 1000000A */ b .L8001B4D8 +/* 01C0B0 8001B4B0 00000000 */ nop +/* 01C0B4 8001B4B4 2404024C */ li $a0, 588 +.L8001B4B8: +/* 01C0B8 8001B4B8 0C000741 */ jal func_80001D04 +/* 01C0BC 8001B4BC 00002825 */ move $a1, $zero +/* 01C0C0 8001B4C0 2404024D */ li $a0, 589 +/* 01C0C4 8001B4C4 00002825 */ move $a1, $zero +/* 01C0C8 8001B4C8 0C0003F7 */ jal func_80000FDC +/* 01C0CC 8001B4CC 3C063F80 */ lui $a2, 0x3f80 +/* 01C0D0 8001B4D0 0C030C7B */ jal func_800C31EC +/* 01C0D4 8001B4D4 24040053 */ li $a0, 83 +.L8001B4D8: +/* 01C0D8 8001B4D8 10000004 */ b .L8001B4EC +/* 01C0DC 8001B4DC A2000000 */ sb $zero, ($s0) +.L8001B4E0: +/* 01C0E0 8001B4E0 8FA40024 */ lw $a0, 0x24($sp) +/* 01C0E4 8001B4E4 0C029B6D */ jal func_800A6DB4 +/* 01C0E8 8001B4E8 00000000 */ nop +.L8001B4EC: +/* 01C0EC 8001B4EC 8FBF001C */ lw $ra, 0x1c($sp) +/* 01C0F0 8001B4F0 8FB00018 */ lw $s0, 0x18($sp) +/* 01C0F4 8001B4F4 03E00008 */ jr $ra +/* 01C0F8 8001B4F8 27BD0020 */ addiu $sp, $sp, 0x20 + diff --git a/asm/non_matchings/unknown_005740/func_8001B4FC.s b/asm/non_matchings/unknown_005740/func_8001B4FC.s new file mode 100644 index 00000000..a2b21361 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001B4FC.s @@ -0,0 +1,89 @@ +glabel func_8001B4FC +/* 01C0FC 8001B4FC 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 01C100 8001B500 3C01800E */ lui $at, %hi(D_800DC738) # $at, 0x800e +/* 01C104 8001B504 A020C738 */ sb $zero, %lo(D_800DC738)($at) +/* 01C108 8001B508 AFBF001C */ sw $ra, 0x1c($sp) +/* 01C10C 8001B50C AFB00018 */ sw $s0, 0x18($sp) +/* 01C110 8001B510 3C01800E */ lui $at, %hi(D_800DC734) # $at, 0x800e +/* 01C114 8001B514 00808025 */ move $s0, $a0 +/* 01C118 8001B518 0C01BAA4 */ jal func_8006EA90 +/* 01C11C 8001B51C A020C734 */ sb $zero, %lo(D_800DC734)($at) +/* 01C120 8001B520 AFA20020 */ sw $v0, 0x20($sp) +/* 01C124 8001B524 0C01AC2B */ jal func_8006B0AC +/* 01C128 8001B528 02002025 */ move $a0, $s0 +/* 01C12C 8001B52C 3C0E8012 */ lui $t6, %hi(D_8011AE82) # $t6, 0x8012 +/* 01C130 8001B530 85CEAE82 */ lh $t6, %lo(D_8011AE82)($t6) +/* 01C134 8001B534 00000000 */ nop +/* 01C138 8001B538 144E003C */ bne $v0, $t6, .L8001B62C +/* 01C13C 8001B53C 8FBF001C */ lw $ra, 0x1c($sp) +/* 01C140 8001B540 0C0078A7 */ jal func_8001E29C +/* 01C144 8001B544 2404001C */ li $a0, 28 +/* 01C148 8001B548 24040018 */ li $a0, 24 +/* 01C14C 8001B54C 0C0078A7 */ jal func_8001E29C +/* 01C150 8001B550 AFA20028 */ sw $v0, 0x28($sp) +/* 01C154 8001B554 8FA80028 */ lw $t0, 0x28($sp) +/* 01C158 8001B558 2407FFFF */ li $a3, -1 +/* 01C15C 8001B55C 810F0000 */ lb $t7, ($t0) +/* 01C160 8001B560 8FAD0020 */ lw $t5, 0x20($sp) +/* 01C164 8001B564 10EF000B */ beq $a3, $t7, .L8001B594 +/* 01C168 8001B568 00003025 */ move $a2, $zero +/* 01C16C 8001B56C 81180000 */ lb $t8, ($t0) +/* 01C170 8001B570 01002021 */ addu $a0, $t0, $zero +/* 01C174 8001B574 12180008 */ beq $s0, $t8, .L8001B598 +/* 01C178 8001B578 0106C821 */ addu $t9, $t0, $a2 +.L8001B57C: +/* 01C17C 8001B57C 80850001 */ lb $a1, 1($a0) +/* 01C180 8001B580 24C60001 */ addiu $a2, $a2, 1 +/* 01C184 8001B584 10E50003 */ beq $a3, $a1, .L8001B594 +/* 01C188 8001B588 24840001 */ addiu $a0, $a0, 1 +/* 01C18C 8001B58C 1605FFFB */ bne $s0, $a1, .L8001B57C +/* 01C190 8001B590 00000000 */ nop +.L8001B594: +/* 01C194 8001B594 0106C821 */ addu $t9, $t0, $a2 +.L8001B598: +/* 01C198 8001B598 83290000 */ lb $t1, ($t9) +/* 01C19C 8001B59C 00065040 */ sll $t2, $a2, 1 +/* 01C1A0 8001B5A0 10E90021 */ beq $a3, $t1, .L8001B628 +/* 01C1A4 8001B5A4 004A5821 */ addu $t3, $v0, $t2 +/* 01C1A8 8001B5A8 3C0E8012 */ lui $t6, %hi(D_8011AE82) # $t6, 0x8012 +/* 01C1AC 8001B5AC 85CEAE82 */ lh $t6, %lo(D_8011AE82)($t6) +/* 01C1B0 8001B5B0 00104840 */ sll $t1, $s0, 1 +/* 01C1B4 8001B5B4 000E7880 */ sll $t7, $t6, 2 +/* 01C1B8 8001B5B8 01AFC021 */ addu $t8, $t5, $t7 +/* 01C1BC 8001B5BC 8F19003C */ lw $t9, 0x3c($t8) +/* 01C1C0 8001B5C0 956C0000 */ lhu $t4, ($t3) +/* 01C1C4 8001B5C4 03295021 */ addu $t2, $t9, $t1 +/* 01C1C8 8001B5C8 954B0000 */ lhu $t3, ($t2) +/* 01C1CC 8001B5CC 00000000 */ nop +/* 01C1D0 8001B5D0 018B082A */ slt $at, $t4, $t3 +/* 01C1D4 8001B5D4 14200015 */ bnez $at, .L8001B62C +/* 01C1D8 8001B5D8 8FBF001C */ lw $ra, 0x1c($sp) +/* 01C1DC 8001B5DC 0C027AC2 */ jal func_8009EB08 +/* 01C1E0 8001B5E0 AFA6002C */ sw $a2, 0x2c($sp) +/* 01C1E4 8001B5E4 8FA6002C */ lw $a2, 0x2c($sp) +/* 01C1E8 8001B5E8 240E0010 */ li $t6, 16 +/* 01C1EC 8001B5EC 00CE6804 */ sllv $t5, $t6, $a2 +/* 01C1F0 8001B5F0 000DC7C3 */ sra $t8, $t5, 0x1f +/* 01C1F4 8001B5F4 00585024 */ and $t2, $v0, $t8 +/* 01C1F8 8001B5F8 15400005 */ bnez $t2, .L8001B610 +/* 01C1FC 8001B5FC 006D5824 */ and $t3, $v1, $t5 +/* 01C200 8001B600 15600003 */ bnez $t3, .L8001B610 +/* 01C204 8001B604 240F0001 */ li $t7, 1 +/* 01C208 8001B608 3C01800E */ lui $at, %hi(D_800DC738) # $at, 0x800e +/* 01C20C 8001B60C A02FC738 */ sb $t7, %lo(D_800DC738)($at) +.L8001B610: +/* 01C210 8001B610 0C006CBC */ jal func_8001B2F0 +/* 01C214 8001B614 02002025 */ move $a0, $s0 +/* 01C218 8001B618 14400003 */ bnez $v0, .L8001B628 +/* 01C21C 8001B61C 24090001 */ li $t1, 1 +/* 01C220 8001B620 3C01800E */ lui $at, %hi(D_800DC734) # $at, 0x800e +/* 01C224 8001B624 A029C734 */ sb $t1, %lo(D_800DC734)($at) +.L8001B628: +/* 01C228 8001B628 8FBF001C */ lw $ra, 0x1c($sp) +.L8001B62C: +/* 01C22C 8001B62C 3C02800E */ lui $v0, %hi(D_800DC734) # $v0, 0x800e +/* 01C230 8001B630 9042C734 */ lbu $v0, %lo(D_800DC734)($v0) +/* 01C234 8001B634 8FB00018 */ lw $s0, 0x18($sp) +/* 01C238 8001B638 03E00008 */ jr $ra +/* 01C23C 8001B63C 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_005740/func_8001B640.s b/asm/non_matchings/unknown_005740/func_8001B640.s new file mode 100644 index 00000000..aca5d1c2 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001B640.s @@ -0,0 +1,6 @@ +glabel func_8001B640 +/* 01C240 8001B640 3C02800E */ lui $v0, %hi(D_800DC718) # $v0, 0x800e +/* 01C244 8001B644 8C42C718 */ lw $v0, %lo(D_800DC718)($v0) +/* 01C248 8001B648 03E00008 */ jr $ra +/* 01C24C 8001B64C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001B650.s b/asm/non_matchings/unknown_005740/func_8001B650.s new file mode 100644 index 00000000..52835d76 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001B650.s @@ -0,0 +1,8 @@ +glabel func_8001B650 +/* 01C250 8001B650 3C02800E */ lui $v0, %hi(D_800DC738) # $v0, 0x800e +/* 01C254 8001B654 9042C738 */ lbu $v0, %lo(D_800DC738)($v0) +/* 01C258 8001B658 00000000 */ nop +/* 01C25C 8001B65C 2C4E0001 */ sltiu $t6, $v0, 1 +/* 01C260 8001B660 03E00008 */ jr $ra +/* 01C264 8001B664 01C01025 */ move $v0, $t6 + diff --git a/asm/non_matchings/unknown_005740/func_8001B668.s b/asm/non_matchings/unknown_005740/func_8001B668.s new file mode 100644 index 00000000..a03034d7 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001B668.s @@ -0,0 +1,58 @@ +glabel func_8001B668 +/* 01C268 8001B668 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 01C26C 8001B66C AFBF001C */ sw $ra, 0x1c($sp) +/* 01C270 8001B670 0C01666A */ jal func_800599A8 +/* 01C274 8001B674 AFA40030 */ sw $a0, 0x30($sp) +/* 01C278 8001B678 0C01AF62 */ jal func_8006BD88 +/* 01C27C 8001B67C AFA20024 */ sw $v0, 0x24($sp) +/* 01C280 8001B680 8FAE0024 */ lw $t6, 0x24($sp) +/* 01C284 8001B684 3C0F8012 */ lui $t7, %hi(D_8011AE82) # $t7, 0x8012 +/* 01C288 8001B688 144E0006 */ bne $v0, $t6, .L8001B6A4 +/* 01C28C 8001B68C 3C18800E */ lui $t8, %hi(D_800DC728) # $t8, 0x800e +/* 01C290 8001B690 85EFAE82 */ lh $t7, %lo(D_8011AE82)($t7) +/* 01C294 8001B694 8718C728 */ lh $t8, %lo(D_800DC728)($t8) +/* 01C298 8001B698 00000000 */ nop +/* 01C29C 8001B69C 11F80019 */ beq $t7, $t8, .L8001B704 +/* 01C2A0 8001B6A0 00000000 */ nop +.L8001B6A4: +/* 01C2A4 8001B6A4 0C01AF62 */ jal func_8006BD88 +/* 01C2A8 8001B6A8 00000000 */ nop +/* 01C2AC 8001B6AC 3C068012 */ lui $a2, %hi(D_8011AE82) # $a2, 0x8012 +/* 01C2B0 8001B6B0 84C6AE82 */ lh $a2, %lo(D_8011AE82)($a2) +/* 01C2B4 8001B6B4 8FA40030 */ lw $a0, 0x30($sp) +/* 01C2B8 8001B6B8 27B9002C */ addiu $t9, $sp, 0x2c +/* 01C2BC 8001B6BC AFB90010 */ sw $t9, 0x10($sp) +/* 01C2C0 8001B6C0 00402825 */ move $a1, $v0 +/* 01C2C4 8001B6C4 0C01666E */ jal func_800599B8 +/* 01C2C8 8001B6C8 27A7002E */ addiu $a3, $sp, 0x2e +/* 01C2CC 8001B6CC 1440000B */ bnez $v0, .L8001B6FC +/* 01C2D0 8001B6D0 00401825 */ move $v1, $v0 +/* 01C2D4 8001B6D4 3C088012 */ lui $t0, %hi(D_8011AE82) # $t0, 0x8012 +/* 01C2D8 8001B6D8 8508AE82 */ lh $t0, %lo(D_8011AE82)($t0) +/* 01C2DC 8001B6DC 3C01800E */ lui $at, %hi(D_800DC728) # $at, 0x800e +/* 01C2E0 8001B6E0 87A9002E */ lh $t1, 0x2e($sp) +/* 01C2E4 8001B6E4 A428C728 */ sh $t0, %lo(D_800DC728)($at) +/* 01C2E8 8001B6E8 3C01800E */ lui $at, %hi(D_800DC72C) # $at, 0x800e +/* 01C2EC 8001B6EC 87AA002C */ lh $t2, 0x2c($sp) +/* 01C2F0 8001B6F0 A429C72C */ sh $t1, %lo(D_800DC72C)($at) +/* 01C2F4 8001B6F4 3C01800E */ lui $at, %hi(D_800DC724) # $at, 0x800e +/* 01C2F8 8001B6F8 A42AC724 */ sh $t2, %lo(D_800DC724)($at) +.L8001B6FC: +/* 01C2FC 8001B6FC 1000000A */ b .L8001B728 +/* 01C300 8001B700 00601025 */ move $v0, $v1 +.L8001B704: +/* 01C304 8001B704 0C01AF62 */ jal func_8006BD88 +/* 01C308 8001B708 00000000 */ nop +/* 01C30C 8001B70C 3C068012 */ lui $a2, %hi(D_8011AE82) # $a2, 0x8012 +/* 01C310 8001B710 84C6AE82 */ lh $a2, %lo(D_8011AE82)($a2) +/* 01C314 8001B714 8FA40030 */ lw $a0, 0x30($sp) +/* 01C318 8001B718 00402825 */ move $a1, $v0 +/* 01C31C 8001B71C 00003825 */ move $a3, $zero +/* 01C320 8001B720 0C01666E */ jal func_800599B8 +/* 01C324 8001B724 AFA00010 */ sw $zero, 0x10($sp) +.L8001B728: +/* 01C328 8001B728 8FBF001C */ lw $ra, 0x1c($sp) +/* 01C32C 8001B72C 27BD0030 */ addiu $sp, $sp, 0x30 +/* 01C330 8001B730 03E00008 */ jr $ra +/* 01C334 8001B734 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001B738.s b/asm/non_matchings/unknown_005740/func_8001B738.s new file mode 100644 index 00000000..301fabb1 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001B738.s @@ -0,0 +1,20 @@ +glabel func_8001B738 +/* 01C338 8001B738 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 01C33C 8001B73C AFBF001C */ sw $ra, 0x1c($sp) +/* 01C340 8001B740 0C01666A */ jal func_800599A8 +/* 01C344 8001B744 AFA40020 */ sw $a0, 0x20($sp) +/* 01C348 8001B748 3C0E800E */ lui $t6, %hi(D_800DC724) # $t6, 0x800e +/* 01C34C 8001B74C 85CEC724 */ lh $t6, %lo(D_800DC724)($t6) +/* 01C350 8001B750 3C06800E */ lui $a2, %hi(D_800DC728) # $a2, 0x800e +/* 01C354 8001B754 3C07800E */ lui $a3, %hi(D_800DC72C) # $a3, 0x800e +/* 01C358 8001B758 84E7C72C */ lh $a3, %lo(D_800DC72C)($a3) +/* 01C35C 8001B75C 84C6C728 */ lh $a2, %lo(D_800DC728)($a2) +/* 01C360 8001B760 8FA40020 */ lw $a0, 0x20($sp) +/* 01C364 8001B764 00402825 */ move $a1, $v0 +/* 01C368 8001B768 0C0166DF */ jal func_80059B7C +/* 01C36C 8001B76C AFAE0010 */ sw $t6, 0x10($sp) +/* 01C370 8001B770 8FBF001C */ lw $ra, 0x1c($sp) +/* 01C374 8001B774 27BD0020 */ addiu $sp, $sp, 0x20 +/* 01C378 8001B778 03E00008 */ jr $ra +/* 01C37C 8001B77C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001B780.s b/asm/non_matchings/unknown_005740/func_8001B780.s new file mode 100644 index 00000000..ebee2563 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001B780.s @@ -0,0 +1,6 @@ +glabel func_8001B780 +/* 01C380 8001B780 3C02800E */ lui $v0, %hi(D_800DC730) # $v0, 0x800e +/* 01C384 8001B784 9042C730 */ lbu $v0, %lo(D_800DC730)($v0) +/* 01C388 8001B788 03E00008 */ jr $ra +/* 01C38C 8001B78C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001B790.s b/asm/non_matchings/unknown_005740/func_8001B790.s new file mode 100644 index 00000000..913ccd27 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001B790.s @@ -0,0 +1,8 @@ +glabel func_8001B790 +/* 01C390 8001B790 240EFFFF */ li $t6, -1 +/* 01C394 8001B794 3C018012 */ lui $at, %hi(D_8011D5AC) # $at, 0x8012 +/* 01C398 8001B798 A42ED5AC */ sh $t6, %lo(D_8011D5AC)($at) +/* 01C39C 8001B79C 3C01800E */ lui $at, 0x800e +/* 01C3A0 8001B7A0 03E00008 */ jr $ra +/* 01C3A4 8001B7A4 A020C730 */ sb $zero, -0x38d0($at) + diff --git a/asm/non_matchings/unknown_005740/func_8001B7A8.s b/asm/non_matchings/unknown_005740/func_8001B7A8.s new file mode 100644 index 00000000..ed1ec67e --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001B7A8.s @@ -0,0 +1,41 @@ +glabel func_8001B7A8 +/* 01C3A8 8001B7A8 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 01C3AC 8001B7AC AFBF0014 */ sw $ra, 0x14($sp) +/* 01C3B0 8001B7B0 AFA60028 */ sw $a2, 0x28($sp) +/* 01C3B4 8001B7B4 848E01AA */ lh $t6, 0x1aa($a0) +/* 01C3B8 8001B7B8 3C0F8012 */ lui $t7, %hi(D_8011AEF0) # $t7, 0x8012 +/* 01C3BC 8001B7BC 01C52823 */ subu $a1, $t6, $a1 +/* 01C3C0 8001B7C0 24A5FFFF */ addiu $a1, $a1, -1 +/* 01C3C4 8001B7C4 04A00006 */ bltz $a1, .L8001B7E0 +/* 01C3C8 8001B7C8 00000000 */ nop +/* 01C3CC 8001B7CC 8DEFAEF0 */ lw $t7, %lo(D_8011AEF0)($t7) +/* 01C3D0 8001B7D0 3C188012 */ lui $t8, %hi(D_8011AEE8) # $t8, 0x8012 +/* 01C3D4 8001B7D4 00AF082A */ slt $at, $a1, $t7 +/* 01C3D8 8001B7D8 14200003 */ bnez $at, .L8001B7E8 +/* 01C3DC 8001B7DC 00000000 */ nop +.L8001B7E0: +/* 01C3E0 8001B7E0 10000010 */ b .L8001B824 +/* 01C3E4 8001B7E4 00001025 */ move $v0, $zero +.L8001B7E8: +/* 01C3E8 8001B7E8 8F18AEE8 */ lw $t8, %lo(D_8011AEE8)($t8) +/* 01C3EC 8001B7EC 0005C880 */ sll $t9, $a1, 2 +/* 01C3F0 8001B7F0 03194021 */ addu $t0, $t8, $t9 +/* 01C3F4 8001B7F4 8D030000 */ lw $v1, ($t0) +/* 01C3F8 8001B7F8 00000000 */ nop +/* 01C3FC 8001B7FC 14600003 */ bnez $v1, .L8001B80C +/* 01C400 8001B800 00000000 */ nop +/* 01C404 8001B804 10000007 */ b .L8001B824 +/* 01C408 8001B808 00001025 */ move $v0, $zero +.L8001B80C: +/* 01C40C 8001B80C 8C650064 */ lw $a1, 0x64($v1) +/* 01C410 8001B810 0C006E0D */ jal func_8001B834 +/* 01C414 8001B814 AFA30018 */ sw $v1, 0x18($sp) +/* 01C418 8001B818 8FA90028 */ lw $t1, 0x28($sp) +/* 01C41C 8001B81C 8FA20018 */ lw $v0, 0x18($sp) +/* 01C420 8001B820 E5200000 */ swc1 $f0, ($t1) +.L8001B824: +/* 01C424 8001B824 8FBF0014 */ lw $ra, 0x14($sp) +/* 01C428 8001B828 27BD0020 */ addiu $sp, $sp, 0x20 +/* 01C42C 8001B82C 03E00008 */ jr $ra +/* 01C430 8001B830 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001B834.s b/asm/non_matchings/unknown_005740/func_8001B834.s new file mode 100644 index 00000000..17c03100 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001B834.s @@ -0,0 +1,132 @@ +glabel func_8001B834 +/* 01C434 8001B834 3C028012 */ lui $v0, %hi(D_8011AED0) # $v0, 0x8012 +/* 01C438 8001B838 8C42AED0 */ lw $v0, %lo(D_8011AED0)($v0) +/* 01C43C 8001B83C 00803025 */ move $a2, $a0 +/* 01C440 8001B840 1C400004 */ bgtz $v0, .L8001B854 +/* 01C444 8001B844 00000000 */ nop +/* 01C448 8001B848 44800000 */ mtc1 $zero, $f0 +/* 01C44C 8001B84C 03E00008 */ jr $ra +/* 01C450 8001B850 00000000 */ nop + +.L8001B854: +/* 01C454 8001B854 84A40190 */ lh $a0, 0x190($a1) +/* 01C458 8001B858 84C70190 */ lh $a3, 0x190($a2) +/* 01C45C 8001B85C 44801000 */ mtc1 $zero, $f2 +/* 01C460 8001B860 0087082A */ slt $at, $a0, $a3 +/* 01C464 8001B864 10200007 */ beqz $at, .L8001B884 +/* 01C468 8001B868 00001825 */ move $v1, $zero +/* 01C46C 8001B86C 00C04025 */ move $t0, $a2 +/* 01C470 8001B870 00A03025 */ move $a2, $a1 +/* 01C474 8001B874 84C70190 */ lh $a3, 0x190($a2) +/* 01C478 8001B878 85040190 */ lh $a0, 0x190($t0) +/* 01C47C 8001B87C 01002825 */ move $a1, $t0 +/* 01C480 8001B880 24030001 */ li $v1, 1 +.L8001B884: +/* 01C484 8001B884 80C90192 */ lb $t1, 0x192($a2) +/* 01C488 8001B888 00E4082A */ slt $at, $a3, $a0 +/* 01C48C 8001B88C 00E05025 */ move $t2, $a3 +/* 01C490 8001B890 10200010 */ beqz $at, .L8001B8D4 +/* 01C494 8001B894 01204025 */ move $t0, $t1 +/* 01C498 8001B898 3C078012 */ lui $a3, %hi(D_8011AECC) # $a3, 0x8012 +/* 01C49C 8001B89C 8CE7AECC */ lw $a3, %lo(D_8011AECC)($a3) +/* 01C4A0 8001B8A0 240B003C */ li $t3, 60 +.L8001B8A4: +/* 01C4A4 8001B8A4 010B0019 */ multu $t0, $t3 +/* 01C4A8 8001B8A8 254A0001 */ addiu $t2, $t2, 1 +/* 01C4AC 8001B8AC 25080001 */ addiu $t0, $t0, 1 +/* 01C4B0 8001B8B0 0144082A */ slt $at, $t2, $a0 +/* 01C4B4 8001B8B4 00007012 */ mflo $t6 +/* 01C4B8 8001B8B8 00EE7821 */ addu $t7, $a3, $t6 +/* 01C4BC 8001B8BC C5E40020 */ lwc1 $f4, 0x20($t7) +/* 01C4C0 8001B8C0 15020002 */ bne $t0, $v0, .L8001B8CC +/* 01C4C4 8001B8C4 46041080 */ add.s $f2, $f2, $f4 +/* 01C4C8 8001B8C8 00004025 */ move $t0, $zero +.L8001B8CC: +/* 01C4CC 8001B8CC 1420FFF5 */ bnez $at, .L8001B8A4 +/* 01C4D0 8001B8D0 00000000 */ nop +.L8001B8D4: +/* 01C4D4 8001B8D4 3C078012 */ lui $a3, %hi(D_8011AECC) # $a3, 0x8012 +/* 01C4D8 8001B8D8 2528FFFF */ addiu $t0, $t1, -1 +/* 01C4DC 8001B8DC 8CE7AECC */ lw $a3, %lo(D_8011AECC)($a3) +/* 01C4E0 8001B8E0 05010002 */ bgez $t0, .L8001B8EC +/* 01C4E4 8001B8E4 240B003C */ li $t3, 60 +/* 01C4E8 8001B8E8 2448FFFF */ addiu $t0, $v0, -1 +.L8001B8EC: +/* 01C4EC 8001B8EC 010B0019 */ multu $t0, $t3 +/* 01C4F0 8001B8F0 C4C800A8 */ lwc1 $f8, 0xa8($a2) +/* 01C4F4 8001B8F4 80A80192 */ lb $t0, 0x192($a1) +/* 01C4F8 8001B8F8 00000000 */ nop +/* 01C4FC 8001B8FC 2508FFFF */ addiu $t0, $t0, -1 +/* 01C500 8001B900 0000C012 */ mflo $t8 +/* 01C504 8001B904 00F8C821 */ addu $t9, $a3, $t8 +/* 01C508 8001B908 C7260020 */ lwc1 $f6, 0x20($t9) +/* 01C50C 8001B90C 00000000 */ nop +/* 01C510 8001B910 46083282 */ mul.s $f10, $f6, $f8 +/* 01C514 8001B914 05010002 */ bgez $t0, .L8001B920 +/* 01C518 8001B918 460A1080 */ add.s $f2, $f2, $f10 +/* 01C51C 8001B91C 2448FFFF */ addiu $t0, $v0, -1 +.L8001B920: +/* 01C520 8001B920 010B0019 */ multu $t0, $t3 +/* 01C524 8001B924 C4B200A8 */ lwc1 $f18, 0xa8($a1) +/* 01C528 8001B928 00006012 */ mflo $t4 +/* 01C52C 8001B92C 00EC6821 */ addu $t5, $a3, $t4 +/* 01C530 8001B930 C5B00020 */ lwc1 $f16, 0x20($t5) +/* 01C534 8001B934 00000000 */ nop +/* 01C538 8001B938 46128102 */ mul.s $f4, $f16, $f18 +/* 01C53C 8001B93C 10600002 */ beqz $v1, .L8001B948 +/* 01C540 8001B940 46041081 */ sub.s $f2, $f2, $f4 +/* 01C544 8001B944 46001087 */ neg.s $f2, $f2 +.L8001B948: +/* 01C548 8001B948 46001006 */ mov.s $f0, $f2 +/* 01C54C 8001B94C 03E00008 */ jr $ra +/* 01C550 8001B950 00000000 */ nop + +/* 01C554 8001B954 3C028012 */ lui $v0, %hi(D_8011AED0) # $v0, 0x8012 +/* 01C558 8001B958 8C42AED0 */ lw $v0, %lo(D_8011AED0)($v0) +/* 01C55C 8001B95C 00000000 */ nop +/* 01C560 8001B960 1C400004 */ bgtz $v0, .L8001B974 +/* 01C564 8001B964 00000000 */ nop +/* 01C568 8001B968 44800000 */ mtc1 $zero, $f0 +/* 01C56C 8001B96C 03E00008 */ jr $ra +/* 01C570 8001B970 00000000 */ nop + +.L8001B974: +/* 01C574 8001B974 80850192 */ lb $a1, 0x192($a0) +/* 01C578 8001B978 44801000 */ mtc1 $zero, $f2 +/* 01C57C 8001B97C 00A2082A */ slt $at, $a1, $v0 +/* 01C580 8001B980 1020000D */ beqz $at, .L8001B9B8 +/* 01C584 8001B984 00A01825 */ move $v1, $a1 +/* 01C588 8001B988 3C0E8012 */ lui $t6, %hi(D_8011AECC) # $t6, 0x8012 +/* 01C58C 8001B98C 00037900 */ sll $t7, $v1, 4 +/* 01C590 8001B990 8DCEAECC */ lw $t6, %lo(D_8011AECC)($t6) +/* 01C594 8001B994 01E37823 */ subu $t7, $t7, $v1 +/* 01C598 8001B998 000F7880 */ sll $t7, $t7, 2 +/* 01C59C 8001B99C 01CF3021 */ addu $a2, $t6, $t7 +.L8001B9A0: +/* 01C5A0 8001B9A0 C4C40020 */ lwc1 $f4, 0x20($a2) +/* 01C5A4 8001B9A4 24630001 */ addiu $v1, $v1, 1 +/* 01C5A8 8001B9A8 0062082A */ slt $at, $v1, $v0 +/* 01C5AC 8001B9AC 24C6003C */ addiu $a2, $a2, 0x3c +/* 01C5B0 8001B9B0 1420FFFB */ bnez $at, .L8001B9A0 +/* 01C5B4 8001B9B4 46041080 */ add.s $f2, $f2, $f4 +.L8001B9B8: +/* 01C5B8 8001B9B8 3C068012 */ lui $a2, %hi(D_8011AECC) # $a2, 0x8012 +/* 01C5BC 8001B9BC 24A3FFFF */ addiu $v1, $a1, -1 +/* 01C5C0 8001B9C0 8CC6AECC */ lw $a2, %lo(D_8011AECC)($a2) +/* 01C5C4 8001B9C4 04610003 */ bgez $v1, .L8001B9D4 +/* 01C5C8 8001B9C8 0003C100 */ sll $t8, $v1, 4 +/* 01C5CC 8001B9CC 2443FFFF */ addiu $v1, $v0, -1 +/* 01C5D0 8001B9D0 0003C100 */ sll $t8, $v1, 4 +.L8001B9D4: +/* 01C5D4 8001B9D4 0303C023 */ subu $t8, $t8, $v1 +/* 01C5D8 8001B9D8 0018C080 */ sll $t8, $t8, 2 +/* 01C5DC 8001B9DC 00D8C821 */ addu $t9, $a2, $t8 +/* 01C5E0 8001B9E0 C7260020 */ lwc1 $f6, 0x20($t9) +/* 01C5E4 8001B9E4 C48800A8 */ lwc1 $f8, 0xa8($a0) +/* 01C5E8 8001B9E8 00000000 */ nop +/* 01C5EC 8001B9EC 46083282 */ mul.s $f10, $f6, $f8 +/* 01C5F0 8001B9F0 460A1080 */ add.s $f2, $f2, $f10 +/* 01C5F4 8001B9F4 46001006 */ mov.s $f0, $f2 +/* 01C5F8 8001B9F8 03E00008 */ jr $ra +/* 01C5FC 8001B9FC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001BA00.s b/asm/non_matchings/unknown_005740/func_8001BA00.s new file mode 100644 index 00000000..c6dd13c4 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001BA00.s @@ -0,0 +1,9 @@ +glabel func_8001BA00 +/* 01C600 8001BA00 00047100 */ sll $t6, $a0, 4 +/* 01C604 8001BA04 3C0F8012 */ lui $t7, %hi(D_8011AECC) # $t7, 0x8012 +/* 01C608 8001BA08 8DEFAECC */ lw $t7, %lo(D_8011AECC)($t7) +/* 01C60C 8001BA0C 01C47023 */ subu $t6, $t6, $a0 +/* 01C610 8001BA10 000E7080 */ sll $t6, $t6, 2 +/* 01C614 8001BA14 03E00008 */ jr $ra +/* 01C618 8001BA18 01CF1021 */ addu $v0, $t6, $t7 + diff --git a/asm/non_matchings/unknown_005740/func_8001BA1C.s b/asm/non_matchings/unknown_005740/func_8001BA1C.s new file mode 100644 index 00000000..570a88ac --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001BA1C.s @@ -0,0 +1,21 @@ +glabel func_8001BA1C +/* 01C61C 8001BA1C 2406003C */ li $a2, 60 +/* 01C620 8001BA20 00860019 */ multu $a0, $a2 +/* 01C624 8001BA24 3C028012 */ lui $v0, %hi(D_8011AECC) # $v0, 0x8012 +/* 01C628 8001BA28 8C42AECC */ lw $v0, %lo(D_8011AECC)($v0) +/* 01C62C 8001BA2C 00007012 */ mflo $t6 +/* 01C630 8001BA30 01C21821 */ addu $v1, $t6, $v0 +/* 01C634 8001BA34 10A00009 */ beqz $a1, .L8001BA5C +/* 01C638 8001BA38 00000000 */ nop +/* 01C63C 8001BA3C 8064003A */ lb $a0, 0x3a($v1) +/* 01C640 8001BA40 2401FFFF */ li $at, -1 +/* 01C644 8001BA44 10810005 */ beq $a0, $at, .L8001BA5C +/* 01C648 8001BA48 00000000 */ nop +/* 01C64C 8001BA4C 00860019 */ multu $a0, $a2 +/* 01C650 8001BA50 00007812 */ mflo $t7 +/* 01C654 8001BA54 01E21821 */ addu $v1, $t7, $v0 +/* 01C658 8001BA58 00000000 */ nop +.L8001BA5C: +/* 01C65C 8001BA5C 03E00008 */ jr $ra +/* 01C660 8001BA60 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_005740/func_8001BA64.s b/asm/non_matchings/unknown_005740/func_8001BA64.s new file mode 100644 index 00000000..1b6726a6 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001BA64.s @@ -0,0 +1,6 @@ +glabel func_8001BA64 +/* 01C664 8001BA64 3C028012 */ lui $v0, %hi(D_8011AED0) # $v0, 0x8012 +/* 01C668 8001BA68 8C42AED0 */ lw $v0, %lo(D_8011AED0)($v0) +/* 01C66C 8001BA6C 03E00008 */ jr $ra +/* 01C670 8001BA70 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001BA74.s b/asm/non_matchings/unknown_005740/func_8001BA74.s new file mode 100644 index 00000000..dcc9f778 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001BA74.s @@ -0,0 +1,9 @@ +glabel func_8001BA74 +/* 01C674 8001BA74 3C0E8012 */ lui $t6, %hi(D_8011AEF0) # $t6, 0x8012 +/* 01C678 8001BA78 8DCEAEF0 */ lw $t6, %lo(D_8011AEF0)($t6) +/* 01C67C 8001BA7C 3C028012 */ lui $v0, %hi(D_8011AEE4) # $v0, 0x8012 +/* 01C680 8001BA80 AC8E0000 */ sw $t6, ($a0) +/* 01C684 8001BA84 8C42AEE4 */ lw $v0, %lo(D_8011AEE4)($v0) +/* 01C688 8001BA88 03E00008 */ jr $ra +/* 01C68C 8001BA8C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001BA90.s b/asm/non_matchings/unknown_005740/func_8001BA90.s new file mode 100644 index 00000000..f4878681 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001BA90.s @@ -0,0 +1,9 @@ +glabel func_8001BA90 +/* 01C690 8001BA90 3C0E8012 */ lui $t6, %hi(D_8011AEF0) # $t6, 0x8012 +/* 01C694 8001BA94 8DCEAEF0 */ lw $t6, %lo(D_8011AEF0)($t6) +/* 01C698 8001BA98 3C028012 */ lui $v0, %hi(D_8011AEEC) # $v0, 0x8012 +/* 01C69C 8001BA9C AC8E0000 */ sw $t6, ($a0) +/* 01C6A0 8001BAA0 8C42AEEC */ lw $v0, %lo(D_8011AEEC)($v0) +/* 01C6A4 8001BAA4 03E00008 */ jr $ra +/* 01C6A8 8001BAA8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001BAAC.s b/asm/non_matchings/unknown_005740/func_8001BAAC.s new file mode 100644 index 00000000..814a76a4 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001BAAC.s @@ -0,0 +1,9 @@ +glabel func_8001BAAC +/* 01C6AC 8001BAAC 3C0E8012 */ lui $t6, %hi(D_8011AEF0) # $t6, 0x8012 +/* 01C6B0 8001BAB0 8DCEAEF0 */ lw $t6, %lo(D_8011AEF0)($t6) +/* 01C6B4 8001BAB4 3C028012 */ lui $v0, %hi(D_8011AEE8) # $v0, 0x8012 +/* 01C6B8 8001BAB8 AC8E0000 */ sw $t6, ($a0) +/* 01C6BC 8001BABC 8C42AEE8 */ lw $v0, %lo(D_8011AEE8)($v0) +/* 01C6C0 8001BAC0 03E00008 */ jr $ra +/* 01C6C4 8001BAC4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001BAC8.s b/asm/non_matchings/unknown_005740/func_8001BAC8.s new file mode 100644 index 00000000..e51c01d8 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001BAC8.s @@ -0,0 +1,27 @@ +glabel func_8001BAC8 +/* 01C6C8 8001BAC8 3C028012 */ lui $v0, %hi(D_8011AEF0) # $v0, 0x8012 +/* 01C6CC 8001BACC 8C42AEF0 */ lw $v0, %lo(D_8011AEF0)($v0) +/* 01C6D0 8001BAD0 00000000 */ nop +/* 01C6D4 8001BAD4 14400003 */ bnez $v0, .L8001BAE4 +/* 01C6D8 8001BAD8 00000000 */ nop +/* 01C6DC 8001BADC 03E00008 */ jr $ra +/* 01C6E0 8001BAE0 00001025 */ move $v0, $zero + +.L8001BAE4: +/* 01C6E4 8001BAE4 04800003 */ bltz $a0, .L8001BAF4 +/* 01C6E8 8001BAE8 0082082A */ slt $at, $a0, $v0 +/* 01C6EC 8001BAEC 14200003 */ bnez $at, .L8001BAFC +/* 01C6F0 8001BAF0 3C0E8012 */ lui $t6, 0x8012 +.L8001BAF4: +/* 01C6F4 8001BAF4 03E00008 */ jr $ra +/* 01C6F8 8001BAF8 00001025 */ move $v0, $zero + +.L8001BAFC: +/* 01C6FC 8001BAFC 8DCEAEE4 */ lw $t6, -0x511c($t6) +/* 01C700 8001BB00 00047880 */ sll $t7, $a0, 2 +/* 01C704 8001BB04 01CFC021 */ addu $t8, $t6, $t7 +/* 01C708 8001BB08 8F020000 */ lw $v0, ($t8) +/* 01C70C 8001BB0C 00000000 */ nop +/* 01C710 8001BB10 03E00008 */ jr $ra +/* 01C714 8001BB14 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001BB18.s b/asm/non_matchings/unknown_005740/func_8001BB18.s new file mode 100644 index 00000000..51f0a428 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001BB18.s @@ -0,0 +1,87 @@ +glabel func_8001BB18 +/* 01C718 8001BB18 3C028012 */ lui $v0, %hi(D_8011AEF0) # $v0, 0x8012 +/* 01C71C 8001BB1C 8C42AEF0 */ lw $v0, %lo(D_8011AEF0)($v0) +/* 01C720 8001BB20 00000000 */ nop +/* 01C724 8001BB24 14400003 */ bnez $v0, .L8001BB34 +/* 01C728 8001BB28 00000000 */ nop +/* 01C72C 8001BB2C 03E00008 */ jr $ra +/* 01C730 8001BB30 00001025 */ move $v0, $zero + +.L8001BB34: +/* 01C734 8001BB34 04800003 */ bltz $a0, .L8001BB44 +/* 01C738 8001BB38 0082082A */ slt $at, $a0, $v0 +/* 01C73C 8001BB3C 14200003 */ bnez $at, .L8001BB4C +/* 01C740 8001BB40 3C0E8012 */ lui $t6, 0x8012 +.L8001BB44: +/* 01C744 8001BB44 03E00008 */ jr $ra +/* 01C748 8001BB48 00001025 */ move $v0, $zero + +.L8001BB4C: +/* 01C74C 8001BB4C 8DCEAEEC */ lw $t6, -0x5114($t6) +/* 01C750 8001BB50 00047880 */ sll $t7, $a0, 2 +/* 01C754 8001BB54 01CFC021 */ addu $t8, $t6, $t7 +/* 01C758 8001BB58 8F020000 */ lw $v0, ($t8) +/* 01C75C 8001BB5C 00000000 */ nop +/* 01C760 8001BB60 03E00008 */ jr $ra +/* 01C764 8001BB64 00000000 */ nop + +/* 01C768 8001BB68 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 01C76C 8001BB6C AFB3002C */ sw $s3, 0x2c($sp) +/* 01C770 8001BB70 AFB20028 */ sw $s2, 0x28($sp) +/* 01C774 8001BB74 00A09025 */ move $s2, $a1 +/* 01C778 8001BB78 00C09825 */ move $s3, $a2 +/* 01C77C 8001BB7C AFBF0034 */ sw $ra, 0x34($sp) +/* 01C780 8001BB80 AFB10024 */ sw $s1, 0x24($sp) +/* 01C784 8001BB84 00808825 */ move $s1, $a0 +/* 01C788 8001BB88 AFB40030 */ sw $s4, 0x30($sp) +/* 01C78C 8001BB8C AFB00020 */ sw $s0, 0x20($sp) +/* 01C790 8001BB90 24060002 */ li $a2, 2 +/* 01C794 8001BB94 0C01ED32 */ jal func_8007B4C8 +/* 01C798 8001BB98 00002825 */ move $a1, $zero +/* 01C79C 8001BB9C 3C148012 */ lui $s4, %hi(D_8011AED0) # $s4, 0x8012 +/* 01C7A0 8001BBA0 2694AED0 */ addiu $s4, %lo(D_8011AED0) # addiu $s4, $s4, -0x5130 +/* 01C7A4 8001BBA4 8E820000 */ lw $v0, ($s4) +/* 01C7A8 8001BBA8 00000000 */ nop +/* 01C7AC 8001BBAC 28410004 */ slti $at, $v0, 4 +/* 01C7B0 8001BBB0 1420001C */ bnez $at, .L8001BC24 +/* 01C7B4 8001BBB4 8FBF0034 */ lw $ra, 0x34($sp) +/* 01C7B8 8001BBB8 1840000D */ blez $v0, .L8001BBF0 +/* 01C7BC 8001BBBC 00008025 */ move $s0, $zero +/* 01C7C0 8001BBC0 02002025 */ move $a0, $s0 +.L8001BBC4: +/* 01C7C4 8001BBC4 00002825 */ move $a1, $zero +/* 01C7C8 8001BBC8 02203025 */ move $a2, $s1 +/* 01C7CC 8001BBCC 02403825 */ move $a3, $s2 +/* 01C7D0 8001BBD0 0C006F10 */ jal func_8001BC40 +/* 01C7D4 8001BBD4 AFB30010 */ sw $s3, 0x10($sp) +/* 01C7D8 8001BBD8 8E820000 */ lw $v0, ($s4) +/* 01C7DC 8001BBDC 26100001 */ addiu $s0, $s0, 1 +/* 01C7E0 8001BBE0 0202082A */ slt $at, $s0, $v0 +/* 01C7E4 8001BBE4 1420FFF7 */ bnez $at, .L8001BBC4 +/* 01C7E8 8001BBE8 02002025 */ move $a0, $s0 +/* 01C7EC 8001BBEC 00008025 */ move $s0, $zero +.L8001BBF0: +/* 01C7F0 8001BBF0 1840000B */ blez $v0, .L8001BC20 +/* 01C7F4 8001BBF4 02002025 */ move $a0, $s0 +.L8001BBF8: +/* 01C7F8 8001BBF8 24050001 */ li $a1, 1 +/* 01C7FC 8001BBFC 02203025 */ move $a2, $s1 +/* 01C800 8001BC00 02403825 */ move $a3, $s2 +/* 01C804 8001BC04 0C006F10 */ jal func_8001BC40 +/* 01C808 8001BC08 AFB30010 */ sw $s3, 0x10($sp) +/* 01C80C 8001BC0C 8E8E0000 */ lw $t6, ($s4) +/* 01C810 8001BC10 26100001 */ addiu $s0, $s0, 1 +/* 01C814 8001BC14 020E082A */ slt $at, $s0, $t6 +/* 01C818 8001BC18 1420FFF7 */ bnez $at, .L8001BBF8 +/* 01C81C 8001BC1C 02002025 */ move $a0, $s0 +.L8001BC20: +/* 01C820 8001BC20 8FBF0034 */ lw $ra, 0x34($sp) +.L8001BC24: +/* 01C824 8001BC24 8FB00020 */ lw $s0, 0x20($sp) +/* 01C828 8001BC28 8FB10024 */ lw $s1, 0x24($sp) +/* 01C82C 8001BC2C 8FB20028 */ lw $s2, 0x28($sp) +/* 01C830 8001BC30 8FB3002C */ lw $s3, 0x2c($sp) +/* 01C834 8001BC34 8FB40030 */ lw $s4, 0x30($sp) +/* 01C838 8001BC38 03E00008 */ jr $ra +/* 01C83C 8001BC3C 27BD0038 */ addiu $sp, $sp, 0x38 + diff --git a/asm/non_matchings/unknown_005740/func_8001BC40.s b/asm/non_matchings/unknown_005740/func_8001BC40.s new file mode 100644 index 00000000..71bb20a4 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001BC40.s @@ -0,0 +1,7 @@ +glabel func_8001BC40 +/* 01C840 8001BC40 AFA40000 */ sw $a0, ($sp) +/* 01C844 8001BC44 AFA50004 */ sw $a1, 4($sp) +/* 01C848 8001BC48 AFA60008 */ sw $a2, 8($sp) +/* 01C84C 8001BC4C 03E00008 */ jr $ra +/* 01C850 8001BC50 AFA7000C */ sw $a3, 0xc($sp) + diff --git a/asm/non_matchings/unknown_005740/func_8001BC54.s b/asm/non_matchings/unknown_005740/func_8001BC54.s new file mode 100644 index 00000000..f4bbf435 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001BC54.s @@ -0,0 +1,89 @@ +glabel func_8001BC54 +/* 01C854 8001BC54 3C078012 */ lui $a3, %hi(D_8011AEE0) # $a3, 0x8012 +/* 01C858 8001BC58 24E7AEE0 */ addiu $a3, %lo(D_8011AEE0) # addiu $a3, $a3, -0x5120 +/* 01C85C 8001BC5C ACE00000 */ sw $zero, ($a3) +/* 01C860 8001BC60 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 +/* 01C864 8001BC64 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) +/* 01C868 8001BC68 00001025 */ move $v0, $zero +/* 01C86C 8001BC6C 18600026 */ blez $v1, .L8001BD08 +/* 01C870 8001BC70 00002825 */ move $a1, $zero +/* 01C874 8001BC74 3C0A8012 */ lui $t2, %hi(D_8011AEDC) # $t2, 0x8012 +/* 01C878 8001BC78 3C088012 */ lui $t0, %hi(D_8011AE58) # $t0, 0x8012 +/* 01C87C 8001BC7C 2508AE58 */ addiu $t0, %lo(D_8011AE58) # addiu $t0, $t0, -0x51a8 +/* 01C880 8001BC80 254AAEDC */ addiu $t2, %lo(D_8011AEDC) # addiu $t2, $t2, -0x5124 +/* 01C884 8001BC84 2409000A */ li $t1, 10 +.L8001BC88: +/* 01C888 8001BC88 8D0E0000 */ lw $t6, ($t0) +/* 01C88C 8001BC8C 24420001 */ addiu $v0, $v0, 1 +/* 01C890 8001BC90 01C57821 */ addu $t7, $t6, $a1 +/* 01C894 8001BC94 8DE40000 */ lw $a0, ($t7) +/* 01C898 8001BC98 00000000 */ nop +/* 01C89C 8001BC9C 84980006 */ lh $t8, 6($a0) +/* 01C8A0 8001BCA0 00000000 */ nop +/* 01C8A4 8001BCA4 33198000 */ andi $t9, $t8, 0x8000 +/* 01C8A8 8001BCA8 17200015 */ bnez $t9, .L8001BD00 +/* 01C8AC 8001BCAC 0043082A */ slt $at, $v0, $v1 +/* 01C8B0 8001BCB0 848B0048 */ lh $t3, 0x48($a0) +/* 01C8B4 8001BCB4 00000000 */ nop +/* 01C8B8 8001BCB8 152B0011 */ bne $t1, $t3, .L8001BD00 +/* 01C8BC 8001BCBC 0043082A */ slt $at, $v0, $v1 +/* 01C8C0 8001BCC0 8CE60000 */ lw $a2, ($a3) +/* 01C8C4 8001BCC4 00000000 */ nop +/* 01C8C8 8001BCC8 28C10014 */ slti $at, $a2, 0x14 +/* 01C8CC 8001BCCC 1020000C */ beqz $at, .L8001BD00 +/* 01C8D0 8001BCD0 0043082A */ slt $at, $v0, $v1 +/* 01C8D4 8001BCD4 8D4C0000 */ lw $t4, ($t2) +/* 01C8D8 8001BCD8 00066880 */ sll $t5, $a2, 2 +/* 01C8DC 8001BCDC 018D7021 */ addu $t6, $t4, $t5 +/* 01C8E0 8001BCE0 ADC40000 */ sw $a0, ($t6) +/* 01C8E4 8001BCE4 8CEF0000 */ lw $t7, ($a3) +/* 01C8E8 8001BCE8 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 +/* 01C8EC 8001BCEC 25F80001 */ addiu $t8, $t7, 1 +/* 01C8F0 8001BCF0 ACF80000 */ sw $t8, ($a3) +/* 01C8F4 8001BCF4 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) +/* 01C8F8 8001BCF8 00000000 */ nop +/* 01C8FC 8001BCFC 0043082A */ slt $at, $v0, $v1 +.L8001BD00: +/* 01C900 8001BD00 1420FFE1 */ bnez $at, .L8001BC88 +/* 01C904 8001BD04 24A50004 */ addiu $a1, $a1, 4 +.L8001BD08: +/* 01C908 8001BD08 3C068012 */ lui $a2, %hi(D_8011AEE0) # $a2, 0x8012 +/* 01C90C 8001BD0C 8CC6AEE0 */ lw $a2, %lo(D_8011AEE0)($a2) +/* 01C910 8001BD10 3C0A8012 */ lui $t2, %hi(D_8011AEDC) # $t2, 0x8012 +/* 01C914 8001BD14 254AAEDC */ addiu $t2, %lo(D_8011AEDC) # addiu $t2, $t2, -0x5124 +/* 01C918 8001BD18 24C6FFFF */ addiu $a2, $a2, -1 +/* 01C91C 8001BD1C 24030001 */ li $v1, 1 +.L8001BD20: +/* 01C920 8001BD20 18C00018 */ blez $a2, .L8001BD84 +/* 01C924 8001BD24 00001025 */ move $v0, $zero +/* 01C928 8001BD28 00002825 */ move $a1, $zero +.L8001BD2C: +/* 01C92C 8001BD2C 8D590000 */ lw $t9, ($t2) +/* 01C930 8001BD30 24420001 */ addiu $v0, $v0, 1 +/* 01C934 8001BD34 03253821 */ addu $a3, $t9, $a1 +/* 01C938 8001BD38 8CE80004 */ lw $t0, 4($a3) +/* 01C93C 8001BD3C 8CE90000 */ lw $t1, ($a3) +/* 01C940 8001BD40 8D0B0078 */ lw $t3, 0x78($t0) +/* 01C944 8001BD44 8D2C0078 */ lw $t4, 0x78($t1) +/* 01C948 8001BD48 00000000 */ nop +/* 01C94C 8001BD4C 016C082A */ slt $at, $t3, $t4 +/* 01C950 8001BD50 1020000A */ beqz $at, .L8001BD7C +/* 01C954 8001BD54 0046082A */ slt $at, $v0, $a2 +/* 01C958 8001BD58 ACE80000 */ sw $t0, ($a3) +/* 01C95C 8001BD5C 8D4D0000 */ lw $t5, ($t2) +/* 01C960 8001BD60 3C068012 */ lui $a2, %hi(D_8011AEE0) # $a2, 0x8012 +/* 01C964 8001BD64 01A57021 */ addu $t6, $t5, $a1 +/* 01C968 8001BD68 ADC90004 */ sw $t1, 4($t6) +/* 01C96C 8001BD6C 8CC6AEE0 */ lw $a2, %lo(D_8011AEE0)($a2) +/* 01C970 8001BD70 00001825 */ move $v1, $zero +/* 01C974 8001BD74 24C6FFFF */ addiu $a2, $a2, -1 +/* 01C978 8001BD78 0046082A */ slt $at, $v0, $a2 +.L8001BD7C: +/* 01C97C 8001BD7C 1420FFEB */ bnez $at, .L8001BD2C +/* 01C980 8001BD80 24A50004 */ addiu $a1, $a1, 4 +.L8001BD84: +/* 01C984 8001BD84 1060FFE6 */ beqz $v1, .L8001BD20 +/* 01C988 8001BD88 24030001 */ li $v1, 1 +/* 01C98C 8001BD8C 03E00008 */ jr $ra +/* 01C990 8001BD90 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001BD94.s b/asm/non_matchings/unknown_005740/func_8001BD94.s new file mode 100644 index 00000000..add07687 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001BD94.s @@ -0,0 +1,21 @@ +glabel func_8001BD94 +/* 01C994 8001BD94 04800006 */ bltz $a0, .L8001BDB0 +/* 01C998 8001BD98 3C0E8012 */ lui $t6, %hi(D_8011AEE0) # $t6, 0x8012 +/* 01C99C 8001BD9C 8DCEAEE0 */ lw $t6, %lo(D_8011AEE0)($t6) +/* 01C9A0 8001BDA0 3C0F8012 */ lui $t7, 0x8012 +/* 01C9A4 8001BDA4 008E082A */ slt $at, $a0, $t6 +/* 01C9A8 8001BDA8 14200003 */ bnez $at, .L8001BDB8 +/* 01C9AC 8001BDAC 00000000 */ nop +.L8001BDB0: +/* 01C9B0 8001BDB0 03E00008 */ jr $ra +/* 01C9B4 8001BDB4 00001025 */ move $v0, $zero + +.L8001BDB8: +/* 01C9B8 8001BDB8 8DEFAEDC */ lw $t7, -0x5124($t7) +/* 01C9BC 8001BDBC 0004C080 */ sll $t8, $a0, 2 +/* 01C9C0 8001BDC0 01F8C821 */ addu $t9, $t7, $t8 +/* 01C9C4 8001BDC4 8F220000 */ lw $v0, ($t9) +/* 01C9C8 8001BDC8 00000000 */ nop +/* 01C9CC 8001BDCC 03E00008 */ jr $ra +/* 01C9D0 8001BDD0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001BDD4.s b/asm/non_matchings/unknown_005740/func_8001BDD4.s new file mode 100644 index 00000000..7b72d6d7 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001BDD4.s @@ -0,0 +1,91 @@ +glabel func_8001BDD4 +/* 01C9D4 8001BDD4 3C028012 */ lui $v0, %hi(D_8011AEE0) # $v0, 0x8012 +/* 01C9D8 8001BDD8 8C42AEE0 */ lw $v0, %lo(D_8011AEE0)($v0) +/* 01C9DC 8001BDDC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 01C9E0 8001BDE0 14400003 */ bnez $v0, .L8001BDF0 +/* 01C9E4 8001BDE4 AFA40028 */ sw $a0, 0x28($sp) +/* 01C9E8 8001BDE8 1000004B */ b .L8001BF18 +/* 01C9EC 8001BDEC 00001025 */ move $v0, $zero +.L8001BDF0: +/* 01C9F0 8001BDF0 8CA40000 */ lw $a0, ($a1) +/* 01C9F4 8001BDF4 8FAC0028 */ lw $t4, 0x28($sp) +/* 01C9F8 8001BDF8 24830001 */ addiu $v1, $a0, 1 +/* 01C9FC 8001BDFC 0062082A */ slt $at, $v1, $v0 +/* 01CA00 8001BE00 14200002 */ bnez $at, .L8001BE0C +/* 01CA04 8001BE04 2486FFFF */ addiu $a2, $a0, -1 +/* 01CA08 8001BE08 00001825 */ move $v1, $zero +.L8001BE0C: +/* 01CA0C 8001BE0C 04C10002 */ bgez $a2, .L8001BE18 +/* 01CA10 8001BE10 00047080 */ sll $t6, $a0, 2 +/* 01CA14 8001BE14 2446FFFF */ addiu $a2, $v0, -1 +.L8001BE18: +/* 01CA18 8001BE18 3C028012 */ lui $v0, %hi(D_8011AEDC) # $v0, 0x8012 +/* 01CA1C 8001BE1C 8C42AEDC */ lw $v0, %lo(D_8011AEDC)($v0) +/* 01CA20 8001BE20 C582000C */ lwc1 $f2, 0xc($t4) +/* 01CA24 8001BE24 004E7821 */ addu $t7, $v0, $t6 +/* 01CA28 8001BE28 8DE70000 */ lw $a3, ($t7) +/* 01CA2C 8001BE2C C58E0010 */ lwc1 $f14, 0x10($t4) +/* 01CA30 8001BE30 C4E4000C */ lwc1 $f4, 0xc($a3) +/* 01CA34 8001BE34 C4E60010 */ lwc1 $f6, 0x10($a3) +/* 01CA38 8001BE38 46022001 */ sub.s $f0, $f4, $f2 +/* 01CA3C 8001BE3C C5920014 */ lwc1 $f18, 0x14($t4) +/* 01CA40 8001BE40 46000282 */ mul.s $f10, $f0, $f0 +/* 01CA44 8001BE44 460E3301 */ sub.s $f12, $f6, $f14 +/* 01CA48 8001BE48 C4E80014 */ lwc1 $f8, 0x14($a3) +/* 01CA4C 8001BE4C 0003C080 */ sll $t8, $v1, 2 +/* 01CA50 8001BE50 460C6102 */ mul.s $f4, $f12, $f12 +/* 01CA54 8001BE54 46124401 */ sub.s $f16, $f8, $f18 +/* 01CA58 8001BE58 00065080 */ sll $t2, $a2, 2 +/* 01CA5C 8001BE5C 0058C821 */ addu $t9, $v0, $t8 +/* 01CA60 8001BE60 46108202 */ mul.s $f8, $f16, $f16 +/* 01CA64 8001BE64 46045180 */ add.s $f6, $f10, $f4 +/* 01CA68 8001BE68 8F280000 */ lw $t0, ($t9) +/* 01CA6C 8001BE6C 004A5821 */ addu $t3, $v0, $t2 +/* 01CA70 8001BE70 46083280 */ add.s $f10, $f6, $f8 +/* 01CA74 8001BE74 8D690000 */ lw $t1, ($t3) +/* 01CA78 8001BE78 E7AA0004 */ swc1 $f10, 4($sp) +/* 01CA7C 8001BE7C C504000C */ lwc1 $f4, 0xc($t0) +/* 01CA80 8001BE80 C5060010 */ lwc1 $f6, 0x10($t0) +/* 01CA84 8001BE84 46022001 */ sub.s $f0, $f4, $f2 +/* 01CA88 8001BE88 C5080014 */ lwc1 $f8, 0x14($t0) +/* 01CA8C 8001BE8C 46000102 */ mul.s $f4, $f0, $f0 +/* 01CA90 8001BE90 460E3301 */ sub.s $f12, $f6, $f14 +/* 01CA94 8001BE94 460C6182 */ mul.s $f6, $f12, $f12 +/* 01CA98 8001BE98 46124401 */ sub.s $f16, $f8, $f18 +/* 01CA9C 8001BE9C 46062200 */ add.s $f8, $f4, $f6 +/* 01CAA0 8001BEA0 46108102 */ mul.s $f4, $f16, $f16 +/* 01CAA4 8001BEA4 46044180 */ add.s $f6, $f8, $f4 +/* 01CAA8 8001BEA8 E7A60000 */ swc1 $f6, ($sp) +/* 01CAAC 8001BEAC C528000C */ lwc1 $f8, 0xc($t1) +/* 01CAB0 8001BEB0 460A303C */ c.lt.s $f6, $f10 +/* 01CAB4 8001BEB4 46024001 */ sub.s $f0, $f8, $f2 +/* 01CAB8 8001BEB8 C5240010 */ lwc1 $f4, 0x10($t1) +/* 01CABC 8001BEBC C5280014 */ lwc1 $f8, 0x14($t1) +/* 01CAC0 8001BEC0 460E2301 */ sub.s $f12, $f4, $f14 +/* 01CAC4 8001BEC4 45000005 */ bc1f .L8001BEDC +/* 01CAC8 8001BEC8 46124401 */ sub.s $f16, $f8, $f18 +/* 01CACC 8001BECC ACA30000 */ sw $v1, ($a1) +/* 01CAD0 8001BED0 C7A40000 */ lwc1 $f4, ($sp) +/* 01CAD4 8001BED4 01003825 */ move $a3, $t0 +/* 01CAD8 8001BED8 E7A40004 */ swc1 $f4, 4($sp) +.L8001BEDC: +/* 01CADC 8001BEDC 46000202 */ mul.s $f8, $f0, $f0 +/* 01CAE0 8001BEE0 00000000 */ nop +/* 01CAE4 8001BEE4 460C6182 */ mul.s $f6, $f12, $f12 +/* 01CAE8 8001BEE8 00000000 */ nop +/* 01CAEC 8001BEEC 46108102 */ mul.s $f4, $f16, $f16 +/* 01CAF0 8001BEF0 46064280 */ add.s $f10, $f8, $f6 +/* 01CAF4 8001BEF4 C7A60004 */ lwc1 $f6, 4($sp) +/* 01CAF8 8001BEF8 46045200 */ add.s $f8, $f10, $f4 +/* 01CAFC 8001BEFC 4606403C */ c.lt.s $f8, $f6 +/* 01CB00 8001BF00 00000000 */ nop +/* 01CB04 8001BF04 45000003 */ bc1f .L8001BF14 +/* 01CB08 8001BF08 00000000 */ nop +/* 01CB0C 8001BF0C ACA60000 */ sw $a2, ($a1) +/* 01CB10 8001BF10 01203825 */ move $a3, $t1 +.L8001BF14: +/* 01CB14 8001BF14 00E01025 */ move $v0, $a3 +.L8001BF18: +/* 01CB18 8001BF18 03E00008 */ jr $ra +/* 01CB1C 8001BF1C 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_005740/func_8001BF20.s b/asm/non_matchings/unknown_005740/func_8001BF20.s new file mode 100644 index 00000000..7eb6256e --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001BF20.s @@ -0,0 +1,346 @@ +glabel func_8001BF20 +/* 01CB20 8001BF20 27BDFE70 */ addiu $sp, $sp, -0x190 +/* 01CB24 8001BF24 3C028012 */ lui $v0, %hi(D_8011AF10) # $v0, 0x8012 +/* 01CB28 8001BF28 2442AF10 */ addiu $v0, %lo(D_8011AF10) # addiu $v0, $v0, -0x50f0 +/* 01CB2C 8001BF2C 8C4E0000 */ lw $t6, ($v0) +/* 01CB30 8001BF30 AFBF003C */ sw $ra, 0x3c($sp) +/* 01CB34 8001BF34 AFBE0038 */ sw $fp, 0x38($sp) +/* 01CB38 8001BF38 AFB70034 */ sw $s7, 0x34($sp) +/* 01CB3C 8001BF3C AFB60030 */ sw $s6, 0x30($sp) +/* 01CB40 8001BF40 AFB5002C */ sw $s5, 0x2c($sp) +/* 01CB44 8001BF44 AFB40028 */ sw $s4, 0x28($sp) +/* 01CB48 8001BF48 AFB30024 */ sw $s3, 0x24($sp) +/* 01CB4C 8001BF4C AFB20020 */ sw $s2, 0x20($sp) +/* 01CB50 8001BF50 AFB1001C */ sw $s1, 0x1c($sp) +/* 01CB54 8001BF54 11C00124 */ beqz $t6, .L8001C3E8 +/* 01CB58 8001BF58 AFB00018 */ sw $s0, 0x18($sp) +/* 01CB5C 8001BF5C 3C0A8012 */ lui $t2, %hi(D_8011AF04) # $t2, 0x8012 +/* 01CB60 8001BF60 AC400000 */ sw $zero, ($v0) +/* 01CB64 8001BF64 254AAF04 */ addiu $t2, %lo(D_8011AF04) # addiu $t2, $t2, -0x50fc +/* 01CB68 8001BF68 0000F025 */ move $fp, $zero +.L8001BF6C: +/* 01CB6C 8001BF6C 8D4F0000 */ lw $t7, ($t2) +/* 01CB70 8001BF70 00000000 */ nop +/* 01CB74 8001BF74 01FEC021 */ addu $t8, $t7, $fp +/* 01CB78 8001BF78 27DE0004 */ addiu $fp, $fp, 4 +/* 01CB7C 8001BF7C 2BC10200 */ slti $at, $fp, 0x200 +/* 01CB80 8001BF80 1420FFFA */ bnez $at, .L8001BF6C +/* 01CB84 8001BF84 AF000000 */ sw $zero, ($t8) +/* 01CB88 8001BF88 3C048012 */ lui $a0, %hi(D_8011AE5C) # $a0, 0x8012 +/* 01CB8C 8001BF8C 8C84AE5C */ lw $a0, %lo(D_8011AE5C)($a0) +/* 01CB90 8001BF90 A7A00186 */ sh $zero, 0x186($sp) +/* 01CB94 8001BF94 1880002D */ blez $a0, .L8001C04C +/* 01CB98 8001BF98 00003825 */ move $a3, $zero +/* 01CB9C 8001BF9C 3C058012 */ lui $a1, %hi(D_8011AE58) # $a1, 0x8012 +/* 01CBA0 8001BFA0 24A5AE58 */ addiu $a1, %lo(D_8011AE58) # addiu $a1, $a1, -0x51a8 +/* 01CBA4 8001BFA4 0000F025 */ move $fp, $zero +/* 01CBA8 8001BFA8 27B70064 */ addiu $s7, $sp, 0x64 +/* 01CBAC 8001BFAC 24060010 */ li $a2, 16 +.L8001BFB0: +/* 01CBB0 8001BFB0 8CB90000 */ lw $t9, ($a1) +/* 01CBB4 8001BFB4 24E70001 */ addiu $a3, $a3, 1 +/* 01CBB8 8001BFB8 033E5821 */ addu $t3, $t9, $fp +/* 01CBBC 8001BFBC 8D730000 */ lw $s3, ($t3) +/* 01CBC0 8001BFC0 00000000 */ nop +/* 01CBC4 8001BFC4 866C0006 */ lh $t4, 6($s3) +/* 01CBC8 8001BFC8 00000000 */ nop +/* 01CBCC 8001BFCC 318D8000 */ andi $t5, $t4, 0x8000 +/* 01CBD0 8001BFD0 15A0001C */ bnez $t5, .L8001C044 +/* 01CBD4 8001BFD4 00E4082A */ slt $at, $a3, $a0 +/* 01CBD8 8001BFD8 866E0048 */ lh $t6, 0x48($s3) +/* 01CBDC 8001BFDC 00000000 */ nop +/* 01CBE0 8001BFE0 14CE0018 */ bne $a2, $t6, .L8001C044 +/* 01CBE4 8001BFE4 00E4082A */ slt $at, $a3, $a0 +/* 01CBE8 8001BFE8 8E62003C */ lw $v0, 0x3c($s3) +/* 01CBEC 8001BFEC 00000000 */ nop +/* 01CBF0 8001BFF0 90430009 */ lbu $v1, 9($v0) +/* 01CBF4 8001BFF4 00000000 */ nop +/* 01CBF8 8001BFF8 306F0080 */ andi $t7, $v1, 0x80 +/* 01CBFC 8001BFFC 15E00010 */ bnez $t7, .L8001C040 +/* 01CC00 8001C000 0003C880 */ sll $t9, $v1, 2 +/* 01CC04 8001C004 8D580000 */ lw $t8, ($t2) +/* 01CC08 8001C008 3C048012 */ lui $a0, %hi(D_8011AE5C) # $a0, 0x8012 +/* 01CC0C 8001C00C 03195821 */ addu $t3, $t8, $t9 +/* 01CC10 8001C010 AD730000 */ sw $s3, ($t3) +/* 01CC14 8001C014 87AD0186 */ lh $t5, 0x186($sp) +/* 01CC18 8001C018 904C0009 */ lbu $t4, 9($v0) +/* 01CC1C 8001C01C 03AD7021 */ addu $t6, $sp, $t5 +/* 01CC20 8001C020 A1CC00E4 */ sb $t4, 0xe4($t6) +/* 01CC24 8001C024 804F000E */ lb $t7, 0xe($v0) +/* 01CC28 8001C028 02EDC821 */ addu $t9, $s7, $t5 +/* 01CC2C 8001C02C 31F80003 */ andi $t8, $t7, 3 +/* 01CC30 8001C030 A3380000 */ sb $t8, ($t9) +/* 01CC34 8001C034 25AB0001 */ addiu $t3, $t5, 1 +/* 01CC38 8001C038 8C84AE5C */ lw $a0, %lo(D_8011AE5C)($a0) +/* 01CC3C 8001C03C A7AB0186 */ sh $t3, 0x186($sp) +.L8001C040: +/* 01CC40 8001C040 00E4082A */ slt $at, $a3, $a0 +.L8001C044: +/* 01CC44 8001C044 1420FFDA */ bnez $at, .L8001BFB0 +/* 01CC48 8001C048 27DE0004 */ addiu $fp, $fp, 4 +.L8001C04C: +/* 01CC4C 8001C04C 87AC0186 */ lh $t4, 0x186($sp) +/* 01CC50 8001C050 27B70064 */ addiu $s7, $sp, 0x64 +/* 01CC54 8001C054 118000E4 */ beqz $t4, .L8001C3E8 +/* 01CC58 8001C058 0000F025 */ move $fp, $zero +/* 01CC5C 8001C05C 24160004 */ li $s6, 4 +/* 01CC60 8001C060 241500FF */ li $s5, 255 +.L8001C064: +/* 01CC64 8001C064 8D4E0000 */ lw $t6, ($t2) +/* 01CC68 8001C068 00000000 */ nop +/* 01CC6C 8001C06C 01DE7821 */ addu $t7, $t6, $fp +/* 01CC70 8001C070 8DF30000 */ lw $s3, ($t7) +/* 01CC74 8001C074 00000000 */ nop +/* 01CC78 8001C078 12600031 */ beqz $s3, .L8001C140 +/* 01CC7C 8001C07C 00000000 */ nop +/* 01CC80 8001C080 8E740064 */ lw $s4, 0x64($s3) +/* 01CC84 8001C084 8E70003C */ lw $s0, 0x3c($s3) +/* 01CC88 8001C088 00008825 */ move $s1, $zero +.L8001C08C: +/* 01CC8C 8001C08C 9203000A */ lbu $v1, 0xa($s0) +/* 01CC90 8001C090 00000000 */ nop +/* 01CC94 8001C094 30780080 */ andi $t8, $v1, 0x80 +/* 01CC98 8001C098 17000026 */ bnez $t8, .L8001C134 +/* 01CC9C 8001C09C 00036880 */ sll $t5, $v1, 2 +/* 01CCA0 8001C0A0 8D590000 */ lw $t9, ($t2) +/* 01CCA4 8001C0A4 00116080 */ sll $t4, $s1, 2 +/* 01CCA8 8001C0A8 032D5821 */ addu $t3, $t9, $t5 +/* 01CCAC 8001C0AC 8D620000 */ lw $v0, ($t3) +/* 01CCB0 8001C0B0 028C7021 */ addu $t6, $s4, $t4 +/* 01CCB4 8001C0B4 14400003 */ bnez $v0, .L8001C0C4 +/* 01CCB8 8001C0B8 ADC20000 */ sw $v0, ($t6) +/* 01CCBC 8001C0BC 1000001D */ b .L8001C134 +/* 01CCC0 8001C0C0 A215000A */ sb $s5, 0xa($s0) +.L8001C0C4: +/* 01CCC4 8001C0C4 C664000C */ lwc1 $f4, 0xc($s3) +/* 01CCC8 8001C0C8 C446000C */ lwc1 $f6, 0xc($v0) +/* 01CCCC 8001C0CC C6680010 */ lwc1 $f8, 0x10($s3) +/* 01CCD0 8001C0D0 46062001 */ sub.s $f0, $f4, $f6 +/* 01CCD4 8001C0D4 C44A0010 */ lwc1 $f10, 0x10($v0) +/* 01CCD8 8001C0D8 46000102 */ mul.s $f4, $f0, $f0 +/* 01CCDC 8001C0DC 460A4081 */ sub.s $f2, $f8, $f10 +/* 01CCE0 8001C0E0 C6700014 */ lwc1 $f16, 0x14($s3) +/* 01CCE4 8001C0E4 C4520014 */ lwc1 $f18, 0x14($v0) +/* 01CCE8 8001C0E8 46021182 */ mul.s $f6, $f2, $f2 +/* 01CCEC 8001C0EC 46128381 */ sub.s $f14, $f16, $f18 +/* 01CCF0 8001C0F0 00117840 */ sll $t7, $s1, 1 +/* 01CCF4 8001C0F4 028F9021 */ addu $s2, $s4, $t7 +/* 01CCF8 8001C0F8 460E7282 */ mul.s $f10, $f14, $f14 +/* 01CCFC 8001C0FC 46062200 */ add.s $f8, $f4, $f6 +/* 01CD00 8001C100 0C0326B4 */ jal sqrtf +/* 01CD04 8001C104 460A4300 */ add.s $f12, $f8, $f10 +/* 01CD08 8001C108 4458F800 */ cfc1 $t8, $31 +/* 01CD0C 8001C10C 3C0A8012 */ lui $t2, %hi(D_8011AF04) # $t2, 0x8012 +/* 01CD10 8001C110 37010003 */ ori $at, $t8, 3 +/* 01CD14 8001C114 38210002 */ xori $at, $at, 2 +/* 01CD18 8001C118 44C1F800 */ ctc1 $at, $31 +/* 01CD1C 8001C11C 254AAF04 */ addiu $t2, %lo(D_8011AF04) # addiu $t2, $t2, -0x50fc +/* 01CD20 8001C120 46000424 */ cvt.w.s $f16, $f0 +/* 01CD24 8001C124 44198000 */ mfc1 $t9, $f16 +/* 01CD28 8001C128 44D8F800 */ ctc1 $t8, $31 +/* 01CD2C 8001C12C A6590010 */ sh $t9, 0x10($s2) +/* 01CD30 8001C130 00000000 */ nop +.L8001C134: +/* 01CD34 8001C134 26310001 */ addiu $s1, $s1, 1 +/* 01CD38 8001C138 1636FFD4 */ bne $s1, $s6, .L8001C08C +/* 01CD3C 8001C13C 26100001 */ addiu $s0, $s0, 1 +.L8001C140: +/* 01CD40 8001C140 27DE0004 */ addiu $fp, $fp, 4 +/* 01CD44 8001C144 24010200 */ li $at, 512 +/* 01CD48 8001C148 17C1FFC6 */ bne $fp, $at, .L8001C064 +/* 01CD4C 8001C14C 00000000 */ nop +/* 01CD50 8001C150 87A90186 */ lh $t1, 0x186($sp) +/* 01CD54 8001C154 00003825 */ move $a3, $zero +/* 01CD58 8001C158 2529FFFF */ addiu $t1, $t1, -1 +.L8001C15C: +/* 01CD5C 8001C15C 19200053 */ blez $t1, .L8001C2AC +/* 01CD60 8001C160 24110001 */ li $s1, 1 +/* 01CD64 8001C164 87A20186 */ lh $v0, 0x186($sp) +/* 01CD68 8001C168 8D480000 */ lw $t0, ($t2) +/* 01CD6C 8001C16C 2442FFFF */ addiu $v0, $v0, -1 +/* 01CD70 8001C170 304D0001 */ andi $t5, $v0, 1 +/* 01CD74 8001C174 11A00019 */ beqz $t5, .L8001C1DC +/* 01CD78 8001C178 27AF00E4 */ addiu $t7, $sp, 0xe4 +/* 01CD7C 8001C17C 83AB00E5 */ lb $t3, 0xe5($sp) +/* 01CD80 8001C180 83B800E4 */ lb $t8, 0xe4($sp) +/* 01CD84 8001C184 000B6080 */ sll $t4, $t3, 2 +/* 01CD88 8001C188 010C7021 */ addu $t6, $t0, $t4 +/* 01CD8C 8001C18C 0018C880 */ sll $t9, $t8, 2 +/* 01CD90 8001C190 01196821 */ addu $t5, $t0, $t9 +/* 01CD94 8001C194 8DAC0000 */ lw $t4, ($t5) +/* 01CD98 8001C198 8DCF0000 */ lw $t7, ($t6) +/* 01CD9C 8001C19C C5820010 */ lwc1 $f2, 0x10($t4) +/* 01CDA0 8001C1A0 C5E00010 */ lwc1 $f0, 0x10($t7) +/* 01CDA4 8001C1A4 24070001 */ li $a3, 1 +/* 01CDA8 8001C1A8 4602003C */ c.lt.s $f0, $f2 +/* 01CDAC 8001C1AC 00000000 */ nop +/* 01CDB0 8001C1B0 45000008 */ bc1f .L8001C1D4 +/* 01CDB4 8001C1B4 00000000 */ nop +/* 01CDB8 8001C1B8 83A20064 */ lb $v0, 0x64($sp) +/* 01CDBC 8001C1BC 83AE0065 */ lb $t6, 0x65($sp) +/* 01CDC0 8001C1C0 A3AB00E4 */ sb $t3, 0xe4($sp) +/* 01CDC4 8001C1C4 A3B800E5 */ sb $t8, 0xe5($sp) +/* 01CDC8 8001C1C8 00008825 */ move $s1, $zero +/* 01CDCC 8001C1CC A3A20065 */ sb $v0, 0x65($sp) +/* 01CDD0 8001C1D0 A3AE0064 */ sb $t6, 0x64($sp) +.L8001C1D4: +/* 01CDD4 8001C1D4 10E90034 */ beq $a3, $t1, .L8001C2A8 +/* 01CDD8 8001C1D8 27AF00E4 */ addiu $t7, $sp, 0xe4 +.L8001C1DC: +/* 01CDDC 8001C1DC 00EF2021 */ addu $a0, $a3, $t7 +.L8001C1E0: +/* 01CDE0 8001C1E0 80850001 */ lb $a1, 1($a0) +/* 01CDE4 8001C1E4 80860000 */ lb $a2, ($a0) +/* 01CDE8 8001C1E8 0005C880 */ sll $t9, $a1, 2 +/* 01CDEC 8001C1EC 0006C080 */ sll $t8, $a2, 2 +/* 01CDF0 8001C1F0 01185821 */ addu $t3, $t0, $t8 +/* 01CDF4 8001C1F4 01196821 */ addu $t5, $t0, $t9 +/* 01CDF8 8001C1F8 8DAC0000 */ lw $t4, ($t5) +/* 01CDFC 8001C1FC 8D6E0000 */ lw $t6, ($t3) +/* 01CE00 8001C200 C5800010 */ lwc1 $f0, 0x10($t4) +/* 01CE04 8001C204 C5D20010 */ lwc1 $f18, 0x10($t6) +/* 01CE08 8001C208 02E71821 */ addu $v1, $s7, $a3 +/* 01CE0C 8001C20C 4612003C */ c.lt.s $f0, $f18 +/* 01CE10 8001C210 00000000 */ nop +/* 01CE14 8001C214 4500000E */ bc1f .L8001C250 +/* 01CE18 8001C218 00000000 */ nop +/* 01CE1C 8001C21C A0850000 */ sb $a1, ($a0) +/* 01CE20 8001C220 A0860001 */ sb $a2, 1($a0) +/* 01CE24 8001C224 80850001 */ lb $a1, 1($a0) +/* 01CE28 8001C228 80620000 */ lb $v0, ($v1) +/* 01CE2C 8001C22C 80790001 */ lb $t9, 1($v1) +/* 01CE30 8001C230 00056880 */ sll $t5, $a1, 2 +/* 01CE34 8001C234 010D6021 */ addu $t4, $t0, $t5 +/* 01CE38 8001C238 A0620001 */ sb $v0, 1($v1) +/* 01CE3C 8001C23C A0790000 */ sb $t9, ($v1) +/* 01CE40 8001C240 8D980000 */ lw $t8, ($t4) +/* 01CE44 8001C244 00008825 */ move $s1, $zero +/* 01CE48 8001C248 C7000010 */ lwc1 $f0, 0x10($t8) +/* 01CE4C 8001C24C 00000000 */ nop +.L8001C250: +/* 01CE50 8001C250 80860002 */ lb $a2, 2($a0) +/* 01CE54 8001C254 02E71821 */ addu $v1, $s7, $a3 +/* 01CE58 8001C258 00065880 */ sll $t3, $a2, 2 +/* 01CE5C 8001C25C 010B7021 */ addu $t6, $t0, $t3 +/* 01CE60 8001C260 8DCF0000 */ lw $t7, ($t6) +/* 01CE64 8001C264 00000000 */ nop +/* 01CE68 8001C268 C5E40010 */ lwc1 $f4, 0x10($t7) +/* 01CE6C 8001C26C 00000000 */ nop +/* 01CE70 8001C270 4600203C */ c.lt.s $f4, $f0 +/* 01CE74 8001C274 00000000 */ nop +/* 01CE78 8001C278 45000008 */ bc1f .L8001C29C +/* 01CE7C 8001C27C 00000000 */ nop +/* 01CE80 8001C280 80620001 */ lb $v0, 1($v1) +/* 01CE84 8001C284 806D0002 */ lb $t5, 2($v1) +/* 01CE88 8001C288 A0860001 */ sb $a2, 1($a0) +/* 01CE8C 8001C28C A0850002 */ sb $a1, 2($a0) +/* 01CE90 8001C290 00008825 */ move $s1, $zero +/* 01CE94 8001C294 A0620002 */ sb $v0, 2($v1) +/* 01CE98 8001C298 A06D0001 */ sb $t5, 1($v1) +.L8001C29C: +/* 01CE9C 8001C29C 24E70002 */ addiu $a3, $a3, 2 +/* 01CEA0 8001C2A0 14E9FFCF */ bne $a3, $t1, .L8001C1E0 +/* 01CEA4 8001C2A4 24840002 */ addiu $a0, $a0, 2 +.L8001C2A8: +/* 01CEA8 8001C2A8 00003825 */ move $a3, $zero +.L8001C2AC: +/* 01CEAC 8001C2AC 1220FFAB */ beqz $s1, .L8001C15C +/* 01CEB0 8001C2B0 00000000 */ nop +/* 01CEB4 8001C2B4 3C01800E */ lui $at, %hi(D_800E5638) # $at, 0x800e +/* 01CEB8 8001C2B8 3C028012 */ lui $v0, %hi(D_8011AF18) # $v0, 0x8012 +/* 01CEBC 8001C2BC 3C038012 */ lui $v1, %hi(D_8011AF2C) # $v1, 0x8012 +/* 01CEC0 8001C2C0 C4205638 */ lwc1 $f0, %lo(D_800E5638)($at) +/* 01CEC4 8001C2C4 2463AF2C */ addiu $v1, %lo(D_8011AF2C) # addiu $v1, $v1, -0x50d4 +/* 01CEC8 8001C2C8 2442AF18 */ addiu $v0, %lo(D_8011AF18) # addiu $v0, $v0, -0x50e8 +.L8001C2CC: +/* 01CECC 8001C2CC 24420004 */ addiu $v0, $v0, 4 +/* 01CED0 8001C2D0 0043082B */ sltu $at, $v0, $v1 +/* 01CED4 8001C2D4 1420FFFD */ bnez $at, .L8001C2CC +/* 01CED8 8001C2D8 E440FFFC */ swc1 $f0, -4($v0) +/* 01CEDC 8001C2DC 83A20064 */ lb $v0, 0x64($sp) +/* 01CEE0 8001C2E0 19200038 */ blez $t1, .L8001C3C4 +/* 01CEE4 8001C2E4 00003825 */ move $a3, $zero +/* 01CEE8 8001C2E8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 01CEEC 8001C2EC 3C068012 */ lui $a2, %hi(D_8011AF18) # $a2, 0x8012 +/* 01CEF0 8001C2F0 44810800 */ mtc1 $at, $f1 +/* 01CEF4 8001C2F4 44800000 */ mtc1 $zero, $f0 +/* 01CEF8 8001C2F8 24C6AF18 */ addiu $a2, %lo(D_8011AF18) # addiu $a2, $a2, -0x50e8 +/* 01CEFC 8001C2FC 27AC0064 */ addiu $t4, $sp, 0x64 +.L8001C300: +/* 01CF00 8001C300 00E9082A */ slt $at, $a3, $t1 +/* 01CF04 8001C304 1020000F */ beqz $at, .L8001C344 +/* 01CF08 8001C308 00EC1821 */ addu $v1, $a3, $t4 +/* 01CF0C 8001C30C 80780000 */ lb $t8, ($v1) +/* 01CF10 8001C310 00000000 */ nop +/* 01CF14 8001C314 0058082A */ slt $at, $v0, $t8 +/* 01CF18 8001C318 1420000A */ bnez $at, .L8001C344 +/* 01CF1C 8001C31C 00000000 */ nop +.L8001C320: +/* 01CF20 8001C320 24E70001 */ addiu $a3, $a3, 1 +/* 01CF24 8001C324 00E9082A */ slt $at, $a3, $t1 +/* 01CF28 8001C328 10200006 */ beqz $at, .L8001C344 +/* 01CF2C 8001C32C 24630001 */ addiu $v1, $v1, 1 +/* 01CF30 8001C330 806B0000 */ lb $t3, ($v1) +/* 01CF34 8001C334 00000000 */ nop +/* 01CF38 8001C338 004B082A */ slt $at, $v0, $t3 +/* 01CF3C 8001C33C 1020FFF8 */ beqz $at, .L8001C320 +/* 01CF40 8001C340 00000000 */ nop +.L8001C344: +/* 01CF44 8001C344 80650000 */ lb $a1, ($v1) +/* 01CF48 8001C348 27AF00E4 */ addiu $t7, $sp, 0xe4 +/* 01CF4C 8001C34C 0045082A */ slt $at, $v0, $a1 +/* 01CF50 8001C350 10200017 */ beqz $at, .L8001C3B0 +/* 01CF54 8001C354 00EF2021 */ addu $a0, $a3, $t7 +/* 01CF58 8001C358 00051600 */ sll $v0, $a1, 0x18 +/* 01CF5C 8001C35C 8D480000 */ lw $t0, ($t2) +/* 01CF60 8001C360 8099FFFF */ lb $t9, -1($a0) +/* 01CF64 8001C364 808B0000 */ lb $t3, ($a0) +/* 01CF68 8001C368 00027603 */ sra $t6, $v0, 0x18 +/* 01CF6C 8001C36C 01C01025 */ move $v0, $t6 +/* 01CF70 8001C370 00196880 */ sll $t5, $t9, 2 +/* 01CF74 8001C374 000B7080 */ sll $t6, $t3, 2 +/* 01CF78 8001C378 010E7821 */ addu $t7, $t0, $t6 +/* 01CF7C 8001C37C 010D6021 */ addu $t4, $t0, $t5 +/* 01CF80 8001C380 8D980000 */ lw $t8, ($t4) +/* 01CF84 8001C384 8DF90000 */ lw $t9, ($t7) +/* 01CF88 8001C388 C7060010 */ lwc1 $f6, 0x10($t8) +/* 01CF8C 8001C38C C7280010 */ lwc1 $f8, 0x10($t9) +/* 01CF90 8001C390 00026880 */ sll $t5, $v0, 2 +/* 01CF94 8001C394 46083280 */ add.s $f10, $f6, $f8 +/* 01CF98 8001C398 00CD6021 */ addu $t4, $a2, $t5 +/* 01CF9C 8001C39C 46005421 */ cvt.d.s $f16, $f10 +/* 01CFA0 8001C3A0 46208482 */ mul.d $f18, $f16, $f0 +/* 01CFA4 8001C3A4 46209120 */ cvt.s.d $f4, $f18 +/* 01CFA8 8001C3A8 10000003 */ b .L8001C3B8 +/* 01CFAC 8001C3AC E5840000 */ swc1 $f4, ($t4) +.L8001C3B0: +/* 01CFB0 8001C3B0 87A70186 */ lh $a3, 0x186($sp) +/* 01CFB4 8001C3B4 00000000 */ nop +.L8001C3B8: +/* 01CFB8 8001C3B8 00E9082A */ slt $at, $a3, $t1 +/* 01CFBC 8001C3BC 1420FFD0 */ bnez $at, .L8001C300 +/* 01CFC0 8001C3C0 27AC0064 */ addiu $t4, $sp, 0x64 +.L8001C3C4: +/* 01CFC4 8001C3C4 3C01800E */ lui $at, %hi(D_800E563C) # $at, 0x800e +/* 01CFC8 8001C3C8 C426563C */ lwc1 $f6, %lo(D_800E563C)($at) +/* 01CFCC 8001C3CC 3C068012 */ lui $a2, %hi(D_8011AF18) # $a2, 0x8012 +/* 01CFD0 8001C3D0 24C6AF18 */ addiu $a2, %lo(D_8011AF18) # addiu $a2, $a2, -0x50e8 +/* 01CFD4 8001C3D4 E4C60000 */ swc1 $f6, ($a2) +/* 01CFD8 8001C3D8 C4C80000 */ lwc1 $f8, ($a2) +/* 01CFDC 8001C3DC 00000000 */ nop +/* 01CFE0 8001C3E0 46004287 */ neg.s $f10, $f8 +/* 01CFE4 8001C3E4 E4CA0010 */ swc1 $f10, 0x10($a2) +.L8001C3E8: +/* 01CFE8 8001C3E8 8FBF003C */ lw $ra, 0x3c($sp) +/* 01CFEC 8001C3EC 8FB00018 */ lw $s0, 0x18($sp) +/* 01CFF0 8001C3F0 8FB1001C */ lw $s1, 0x1c($sp) +/* 01CFF4 8001C3F4 8FB20020 */ lw $s2, 0x20($sp) +/* 01CFF8 8001C3F8 8FB30024 */ lw $s3, 0x24($sp) +/* 01CFFC 8001C3FC 8FB40028 */ lw $s4, 0x28($sp) +/* 01D000 8001C400 8FB5002C */ lw $s5, 0x2c($sp) +/* 01D004 8001C404 8FB60030 */ lw $s6, 0x30($sp) +/* 01D008 8001C408 8FB70034 */ lw $s7, 0x34($sp) +/* 01D00C 8001C40C 8FBE0038 */ lw $fp, 0x38($sp) +/* 01D010 8001C410 03E00008 */ jr $ra +/* 01D014 8001C414 27BD0190 */ addiu $sp, $sp, 0x190 + diff --git a/asm/non_matchings/unknown_005740/func_8001C418.s b/asm/non_matchings/unknown_005740/func_8001C418.s new file mode 100644 index 00000000..f1559d48 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001C418.s @@ -0,0 +1,33 @@ +glabel func_8001C418 +/* 01D018 8001C418 3C01800E */ lui $at, %hi(D_800E5640) # $at, 0x800e +/* 01D01C 8001C41C 3C048012 */ lui $a0, %hi(D_8011AF18) # $a0, 0x8012 +/* 01D020 8001C420 C4225640 */ lwc1 $f2, %lo(D_800E5640)($at) +/* 01D024 8001C424 00001025 */ move $v0, $zero +/* 01D028 8001C428 00001825 */ move $v1, $zero +/* 01D02C 8001C42C 2484AF18 */ addiu $a0, %lo(D_8011AF18) # addiu $a0, $a0, -0x50e8 +/* 01D030 8001C430 00027080 */ sll $t6, $v0, 2 +.L8001C434: +/* 01D034 8001C434 008E7821 */ addu $t7, $a0, $t6 +/* 01D038 8001C438 C5E00000 */ lwc1 $f0, ($t7) +/* 01D03C 8001C43C 00000000 */ nop +/* 01D040 8001C440 46001032 */ c.eq.s $f2, $f0 +/* 01D044 8001C444 00000000 */ nop +/* 01D048 8001C448 45010008 */ bc1t .L8001C46C +/* 01D04C 8001C44C 00000000 */ nop +/* 01D050 8001C450 460C003C */ c.lt.s $f0, $f12 +/* 01D054 8001C454 00000000 */ nop +/* 01D058 8001C458 45000004 */ bc1f .L8001C46C +/* 01D05C 8001C45C 00000000 */ nop +/* 01D060 8001C460 00021C00 */ sll $v1, $v0, 0x10 +/* 01D064 8001C464 0003C403 */ sra $t8, $v1, 0x10 +/* 01D068 8001C468 03001825 */ move $v1, $t8 +.L8001C46C: +/* 01D06C 8001C46C 24420001 */ addiu $v0, $v0, 1 +/* 01D070 8001C470 0002CC00 */ sll $t9, $v0, 0x10 +/* 01D074 8001C474 00191403 */ sra $v0, $t9, 0x10 +/* 01D078 8001C478 28410004 */ slti $at, $v0, 4 +/* 01D07C 8001C47C 1420FFED */ bnez $at, .L8001C434 +/* 01D080 8001C480 00027080 */ sll $t6, $v0, 2 +/* 01D084 8001C484 03E00008 */ jr $ra +/* 01D088 8001C488 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_005740/func_8001C48C.s b/asm/non_matchings/unknown_005740/func_8001C48C.s new file mode 100644 index 00000000..70d6761a --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001C48C.s @@ -0,0 +1,49 @@ +glabel func_8001C48C +/* 01D08C 8001C48C 3C058012 */ lui $a1, %hi(D_8011AF04) # $a1, 0x8012 +/* 01D090 8001C490 8CA5AF04 */ lw $a1, %lo(D_8011AF04)($a1) +/* 01D094 8001C494 00001825 */ move $v1, $zero +/* 01D098 8001C498 24020080 */ li $v0, 128 +.L8001C49C: +/* 01D09C 8001C49C 8CAE0000 */ lw $t6, ($a1) +/* 01D0A0 8001C4A0 00000000 */ nop +/* 01D0A4 8001C4A4 15C00004 */ bnez $t6, .L8001C4B8 +/* 01D0A8 8001C4A8 00000000 */ nop +/* 01D0AC 8001C4AC ACA40000 */ sw $a0, ($a1) +/* 01D0B0 8001C4B0 03E00008 */ jr $ra +/* 01D0B4 8001C4B4 00601025 */ move $v0, $v1 + +.L8001C4B8: +/* 01D0B8 8001C4B8 8CAF0004 */ lw $t7, 4($a1) +/* 01D0BC 8001C4BC 00000000 */ nop +/* 01D0C0 8001C4C0 15E00004 */ bnez $t7, .L8001C4D4 +/* 01D0C4 8001C4C4 00000000 */ nop +/* 01D0C8 8001C4C8 ACA40004 */ sw $a0, 4($a1) +/* 01D0CC 8001C4CC 03E00008 */ jr $ra +/* 01D0D0 8001C4D0 24620001 */ addiu $v0, $v1, 1 + +.L8001C4D4: +/* 01D0D4 8001C4D4 8CB80008 */ lw $t8, 8($a1) +/* 01D0D8 8001C4D8 00000000 */ nop +/* 01D0DC 8001C4DC 17000004 */ bnez $t8, .L8001C4F0 +/* 01D0E0 8001C4E0 00000000 */ nop +/* 01D0E4 8001C4E4 ACA40008 */ sw $a0, 8($a1) +/* 01D0E8 8001C4E8 03E00008 */ jr $ra +/* 01D0EC 8001C4EC 24620002 */ addiu $v0, $v1, 2 + +.L8001C4F0: +/* 01D0F0 8001C4F0 8CB9000C */ lw $t9, 0xc($a1) +/* 01D0F4 8001C4F4 00000000 */ nop +/* 01D0F8 8001C4F8 17200004 */ bnez $t9, .L8001C50C +/* 01D0FC 8001C4FC 00000000 */ nop +/* 01D100 8001C500 ACA4000C */ sw $a0, 0xc($a1) +/* 01D104 8001C504 03E00008 */ jr $ra +/* 01D108 8001C508 24620003 */ addiu $v0, $v1, 3 + +.L8001C50C: +/* 01D10C 8001C50C 24630004 */ addiu $v1, $v1, 4 +/* 01D110 8001C510 1462FFE2 */ bne $v1, $v0, .L8001C49C +/* 01D114 8001C514 24A50010 */ addiu $a1, $a1, 0x10 +/* 01D118 8001C518 2402FFFF */ li $v0, -1 +/* 01D11C 8001C51C 03E00008 */ jr $ra +/* 01D120 8001C520 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001C524.s b/asm/non_matchings/unknown_005740/func_8001C524.s new file mode 100644 index 00000000..3d208035 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001C524.s @@ -0,0 +1,111 @@ +glabel func_8001C524 +/* 01D124 8001C524 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 01D128 8001C528 E7BA0034 */ swc1 $f26, 0x34($sp) +/* 01D12C 8001C52C 4486D000 */ mtc1 $a2, $f26 +/* 01D130 8001C530 AFB20040 */ sw $s2, 0x40($sp) +/* 01D134 8001C534 E7B90028 */ swc1 $f25, 0x28($sp) +/* 01D138 8001C538 E7B8002C */ swc1 $f24, 0x2c($sp) +/* 01D13C 8001C53C E7B70020 */ swc1 $f23, 0x20($sp) +/* 01D140 8001C540 E7B60024 */ swc1 $f22, 0x24($sp) +/* 01D144 8001C544 46007586 */ mov.s $f22, $f14 +/* 01D148 8001C548 46006606 */ mov.s $f24, $f12 +/* 01D14C 8001C54C 00E09025 */ move $s2, $a3 +/* 01D150 8001C550 AFBF005C */ sw $ra, 0x5c($sp) +/* 01D154 8001C554 AFBE0058 */ sw $fp, 0x58($sp) +/* 01D158 8001C558 AFB70054 */ sw $s7, 0x54($sp) +/* 01D15C 8001C55C AFB60050 */ sw $s6, 0x50($sp) +/* 01D160 8001C560 AFB5004C */ sw $s5, 0x4c($sp) +/* 01D164 8001C564 AFB40048 */ sw $s4, 0x48($sp) +/* 01D168 8001C568 AFB30044 */ sw $s3, 0x44($sp) +/* 01D16C 8001C56C AFB1003C */ sw $s1, 0x3c($sp) +/* 01D170 8001C570 AFB00038 */ sw $s0, 0x38($sp) +/* 01D174 8001C574 E7BB0030 */ swc1 $f27, 0x30($sp) +/* 01D178 8001C578 E7B50018 */ swc1 $f21, 0x18($sp) +/* 01D17C 8001C57C 10E00004 */ beqz $a3, .L8001C590 +/* 01D180 8001C580 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 01D184 8001C584 0C007106 */ jal func_8001C418 +/* 01D188 8001C588 46007306 */ mov.s $f12, $f14 +/* 01D18C 8001C58C AFA20064 */ sw $v0, 0x64($sp) +.L8001C590: +/* 01D190 8001C590 3C01800E */ lui $at, %hi(D_800E5644) # $at, 0x800e +/* 01D194 8001C594 3C138012 */ lui $s3, %hi(D_8011AF04) # $s3, 0x8012 +/* 01D198 8001C598 8FBE0064 */ lw $fp, 0x64($sp) +/* 01D19C 8001C59C C4345644 */ lwc1 $f20, %lo(D_800E5644)($at) +/* 01D1A0 8001C5A0 241700FF */ li $s7, 255 +/* 01D1A4 8001C5A4 2673AF04 */ addiu $s3, %lo(D_8011AF04) # addiu $s3, $s3, -0x50fc +/* 01D1A8 8001C5A8 00008025 */ move $s0, $zero +/* 01D1AC 8001C5AC 00008825 */ move $s1, $zero +/* 01D1B0 8001C5B0 24160080 */ li $s6, 128 +/* 01D1B4 8001C5B4 24150003 */ li $s5, 3 +/* 01D1B8 8001C5B8 24140002 */ li $s4, 2 +.L8001C5BC: +/* 01D1BC 8001C5BC 8E6E0000 */ lw $t6, ($s3) +/* 01D1C0 8001C5C0 00000000 */ nop +/* 01D1C4 8001C5C4 01D17821 */ addu $t7, $t6, $s1 +/* 01D1C8 8001C5C8 8DE20000 */ lw $v0, ($t7) +/* 01D1CC 8001C5CC 00000000 */ nop +/* 01D1D0 8001C5D0 10400024 */ beqz $v0, .L8001C664 +/* 01D1D4 8001C5D4 00000000 */ nop +/* 01D1D8 8001C5D8 8C43003C */ lw $v1, 0x3c($v0) +/* 01D1DC 8001C5DC 12400006 */ beqz $s2, .L8001C5F8 +/* 01D1E0 8001C5E0 24040001 */ li $a0, 1 +/* 01D1E4 8001C5E4 8078000E */ lb $t8, 0xe($v1) +/* 01D1E8 8001C5E8 00000000 */ nop +/* 01D1EC 8001C5EC 13D80002 */ beq $fp, $t8, .L8001C5F8 +/* 01D1F0 8001C5F0 00000000 */ nop +/* 01D1F4 8001C5F4 00002025 */ move $a0, $zero +.L8001C5F8: +/* 01D1F8 8001C5F8 16540006 */ bne $s2, $s4, .L8001C614 +/* 01D1FC 8001C5FC 00000000 */ nop +/* 01D200 8001C600 90790008 */ lbu $t9, 8($v1) +/* 01D204 8001C604 00000000 */ nop +/* 01D208 8001C608 12B90002 */ beq $s5, $t9, .L8001C614 +/* 01D20C 8001C60C 00000000 */ nop +/* 01D210 8001C610 00002025 */ move $a0, $zero +.L8001C614: +/* 01D214 8001C614 10800013 */ beqz $a0, .L8001C664 +/* 01D218 8001C618 00000000 */ nop +/* 01D21C 8001C61C C444000C */ lwc1 $f4, 0xc($v0) +/* 01D220 8001C620 C4460010 */ lwc1 $f6, 0x10($v0) +/* 01D224 8001C624 46182001 */ sub.s $f0, $f4, $f24 +/* 01D228 8001C628 C4480014 */ lwc1 $f8, 0x14($v0) +/* 01D22C 8001C62C 46000282 */ mul.s $f10, $f0, $f0 +/* 01D230 8001C630 46163081 */ sub.s $f2, $f6, $f22 +/* 01D234 8001C634 46021402 */ mul.s $f16, $f2, $f2 +/* 01D238 8001C638 461A4381 */ sub.s $f14, $f8, $f26 +/* 01D23C 8001C63C 460E7102 */ mul.s $f4, $f14, $f14 +/* 01D240 8001C640 46105480 */ add.s $f18, $f10, $f16 +/* 01D244 8001C644 0C0326B4 */ jal sqrtf +/* 01D248 8001C648 46049300 */ add.s $f12, $f18, $f4 +/* 01D24C 8001C64C 4614003C */ c.lt.s $f0, $f20 +/* 01D250 8001C650 00000000 */ nop +/* 01D254 8001C654 45000003 */ bc1f .L8001C664 +/* 01D258 8001C658 00000000 */ nop +/* 01D25C 8001C65C 46000506 */ mov.s $f20, $f0 +/* 01D260 8001C660 0200B825 */ move $s7, $s0 +.L8001C664: +/* 01D264 8001C664 26100001 */ addiu $s0, $s0, 1 +/* 01D268 8001C668 1616FFD4 */ bne $s0, $s6, .L8001C5BC +/* 01D26C 8001C66C 26310004 */ addiu $s1, $s1, 4 +/* 01D270 8001C670 8FBF005C */ lw $ra, 0x5c($sp) +/* 01D274 8001C674 02E01025 */ move $v0, $s7 +/* 01D278 8001C678 8FB70054 */ lw $s7, 0x54($sp) +/* 01D27C 8001C67C C7B50018 */ lwc1 $f21, 0x18($sp) +/* 01D280 8001C680 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 01D284 8001C684 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 01D288 8001C688 C7B60024 */ lwc1 $f22, 0x24($sp) +/* 01D28C 8001C68C C7B90028 */ lwc1 $f25, 0x28($sp) +/* 01D290 8001C690 C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 01D294 8001C694 C7BB0030 */ lwc1 $f27, 0x30($sp) +/* 01D298 8001C698 C7BA0034 */ lwc1 $f26, 0x34($sp) +/* 01D29C 8001C69C 8FB00038 */ lw $s0, 0x38($sp) +/* 01D2A0 8001C6A0 8FB1003C */ lw $s1, 0x3c($sp) +/* 01D2A4 8001C6A4 8FB20040 */ lw $s2, 0x40($sp) +/* 01D2A8 8001C6A8 8FB30044 */ lw $s3, 0x44($sp) +/* 01D2AC 8001C6AC 8FB40048 */ lw $s4, 0x48($sp) +/* 01D2B0 8001C6B0 8FB5004C */ lw $s5, 0x4c($sp) +/* 01D2B4 8001C6B4 8FB60050 */ lw $s6, 0x50($sp) +/* 01D2B8 8001C6B8 8FBE0058 */ lw $fp, 0x58($sp) +/* 01D2BC 8001C6BC 03E00008 */ jr $ra +/* 01D2C0 8001C6C0 27BD0080 */ addiu $sp, $sp, 0x80 + diff --git a/asm/non_matchings/unknown_005740/func_8001C6C4.s b/asm/non_matchings/unknown_005740/func_8001C6C4.s new file mode 100644 index 00000000..31fcf382 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001C6C4.s @@ -0,0 +1,372 @@ +glabel func_8001C6C4 +/* 01D2C4 8001C6C4 27BDFF18 */ addiu $sp, $sp, -0xe8 +/* 01D2C8 8001C6C8 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 01D2CC 8001C6CC 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 01D2D0 8001C6D0 AFB2004C */ sw $s2, 0x4c($sp) +/* 01D2D4 8001C6D4 00809025 */ move $s2, $a0 +/* 01D2D8 8001C6D8 AFBF005C */ sw $ra, 0x5c($sp) +/* 01D2DC 8001C6DC AFB50058 */ sw $s5, 0x58($sp) +/* 01D2E0 8001C6E0 AFB40054 */ sw $s4, 0x54($sp) +/* 01D2E4 8001C6E4 AFB30050 */ sw $s3, 0x50($sp) +/* 01D2E8 8001C6E8 AFB10048 */ sw $s1, 0x48($sp) +/* 01D2EC 8001C6EC AFB00044 */ sw $s0, 0x44($sp) +/* 01D2F0 8001C6F0 E7BF0038 */ swc1 $f31, 0x38($sp) +/* 01D2F4 8001C6F4 E7BE003C */ swc1 $f30, 0x3c($sp) +/* 01D2F8 8001C6F8 E7BD0030 */ swc1 $f29, 0x30($sp) +/* 01D2FC 8001C6FC E7BC0034 */ swc1 $f28, 0x34($sp) +/* 01D300 8001C700 E7BB0028 */ swc1 $f27, 0x28($sp) +/* 01D304 8001C704 E7BA002C */ swc1 $f26, 0x2c($sp) +/* 01D308 8001C708 E7B90020 */ swc1 $f25, 0x20($sp) +/* 01D30C 8001C70C E7B80024 */ swc1 $f24, 0x24($sp) +/* 01D310 8001C710 E7B70018 */ swc1 $f23, 0x18($sp) +/* 01D314 8001C714 E7B6001C */ swc1 $f22, 0x1c($sp) +/* 01D318 8001C718 E7B50010 */ swc1 $f21, 0x10($sp) +/* 01D31C 8001C71C E7B40014 */ swc1 $f20, 0x14($sp) +/* 01D320 8001C720 AFA500EC */ sw $a1, 0xec($sp) +/* 01D324 8001C724 AFA600F0 */ sw $a2, 0xf0($sp) +/* 01D328 8001C728 15C00009 */ bnez $t6, .L8001C750 +/* 01D32C 8001C72C AFA700F4 */ sw $a3, 0xf4($sp) +/* 01D330 8001C730 3C01800E */ lui $at, %hi(D_800E564C) # $at, 0x800e +/* 01D334 8001C734 C7A400F0 */ lwc1 $f4, 0xf0($sp) +/* 01D338 8001C738 C4295648 */ lwc1 $f9, %lo(D_800E5648)($at) +/* 01D33C 8001C73C C428564C */ lwc1 $f8, %lo(D_800E564C)($at) +/* 01D340 8001C740 460021A1 */ cvt.d.s $f6, $f4 +/* 01D344 8001C744 46283282 */ mul.d $f10, $f6, $f8 +/* 01D348 8001C748 46205420 */ cvt.s.d $f16, $f10 +/* 01D34C 8001C74C E7B000F0 */ swc1 $f16, 0xf0($sp) +.L8001C750: +/* 01D350 8001C750 00002825 */ move $a1, $zero +/* 01D354 8001C754 02403025 */ move $a2, $s2 +/* 01D358 8001C758 27B500AC */ addiu $s5, $sp, 0xac +/* 01D35C 8001C75C 27B400C0 */ addiu $s4, $sp, 0xc0 +/* 01D360 8001C760 27B300D4 */ addiu $s3, $sp, 0xd4 +/* 01D364 8001C764 24110005 */ li $s1, 5 +/* 01D368 8001C768 241000FF */ li $s0, 255 +.L8001C76C: +/* 01D36C 8001C76C 90C4000C */ lbu $a0, 0xc($a2) +/* 01D370 8001C770 00000000 */ nop +/* 01D374 8001C774 16040004 */ bne $s0, $a0, .L8001C788 +/* 01D378 8001C778 00000000 */ nop +/* 01D37C 8001C77C 44800000 */ mtc1 $zero, $f0 +/* 01D380 8001C780 1000011D */ b .L8001CBF8 +/* 01D384 8001C784 8FBF005C */ lw $ra, 0x5c($sp) +.L8001C788: +/* 01D388 8001C788 AFA50080 */ sw $a1, 0x80($sp) +/* 01D38C 8001C78C 0C007485 */ jal func_8001D214 +/* 01D390 8001C790 AFA6006C */ sw $a2, 0x6c($sp) +/* 01D394 8001C794 8FA50080 */ lw $a1, 0x80($sp) +/* 01D398 8001C798 8FA6006C */ lw $a2, 0x6c($sp) +/* 01D39C 8001C79C 14400004 */ bnez $v0, .L8001C7B0 +/* 01D3A0 8001C7A0 00051880 */ sll $v1, $a1, 2 +/* 01D3A4 8001C7A4 44800000 */ mtc1 $zero, $f0 +/* 01D3A8 8001C7A8 10000113 */ b .L8001CBF8 +/* 01D3AC 8001C7AC 8FBF005C */ lw $ra, 0x5c($sp) +.L8001C7B0: +/* 01D3B0 8001C7B0 C452000C */ lwc1 $f18, 0xc($v0) +/* 01D3B4 8001C7B4 02637821 */ addu $t7, $s3, $v1 +/* 01D3B8 8001C7B8 E5F20000 */ swc1 $f18, ($t7) +/* 01D3BC 8001C7BC C4440010 */ lwc1 $f4, 0x10($v0) +/* 01D3C0 8001C7C0 0283C021 */ addu $t8, $s4, $v1 +/* 01D3C4 8001C7C4 E7040000 */ swc1 $f4, ($t8) +/* 01D3C8 8001C7C8 C4460014 */ lwc1 $f6, 0x14($v0) +/* 01D3CC 8001C7CC 24A50001 */ addiu $a1, $a1, 1 +/* 01D3D0 8001C7D0 02A3C821 */ addu $t9, $s5, $v1 +/* 01D3D4 8001C7D4 24C60001 */ addiu $a2, $a2, 1 +/* 01D3D8 8001C7D8 14B1FFE4 */ bne $a1, $s1, .L8001C76C +/* 01D3DC 8001C7DC E7260000 */ swc1 $f6, ($t9) +/* 01D3E0 8001C7E0 8E460000 */ lw $a2, ($s2) +/* 01D3E4 8001C7E4 02602025 */ move $a0, $s3 +/* 01D3E8 8001C7E8 0C008950 */ jal func_80022540 +/* 01D3EC 8001C7EC 00002825 */ move $a1, $zero +/* 01D3F0 8001C7F0 E7A000A8 */ swc1 $f0, 0xa8($sp) +/* 01D3F4 8001C7F4 8E460000 */ lw $a2, ($s2) +/* 01D3F8 8001C7F8 02802025 */ move $a0, $s4 +/* 01D3FC 8001C7FC 0C008950 */ jal func_80022540 +/* 01D400 8001C800 00002825 */ move $a1, $zero +/* 01D404 8001C804 8E460000 */ lw $a2, ($s2) +/* 01D408 8001C808 46000786 */ mov.s $f30, $f0 +/* 01D40C 8001C80C 02A02025 */ move $a0, $s5 +/* 01D410 8001C810 0C008950 */ jal func_80022540 +/* 01D414 8001C814 00002825 */ move $a1, $zero +/* 01D418 8001C818 E7A000A0 */ swc1 $f0, 0xa0($sp) +/* 01D41C 8001C81C C64A0008 */ lwc1 $f10, 8($s2) +/* 01D420 8001C820 44804000 */ mtc1 $zero, $f8 +/* 01D424 8001C824 4480E000 */ mtc1 $zero, $f28 +/* 01D428 8001C828 460A4032 */ c.eq.s $f8, $f10 +/* 01D42C 8001C82C 00008825 */ move $s1, $zero +/* 01D430 8001C830 45000004 */ bc1f .L8001C844 +/* 01D434 8001C834 3C01800E */ lui $at, %hi(D_800E5650) # $at, 0x800e +/* 01D438 8001C838 C4305650 */ lwc1 $f16, %lo(D_800E5650)($at) +/* 01D43C 8001C83C 00000000 */ nop +/* 01D440 8001C840 E6500008 */ swc1 $f16, 8($s2) +.L8001C844: +/* 01D444 8001C844 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 01D448 8001C848 4481E800 */ mtc1 $at, $f29 +/* 01D44C 8001C84C 00008025 */ move $s0, $zero +.L8001C850: +/* 01D450 8001C850 C6520008 */ lwc1 $f18, 8($s2) +/* 01D454 8001C854 C7A400F0 */ lwc1 $f4, 0xf0($sp) +/* 01D458 8001C858 C6480000 */ lwc1 $f8, ($s2) +/* 01D45C 8001C85C 46049182 */ mul.s $f6, $f18, $f4 +/* 01D460 8001C860 02602025 */ move $a0, $s3 +/* 01D464 8001C864 46064500 */ add.s $f20, $f8, $f6 +/* 01D468 8001C868 4600A021 */ cvt.d.s $f0, $f20 +/* 01D46C 8001C86C 4620E03E */ c.le.d $f28, $f0 +/* 01D470 8001C870 00000000 */ nop +/* 01D474 8001C874 45000004 */ bc1f .L8001C888 +/* 01D478 8001C878 00000000 */ nop +/* 01D47C 8001C87C 463C0281 */ sub.d $f10, $f0, $f28 +/* 01D480 8001C880 24110001 */ li $s1, 1 +/* 01D484 8001C884 46205520 */ cvt.s.d $f20, $f10 +.L8001C888: +/* 01D488 8001C888 4406A000 */ mfc1 $a2, $f20 +/* 01D48C 8001C88C 0C008950 */ jal func_80022540 +/* 01D490 8001C890 02202825 */ move $a1, $s1 +/* 01D494 8001C894 4406A000 */ mfc1 $a2, $f20 +/* 01D498 8001C898 46000586 */ mov.s $f22, $f0 +/* 01D49C 8001C89C 02802025 */ move $a0, $s4 +/* 01D4A0 8001C8A0 0C008950 */ jal func_80022540 +/* 01D4A4 8001C8A4 02202825 */ move $a1, $s1 +/* 01D4A8 8001C8A8 4406A000 */ mfc1 $a2, $f20 +/* 01D4AC 8001C8AC 46000606 */ mov.s $f24, $f0 +/* 01D4B0 8001C8B0 02A02025 */ move $a0, $s5 +/* 01D4B4 8001C8B4 0C008950 */ jal func_80022540 +/* 01D4B8 8001C8B8 02202825 */ move $a1, $s1 +/* 01D4BC 8001C8BC C7B000A8 */ lwc1 $f16, 0xa8($sp) +/* 01D4C0 8001C8C0 C7B200A0 */ lwc1 $f18, 0xa0($sp) +/* 01D4C4 8001C8C4 461EC601 */ sub.s $f24, $f24, $f30 +/* 01D4C8 8001C8C8 4610B581 */ sub.s $f22, $f22, $f16 +/* 01D4CC 8001C8CC 16000016 */ bnez $s0, .L8001C928 +/* 01D4D0 8001C8D0 46120681 */ sub.s $f26, $f0, $f18 +/* 01D4D4 8001C8D4 4616B102 */ mul.s $f4, $f22, $f22 +/* 01D4D8 8001C8D8 00008825 */ move $s1, $zero +/* 01D4DC 8001C8DC 4618C202 */ mul.s $f8, $f24, $f24 +/* 01D4E0 8001C8E0 00000000 */ nop +/* 01D4E4 8001C8E4 461AD282 */ mul.s $f10, $f26, $f26 +/* 01D4E8 8001C8E8 46082180 */ add.s $f6, $f4, $f8 +/* 01D4EC 8001C8EC 0C0326B4 */ jal sqrtf +/* 01D4F0 8001C8F0 460A3300 */ add.s $f12, $f6, $f10 +/* 01D4F4 8001C8F4 C7B000F0 */ lwc1 $f16, 0xf0($sp) +/* 01D4F8 8001C8F8 44809000 */ mtc1 $zero, $f18 +/* 01D4FC 8001C8FC 46100083 */ div.s $f2, $f0, $f16 +/* 01D500 8001C900 C7A800F4 */ lwc1 $f8, 0xf4($sp) +/* 01D504 8001C904 46029032 */ c.eq.s $f18, $f2 +/* 01D508 8001C908 00000000 */ nop +/* 01D50C 8001C90C 45010006 */ bc1t .L8001C928 +/* 01D510 8001C910 00000000 */ nop +/* 01D514 8001C914 46024183 */ div.s $f6, $f8, $f2 +/* 01D518 8001C918 C6440008 */ lwc1 $f4, 8($s2) +/* 01D51C 8001C91C 00000000 */ nop +/* 01D520 8001C920 46062282 */ mul.s $f10, $f4, $f6 +/* 01D524 8001C924 E64A0008 */ swc1 $f10, 8($s2) +.L8001C928: +/* 01D528 8001C928 26100001 */ addiu $s0, $s0, 1 +/* 01D52C 8001C92C 24010002 */ li $at, 2 +/* 01D530 8001C930 1601FFC7 */ bne $s0, $at, .L8001C850 +/* 01D534 8001C934 00000000 */ nop +/* 01D538 8001C938 8FA200EC */ lw $v0, 0xec($sp) +/* 01D53C 8001C93C E6540000 */ swc1 $f20, ($s2) +/* 01D540 8001C940 C7B000A8 */ lwc1 $f16, 0xa8($sp) +/* 01D544 8001C944 C7A800A0 */ lwc1 $f8, 0xa0($sp) +/* 01D548 8001C948 4610B480 */ add.s $f18, $f22, $f16 +/* 01D54C 8001C94C 461EC780 */ add.s $f30, $f24, $f30 +/* 01D550 8001C950 E7B200A8 */ swc1 $f18, 0xa8($sp) +/* 01D554 8001C954 4608D100 */ add.s $f4, $f26, $f8 +/* 01D558 8001C958 E7BE0088 */ swc1 $f30, 0x88($sp) +/* 01D55C 8001C95C E7A400A0 */ swc1 $f4, 0xa0($sp) +/* 01D560 8001C960 C7A600A8 */ lwc1 $f6, 0xa8($sp) +/* 01D564 8001C964 C44A000C */ lwc1 $f10, 0xc($v0) +/* 01D568 8001C968 C4500010 */ lwc1 $f16, 0x10($v0) +/* 01D56C 8001C96C 460A3581 */ sub.s $f22, $f6, $f10 +/* 01D570 8001C970 C7B200A0 */ lwc1 $f18, 0xa0($sp) +/* 01D574 8001C974 4616B102 */ mul.s $f4, $f22, $f22 +/* 01D578 8001C978 4610F601 */ sub.s $f24, $f30, $f16 +/* 01D57C 8001C97C C4480014 */ lwc1 $f8, 0x14($v0) +/* 01D580 8001C980 E7B600A8 */ swc1 $f22, 0xa8($sp) +/* 01D584 8001C984 4618C182 */ mul.s $f6, $f24, $f24 +/* 01D588 8001C988 46089681 */ sub.s $f26, $f18, $f8 +/* 01D58C 8001C98C E7BA00A0 */ swc1 $f26, 0xa0($sp) +/* 01D590 8001C990 461AD402 */ mul.s $f16, $f26, $f26 +/* 01D594 8001C994 46062280 */ add.s $f10, $f4, $f6 +/* 01D598 8001C998 4600C786 */ mov.s $f30, $f24 +/* 01D59C 8001C99C 0C0326B4 */ jal sqrtf +/* 01D5A0 8001C9A0 46105300 */ add.s $f12, $f10, $f16 +/* 01D5A4 8001C9A4 44809000 */ mtc1 $zero, $f18 +/* 01D5A8 8001C9A8 C7AA00A8 */ lwc1 $f10, 0xa8($sp) +/* 01D5AC 8001C9AC 46120032 */ c.eq.s $f0, $f18 +/* 01D5B0 8001C9B0 460A5402 */ mul.s $f16, $f10, $f10 +/* 01D5B4 8001C9B4 4501000D */ bc1t .L8001C9EC +/* 01D5B8 8001C9B8 3C01800E */ lui $at, %hi(D_800E565C) # $at, 0x800e +/* 01D5BC 8001C9BC C4295658 */ lwc1 $f9, %lo(D_800E5658)($at) +/* 01D5C0 8001C9C0 C428565C */ lwc1 $f8, %lo(D_800E565C)($at) +/* 01D5C4 8001C9C4 46000121 */ cvt.d.s $f4, $f0 +/* 01D5C8 8001C9C8 00000000 */ nop +/* 01D5CC 8001C9CC 46244183 */ div.d $f6, $f8, $f4 +/* 01D5D0 8001C9D0 46203520 */ cvt.s.d $f20, $f6 +/* 01D5D4 8001C9D4 4614B582 */ mul.s $f22, $f22, $f20 +/* 01D5D8 8001C9D8 00000000 */ nop +/* 01D5DC 8001C9DC 4614C602 */ mul.s $f24, $f24, $f20 +/* 01D5E0 8001C9E0 00000000 */ nop +/* 01D5E4 8001C9E4 4614D682 */ mul.s $f26, $f26, $f20 +/* 01D5E8 8001C9E8 00000000 */ nop +.L8001C9EC: +/* 01D5EC 8001C9EC 461EF482 */ mul.s $f18, $f30, $f30 +/* 01D5F0 8001C9F0 C7A400A0 */ lwc1 $f4, 0xa0($sp) +/* 01D5F4 8001C9F4 00000000 */ nop +/* 01D5F8 8001C9F8 46042182 */ mul.s $f6, $f4, $f4 +/* 01D5FC 8001C9FC 46128200 */ add.s $f8, $f16, $f18 +/* 01D600 8001CA00 0C0326B4 */ jal sqrtf +/* 01D604 8001CA04 46064300 */ add.s $f12, $f8, $f6 +/* 01D608 8001CA08 3C014180 */ li $at, 0x41800000 # 16.000000 +/* 01D60C 8001CA0C 44815000 */ mtc1 $at, $f10 +/* 01D610 8001CA10 C7B000F4 */ lwc1 $f16, 0xf4($sp) +/* 01D614 8001CA14 460A0503 */ div.s $f20, $f0, $f10 +/* 01D618 8001CA18 4614803C */ c.lt.s $f16, $f20 +/* 01D61C 8001CA1C 00000000 */ nop +/* 01D620 8001CA20 45000002 */ bc1f .L8001CA2C +/* 01D624 8001CA24 00000000 */ nop +/* 01D628 8001CA28 46008506 */ mov.s $f20, $f16 +.L8001CA2C: +/* 01D62C 8001CA2C 4600A4A1 */ cvt.d.s $f18, $f20 +/* 01D630 8001CA30 4632E03E */ c.le.d $f28, $f18 +/* 01D634 8001CA34 00000000 */ nop +/* 01D638 8001CA38 4500003C */ bc1f .L8001CB2C +/* 01D63C 8001CA3C 8FAB00EC */ lw $t3, 0xec($sp) +/* 01D640 8001CA40 4600B306 */ mov.s $f12, $f22 +/* 01D644 8001CA44 0C01C1D4 */ jal func_80070750 +/* 01D648 8001CA48 4600D386 */ mov.s $f14, $f26 +/* 01D64C 8001CA4C 8FA800EC */ lw $t0, 0xec($sp) +/* 01D650 8001CA50 24018000 */ li $at, -32768 +/* 01D654 8001CA54 85030000 */ lh $v1, ($t0) +/* 01D658 8001CA58 34148001 */ li $s4, 32769 +/* 01D65C 8001CA5C 3069FFFF */ andi $t1, $v1, 0xffff +/* 01D660 8001CA60 00498023 */ subu $s0, $v0, $t1 +/* 01D664 8001CA64 02018021 */ addu $s0, $s0, $at +/* 01D668 8001CA68 0214082A */ slt $at, $s0, $s4 +/* 01D66C 8001CA6C 14200003 */ bnez $at, .L8001CA7C +/* 01D670 8001CA70 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 01D674 8001CA74 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 01D678 8001CA78 02018021 */ addu $s0, $s0, $at +.L8001CA7C: +/* 01D67C 8001CA7C 2A018000 */ slti $at, $s0, -0x8000 +/* 01D680 8001CA80 10200002 */ beqz $at, .L8001CA8C +/* 01D684 8001CA84 3401FFFF */ li $at, 65535 +/* 01D688 8001CA88 02018021 */ addu $s0, $s0, $at +.L8001CA8C: +/* 01D68C 8001CA8C 444AF800 */ cfc1 $t2, $31 +/* 01D690 8001CA90 C7A400F0 */ lwc1 $f4, 0xf0($sp) +/* 01D694 8001CA94 35410003 */ ori $at, $t2, 3 +/* 01D698 8001CA98 38210002 */ xori $at, $at, 2 +/* 01D69C 8001CA9C 44C1F800 */ ctc1 $at, $31 +/* 01D6A0 8001CAA0 8FAE00EC */ lw $t6, 0xec($sp) +/* 01D6A4 8001CAA4 46002224 */ cvt.w.s $f8, $f4 +/* 01D6A8 8001CAA8 3C01437F */ li $at, 0x437F0000 # 255.000000 +/* 01D6AC 8001CAAC 44134000 */ mfc1 $s3, $f8 +/* 01D6B0 8001CAB0 44CAF800 */ ctc1 $t2, $31 +/* 01D6B4 8001CAB4 02130019 */ multu $s0, $s3 +/* 01D6B8 8001CAB8 44817000 */ mtc1 $at, $f14 +/* 01D6BC 8001CABC 4600C306 */ mov.s $f12, $f24 +/* 01D6C0 8001CAC0 00005812 */ mflo $t3 +/* 01D6C4 8001CAC4 000B6103 */ sra $t4, $t3, 4 +/* 01D6C8 8001CAC8 006C6821 */ addu $t5, $v1, $t4 +/* 01D6CC 8001CACC 0C01C1D4 */ jal func_80070750 +/* 01D6D0 8001CAD0 A5CD0000 */ sh $t5, ($t6) +/* 01D6D4 8001CAD4 8FAF00EC */ lw $t7, 0xec($sp) +/* 01D6D8 8001CAD8 00000000 */ nop +/* 01D6DC 8001CADC 85E30002 */ lh $v1, 2($t7) +/* 01D6E0 8001CAE0 00000000 */ nop +/* 01D6E4 8001CAE4 3078FFFF */ andi $t8, $v1, 0xffff +/* 01D6E8 8001CAE8 00588023 */ subu $s0, $v0, $t8 +/* 01D6EC 8001CAEC 0214082A */ slt $at, $s0, $s4 +/* 01D6F0 8001CAF0 14200003 */ bnez $at, .L8001CB00 +/* 01D6F4 8001CAF4 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff +/* 01D6F8 8001CAF8 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 +/* 01D6FC 8001CAFC 02018021 */ addu $s0, $s0, $at +.L8001CB00: +/* 01D700 8001CB00 2A018000 */ slti $at, $s0, -0x8000 +/* 01D704 8001CB04 10200002 */ beqz $at, .L8001CB10 +/* 01D708 8001CB08 3401FFFF */ li $at, 65535 +/* 01D70C 8001CB0C 02018021 */ addu $s0, $s0, $at +.L8001CB10: +/* 01D710 8001CB10 02130019 */ multu $s0, $s3 +/* 01D714 8001CB14 8FAA00EC */ lw $t2, 0xec($sp) +/* 01D718 8001CB18 0000C812 */ mflo $t9 +/* 01D71C 8001CB1C 00194103 */ sra $t0, $t9, 4 +/* 01D720 8001CB20 00684821 */ addu $t1, $v1, $t0 +/* 01D724 8001CB24 A5490002 */ sh $t1, 2($t2) +/* 01D728 8001CB28 8FAB00EC */ lw $t3, 0xec($sp) +.L8001CB2C: +/* 01D72C 8001CB2C 34108000 */ li $s0, 32768 +/* 01D730 8001CB30 856C0000 */ lh $t4, ($t3) +/* 01D734 8001CB34 A5600004 */ sh $zero, 4($t3) +/* 01D738 8001CB38 01902021 */ addu $a0, $t4, $s0 +/* 01D73C 8001CB3C 00046C00 */ sll $t5, $a0, 0x10 +/* 01D740 8001CB40 0C01C1F1 */ jal func_800707C4 +/* 01D744 8001CB44 000D2403 */ sra $a0, $t5, 0x10 +/* 01D748 8001CB48 8FAF00EC */ lw $t7, 0xec($sp) +/* 01D74C 8001CB4C 46140582 */ mul.s $f22, $f0, $f20 +/* 01D750 8001CB50 85F80000 */ lh $t8, ($t7) +/* 01D754 8001CB54 00000000 */ nop +/* 01D758 8001CB58 03102021 */ addu $a0, $t8, $s0 +/* 01D75C 8001CB5C 0004CC00 */ sll $t9, $a0, 0x10 +/* 01D760 8001CB60 0C01C1FE */ jal func_800707F8 +/* 01D764 8001CB64 00192403 */ sra $a0, $t9, 0x10 +/* 01D768 8001CB68 C7A600F0 */ lwc1 $f6, 0xf0($sp) +/* 01D76C 8001CB6C 8FA400EC */ lw $a0, 0xec($sp) +/* 01D770 8001CB70 4606B282 */ mul.s $f10, $f22, $f6 +/* 01D774 8001CB74 24060000 */ li $a2, 0 +/* 01D778 8001CB78 46140402 */ mul.s $f16, $f0, $f20 +/* 01D77C 8001CB7C 44055000 */ mfc1 $a1, $f10 +/* 01D780 8001CB80 46068482 */ mul.s $f18, $f16, $f6 +/* 01D784 8001CB84 44079000 */ mfc1 $a3, $f18 +/* 01D788 8001CB88 0C00455C */ jal func_80011570 +/* 01D78C 8001CB8C 00000000 */ nop +/* 01D790 8001CB90 C7A40088 */ lwc1 $f4, 0x88($sp) +/* 01D794 8001CB94 8FA900EC */ lw $t1, 0xec($sp) +/* 01D798 8001CB98 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 01D79C 8001CB9C E5240010 */ swc1 $f4, 0x10($t1) +/* 01D7A0 8001CBA0 C7A800F0 */ lwc1 $f8, 0xf0($sp) +/* 01D7A4 8001CBA4 44818000 */ mtc1 $at, $f16 +/* 01D7A8 8001CBA8 4608A282 */ mul.s $f10, $f20, $f8 +/* 01D7AC 8001CBAC 00000000 */ nop +/* 01D7B0 8001CBB0 46105502 */ mul.s $f20, $f10, $f16 +/* 01D7B4 8001CBB4 1220000E */ beqz $s1, .L8001CBF0 +/* 01D7B8 8001CBB8 00000000 */ nop +/* 01D7BC 8001CBBC 924A000D */ lbu $t2, 0xd($s2) +/* 01D7C0 8001CBC0 924B000E */ lbu $t3, 0xe($s2) +/* 01D7C4 8001CBC4 924C000F */ lbu $t4, 0xf($s2) +/* 01D7C8 8001CBC8 924D0010 */ lbu $t5, 0x10($s2) +/* 01D7CC 8001CBCC A24A000C */ sb $t2, 0xc($s2) +/* 01D7D0 8001CBD0 A24B000D */ sb $t3, 0xd($s2) +/* 01D7D4 8001CBD4 A24C000E */ sb $t4, 0xe($s2) +/* 01D7D8 8001CBD8 A24D000F */ sb $t5, 0xf($s2) +/* 01D7DC 8001CBDC 8FA600F8 */ lw $a2, 0xf8($sp) +/* 01D7E0 8001CBE0 318500FF */ andi $a1, $t4, 0xff +/* 01D7E4 8001CBE4 0C007312 */ jal func_8001CC48 +/* 01D7E8 8001CBE8 31A400FF */ andi $a0, $t5, 0xff +/* 01D7EC 8001CBEC A2420010 */ sb $v0, 0x10($s2) +.L8001CBF0: +/* 01D7F0 8001CBF0 4600A006 */ mov.s $f0, $f20 +/* 01D7F4 8001CBF4 8FBF005C */ lw $ra, 0x5c($sp) +.L8001CBF8: +/* 01D7F8 8001CBF8 C7B50010 */ lwc1 $f21, 0x10($sp) +/* 01D7FC 8001CBFC C7B40014 */ lwc1 $f20, 0x14($sp) +/* 01D800 8001CC00 C7B70018 */ lwc1 $f23, 0x18($sp) +/* 01D804 8001CC04 C7B6001C */ lwc1 $f22, 0x1c($sp) +/* 01D808 8001CC08 C7B90020 */ lwc1 $f25, 0x20($sp) +/* 01D80C 8001CC0C C7B80024 */ lwc1 $f24, 0x24($sp) +/* 01D810 8001CC10 C7BB0028 */ lwc1 $f27, 0x28($sp) +/* 01D814 8001CC14 C7BA002C */ lwc1 $f26, 0x2c($sp) +/* 01D818 8001CC18 C7BD0030 */ lwc1 $f29, 0x30($sp) +/* 01D81C 8001CC1C C7BC0034 */ lwc1 $f28, 0x34($sp) +/* 01D820 8001CC20 C7BF0038 */ lwc1 $f31, 0x38($sp) +/* 01D824 8001CC24 C7BE003C */ lwc1 $f30, 0x3c($sp) +/* 01D828 8001CC28 8FB00044 */ lw $s0, 0x44($sp) +/* 01D82C 8001CC2C 8FB10048 */ lw $s1, 0x48($sp) +/* 01D830 8001CC30 8FB2004C */ lw $s2, 0x4c($sp) +/* 01D834 8001CC34 8FB30050 */ lw $s3, 0x50($sp) +/* 01D838 8001CC38 8FB40054 */ lw $s4, 0x54($sp) +/* 01D83C 8001CC3C 8FB50058 */ lw $s5, 0x58($sp) +/* 01D840 8001CC40 03E00008 */ jr $ra +/* 01D844 8001CC44 27BD00E8 */ addiu $sp, $sp, 0xe8 + diff --git a/asm/non_matchings/unknown_005740/func_8001CC48.s b/asm/non_matchings/unknown_005740/func_8001CC48.s new file mode 100644 index 00000000..0d57639e --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001CC48.s @@ -0,0 +1,66 @@ +glabel func_8001CC48 +/* 01D848 8001CC48 27BDFFF8 */ addiu $sp, $sp, -8 +/* 01D84C 8001CC4C AFB00004 */ sw $s0, 4($sp) +/* 01D850 8001CC50 2881FFFF */ slti $at, $a0, -1 +/* 01D854 8001CC54 14200004 */ bnez $at, .L8001CC68 +/* 01D858 8001CC58 00A08025 */ move $s0, $a1 +/* 01D85C 8001CC5C 28810080 */ slti $at, $a0, 0x80 +/* 01D860 8001CC60 14200003 */ bnez $at, .L8001CC70 +/* 01D864 8001CC64 3C0E8012 */ lui $t6, %hi(D_8011AF04) # $t6, 0x8012 +.L8001CC68: +/* 01D868 8001CC68 1000002C */ b .L8001CD1C +/* 01D86C 8001CC6C 240200FF */ li $v0, 255 +.L8001CC70: +/* 01D870 8001CC70 8DCEAF04 */ lw $t6, %lo(D_8011AF04)($t6) +/* 01D874 8001CC74 00047880 */ sll $t7, $a0, 2 +/* 01D878 8001CC78 01CFC021 */ addu $t8, $t6, $t7 +/* 01D87C 8001CC7C 8F020000 */ lw $v0, ($t8) +/* 01D880 8001CC80 30D90003 */ andi $t9, $a2, 3 +/* 01D884 8001CC84 14400003 */ bnez $v0, .L8001CC94 +/* 01D888 8001CC88 00002825 */ move $a1, $zero +/* 01D88C 8001CC8C 10000023 */ b .L8001CD1C +/* 01D890 8001CC90 240200FF */ li $v0, 255 +.L8001CC94: +/* 01D894 8001CC94 8C440064 */ lw $a0, 0x64($v0) +/* 01D898 8001CC98 8C43003C */ lw $v1, 0x3c($v0) +/* 01D89C 8001CC9C 00994021 */ addu $t0, $a0, $t9 +/* 01D8A0 8001CCA0 81070018 */ lb $a3, 0x18($t0) +/* 01D8A4 8001CCA4 240400FF */ li $a0, 255 +/* 01D8A8 8001CCA8 24E70001 */ addiu $a3, $a3, 1 +/* 01D8AC 8001CCAC 30EA0003 */ andi $t2, $a3, 3 +/* 01D8B0 8001CCB0 01403825 */ move $a3, $t2 +/* 01D8B4 8001CCB4 00004825 */ move $t1, $zero +.L8001CCB8: +/* 01D8B8 8001CCB8 00675821 */ addu $t3, $v1, $a3 +/* 01D8BC 8001CCBC 9162000A */ lbu $v0, 0xa($t3) +/* 01D8C0 8001CCC0 00000000 */ nop +/* 01D8C4 8001CCC4 10820006 */ beq $a0, $v0, .L8001CCE0 +/* 01D8C8 8001CCC8 00000000 */ nop +/* 01D8CC 8001CCCC 12020005 */ beq $s0, $v0, .L8001CCE4 +/* 01D8D0 8001CCD0 25290001 */ addiu $t1, $t1, 1 +/* 01D8D4 8001CCD4 A1070018 */ sb $a3, 0x18($t0) +/* 01D8D8 8001CCD8 24090004 */ li $t1, 4 +/* 01D8DC 8001CCDC 24A50001 */ addiu $a1, $a1, 1 +.L8001CCE0: +/* 01D8E0 8001CCE0 25290001 */ addiu $t1, $t1, 1 +.L8001CCE4: +/* 01D8E4 8001CCE4 24E70001 */ addiu $a3, $a3, 1 +/* 01D8E8 8001CCE8 29210004 */ slti $at, $t1, 4 +/* 01D8EC 8001CCEC 30EC0003 */ andi $t4, $a3, 3 +/* 01D8F0 8001CCF0 1420FFF1 */ bnez $at, .L8001CCB8 +/* 01D8F4 8001CCF4 01803825 */ move $a3, $t4 +/* 01D8F8 8001CCF8 14A00003 */ bnez $a1, .L8001CD08 +/* 01D8FC 8001CCFC 00000000 */ nop +/* 01D900 8001CD00 10000006 */ b .L8001CD1C +/* 01D904 8001CD04 240200FF */ li $v0, 255 +.L8001CD08: +/* 01D908 8001CD08 810D0018 */ lb $t5, 0x18($t0) +/* 01D90C 8001CD0C 00000000 */ nop +/* 01D910 8001CD10 006D7021 */ addu $t6, $v1, $t5 +/* 01D914 8001CD14 91C2000A */ lbu $v0, 0xa($t6) +/* 01D918 8001CD18 00000000 */ nop +.L8001CD1C: +/* 01D91C 8001CD1C 8FB00004 */ lw $s0, 4($sp) +/* 01D920 8001CD20 03E00008 */ jr $ra +/* 01D924 8001CD24 27BD0008 */ addiu $sp, $sp, 8 + diff --git a/asm/non_matchings/unknown_005740/func_8001CD28.s b/asm/non_matchings/unknown_005740/func_8001CD28.s new file mode 100644 index 00000000..ba452d7e --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001CD28.s @@ -0,0 +1,318 @@ +glabel func_8001CD28 +/* 01D928 8001CD28 27BDFC88 */ addiu $sp, $sp, -0x378 +/* 01D92C 8001CD2C AFB60020 */ sw $s6, 0x20($sp) +/* 01D930 8001CD30 00A0B025 */ move $s6, $a1 +/* 01D934 8001CD34 AFBF002C */ sw $ra, 0x2c($sp) +/* 01D938 8001CD38 AFBE0028 */ sw $fp, 0x28($sp) +/* 01D93C 8001CD3C AFB70024 */ sw $s7, 0x24($sp) +/* 01D940 8001CD40 AFB5001C */ sw $s5, 0x1c($sp) +/* 01D944 8001CD44 AFB40018 */ sw $s4, 0x18($sp) +/* 01D948 8001CD48 AFB30014 */ sw $s3, 0x14($sp) +/* 01D94C 8001CD4C AFB20010 */ sw $s2, 0x10($sp) +/* 01D950 8001CD50 AFB1000C */ sw $s1, 0xc($sp) +/* 01D954 8001CD54 AFB00008 */ sw $s0, 8($sp) +/* 01D958 8001CD58 AFA40378 */ sw $a0, 0x378($sp) +/* 01D95C 8001CD5C AFA60380 */ sw $a2, 0x380($sp) +/* 01D960 8001CD60 AFA70384 */ sw $a3, 0x384($sp) +/* 01D964 8001CD64 00006825 */ move $t5, $zero +/* 01D968 8001CD68 27AA0154 */ addiu $t2, $sp, 0x154 +.L8001CD6C: +/* 01D96C 8001CD6C 000D7080 */ sll $t6, $t5, 2 +/* 01D970 8001CD70 25AD0001 */ addiu $t5, $t5, 1 +/* 01D974 8001CD74 000DC400 */ sll $t8, $t5, 0x10 +/* 01D978 8001CD78 00186C03 */ sra $t5, $t8, 0x10 +/* 01D97C 8001CD7C 014E7821 */ addu $t7, $t2, $t6 +/* 01D980 8001CD80 29A10080 */ slti $at, $t5, 0x80 +/* 01D984 8001CD84 1420FFF9 */ bnez $at, .L8001CD6C +/* 01D988 8001CD88 ADE00000 */ sw $zero, ($t7) +/* 01D98C 8001CD8C 8FAE0378 */ lw $t6, 0x378($sp) +/* 01D990 8001CD90 3C038012 */ lui $v1, %hi(D_8011AF04) # $v1, 0x8012 +/* 01D994 8001CD94 8C63AF04 */ lw $v1, %lo(D_8011AF04)($v1) +/* 01D998 8001CD98 000E7880 */ sll $t7, $t6, 2 +/* 01D99C 8001CD9C 006F2021 */ addu $a0, $v1, $t7 +/* 01D9A0 8001CDA0 8C820000 */ lw $v0, ($a0) +/* 01D9A4 8001CDA4 24180001 */ li $t8, 1 +/* 01D9A8 8001CDA8 8C540064 */ lw $s4, 0x64($v0) +/* 01D9AC 8001CDAC 8C51003C */ lw $s1, 0x3c($v0) +/* 01D9B0 8001CDB0 8FBE0370 */ lw $fp, 0x370($sp) +/* 01D9B4 8001CDB4 87A6036C */ lh $a2, 0x36c($sp) +/* 01D9B8 8001CDB8 00004825 */ move $t1, $zero +/* 01D9BC 8001CDBC 0000F825 */ move $ra, $zero +/* 01D9C0 8001CDC0 241200FF */ li $s2, 255 +/* 01D9C4 8001CDC4 00009825 */ move $s3, $zero +/* 01D9C8 8001CDC8 A3B80363 */ sb $t8, 0x363($sp) +/* 01D9CC 8001CDCC 0000A825 */ move $s5, $zero +/* 01D9D0 8001CDD0 AFA4004C */ sw $a0, 0x4c($sp) +/* 01D9D4 8001CDD4 241700FF */ li $s7, 255 +/* 01D9D8 8001CDD8 27AB0054 */ addiu $t3, $sp, 0x54 +/* 01D9DC 8001CDDC 27A800D4 */ addiu $t0, $sp, 0xd4 +/* 01D9E0 8001CDE0 AFA30050 */ sw $v1, 0x50($sp) +/* 01D9E4 8001CDE4 00006825 */ move $t5, $zero +.L8001CDE8: +/* 01D9E8 8001CDE8 000DC880 */ sll $t9, $t5, 2 +.L8001CDEC: +/* 01D9EC 8001CDEC 02997021 */ addu $t6, $s4, $t9 +/* 01D9F0 8001CDF0 8DCF0000 */ lw $t7, ($t6) +/* 01D9F4 8001CDF4 8FB80378 */ lw $t8, 0x378($sp) +/* 01D9F8 8001CDF8 11E0008A */ beqz $t7, .L8001D024 +/* 01D9FC 8001CDFC 022D8021 */ addu $s0, $s1, $t5 +/* 01DA00 8001CE00 92230009 */ lbu $v1, 9($s1) +/* 01DA04 8001CE04 9202000A */ lbu $v0, 0xa($s0) +/* 01DA08 8001CE08 17030005 */ bne $t8, $v1, .L8001CE20 +/* 01DA0C 8001CE0C 24070001 */ li $a3, 1 +/* 01DA10 8001CE10 8FB90380 */ lw $t9, 0x380($sp) +/* 01DA14 8001CE14 00000000 */ nop +/* 01DA18 8001CE18 10590007 */ beq $v0, $t9, .L8001CE38 +/* 01DA1C 8001CE1C 00000000 */ nop +.L8001CE20: +/* 01DA20 8001CE20 8FAE0380 */ lw $t6, 0x380($sp) +/* 01DA24 8001CE24 8FAF0378 */ lw $t7, 0x378($sp) +/* 01DA28 8001CE28 15C30009 */ bne $t6, $v1, .L8001CE50 +/* 01DA2C 8001CE2C 00000000 */ nop +/* 01DA30 8001CE30 144F0007 */ bne $v0, $t7, .L8001CE50 +/* 01DA34 8001CE34 00000000 */ nop +.L8001CE38: +/* 01DA38 8001CE38 12A00002 */ beqz $s5, .L8001CE44 +/* 01DA3C 8001CE3C 00003825 */ move $a3, $zero +/* 01DA40 8001CE40 24070001 */ li $a3, 1 +.L8001CE44: +/* 01DA44 8001CE44 26B50001 */ addiu $s5, $s5, 1 +/* 01DA48 8001CE48 0015C600 */ sll $t8, $s5, 0x18 +/* 01DA4C 8001CE4C 0018AE03 */ sra $s5, $t8, 0x18 +.L8001CE50: +/* 01DA50 8001CE50 10E00022 */ beqz $a3, .L8001CEDC +/* 01DA54 8001CE54 2524FFFF */ addiu $a0, $t1, -1 +/* 01DA58 8001CE58 00003025 */ move $a2, $zero +/* 01DA5C 8001CE5C 19200010 */ blez $t1, .L8001CEA0 +/* 01DA60 8001CE60 00003825 */ move $a3, $zero +/* 01DA64 8001CE64 83AE00D4 */ lb $t6, 0xd4($sp) +/* 01DA68 8001CE68 00000000 */ nop +/* 01DA6C 8001CE6C 104E000D */ beq $v0, $t6, .L8001CEA4 +/* 01DA70 8001CE70 000D7840 */ sll $t7, $t5, 1 +.L8001CE74: +/* 01DA74 8001CE74 24C60001 */ addiu $a2, $a2, 1 +/* 01DA78 8001CE78 00067C00 */ sll $t7, $a2, 0x10 +/* 01DA7C 8001CE7C 000FC403 */ sra $t8, $t7, 0x10 +/* 01DA80 8001CE80 0309082A */ slt $at, $t8, $t1 +/* 01DA84 8001CE84 10200006 */ beqz $at, .L8001CEA0 +/* 01DA88 8001CE88 03003025 */ move $a2, $t8 +/* 01DA8C 8001CE8C 0118C821 */ addu $t9, $t0, $t8 +/* 01DA90 8001CE90 832E0000 */ lb $t6, ($t9) +/* 01DA94 8001CE94 00000000 */ nop +/* 01DA98 8001CE98 144EFFF6 */ bne $v0, $t6, .L8001CE74 +/* 01DA9C 8001CE9C 00000000 */ nop +.L8001CEA0: +/* 01DAA0 8001CEA0 000D7840 */ sll $t7, $t5, 1 +.L8001CEA4: +/* 01DAA4 8001CEA4 028FC021 */ addu $t8, $s4, $t7 +/* 01DAA8 8001CEA8 87190010 */ lh $t9, 0x10($t8) +/* 01DAAC 8001CEAC 14C90003 */ bne $a2, $t1, .L8001CEBC +/* 01DAB0 8001CEB0 033FF021 */ addu $fp, $t9, $ra +/* 01DAB4 8001CEB4 10000009 */ b .L8001CEDC +/* 01DAB8 8001CEB8 24070002 */ li $a3, 2 +.L8001CEBC: +/* 01DABC 8001CEBC 00027080 */ sll $t6, $v0, 2 +/* 01DAC0 8001CEC0 014E7821 */ addu $t7, $t2, $t6 +/* 01DAC4 8001CEC4 8DF80000 */ lw $t8, ($t7) +/* 01DAC8 8001CEC8 00000000 */ nop +/* 01DACC 8001CECC 03D8082A */ slt $at, $fp, $t8 +/* 01DAD0 8001CED0 10200002 */ beqz $at, .L8001CEDC +/* 01DAD4 8001CED4 00000000 */ nop +/* 01DAD8 8001CED8 24070001 */ li $a3, 1 +.L8001CEDC: +/* 01DADC 8001CEDC 10E00051 */ beqz $a3, .L8001D024 +/* 01DAE0 8001CEE0 0002C880 */ sll $t9, $v0, 2 +/* 01DAE4 8001CEE4 00C4082A */ slt $at, $a2, $a0 +/* 01DAE8 8001CEE8 1020000C */ beqz $at, .L8001CF1C +/* 01DAEC 8001CEEC 01596021 */ addu $t4, $t2, $t9 +.L8001CEF0: +/* 01DAF0 8001CEF0 01061021 */ addu $v0, $t0, $a2 +/* 01DAF4 8001CEF4 01661821 */ addu $v1, $t3, $a2 +/* 01DAF8 8001CEF8 24C60001 */ addiu $a2, $a2, 1 +/* 01DAFC 8001CEFC 0006C400 */ sll $t8, $a2, 0x10 +/* 01DB00 8001CF00 804E0001 */ lb $t6, 1($v0) +/* 01DB04 8001CF04 806F0001 */ lb $t7, 1($v1) +/* 01DB08 8001CF08 00183403 */ sra $a2, $t8, 0x10 +/* 01DB0C 8001CF0C 00C4082A */ slt $at, $a2, $a0 +/* 01DB10 8001CF10 A04E0000 */ sb $t6, ($v0) +/* 01DB14 8001CF14 1420FFF6 */ bnez $at, .L8001CEF0 +/* 01DB18 8001CF18 A06F0000 */ sb $t7, ($v1) +.L8001CF1C: +/* 01DB1C 8001CF1C 24010002 */ li $at, 2 +/* 01DB20 8001CF20 14E10005 */ bne $a3, $at, .L8001CF38 +/* 01DB24 8001CF24 00000000 */ nop +/* 01DB28 8001CF28 25290001 */ addiu $t1, $t1, 1 +/* 01DB2C 8001CF2C 00097400 */ sll $t6, $t1, 0x10 +/* 01DB30 8001CF30 000E4C03 */ sra $t1, $t6, 0x10 +/* 01DB34 8001CF34 2524FFFF */ addiu $a0, $t1, -1 +.L8001CF38: +/* 01DB38 8001CF38 AD9E0000 */ sw $fp, ($t4) +/* 01DB3C 8001CF3C 00041400 */ sll $v0, $a0, 0x10 +/* 01DB40 8001CF40 83AE0363 */ lb $t6, 0x363($sp) +/* 01DB44 8001CF44 00043400 */ sll $a2, $a0, 0x10 +/* 01DB48 8001CF48 0002CC03 */ sra $t9, $v0, 0x10 +/* 01DB4C 8001CF4C 0006C403 */ sra $t8, $a2, 0x10 +/* 01DB50 8001CF50 03003025 */ move $a2, $t8 +/* 01DB54 8001CF54 03201025 */ move $v0, $t9 +/* 01DB58 8001CF58 01792821 */ addu $a1, $t3, $t9 +/* 01DB5C 8001CF5C 11C00004 */ beqz $t6, .L8001CF70 +/* 01DB60 8001CF60 01191821 */ addu $v1, $t0, $t9 +/* 01DB64 8001CF64 920F000A */ lbu $t7, 0xa($s0) +/* 01DB68 8001CF68 10000002 */ b .L8001CF74 +/* 01DB6C 8001CF6C A0AF0000 */ sb $t7, ($a1) +.L8001CF70: +/* 01DB70 8001CF70 A0B30000 */ sb $s3, ($a1) +.L8001CF74: +/* 01DB74 8001CF74 9218000A */ lbu $t8, 0xa($s0) +/* 01DB78 8001CF78 1840002A */ blez $v0, .L8001D024 +/* 01DB7C 8001CF7C A0780000 */ sb $t8, ($v1) +/* 01DB80 8001CF80 8079FFFF */ lb $t9, -1($v1) +/* 01DB84 8001CF84 01061021 */ addu $v0, $t0, $a2 +/* 01DB88 8001CF88 00197080 */ sll $t6, $t9, 2 +/* 01DB8C 8001CF8C 80790000 */ lb $t9, ($v1) +/* 01DB90 8001CF90 014E7821 */ addu $t7, $t2, $t6 +/* 01DB94 8001CF94 8DF80000 */ lw $t8, ($t7) +/* 01DB98 8001CF98 00197080 */ sll $t6, $t9, 2 +/* 01DB9C 8001CF9C 014E7821 */ addu $t7, $t2, $t6 +/* 01DBA0 8001CFA0 8DF90000 */ lw $t9, ($t7) +/* 01DBA4 8001CFA4 00000000 */ nop +/* 01DBA8 8001CFA8 0319082A */ slt $at, $t8, $t9 +/* 01DBAC 8001CFAC 1020001D */ beqz $at, .L8001D024 +/* 01DBB0 8001CFB0 00000000 */ nop +/* 01DBB4 8001CFB4 80440000 */ lb $a0, ($v0) +/* 01DBB8 8001CFB8 8045FFFF */ lb $a1, -1($v0) +/* 01DBBC 8001CFBC 00000000 */ nop +/* 01DBC0 8001CFC0 01661821 */ addu $v1, $t3, $a2 +.L8001CFC4: +/* 01DBC4 8001CFC4 24C6FFFF */ addiu $a2, $a2, -1 +/* 01DBC8 8001CFC8 80670000 */ lb $a3, ($v1) +/* 01DBCC 8001CFCC 806EFFFF */ lb $t6, -1($v1) +/* 01DBD0 8001CFD0 0006C400 */ sll $t8, $a2, 0x10 +/* 01DBD4 8001CFD4 0018CC03 */ sra $t9, $t8, 0x10 +/* 01DBD8 8001CFD8 A0450000 */ sb $a1, ($v0) +/* 01DBDC 8001CFDC A044FFFF */ sb $a0, -1($v0) +/* 01DBE0 8001CFE0 03203025 */ move $a2, $t9 +/* 01DBE4 8001CFE4 A067FFFF */ sb $a3, -1($v1) +/* 01DBE8 8001CFE8 1B20000E */ blez $t9, .L8001D024 +/* 01DBEC 8001CFEC A06E0000 */ sb $t6, ($v1) +/* 01DBF0 8001CFF0 01191021 */ addu $v0, $t0, $t9 +/* 01DBF4 8001CFF4 8045FFFF */ lb $a1, -1($v0) +/* 01DBF8 8001CFF8 80440000 */ lb $a0, ($v0) +/* 01DBFC 8001CFFC 00057080 */ sll $t6, $a1, 2 +/* 01DC00 8001D000 014E7821 */ addu $t7, $t2, $t6 +/* 01DC04 8001D004 0004C880 */ sll $t9, $a0, 2 +/* 01DC08 8001D008 8DF80000 */ lw $t8, ($t7) +/* 01DC0C 8001D00C 01597021 */ addu $t6, $t2, $t9 +/* 01DC10 8001D010 8DCF0000 */ lw $t7, ($t6) +/* 01DC14 8001D014 00000000 */ nop +/* 01DC18 8001D018 030F082A */ slt $at, $t8, $t7 +/* 01DC1C 8001D01C 1420FFE9 */ bnez $at, .L8001CFC4 +/* 01DC20 8001D020 01661821 */ addu $v1, $t3, $a2 +.L8001D024: +/* 01DC24 8001D024 25AD0001 */ addiu $t5, $t5, 1 +/* 01DC28 8001D028 000DCC00 */ sll $t9, $t5, 0x10 +/* 01DC2C 8001D02C 00196C03 */ sra $t5, $t9, 0x10 +/* 01DC30 8001D030 29A10004 */ slti $at, $t5, 4 +/* 01DC34 8001D034 1420FF6D */ bnez $at, .L8001CDEC +/* 01DC38 8001D038 000DC880 */ sll $t9, $t5, 2 +/* 01DC3C 8001D03C 1920002A */ blez $t1, .L8001D0E8 +/* 01DC40 8001D040 00000000 */ nop +/* 01DC44 8001D044 2529FFFF */ addiu $t1, $t1, -1 +/* 01DC48 8001D048 0009C400 */ sll $t8, $t1, 0x10 +/* 01DC4C 8001D04C 00184C03 */ sra $t1, $t8, 0x10 +/* 01DC50 8001D050 0109C821 */ addu $t9, $t0, $t1 +/* 01DC54 8001D054 83230000 */ lb $v1, ($t9) +/* 01DC58 8001D058 8FAE0050 */ lw $t6, 0x50($sp) +/* 01DC5C 8001D05C 0003C080 */ sll $t8, $v1, 2 +/* 01DC60 8001D060 01D87821 */ addu $t7, $t6, $t8 +/* 01DC64 8001D064 8DE20000 */ lw $v0, ($t7) +/* 01DC68 8001D068 0169C821 */ addu $t9, $t3, $t1 +/* 01DC6C 8001D06C 8C51003C */ lw $s1, 0x3c($v0) +/* 01DC70 8001D070 83330000 */ lb $s3, ($t9) +/* 01DC74 8001D074 922E0009 */ lbu $t6, 9($s1) +/* 01DC78 8001D078 32D90100 */ andi $t9, $s6, 0x100 +/* 01DC7C 8001D07C 000EC080 */ sll $t8, $t6, 2 +/* 01DC80 8001D080 01587821 */ addu $t7, $t2, $t8 +/* 01DC84 8001D084 8DFF0000 */ lw $ra, ($t7) +/* 01DC88 8001D088 8C540064 */ lw $s4, 0x64($v0) +/* 01DC8C 8001D08C 13200008 */ beqz $t9, .L8001D0B0 +/* 01DC90 8001D090 A3A00363 */ sb $zero, 0x363($sp) +/* 01DC94 8001D094 32CE007F */ andi $t6, $s6, 0x7f +/* 01DC98 8001D098 15C3000C */ bne $t6, $v1, .L8001D0CC +/* 01DC9C 8001D09C 00000000 */ nop +/* 01DCA0 8001D0A0 00139400 */ sll $s2, $s3, 0x10 +/* 01DCA4 8001D0A4 0012C403 */ sra $t8, $s2, 0x10 +/* 01DCA8 8001D0A8 10000008 */ b .L8001D0CC +/* 01DCAC 8001D0AC 03009025 */ move $s2, $t8 +.L8001D0B0: +/* 01DCB0 8001D0B0 922F0008 */ lbu $t7, 8($s1) +/* 01DCB4 8001D0B4 00000000 */ nop +/* 01DCB8 8001D0B8 16CF0004 */ bne $s6, $t7, .L8001D0CC +/* 01DCBC 8001D0BC 00000000 */ nop +/* 01DCC0 8001D0C0 00139400 */ sll $s2, $s3, 0x10 +/* 01DCC4 8001D0C4 0012CC03 */ sra $t9, $s2, 0x10 +/* 01DCC8 8001D0C8 03209025 */ move $s2, $t9 +.L8001D0CC: +/* 01DCCC 8001D0CC 15200006 */ bnez $t1, .L8001D0E8 +/* 01DCD0 8001D0D0 00000000 */ nop +/* 01DCD4 8001D0D4 16570004 */ bne $s2, $s7, .L8001D0E8 +/* 01DCD8 8001D0D8 00000000 */ nop +/* 01DCDC 8001D0DC 00139400 */ sll $s2, $s3, 0x10 +/* 01DCE0 8001D0E0 00127403 */ sra $t6, $s2, 0x10 +/* 01DCE4 8001D0E4 01C09025 */ move $s2, $t6 +.L8001D0E8: +/* 01DCE8 8001D0E8 16570005 */ bne $s2, $s7, .L8001D100 +/* 01DCEC 8001D0EC 00000000 */ nop +/* 01DCF0 8001D0F0 1D20FF3D */ bgtz $t1, .L8001CDE8 +/* 01DCF4 8001D0F4 00006825 */ move $t5, $zero +/* 01DCF8 8001D0F8 AFBE0370 */ sw $fp, 0x370($sp) +/* 01DCFC 8001D0FC A7A6036C */ sh $a2, 0x36c($sp) +.L8001D100: +/* 01DD00 8001D100 1257001E */ beq $s2, $s7, .L8001D17C +/* 01DD04 8001D104 8FBF002C */ lw $ra, 0x2c($sp) +/* 01DD08 8001D108 8FB8004C */ lw $t8, 0x4c($sp) +/* 01DD0C 8001D10C 00006825 */ move $t5, $zero +/* 01DD10 8001D110 8F020000 */ lw $v0, ($t8) +/* 01DD14 8001D114 00000000 */ nop +/* 01DD18 8001D118 8C51003C */ lw $s1, 0x3c($v0) +/* 01DD1C 8001D11C 8C540064 */ lw $s4, 0x64($v0) +/* 01DD20 8001D120 922F000A */ lbu $t7, 0xa($s1) +/* 01DD24 8001D124 00000000 */ nop +/* 01DD28 8001D128 124F000D */ beq $s2, $t7, .L8001D160 +/* 01DD2C 8001D12C 29A10004 */ slti $at, $t5, 4 +.L8001D130: +/* 01DD30 8001D130 25AD0001 */ addiu $t5, $t5, 1 +/* 01DD34 8001D134 000DCC00 */ sll $t9, $t5, 0x10 +/* 01DD38 8001D138 00197403 */ sra $t6, $t9, 0x10 +/* 01DD3C 8001D13C 29C10004 */ slti $at, $t6, 4 +/* 01DD40 8001D140 10200006 */ beqz $at, .L8001D15C +/* 01DD44 8001D144 01C06825 */ move $t5, $t6 +/* 01DD48 8001D148 022EC021 */ addu $t8, $s1, $t6 +/* 01DD4C 8001D14C 930F000A */ lbu $t7, 0xa($t8) +/* 01DD50 8001D150 00000000 */ nop +/* 01DD54 8001D154 164FFFF6 */ bne $s2, $t7, .L8001D130 +/* 01DD58 8001D158 00000000 */ nop +.L8001D15C: +/* 01DD5C 8001D15C 29A10004 */ slti $at, $t5, 4 +.L8001D160: +/* 01DD60 8001D160 10200006 */ beqz $at, .L8001D17C +/* 01DD64 8001D164 8FBF002C */ lw $ra, 0x2c($sp) +/* 01DD68 8001D168 8FB90384 */ lw $t9, 0x384($sp) +/* 01DD6C 8001D16C 00000000 */ nop +/* 01DD70 8001D170 02997021 */ addu $t6, $s4, $t9 +/* 01DD74 8001D174 A1CD0018 */ sb $t5, 0x18($t6) +/* 01DD78 8001D178 8FBF002C */ lw $ra, 0x2c($sp) +.L8001D17C: +/* 01DD7C 8001D17C 02401025 */ move $v0, $s2 +/* 01DD80 8001D180 8FB20010 */ lw $s2, 0x10($sp) +/* 01DD84 8001D184 8FB00008 */ lw $s0, 8($sp) +/* 01DD88 8001D188 8FB1000C */ lw $s1, 0xc($sp) +/* 01DD8C 8001D18C 8FB30014 */ lw $s3, 0x14($sp) +/* 01DD90 8001D190 8FB40018 */ lw $s4, 0x18($sp) +/* 01DD94 8001D194 8FB5001C */ lw $s5, 0x1c($sp) +/* 01DD98 8001D198 8FB60020 */ lw $s6, 0x20($sp) +/* 01DD9C 8001D19C 8FB70024 */ lw $s7, 0x24($sp) +/* 01DDA0 8001D1A0 8FBE0028 */ lw $fp, 0x28($sp) +/* 01DDA4 8001D1A4 03E00008 */ jr $ra +/* 01DDA8 8001D1A8 27BD0378 */ addiu $sp, $sp, 0x378 + diff --git a/asm/non_matchings/unknown_005740/func_8001D1AC.s b/asm/non_matchings/unknown_005740/func_8001D1AC.s new file mode 100644 index 00000000..a0d62d64 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001D1AC.s @@ -0,0 +1,6 @@ +glabel func_8001D1AC +/* 01DDAC 8001D1AC 240E0001 */ li $t6, 1 +/* 01DDB0 8001D1B0 3C018012 */ lui $at, 0x8012 +/* 01DDB4 8001D1B4 03E00008 */ jr $ra +/* 01DDB8 8001D1B8 AC2EAF10 */ sw $t6, -0x50f0($at) + diff --git a/asm/non_matchings/unknown_005740/func_8001D1BC.s b/asm/non_matchings/unknown_005740/func_8001D1BC.s new file mode 100644 index 00000000..97abfecd --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001D1BC.s @@ -0,0 +1,26 @@ +glabel func_8001D1BC +/* 01DDBC 8001D1BC 3C038012 */ lui $v1, %hi(D_8011AF08) # $v1, 0x8012 +/* 01DDC0 8001D1C0 2463AF08 */ addiu $v1, %lo(D_8011AF08) # addiu $v1, $v1, -0x50f8 +/* 01DDC4 8001D1C4 8C620000 */ lw $v0, ($v1) +/* 01DDC8 8001D1C8 00000000 */ nop +/* 01DDCC 8001D1CC 10820003 */ beq $a0, $v0, .L8001D1DC +/* 01DDD0 8001D1D0 00000000 */ nop +/* 01DDD4 8001D1D4 AC620004 */ sw $v0, 4($v1) +/* 01DDD8 8001D1D8 AC640000 */ sw $a0, ($v1) +.L8001D1DC: +/* 01DDDC 8001D1DC 03E00008 */ jr $ra +/* 01DDE0 8001D1E0 00000000 */ nop + +/* 01DDE4 8001D1E4 3C038012 */ lui $v1, %hi(D_8011AF08) # $v1, 0x8012 +/* 01DDE8 8001D1E8 2463AF08 */ addiu $v1, %lo(D_8011AF08) # addiu $v1, $v1, -0x50f8 +/* 01DDEC 8001D1EC 8C6E0004 */ lw $t6, 4($v1) +/* 01DDF0 8001D1F0 3C0F8012 */ lui $t7, %hi(D_8011AF04) # $t7, 0x8012 +/* 01DDF4 8001D1F4 AC8E0000 */ sw $t6, ($a0) +/* 01DDF8 8001D1F8 8C780004 */ lw $t8, 4($v1) +/* 01DDFC 8001D1FC 8DEFAF04 */ lw $t7, %lo(D_8011AF04)($t7) +/* 01DE00 8001D200 0018C880 */ sll $t9, $t8, 2 +/* 01DE04 8001D204 01F94021 */ addu $t0, $t7, $t9 +/* 01DE08 8001D208 8D020000 */ lw $v0, ($t0) +/* 01DE0C 8001D20C 03E00008 */ jr $ra +/* 01DE10 8001D210 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001D214.s b/asm/non_matchings/unknown_005740/func_8001D214.s new file mode 100644 index 00000000..453517a2 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001D214.s @@ -0,0 +1,22 @@ +glabel func_8001D214 +/* 01DE14 8001D214 04800009 */ bltz $a0, .L8001D23C +/* 01DE18 8001D218 28810080 */ slti $at, $a0, 0x80 +/* 01DE1C 8001D21C 10200007 */ beqz $at, .L8001D23C +/* 01DE20 8001D220 3C0E8012 */ lui $t6, %hi(D_8011AF04) # $t6, 0x8012 +/* 01DE24 8001D224 8DCEAF04 */ lw $t6, %lo(D_8011AF04)($t6) +/* 01DE28 8001D228 00047880 */ sll $t7, $a0, 2 +/* 01DE2C 8001D22C 01CFC021 */ addu $t8, $t6, $t7 +/* 01DE30 8001D230 8F020000 */ lw $v0, ($t8) +/* 01DE34 8001D234 03E00008 */ jr $ra +/* 01DE38 8001D238 00000000 */ nop + +.L8001D23C: +/* 01DE3C 8001D23C 00001025 */ move $v0, $zero +/* 01DE40 8001D240 03E00008 */ jr $ra +/* 01DE44 8001D244 00000000 */ nop + +/* 01DE48 8001D248 AFA40000 */ sw $a0, ($sp) +/* 01DE4C 8001D24C AFA50004 */ sw $a1, 4($sp) +/* 01DE50 8001D250 03E00008 */ jr $ra +/* 01DE54 8001D254 AFA60008 */ sw $a2, 8($sp) + diff --git a/asm/non_matchings/unknown_005740/func_8001D258.s b/asm/non_matchings/unknown_005740/func_8001D258.s new file mode 100644 index 00000000..b294dde0 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001D258.s @@ -0,0 +1,161 @@ +glabel func_8001D258 +/* 01DE58 8001D258 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 01DE5C 8001D25C AFA60028 */ sw $a2, 0x28($sp) +/* 01DE60 8001D260 AFA7002C */ sw $a3, 0x2c($sp) +/* 01DE64 8001D264 87AE002E */ lh $t6, 0x2e($sp) +/* 01DE68 8001D268 87AF0032 */ lh $t7, 0x32($sp) +/* 01DE6C 8001D26C 87A7002A */ lh $a3, 0x2a($sp) +/* 01DE70 8001D270 AFBF001C */ sw $ra, 0x1c($sp) +/* 01DE74 8001D274 44067000 */ mfc1 $a2, $f14 +/* 01DE78 8001D278 3C048012 */ lui $a0, %hi(D_8011AF30) # $a0, 0x8012 +/* 01DE7C 8001D27C 44056000 */ mfc1 $a1, $f12 +/* 01DE80 8001D280 2484AF30 */ addiu $a0, %lo(D_8011AF30) # addiu $a0, $a0, -0x50d0 +/* 01DE84 8001D284 AFAE0010 */ sw $t6, 0x10($sp) +/* 01DE88 8001D288 0C00752D */ jal func_8001D4B4 +/* 01DE8C 8001D28C AFAF0014 */ sw $t7, 0x14($sp) +/* 01DE90 8001D290 8FBF001C */ lw $ra, 0x1c($sp) +/* 01DE94 8001D294 27BD0020 */ addiu $sp, $sp, 0x20 +/* 01DE98 8001D298 03E00008 */ jr $ra +/* 01DE9C 8001D29C 00000000 */ nop + +/* 01DEA0 8001D2A0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 01DEA4 8001D2A4 AFBF0024 */ sw $ra, 0x24($sp) +/* 01DEA8 8001D2A8 AFB10020 */ sw $s1, 0x20($sp) +/* 01DEAC 8001D2AC AFB0001C */ sw $s0, 0x1c($sp) +/* 01DEB0 8001D2B0 AFA70034 */ sw $a3, 0x34($sp) +/* 01DEB4 8001D2B4 8C900054 */ lw $s0, 0x54($a0) +/* 01DEB8 8001D2B8 44856000 */ mtc1 $a1, $f12 +/* 01DEBC 8001D2BC 44867000 */ mtc1 $a2, $f14 +/* 01DEC0 8001D2C0 12000077 */ beqz $s0, .L8001D4A0 +/* 01DEC4 8001D2C4 00808825 */ move $s1, $a0 +/* 01DEC8 8001D2C8 C6040028 */ lwc1 $f4, 0x28($s0) +/* 01DECC 8001D2CC 44801000 */ mtc1 $zero, $f2 +/* 01DED0 8001D2D0 460C2180 */ add.s $f6, $f4, $f12 +/* 01DED4 8001D2D4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 01DED8 8001D2D8 E6060028 */ swc1 $f6, 0x28($s0) +/* 01DEDC 8001D2DC 8C900054 */ lw $s0, 0x54($a0) +/* 01DEE0 8001D2E0 00000000 */ nop +/* 01DEE4 8001D2E4 C6000028 */ lwc1 $f0, 0x28($s0) +/* 01DEE8 8001D2E8 00000000 */ nop +/* 01DEEC 8001D2EC 4602003C */ c.lt.s $f0, $f2 +/* 01DEF0 8001D2F0 00000000 */ nop +/* 01DEF4 8001D2F4 45000005 */ bc1f .L8001D30C +/* 01DEF8 8001D2F8 00000000 */ nop +/* 01DEFC 8001D2FC E6020028 */ swc1 $f2, 0x28($s0) +/* 01DF00 8001D300 8C900054 */ lw $s0, 0x54($a0) +/* 01DF04 8001D304 1000000B */ b .L8001D334 +/* 01DF08 8001D308 C608002C */ lwc1 $f8, 0x2c($s0) +.L8001D30C: +/* 01DF0C 8001D30C 44816000 */ mtc1 $at, $f12 +/* 01DF10 8001D310 00000000 */ nop +/* 01DF14 8001D314 4600603C */ c.lt.s $f12, $f0 +/* 01DF18 8001D318 00000000 */ nop +/* 01DF1C 8001D31C 45000004 */ bc1f .L8001D330 +/* 01DF20 8001D320 00000000 */ nop +/* 01DF24 8001D324 E60C0028 */ swc1 $f12, 0x28($s0) +/* 01DF28 8001D328 8E300054 */ lw $s0, 0x54($s1) +/* 01DF2C 8001D32C 00000000 */ nop +.L8001D330: +/* 01DF30 8001D330 C608002C */ lwc1 $f8, 0x2c($s0) +.L8001D334: +/* 01DF34 8001D334 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 01DF38 8001D338 460E4280 */ add.s $f10, $f8, $f14 +/* 01DF3C 8001D33C 44818000 */ mtc1 $at, $f16 +/* 01DF40 8001D340 E60A002C */ swc1 $f10, 0x2c($s0) +/* 01DF44 8001D344 8E300054 */ lw $s0, 0x54($s1) +/* 01DF48 8001D348 3C01800E */ lui $at, %hi(D_800E5660) # $at, 0x800e +/* 01DF4C 8001D34C C600002C */ lwc1 $f0, 0x2c($s0) +/* 01DF50 8001D350 00000000 */ nop +/* 01DF54 8001D354 4602003C */ c.lt.s $f0, $f2 +/* 01DF58 8001D358 00000000 */ nop +/* 01DF5C 8001D35C 45000006 */ bc1f .L8001D378 +/* 01DF60 8001D360 00000000 */ nop +/* 01DF64 8001D364 E602002C */ swc1 $f2, 0x2c($s0) +/* 01DF68 8001D368 8E300054 */ lw $s0, 0x54($s1) +/* 01DF6C 8001D36C 00000000 */ nop +/* 01DF70 8001D370 C600002C */ lwc1 $f0, 0x2c($s0) +/* 01DF74 8001D374 00000000 */ nop +.L8001D378: +/* 01DF78 8001D378 4600803E */ c.le.s $f16, $f0 +/* 01DF7C 8001D37C 00000000 */ nop +/* 01DF80 8001D380 45000008 */ bc1f .L8001D3A4 +/* 01DF84 8001D384 00000000 */ nop +/* 01DF88 8001D388 C4325660 */ lwc1 $f18, %lo(D_800E5660)($at) +/* 01DF8C 8001D38C 00000000 */ nop +/* 01DF90 8001D390 E612002C */ swc1 $f18, 0x2c($s0) +/* 01DF94 8001D394 8E300054 */ lw $s0, 0x54($s1) +/* 01DF98 8001D398 00000000 */ nop +/* 01DF9C 8001D39C C600002C */ lwc1 $f0, 0x2c($s0) +/* 01DFA0 8001D3A0 00000000 */ nop +.L8001D3A4: +/* 01DFA4 8001D3A4 86080024 */ lh $t0, 0x24($s0) +/* 01DFA8 8001D3A8 87A9003A */ lh $t1, 0x3a($sp) +/* 01DFAC 8001D3AC 860E0022 */ lh $t6, 0x22($s0) +/* 01DFB0 8001D3B0 8E050028 */ lw $a1, 0x28($s0) +/* 01DFB4 8001D3B4 01095021 */ addu $t2, $t0, $t1 +/* 01DFB8 8001D3B8 87AF0036 */ lh $t7, 0x36($sp) +/* 01DFBC 8001D3BC AFAA0010 */ sw $t2, 0x10($sp) +/* 01DFC0 8001D3C0 860B0026 */ lh $t3, 0x26($s0) +/* 01DFC4 8001D3C4 87AC003E */ lh $t4, 0x3e($sp) +/* 01DFC8 8001D3C8 01CF3821 */ addu $a3, $t6, $t7 +/* 01DFCC 8001D3CC 0007C400 */ sll $t8, $a3, 0x10 +/* 01DFD0 8001D3D0 44060000 */ mfc1 $a2, $f0 +/* 01DFD4 8001D3D4 016C6821 */ addu $t5, $t3, $t4 +/* 01DFD8 8001D3D8 AFAD0014 */ sw $t5, 0x14($sp) +/* 01DFDC 8001D3DC 00183C03 */ sra $a3, $t8, 0x10 +/* 01DFE0 8001D3E0 0C00752D */ jal func_8001D4B4 +/* 01DFE4 8001D3E4 02002025 */ move $a0, $s0 +/* 01DFE8 8001D3E8 8E220040 */ lw $v0, 0x40($s1) +/* 01DFEC 8001D3EC 00000000 */ nop +/* 01DFF0 8001D3F0 904E003D */ lbu $t6, 0x3d($v0) +/* 01DFF4 8001D3F4 00000000 */ nop +/* 01DFF8 8001D3F8 11C0002A */ beqz $t6, .L8001D4A4 +/* 01DFFC 8001D3FC 8FBF0024 */ lw $ra, 0x24($sp) +/* 01E000 8001D400 904F003A */ lbu $t7, 0x3a($v0) +/* 01E004 8001D404 8E380054 */ lw $t8, 0x54($s1) +/* 01E008 8001D408 00000000 */ nop +/* 01E00C 8001D40C A30F0004 */ sb $t7, 4($t8) +/* 01E010 8001D410 8E390040 */ lw $t9, 0x40($s1) +/* 01E014 8001D414 8E290054 */ lw $t1, 0x54($s1) +/* 01E018 8001D418 9328003B */ lbu $t0, 0x3b($t9) +/* 01E01C 8001D41C 00000000 */ nop +/* 01E020 8001D420 A1280005 */ sb $t0, 5($t1) +/* 01E024 8001D424 8E2A0040 */ lw $t2, 0x40($s1) +/* 01E028 8001D428 8E2C0054 */ lw $t4, 0x54($s1) +/* 01E02C 8001D42C 914B003C */ lbu $t3, 0x3c($t2) +/* 01E030 8001D430 00000000 */ nop +/* 01E034 8001D434 A18B0006 */ sb $t3, 6($t4) +/* 01E038 8001D438 8E2D0040 */ lw $t5, 0x40($s1) +/* 01E03C 8001D43C 8E2F0054 */ lw $t7, 0x54($s1) +/* 01E040 8001D440 91AE003D */ lbu $t6, 0x3d($t5) +/* 01E044 8001D444 00000000 */ nop +/* 01E048 8001D448 A1EE0007 */ sb $t6, 7($t7) +/* 01E04C 8001D44C 8E300054 */ lw $s0, 0x54($s1) +/* 01E050 8001D450 00000000 */ nop +/* 01E054 8001D454 8618001C */ lh $t8, 0x1c($s0) +/* 01E058 8001D458 00000000 */ nop +/* 01E05C 8001D45C 0018C843 */ sra $t9, $t8, 1 +/* 01E060 8001D460 00194023 */ negu $t0, $t9 +/* 01E064 8001D464 A6080008 */ sh $t0, 8($s0) +/* 01E068 8001D468 8E300054 */ lw $s0, 0x54($s1) +/* 01E06C 8001D46C 00000000 */ nop +/* 01E070 8001D470 8609001E */ lh $t1, 0x1e($s0) +/* 01E074 8001D474 00000000 */ nop +/* 01E078 8001D478 00095043 */ sra $t2, $t1, 1 +/* 01E07C 8001D47C 000A5823 */ negu $t3, $t2 +/* 01E080 8001D480 A60B000A */ sh $t3, 0xa($s0) +/* 01E084 8001D484 8E300054 */ lw $s0, 0x54($s1) +/* 01E088 8001D488 00000000 */ nop +/* 01E08C 8001D48C 860C0020 */ lh $t4, 0x20($s0) +/* 01E090 8001D490 00000000 */ nop +/* 01E094 8001D494 000C6843 */ sra $t5, $t4, 1 +/* 01E098 8001D498 000D7023 */ negu $t6, $t5 +/* 01E09C 8001D49C A60E000C */ sh $t6, 0xc($s0) +.L8001D4A0: +/* 01E0A0 8001D4A0 8FBF0024 */ lw $ra, 0x24($sp) +.L8001D4A4: +/* 01E0A4 8001D4A4 8FB0001C */ lw $s0, 0x1c($sp) +/* 01E0A8 8001D4A8 8FB10020 */ lw $s1, 0x20($sp) +/* 01E0AC 8001D4AC 03E00008 */ jr $ra +/* 01E0B0 8001D4B0 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_005740/func_8001D4B4.s b/asm/non_matchings/unknown_005740/func_8001D4B4.s new file mode 100644 index 00000000..2ed98eed --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001D4B4.s @@ -0,0 +1,77 @@ +glabel func_8001D4B4 +/* 01E0B4 8001D4B4 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 01E0B8 8001D4B8 AFBF0014 */ sw $ra, 0x14($sp) +/* 01E0BC 8001D4BC AFA40030 */ sw $a0, 0x30($sp) +/* 01E0C0 8001D4C0 AFA7003C */ sw $a3, 0x3c($sp) +/* 01E0C4 8001D4C4 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 01E0C8 8001D4C8 44856000 */ mtc1 $a1, $f12 +/* 01E0CC 8001D4CC 44867000 */ mtc1 $a2, $f14 +/* 01E0D0 8001D4D0 44812000 */ mtc1 $at, $f4 +/* 01E0D4 8001D4D4 A4870022 */ sh $a3, 0x22($a0) +/* 01E0D8 8001D4D8 E48C0028 */ swc1 $f12, 0x28($a0) +/* 01E0DC 8001D4DC E48E002C */ swc1 $f14, 0x2c($a0) +/* 01E0E0 8001D4E0 E4840000 */ swc1 $f4, ($a0) +/* 01E0E4 8001D4E4 87B80042 */ lh $t8, 0x42($sp) +/* 01E0E8 8001D4E8 44800000 */ mtc1 $zero, $f0 +/* 01E0EC 8001D4EC A4980024 */ sh $t8, 0x24($a0) +/* 01E0F0 8001D4F0 87B90046 */ lh $t9, 0x46($sp) +/* 01E0F4 8001D4F4 3C01C680 */ li $at, 0xC6800000 # -16384.000000 +/* 01E0F8 8001D4F8 A4990026 */ sh $t9, 0x26($a0) +/* 01E0FC 8001D4FC 87A80046 */ lh $t0, 0x46($sp) +/* 01E100 8001D500 87A90042 */ lh $t1, 0x42($sp) +/* 01E104 8001D504 44813000 */ mtc1 $at, $f6 +/* 01E108 8001D508 00803025 */ move $a2, $a0 +/* 01E10C 8001D50C A7A7002C */ sh $a3, 0x2c($sp) +/* 01E110 8001D510 AFA60030 */ sw $a2, 0x30($sp) +/* 01E114 8001D514 27A40028 */ addiu $a0, $sp, 0x28 +/* 01E118 8001D518 27A5001C */ addiu $a1, $sp, 0x1c +/* 01E11C 8001D51C E7A0001C */ swc1 $f0, 0x1c($sp) +/* 01E120 8001D520 E7A00020 */ swc1 $f0, 0x20($sp) +/* 01E124 8001D524 A7A80028 */ sh $t0, 0x28($sp) +/* 01E128 8001D528 A7A9002A */ sh $t1, 0x2a($sp) +/* 01E12C 8001D52C 0C01C0C8 */ jal func_80070320 +/* 01E130 8001D530 E7A60024 */ swc1 $f6, 0x24($sp) +/* 01E134 8001D534 C7A8001C */ lwc1 $f8, 0x1c($sp) +/* 01E138 8001D538 8FA60030 */ lw $a2, 0x30($sp) +/* 01E13C 8001D53C 46004287 */ neg.s $f10, $f8 +/* 01E140 8001D540 444AF800 */ cfc1 $t2, $31 +/* 01E144 8001D544 00000000 */ nop +/* 01E148 8001D548 35410003 */ ori $at, $t2, 3 +/* 01E14C 8001D54C 38210002 */ xori $at, $at, 2 +/* 01E150 8001D550 44C1F800 */ ctc1 $at, $31 +/* 01E154 8001D554 00000000 */ nop +/* 01E158 8001D558 46005424 */ cvt.w.s $f16, $f10 +/* 01E15C 8001D55C 440B8000 */ mfc1 $t3, $f16 +/* 01E160 8001D560 44CAF800 */ ctc1 $t2, $31 +/* 01E164 8001D564 A4CB001C */ sh $t3, 0x1c($a2) +/* 01E168 8001D568 C7B20020 */ lwc1 $f18, 0x20($sp) +/* 01E16C 8001D56C 00000000 */ nop +/* 01E170 8001D570 46009107 */ neg.s $f4, $f18 +/* 01E174 8001D574 444CF800 */ cfc1 $t4, $31 +/* 01E178 8001D578 00000000 */ nop +/* 01E17C 8001D57C 35810003 */ ori $at, $t4, 3 +/* 01E180 8001D580 38210002 */ xori $at, $at, 2 +/* 01E184 8001D584 44C1F800 */ ctc1 $at, $31 +/* 01E188 8001D588 00000000 */ nop +/* 01E18C 8001D58C 460021A4 */ cvt.w.s $f6, $f4 +/* 01E190 8001D590 440D3000 */ mfc1 $t5, $f6 +/* 01E194 8001D594 44CCF800 */ ctc1 $t4, $31 +/* 01E198 8001D598 A4CD001E */ sh $t5, 0x1e($a2) +/* 01E19C 8001D59C C7A80024 */ lwc1 $f8, 0x24($sp) +/* 01E1A0 8001D5A0 A0C00018 */ sb $zero, 0x18($a2) +/* 01E1A4 8001D5A4 46004287 */ neg.s $f10, $f8 +/* 01E1A8 8001D5A8 444EF800 */ cfc1 $t6, $31 +/* 01E1AC 8001D5AC A0C00019 */ sb $zero, 0x19($a2) +/* 01E1B0 8001D5B0 35C10003 */ ori $at, $t6, 3 +/* 01E1B4 8001D5B4 38210002 */ xori $at, $at, 2 +/* 01E1B8 8001D5B8 44C1F800 */ ctc1 $at, $31 +/* 01E1BC 8001D5BC A0C0001A */ sb $zero, 0x1a($a2) +/* 01E1C0 8001D5C0 46005424 */ cvt.w.s $f16, $f10 +/* 01E1C4 8001D5C4 440F8000 */ mfc1 $t7, $f16 +/* 01E1C8 8001D5C8 44CEF800 */ ctc1 $t6, $31 +/* 01E1CC 8001D5CC A4CF0020 */ sh $t7, 0x20($a2) +/* 01E1D0 8001D5D0 8FBF0014 */ lw $ra, 0x14($sp) +/* 01E1D4 8001D5D4 27BD0030 */ addiu $sp, $sp, 0x30 +/* 01E1D8 8001D5D8 03E00008 */ jr $ra +/* 01E1DC 8001D5DC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001D5E0.s b/asm/non_matchings/unknown_005740/func_8001D5E0.s new file mode 100644 index 00000000..4ed6f492 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001D5E0.s @@ -0,0 +1,68 @@ +glabel func_8001D5E0 +/* 01E1E0 8001D5E0 460C6102 */ mul.s $f4, $f12, $f12 +/* 01E1E4 8001D5E4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 01E1E8 8001D5E8 E7B6001C */ swc1 $f22, 0x1c($sp) +/* 01E1EC 8001D5EC 4486B000 */ mtc1 $a2, $f22 +/* 01E1F0 8001D5F0 460E7182 */ mul.s $f6, $f14, $f14 +/* 01E1F4 8001D5F4 E7B50010 */ swc1 $f21, 0x10($sp) +/* 01E1F8 8001D5F8 E7B40014 */ swc1 $f20, 0x14($sp) +/* 01E1FC 8001D5FC AFBF0024 */ sw $ra, 0x24($sp) +/* 01E200 8001D600 4616B282 */ mul.s $f10, $f22, $f22 +/* 01E204 8001D604 46062200 */ add.s $f8, $f4, $f6 +/* 01E208 8001D608 E7B70018 */ swc1 $f23, 0x18($sp) +/* 01E20C 8001D60C E7AE002C */ swc1 $f14, 0x2c($sp) +/* 01E210 8001D610 46006506 */ mov.s $f20, $f12 +/* 01E214 8001D614 0C0326B4 */ jal sqrtf +/* 01E218 8001D618 460A4300 */ add.s $f12, $f8, $f10 +/* 01E21C 8001D61C 44808000 */ mtc1 $zero, $f16 +/* 01E220 8001D620 C7AE002C */ lwc1 $f14, 0x2c($sp) +/* 01E224 8001D624 46100032 */ c.eq.s $f0, $f16 +/* 01E228 8001D628 3C01C600 */ li $at, 0xC6000000 # -8192.000000 +/* 01E22C 8001D62C 4501000A */ bc1t .L8001D658 +/* 01E230 8001D630 00000000 */ nop +/* 01E234 8001D634 44819000 */ mtc1 $at, $f18 +/* 01E238 8001D638 00000000 */ nop +/* 01E23C 8001D63C 46009083 */ div.s $f2, $f18, $f0 +/* 01E240 8001D640 4602A502 */ mul.s $f20, $f20, $f2 +/* 01E244 8001D644 00000000 */ nop +/* 01E248 8001D648 46027382 */ mul.s $f14, $f14, $f2 +/* 01E24C 8001D64C 00000000 */ nop +/* 01E250 8001D650 4602B582 */ mul.s $f22, $f22, $f2 +/* 01E254 8001D654 00000000 */ nop +.L8001D658: +/* 01E258 8001D658 444EF800 */ cfc1 $t6, $31 +/* 01E25C 8001D65C 3C028012 */ lui $v0, %hi(D_8011AFE8) # $v0, 0x8012 +/* 01E260 8001D660 35C10003 */ ori $at, $t6, 3 +/* 01E264 8001D664 38210002 */ xori $at, $at, 2 +/* 01E268 8001D668 44C1F800 */ ctc1 $at, $31 +/* 01E26C 8001D66C 8FBF0024 */ lw $ra, 0x24($sp) +/* 01E270 8001D670 4600A124 */ cvt.w.s $f4, $f20 +/* 01E274 8001D674 2442AFE8 */ addiu $v0, %lo(D_8011AFE8) # addiu $v0, $v0, -0x5018 +/* 01E278 8001D678 44CEF800 */ ctc1 $t6, $31 +/* 01E27C 8001D67C 440F2000 */ mfc1 $t7, $f4 +/* 01E280 8001D680 C7B40014 */ lwc1 $f20, 0x14($sp) +/* 01E284 8001D684 4458F800 */ cfc1 $t8, $31 +/* 01E288 8001D688 C7B50010 */ lwc1 $f21, 0x10($sp) +/* 01E28C 8001D68C 37010003 */ ori $at, $t8, 3 +/* 01E290 8001D690 38210002 */ xori $at, $at, 2 +/* 01E294 8001D694 44C1F800 */ ctc1 $at, $31 +/* 01E298 8001D698 C7B70018 */ lwc1 $f23, 0x18($sp) +/* 01E29C 8001D69C 460071A4 */ cvt.w.s $f6, $f14 +/* 01E2A0 8001D6A0 A44F0000 */ sh $t7, ($v0) +/* 01E2A4 8001D6A4 44D8F800 */ ctc1 $t8, $31 +/* 01E2A8 8001D6A8 44193000 */ mfc1 $t9, $f6 +/* 01E2AC 8001D6AC 00000000 */ nop +/* 01E2B0 8001D6B0 4448F800 */ cfc1 $t0, $31 +/* 01E2B4 8001D6B4 A4590002 */ sh $t9, 2($v0) +/* 01E2B8 8001D6B8 35010003 */ ori $at, $t0, 3 +/* 01E2BC 8001D6BC 38210002 */ xori $at, $at, 2 +/* 01E2C0 8001D6C0 44C1F800 */ ctc1 $at, $31 +/* 01E2C4 8001D6C4 00000000 */ nop +/* 01E2C8 8001D6C8 4600B224 */ cvt.w.s $f8, $f22 +/* 01E2CC 8001D6CC C7B6001C */ lwc1 $f22, 0x1c($sp) +/* 01E2D0 8001D6D0 44094000 */ mfc1 $t1, $f8 +/* 01E2D4 8001D6D4 44C8F800 */ ctc1 $t0, $31 +/* 01E2D8 8001D6D8 27BD0028 */ addiu $sp, $sp, 0x28 +/* 01E2DC 8001D6DC 03E00008 */ jr $ra +/* 01E2E0 8001D6E0 A4490004 */ sh $t1, 4($v0) + diff --git a/asm/non_matchings/unknown_005740/func_8001D6E4.s b/asm/non_matchings/unknown_005740/func_8001D6E4.s new file mode 100644 index 00000000..8df6109f --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001D6E4.s @@ -0,0 +1,83 @@ +glabel func_8001D6E4 +/* 01E2E4 8001D6E4 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 01E2E8 8001D6E8 AFBF0024 */ sw $ra, 0x24($sp) +/* 01E2EC 8001D6EC AFB10020 */ sw $s1, 0x20($sp) +/* 01E2F0 8001D6F0 AFB0001C */ sw $s0, 0x1c($sp) +/* 01E2F4 8001D6F4 AFA60038 */ sw $a2, 0x38($sp) +/* 01E2F8 8001D6F8 84880028 */ lh $t0, 0x28($a0) +/* 01E2FC 8001D6FC 44876000 */ mtc1 $a3, $f12 +/* 01E300 8001D700 00A08025 */ move $s0, $a1 +/* 01E304 8001D704 00808825 */ move $s1, $a0 +/* 01E308 8001D708 00003825 */ move $a3, $zero +/* 01E30C 8001D70C 00004825 */ move $t1, $zero +/* 01E310 8001D710 19000018 */ blez $t0, .L8001D774 +/* 01E314 8001D714 00001825 */ move $v1, $zero +/* 01E318 8001D718 8C860038 */ lw $a2, 0x38($a0) +/* 01E31C 8001D71C 240400FF */ li $a0, 255 +/* 01E320 8001D720 2405000C */ li $a1, 12 +.L8001D724: +/* 01E324 8001D724 00650019 */ multu $v1, $a1 +/* 01E328 8001D728 24630001 */ addiu $v1, $v1, 1 +/* 01E32C 8001D72C 00035400 */ sll $t2, $v1, 0x10 +/* 01E330 8001D730 000A1C03 */ sra $v1, $t2, 0x10 +/* 01E334 8001D734 0068082A */ slt $at, $v1, $t0 +/* 01E338 8001D738 00007012 */ mflo $t6 +/* 01E33C 8001D73C 00CE1021 */ addu $v0, $a2, $t6 +/* 01E340 8001D740 904F0006 */ lbu $t7, 6($v0) +/* 01E344 8001D744 00000000 */ nop +/* 01E348 8001D748 108F0002 */ beq $a0, $t7, .L8001D754 +/* 01E34C 8001D74C 00000000 */ nop +/* 01E350 8001D750 2407FFFF */ li $a3, -1 +.L8001D754: +/* 01E354 8001D754 8C580008 */ lw $t8, 8($v0) +/* 01E358 8001D758 00000000 */ nop +/* 01E35C 8001D75C 33198000 */ andi $t9, $t8, 0x8000 +/* 01E360 8001D760 13200002 */ beqz $t9, .L8001D76C +/* 01E364 8001D764 00000000 */ nop +/* 01E368 8001D768 2409FFFF */ li $t1, -1 +.L8001D76C: +/* 01E36C 8001D76C 1420FFED */ bnez $at, .L8001D724 +/* 01E370 8001D770 00000000 */ nop +.L8001D774: +/* 01E374 8001D774 10E00019 */ beqz $a3, .L8001D7DC +/* 01E378 8001D778 00000000 */ nop +/* 01E37C 8001D77C 8E0C0040 */ lw $t4, 0x40($s0) +/* 01E380 8001D780 87A6003A */ lh $a2, 0x3a($sp) +/* 01E384 8001D784 918D0071 */ lbu $t5, 0x71($t4) +/* 01E388 8001D788 02002025 */ move $a0, $s0 +/* 01E38C 8001D78C 11A0000E */ beqz $t5, .L8001D7C8 +/* 01E390 8001D790 02202825 */ move $a1, $s1 +/* 01E394 8001D794 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 01E398 8001D798 44812000 */ mtc1 $at, $f4 +/* 01E39C 8001D79C 87A6003A */ lh $a2, 0x3a($sp) +/* 01E3A0 8001D7A0 02002025 */ move $a0, $s0 +/* 01E3A4 8001D7A4 02202825 */ move $a1, $s1 +/* 01E3A8 8001D7A8 02003825 */ move $a3, $s0 +/* 01E3AC 8001D7AC E7AC0010 */ swc1 $f12, 0x10($sp) +/* 01E3B0 8001D7B0 A7A9002E */ sh $t1, 0x2e($sp) +/* 01E3B4 8001D7B4 0C007603 */ jal func_8001D80C +/* 01E3B8 8001D7B8 E7A40014 */ swc1 $f4, 0x14($sp) +/* 01E3BC 8001D7BC 87A9002E */ lh $t1, 0x2e($sp) +/* 01E3C0 8001D7C0 10000006 */ b .L8001D7DC +/* 01E3C4 8001D7C4 00000000 */ nop +.L8001D7C8: +/* 01E3C8 8001D7C8 44076000 */ mfc1 $a3, $f12 +/* 01E3CC 8001D7CC 0C0091D1 */ jal func_80024744 +/* 01E3D0 8001D7D0 A7A9002E */ sh $t1, 0x2e($sp) +/* 01E3D4 8001D7D4 87A9002E */ lh $t1, 0x2e($sp) +/* 01E3D8 8001D7D8 00000000 */ nop +.L8001D7DC: +/* 01E3DC 8001D7DC 11200007 */ beqz $t1, .L8001D7FC +/* 01E3E0 8001D7E0 8FBF0024 */ lw $ra, 0x24($sp) +/* 01E3E4 8001D7E4 86050004 */ lh $a1, 4($s0) +/* 01E3E8 8001D7E8 86060002 */ lh $a2, 2($s0) +/* 01E3EC 8001D7EC 86070000 */ lh $a3, ($s0) +/* 01E3F0 8001D7F0 0C007755 */ jal func_8001DD54 +/* 01E3F4 8001D7F4 02202025 */ move $a0, $s1 +/* 01E3F8 8001D7F8 8FBF0024 */ lw $ra, 0x24($sp) +.L8001D7FC: +/* 01E3FC 8001D7FC 8FB0001C */ lw $s0, 0x1c($sp) +/* 01E400 8001D800 8FB10020 */ lw $s1, 0x20($sp) +/* 01E404 8001D804 03E00008 */ jr $ra +/* 01E408 8001D808 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_005740/func_8001D80C.s b/asm/non_matchings/unknown_005740/func_8001D80C.s new file mode 100644 index 00000000..a6d77b85 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001D80C.s @@ -0,0 +1,350 @@ +glabel func_8001D80C +/* 01E40C 8001D80C 27BDFF60 */ addiu $sp, $sp, -0xa0 +/* 01E410 8001D810 AFB20020 */ sw $s2, 0x20($sp) +/* 01E414 8001D814 AFBF003C */ sw $ra, 0x3c($sp) +/* 01E418 8001D818 AFBE0038 */ sw $fp, 0x38($sp) +/* 01E41C 8001D81C AFB70034 */ sw $s7, 0x34($sp) +/* 01E420 8001D820 AFB60030 */ sw $s6, 0x30($sp) +/* 01E424 8001D824 AFB5002C */ sw $s5, 0x2c($sp) +/* 01E428 8001D828 AFB40028 */ sw $s4, 0x28($sp) +/* 01E42C 8001D82C AFB30024 */ sw $s3, 0x24($sp) +/* 01E430 8001D830 AFB1001C */ sw $s1, 0x1c($sp) +/* 01E434 8001D834 AFB00018 */ sw $s0, 0x18($sp) +/* 01E438 8001D838 AFA600A8 */ sw $a2, 0xa8($sp) +/* 01E43C 8001D83C AFA700AC */ sw $a3, 0xac($sp) +/* 01E440 8001D840 8C820054 */ lw $v0, 0x54($a0) +/* 01E444 8001D844 00069400 */ sll $s2, $a2, 0x10 +/* 01E448 8001D848 00127403 */ sra $t6, $s2, 0x10 +/* 01E44C 8001D84C 01C09025 */ move $s2, $t6 +/* 01E450 8001D850 00808825 */ move $s1, $a0 +/* 01E454 8001D854 10400133 */ beqz $v0, .L8001DD24 +/* 01E458 8001D858 00A0B825 */ move $s7, $a1 +/* 01E45C 8001D85C 8CAF0040 */ lw $t7, 0x40($a1) +/* 01E460 8001D860 8C9E0044 */ lw $fp, 0x44($a0) +/* 01E464 8001D864 AFAF0054 */ sw $t7, 0x54($sp) +/* 01E468 8001D868 84580008 */ lh $t8, 8($v0) +/* 01E46C 8001D86C 27B0005C */ addiu $s0, $sp, 0x5c +/* 01E470 8001D870 0018C8C0 */ sll $t9, $t8, 3 +/* 01E474 8001D874 00197023 */ negu $t6, $t9 +/* 01E478 8001D878 448E2000 */ mtc1 $t6, $f4 +/* 01E47C 8001D87C 02002825 */ move $a1, $s0 +/* 01E480 8001D880 468021A0 */ cvt.s.w $f6, $f4 +/* 01E484 8001D884 E7A6005C */ swc1 $f6, 0x5c($sp) +/* 01E488 8001D888 8C8F0054 */ lw $t7, 0x54($a0) +/* 01E48C 8001D88C 00000000 */ nop +/* 01E490 8001D890 85F8000A */ lh $t8, 0xa($t7) +/* 01E494 8001D894 00000000 */ nop +/* 01E498 8001D898 0018C8C0 */ sll $t9, $t8, 3 +/* 01E49C 8001D89C 00197023 */ negu $t6, $t9 +/* 01E4A0 8001D8A0 448E4000 */ mtc1 $t6, $f8 +/* 01E4A4 8001D8A4 00000000 */ nop +/* 01E4A8 8001D8A8 468042A0 */ cvt.s.w $f10, $f8 +/* 01E4AC 8001D8AC E7AA0060 */ swc1 $f10, 0x60($sp) +/* 01E4B0 8001D8B0 8C8F0054 */ lw $t7, 0x54($a0) +/* 01E4B4 8001D8B4 00000000 */ nop +/* 01E4B8 8001D8B8 85F8000C */ lh $t8, 0xc($t7) +/* 01E4BC 8001D8BC 00000000 */ nop +/* 01E4C0 8001D8C0 0018C8C0 */ sll $t9, $t8, 3 +/* 01E4C4 8001D8C4 00197023 */ negu $t6, $t9 +/* 01E4C8 8001D8C8 448E8000 */ mtc1 $t6, $f16 +/* 01E4CC 8001D8CC 00000000 */ nop +/* 01E4D0 8001D8D0 468084A0 */ cvt.s.w $f18, $f16 +/* 01E4D4 8001D8D4 E7B20064 */ swc1 $f18, 0x64($sp) +/* 01E4D8 8001D8D8 848F0000 */ lh $t7, ($a0) +/* 01E4DC 8001D8DC 00000000 */ nop +/* 01E4E0 8001D8E0 000FC023 */ negu $t8, $t7 +/* 01E4E4 8001D8E4 A7B80094 */ sh $t8, 0x94($sp) +/* 01E4E8 8001D8E8 84990002 */ lh $t9, 2($a0) +/* 01E4EC 8001D8EC 00000000 */ nop +/* 01E4F0 8001D8F0 00197023 */ negu $t6, $t9 +/* 01E4F4 8001D8F4 A7AE0096 */ sh $t6, 0x96($sp) +/* 01E4F8 8001D8F8 848F0004 */ lh $t7, 4($a0) +/* 01E4FC 8001D8FC A7A0009E */ sh $zero, 0x9e($sp) +/* 01E500 8001D900 000FC023 */ negu $t8, $t7 +/* 01E504 8001D904 A7B80098 */ sh $t8, 0x98($sp) +/* 01E508 8001D908 0C01C0F6 */ jal func_800703D8 +/* 01E50C 8001D90C 27A40094 */ addiu $a0, $sp, 0x94 +/* 01E510 8001D910 8E390040 */ lw $t9, 0x40($s1) +/* 01E514 8001D914 87A9009E */ lh $t1, 0x9e($sp) +/* 01E518 8001D918 932E003D */ lbu $t6, 0x3d($t9) +/* 01E51C 8001D91C 00000000 */ nop +/* 01E520 8001D920 11C0000B */ beqz $t6, .L8001D950 +/* 01E524 8001D924 00000000 */ nop +/* 01E528 8001D928 12400009 */ beqz $s2, .L8001D950 +/* 01E52C 8001D92C 00000000 */ nop +/* 01E530 8001D930 0C01A769 */ jal func_80069DA4 +/* 01E534 8001D934 A7A9009E */ sh $t1, 0x9e($sp) +/* 01E538 8001D938 00402025 */ move $a0, $v0 +/* 01E53C 8001D93C 02002825 */ move $a1, $s0 +/* 01E540 8001D940 0C01BDBB */ jal func_8006F6EC +/* 01E544 8001D944 02003025 */ move $a2, $s0 +/* 01E548 8001D948 87A9009E */ lh $t1, 0x9e($sp) +/* 01E54C 8001D94C 00000000 */ nop +.L8001D950: +/* 01E550 8001D950 C7A4005C */ lwc1 $f4, 0x5c($sp) +/* 01E554 8001D954 C7AA0060 */ lwc1 $f10, 0x60($sp) +/* 01E558 8001D958 46002187 */ neg.s $f6, $f4 +/* 01E55C 8001D95C 444FF800 */ cfc1 $t7, $31 +/* 01E560 8001D960 C7A40064 */ lwc1 $f4, 0x64($sp) +/* 01E564 8001D964 35E10003 */ ori $at, $t7, 3 +/* 01E568 8001D968 38210002 */ xori $at, $at, 2 +/* 01E56C 8001D96C 44C1F800 */ ctc1 $at, $31 +/* 01E570 8001D970 8E220054 */ lw $v0, 0x54($s1) +/* 01E574 8001D974 46003224 */ cvt.w.s $f8, $f6 +/* 01E578 8001D978 844E001C */ lh $t6, 0x1c($v0) +/* 01E57C 8001D97C 44CFF800 */ ctc1 $t7, $31 +/* 01E580 8001D980 44134000 */ mfc1 $s3, $f8 +/* 01E584 8001D984 46005407 */ neg.s $f16, $f10 +/* 01E588 8001D988 4458F800 */ cfc1 $t8, $31 +/* 01E58C 8001D98C 000E7880 */ sll $t7, $t6, 2 +/* 01E590 8001D990 37010003 */ ori $at, $t8, 3 +/* 01E594 8001D994 38210002 */ xori $at, $at, 2 +/* 01E598 8001D998 44C1F800 */ ctc1 $at, $31 +/* 01E59C 8001D99C 448F5000 */ mtc1 $t7, $f10 +/* 01E5A0 8001D9A0 460084A4 */ cvt.w.s $f18, $f16 +/* 01E5A4 8001D9A4 90560007 */ lbu $s6, 7($v0) +/* 01E5A8 8001D9A8 44D8F800 */ ctc1 $t8, $31 +/* 01E5AC 8001D9AC 44149000 */ mfc1 $s4, $f18 +/* 01E5B0 8001D9B0 46002187 */ neg.s $f6, $f4 +/* 01E5B4 8001D9B4 4459F800 */ cfc1 $t9, $31 +/* 01E5B8 8001D9B8 00000000 */ nop +/* 01E5BC 8001D9BC 37210003 */ ori $at, $t9, 3 +/* 01E5C0 8001D9C0 38210002 */ xori $at, $at, 2 +/* 01E5C4 8001D9C4 44C1F800 */ ctc1 $at, $31 +/* 01E5C8 8001D9C8 00000000 */ nop +/* 01E5CC 8001D9CC 46003224 */ cvt.w.s $f8, $f6 +/* 01E5D0 8001D9D0 44D9F800 */ ctc1 $t9, $31 +/* 01E5D4 8001D9D4 44154000 */ mfc1 $s5, $f8 +/* 01E5D8 8001D9D8 46805420 */ cvt.s.w $f16, $f10 +/* 01E5DC 8001D9DC E7B0005C */ swc1 $f16, 0x5c($sp) +/* 01E5E0 8001D9E0 8E380054 */ lw $t8, 0x54($s1) +/* 01E5E4 8001D9E4 00000000 */ nop +/* 01E5E8 8001D9E8 8719001E */ lh $t9, 0x1e($t8) +/* 01E5EC 8001D9EC 00000000 */ nop +/* 01E5F0 8001D9F0 00197080 */ sll $t6, $t9, 2 +/* 01E5F4 8001D9F4 448E9000 */ mtc1 $t6, $f18 +/* 01E5F8 8001D9F8 00000000 */ nop +/* 01E5FC 8001D9FC 46809120 */ cvt.s.w $f4, $f18 +/* 01E600 8001DA00 E7A40060 */ swc1 $f4, 0x60($sp) +/* 01E604 8001DA04 8E2F0054 */ lw $t7, 0x54($s1) +/* 01E608 8001DA08 00000000 */ nop +/* 01E60C 8001DA0C 85F80020 */ lh $t8, 0x20($t7) +/* 01E610 8001DA10 00000000 */ nop +/* 01E614 8001DA14 0018C880 */ sll $t9, $t8, 2 +/* 01E618 8001DA18 44993000 */ mtc1 $t9, $f6 +/* 01E61C 8001DA1C 00000000 */ nop +/* 01E620 8001DA20 46803220 */ cvt.s.w $f8, $f6 +/* 01E624 8001DA24 12400009 */ beqz $s2, .L8001DA4C +/* 01E628 8001DA28 E7A80064 */ swc1 $f8, 0x64($sp) +/* 01E62C 8001DA2C 0C01A769 */ jal func_80069DA4 +/* 01E630 8001DA30 A7A9009E */ sh $t1, 0x9e($sp) +/* 01E634 8001DA34 00402025 */ move $a0, $v0 +/* 01E638 8001DA38 02002825 */ move $a1, $s0 +/* 01E63C 8001DA3C 0C01BDBB */ jal func_8006F6EC +/* 01E640 8001DA40 02003025 */ move $a2, $s0 +/* 01E644 8001DA44 87A9009E */ lh $t1, 0x9e($sp) +/* 01E648 8001DA48 00000000 */ nop +.L8001DA4C: +/* 01E64C 8001DA4C 27A40094 */ addiu $a0, $sp, 0x94 +/* 01E650 8001DA50 02002825 */ move $a1, $s0 +/* 01E654 8001DA54 0C01C0F6 */ jal func_800703D8 +/* 01E658 8001DA58 A7A9009E */ sh $t1, 0x9e($sp) +/* 01E65C 8001DA5C 444EF800 */ cfc1 $t6, $31 +/* 01E660 8001DA60 3C01437F */ li $at, 0x437F0000 # 255.000000 +/* 01E664 8001DA64 44816000 */ mtc1 $at, $f12 +/* 01E668 8001DA68 35C10003 */ ori $at, $t6, 3 +/* 01E66C 8001DA6C 38210002 */ xori $at, $at, 2 +/* 01E670 8001DA70 44C1F800 */ ctc1 $at, $31 +/* 01E674 8001DA74 C7AA005C */ lwc1 $f10, 0x5c($sp) +/* 01E678 8001DA78 C7B20060 */ lwc1 $f18, 0x60($sp) +/* 01E67C 8001DA7C 46005424 */ cvt.w.s $f16, $f10 +/* 01E680 8001DA80 C7A60064 */ lwc1 $f6, 0x64($sp) +/* 01E684 8001DA84 44CEF800 */ ctc1 $t6, $31 +/* 01E688 8001DA88 8E220054 */ lw $v0, 0x54($s1) +/* 01E68C 8001DA8C 440C8000 */ mfc1 $t4, $f16 +/* 01E690 8001DA90 444FF800 */ cfc1 $t7, $31 +/* 01E694 8001DA94 C4400000 */ lwc1 $f0, ($v0) +/* 01E698 8001DA98 35E10003 */ ori $at, $t7, 3 +/* 01E69C 8001DA9C 38210002 */ xori $at, $at, 2 +/* 01E6A0 8001DAA0 44C1F800 */ ctc1 $at, $31 +/* 01E6A4 8001DAA4 C44A0028 */ lwc1 $f10, 0x28($v0) +/* 01E6A8 8001DAA8 46009124 */ cvt.w.s $f4, $f18 +/* 01E6AC 8001DAAC C7A200B0 */ lwc1 $f2, 0xb0($sp) +/* 01E6B0 8001DAB0 44CFF800 */ ctc1 $t7, $31 +/* 01E6B4 8001DAB4 440D2000 */ mfc1 $t5, $f4 +/* 01E6B8 8001DAB8 87A9009E */ lh $t1, 0x9e($sp) +/* 01E6BC 8001DABC 4458F800 */ cfc1 $t8, $31 +/* 01E6C0 8001DAC0 2412000A */ li $s2, 10 +/* 01E6C4 8001DAC4 37010003 */ ori $at, $t8, 3 +/* 01E6C8 8001DAC8 38210002 */ xori $at, $at, 2 +/* 01E6CC 8001DACC 44C1F800 */ ctc1 $at, $31 +/* 01E6D0 8001DAD0 00000000 */ nop +/* 01E6D4 8001DAD4 46003224 */ cvt.w.s $f8, $f6 +/* 01E6D8 8001DAD8 44D8F800 */ ctc1 $t8, $31 +/* 01E6DC 8001DADC 441F4000 */ mfc1 $ra, $f8 +/* 01E6E0 8001DAE0 46005402 */ mul.s $f16, $f10, $f0 +/* 01E6E4 8001DAE4 C448002C */ lwc1 $f8, 0x2c($v0) +/* 01E6E8 8001DAE8 A7A0009A */ sh $zero, 0x9a($sp) +/* 01E6EC 8001DAEC 86E30028 */ lh $v1, 0x28($s7) +/* 01E6F0 8001DAF0 460C8482 */ mul.s $f18, $f16, $f12 +/* 01E6F4 8001DAF4 00000000 */ nop +/* 01E6F8 8001DAF8 46029102 */ mul.s $f4, $f18, $f2 +/* 01E6FC 8001DAFC 4459F800 */ cfc1 $t9, $31 +/* 01E700 8001DB00 00000000 */ nop +/* 01E704 8001DB04 37210003 */ ori $at, $t9, 3 +/* 01E708 8001DB08 38210002 */ xori $at, $at, 2 +/* 01E70C 8001DB0C 44C1F800 */ ctc1 $at, $31 +/* 01E710 8001DB10 00000000 */ nop +/* 01E714 8001DB14 460021A4 */ cvt.w.s $f6, $f4 +/* 01E718 8001DB18 44D9F800 */ ctc1 $t9, $31 +/* 01E71C 8001DB1C 440A3000 */ mfc1 $t2, $f6 +/* 01E720 8001DB20 46004282 */ mul.s $f10, $f8, $f0 +/* 01E724 8001DB24 00000000 */ nop +/* 01E728 8001DB28 460C5402 */ mul.s $f16, $f10, $f12 +/* 01E72C 8001DB2C 00000000 */ nop +/* 01E730 8001DB30 46028482 */ mul.s $f18, $f16, $f2 +/* 01E734 8001DB34 444EF800 */ cfc1 $t6, $31 +/* 01E738 8001DB38 00000000 */ nop +/* 01E73C 8001DB3C 35C10003 */ ori $at, $t6, 3 +/* 01E740 8001DB40 38210002 */ xori $at, $at, 2 +/* 01E744 8001DB44 44C1F800 */ ctc1 $at, $31 +/* 01E748 8001DB48 00000000 */ nop +/* 01E74C 8001DB4C 46009124 */ cvt.w.s $f4, $f18 +/* 01E750 8001DB50 44102000 */ mfc1 $s0, $f4 +/* 01E754 8001DB54 44CEF800 */ ctc1 $t6, $31 +/* 01E758 8001DB58 18600072 */ blez $v1, .L8001DD24 +/* 01E75C 8001DB5C 00000000 */ nop +/* 01E760 8001DB60 8EE60038 */ lw $a2, 0x38($s7) +/* 01E764 8001DB64 24110006 */ li $s1, 6 +.L8001DB68: +/* 01E768 8001DB68 87AB009A */ lh $t3, 0x9a($sp) +/* 01E76C 8001DB6C 240100FF */ li $at, 255 +/* 01E770 8001DB70 000B7880 */ sll $t7, $t3, 2 +/* 01E774 8001DB74 01EB7823 */ subu $t7, $t7, $t3 +/* 01E778 8001DB78 000F5880 */ sll $t3, $t7, 2 +/* 01E77C 8001DB7C 00CB1021 */ addu $v0, $a2, $t3 +/* 01E780 8001DB80 90580006 */ lbu $t8, 6($v0) +/* 01E784 8001DB84 00000000 */ nop +/* 01E788 8001DB88 13010053 */ beq $t8, $at, .L8001DCD8 +/* 01E78C 8001DB8C 00000000 */ nop +/* 01E790 8001DB90 84450002 */ lh $a1, 2($v0) +/* 01E794 8001DB94 8459000E */ lh $t9, 0xe($v0) +/* 01E798 8001DB98 00000000 */ nop +/* 01E79C 8001DB9C 00B9082A */ slt $at, $a1, $t9 +/* 01E7A0 8001DBA0 10200059 */ beqz $at, .L8001DD08 +/* 01E7A4 8001DBA4 87A2009A */ lh $v0, 0x9a($sp) +.L8001DBA8: +/* 01E7A8 8001DBA8 01310019 */ multu $t1, $s1 +/* 01E7AC 8001DBAC 8FAE0054 */ lw $t6, 0x54($sp) +/* 01E7B0 8001DBB0 00007812 */ mflo $t7 +/* 01E7B4 8001DBB4 01CF1021 */ addu $v0, $t6, $t7 +/* 01E7B8 8001DBB8 84460004 */ lh $a2, 4($v0) +/* 01E7BC 8001DBBC 84470000 */ lh $a3, ($v0) +/* 01E7C0 8001DBC0 00D50019 */ multu $a2, $s5 +/* 01E7C4 8001DBC4 84480002 */ lh $t0, 2($v0) +/* 01E7C8 8001DBC8 0000C012 */ mflo $t8 +/* 01E7CC 8001DBCC 00000000 */ nop +/* 01E7D0 8001DBD0 00000000 */ nop +/* 01E7D4 8001DBD4 00F30019 */ multu $a3, $s3 +/* 01E7D8 8001DBD8 0000C812 */ mflo $t9 +/* 01E7DC 8001DBDC 03197021 */ addu $t6, $t8, $t9 +/* 01E7E0 8001DBE0 00000000 */ nop +/* 01E7E4 8001DBE4 01140019 */ multu $t0, $s4 +/* 01E7E8 8001DBE8 00007812 */ mflo $t7 +/* 01E7EC 8001DBEC 01CF2021 */ addu $a0, $t6, $t7 +/* 01E7F0 8001DBF0 0004C343 */ sra $t8, $a0, 0xd +/* 01E7F4 8001DBF4 1B000009 */ blez $t8, .L8001DC1C +/* 01E7F8 8001DBF8 00002025 */ move $a0, $zero +/* 01E7FC 8001DBFC 03160019 */ multu $t8, $s6 +/* 01E800 8001DC00 00002012 */ mflo $a0 +/* 01E804 8001DC04 0004CC03 */ sra $t9, $a0, 0x10 +/* 01E808 8001DC08 2B210100 */ slti $at, $t9, 0x100 +/* 01E80C 8001DC0C 14200003 */ bnez $at, .L8001DC1C +/* 01E810 8001DC10 03202025 */ move $a0, $t9 +/* 01E814 8001DC14 10000001 */ b .L8001DC1C +/* 01E818 8001DC18 240400FF */ li $a0, 255 +.L8001DC1C: +/* 01E81C 8001DC1C 00DF0019 */ multu $a2, $ra +/* 01E820 8001DC20 00007012 */ mflo $t6 +/* 01E824 8001DC24 00000000 */ nop +/* 01E828 8001DC28 00000000 */ nop +/* 01E82C 8001DC2C 00EC0019 */ multu $a3, $t4 +/* 01E830 8001DC30 00007812 */ mflo $t7 +/* 01E834 8001DC34 01CFC021 */ addu $t8, $t6, $t7 +/* 01E838 8001DC38 00000000 */ nop +/* 01E83C 8001DC3C 010D0019 */ multu $t0, $t5 +/* 01E840 8001DC40 0000C812 */ mflo $t9 +/* 01E844 8001DC44 03191821 */ addu $v1, $t8, $t9 +/* 01E848 8001DC48 00037343 */ sra $t6, $v1, 0xd +/* 01E84C 8001DC4C 19C0000A */ blez $t6, .L8001DC78 +/* 01E850 8001DC50 01401825 */ move $v1, $t2 +/* 01E854 8001DC54 01D00019 */ multu $t6, $s0 +/* 01E858 8001DC58 00001812 */ mflo $v1 +/* 01E85C 8001DC5C 00037C03 */ sra $t7, $v1, 0x10 +/* 01E860 8001DC60 01EA1821 */ addu $v1, $t7, $t2 +/* 01E864 8001DC64 28610100 */ slti $at, $v1, 0x100 +/* 01E868 8001DC68 14200003 */ bnez $at, .L8001DC78 +/* 01E86C 8001DC6C 00000000 */ nop +/* 01E870 8001DC70 10000001 */ b .L8001DC78 +/* 01E874 8001DC74 240300FF */ li $v1, 255 +.L8001DC78: +/* 01E878 8001DC78 00B20019 */ multu $a1, $s2 +/* 01E87C 8001DC7C 25290001 */ addiu $t1, $t1, 1 +/* 01E880 8001DC80 0009CC00 */ sll $t9, $t1, 0x10 +/* 01E884 8001DC84 00194C03 */ sra $t1, $t9, 0x10 +/* 01E888 8001DC88 24A50001 */ addiu $a1, $a1, 1 +/* 01E88C 8001DC8C 00057C00 */ sll $t7, $a1, 0x10 +/* 01E890 8001DC90 000F2C03 */ sra $a1, $t7, 0x10 +/* 01E894 8001DC94 0000C012 */ mflo $t8 +/* 01E898 8001DC98 03D81021 */ addu $v0, $fp, $t8 +/* 01E89C 8001DC9C A0440006 */ sb $a0, 6($v0) +/* 01E8A0 8001DCA0 A0440007 */ sb $a0, 7($v0) +/* 01E8A4 8001DCA4 A0440008 */ sb $a0, 8($v0) +/* 01E8A8 8001DCA8 A0430009 */ sb $v1, 9($v0) +/* 01E8AC 8001DCAC 8EE60038 */ lw $a2, 0x38($s7) +/* 01E8B0 8001DCB0 00000000 */ nop +/* 01E8B4 8001DCB4 00CBC821 */ addu $t9, $a2, $t3 +/* 01E8B8 8001DCB8 872E000E */ lh $t6, 0xe($t9) +/* 01E8BC 8001DCBC 00000000 */ nop +/* 01E8C0 8001DCC0 00AE082A */ slt $at, $a1, $t6 +/* 01E8C4 8001DCC4 1420FFB8 */ bnez $at, .L8001DBA8 +/* 01E8C8 8001DCC8 00000000 */ nop +/* 01E8CC 8001DCCC 86E30028 */ lh $v1, 0x28($s7) +/* 01E8D0 8001DCD0 1000000D */ b .L8001DD08 +/* 01E8D4 8001DCD4 87A2009A */ lh $v0, 0x9a($sp) +.L8001DCD8: +/* 01E8D8 8001DCD8 8C4F0008 */ lw $t7, 8($v0) +/* 01E8DC 8001DCDC 00000000 */ nop +/* 01E8E0 8001DCE0 31F88000 */ andi $t8, $t7, 0x8000 +/* 01E8E4 8001DCE4 13000007 */ beqz $t8, .L8001DD04 +/* 01E8E8 8001DCE8 00000000 */ nop +/* 01E8EC 8001DCEC 8459000E */ lh $t9, 0xe($v0) +/* 01E8F0 8001DCF0 844F0002 */ lh $t7, 2($v0) +/* 01E8F4 8001DCF4 01397021 */ addu $t6, $t1, $t9 +/* 01E8F8 8001DCF8 01CF4823 */ subu $t1, $t6, $t7 +/* 01E8FC 8001DCFC 0009C400 */ sll $t8, $t1, 0x10 +/* 01E900 8001DD00 00184C03 */ sra $t1, $t8, 0x10 +.L8001DD04: +/* 01E904 8001DD04 87A2009A */ lh $v0, 0x9a($sp) +.L8001DD08: +/* 01E908 8001DD08 00000000 */ nop +/* 01E90C 8001DD0C 24420001 */ addiu $v0, $v0, 1 +/* 01E910 8001DD10 00027400 */ sll $t6, $v0, 0x10 +/* 01E914 8001DD14 000E7C03 */ sra $t7, $t6, 0x10 +/* 01E918 8001DD18 01E3082A */ slt $at, $t7, $v1 +/* 01E91C 8001DD1C 1420FF92 */ bnez $at, .L8001DB68 +/* 01E920 8001DD20 A7AF009A */ sh $t7, 0x9a($sp) +.L8001DD24: +/* 01E924 8001DD24 8FBF003C */ lw $ra, 0x3c($sp) +/* 01E928 8001DD28 8FB00018 */ lw $s0, 0x18($sp) +/* 01E92C 8001DD2C 8FB1001C */ lw $s1, 0x1c($sp) +/* 01E930 8001DD30 8FB20020 */ lw $s2, 0x20($sp) +/* 01E934 8001DD34 8FB30024 */ lw $s3, 0x24($sp) +/* 01E938 8001DD38 8FB40028 */ lw $s4, 0x28($sp) +/* 01E93C 8001DD3C 8FB5002C */ lw $s5, 0x2c($sp) +/* 01E940 8001DD40 8FB60030 */ lw $s6, 0x30($sp) +/* 01E944 8001DD44 8FB70034 */ lw $s7, 0x34($sp) +/* 01E948 8001DD48 8FBE0038 */ lw $fp, 0x38($sp) +/* 01E94C 8001DD4C 03E00008 */ jr $ra +/* 01E950 8001DD50 27BD00A0 */ addiu $sp, $sp, 0xa0 + diff --git a/asm/non_matchings/unknown_005740/func_8001DD54.s b/asm/non_matchings/unknown_005740/func_8001DD54.s new file mode 100644 index 00000000..e1afa9e9 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001DD54.s @@ -0,0 +1,363 @@ +glabel func_8001DD54 +/* 01E954 8001DD54 27BDFEE8 */ addiu $sp, $sp, -0x118 +/* 01E958 8001DD58 AFBF003C */ sw $ra, 0x3c($sp) +/* 01E95C 8001DD5C AFBE0038 */ sw $fp, 0x38($sp) +/* 01E960 8001DD60 AFB70034 */ sw $s7, 0x34($sp) +/* 01E964 8001DD64 AFB60030 */ sw $s6, 0x30($sp) +/* 01E968 8001DD68 AFB5002C */ sw $s5, 0x2c($sp) +/* 01E96C 8001DD6C AFB40028 */ sw $s4, 0x28($sp) +/* 01E970 8001DD70 AFB30024 */ sw $s3, 0x24($sp) +/* 01E974 8001DD74 AFB20020 */ sw $s2, 0x20($sp) +/* 01E978 8001DD78 AFB1001C */ sw $s1, 0x1c($sp) +/* 01E97C 8001DD7C AFB00018 */ sw $s0, 0x18($sp) +/* 01E980 8001DD80 AFA5011C */ sw $a1, 0x11c($sp) +/* 01E984 8001DD84 AFA60120 */ sw $a2, 0x120($sp) +/* 01E988 8001DD88 AFA70124 */ sw $a3, 0x124($sp) +/* 01E98C 8001DD8C 8C890008 */ lw $t1, 8($a0) +/* 01E990 8001DD90 44800000 */ mtc1 $zero, $f0 +/* 01E994 8001DD94 AFA90078 */ sw $t1, 0x78($sp) +/* 01E998 8001DD98 8C8A0040 */ lw $t2, 0x40($a0) +/* 01E99C 8001DD9C 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 01E9A0 8001DDA0 44812000 */ mtc1 $at, $f4 +/* 01E9A4 8001DDA4 27B10098 */ addiu $s1, $sp, 0x98 +/* 01E9A8 8001DDA8 0080F025 */ move $fp, $a0 +/* 01E9AC 8001DDAC 00A07025 */ move $t6, $a1 +/* 01E9B0 8001DDB0 0000A025 */ move $s4, $zero +/* 01E9B4 8001DDB4 A7AE0084 */ sh $t6, 0x84($sp) +/* 01E9B8 8001DDB8 A7A60082 */ sh $a2, 0x82($sp) +/* 01E9BC 8001DDBC A7A70080 */ sh $a3, 0x80($sp) +/* 01E9C0 8001DDC0 27A50080 */ addiu $a1, $sp, 0x80 +/* 01E9C4 8001DDC4 02202025 */ move $a0, $s1 +/* 01E9C8 8001DDC8 E7A0008C */ swc1 $f0, 0x8c($sp) +/* 01E9CC 8001DDCC E7A00090 */ swc1 $f0, 0x90($sp) +/* 01E9D0 8001DDD0 E7A00094 */ swc1 $f0, 0x94($sp) +/* 01E9D4 8001DDD4 AFAA0074 */ sw $t2, 0x74($sp) +/* 01E9D8 8001DDD8 0C01BF0C */ jal func_8006FC30 +/* 01E9DC 8001DDDC E7A40088 */ swc1 $f4, 0x88($sp) +/* 01E9E0 8001DDE0 02202025 */ move $a0, $s1 +/* 01E9E4 8001DDE4 0C01BD78 */ jal func_8006F5E0 +/* 01E9E8 8001DDE8 27A500D8 */ addiu $a1, $sp, 0xd8 +/* 01E9EC 8001DDEC A7A00062 */ sh $zero, 0x62($sp) +/* 01E9F0 8001DDF0 87C20028 */ lh $v0, 0x28($fp) +/* 01E9F4 8001DDF4 3C138012 */ lui $s3, %hi(D_8011AF68) # $s3, 0x8012 +/* 01E9F8 8001DDF8 184000C4 */ blez $v0, .L8001E10C +/* 01E9FC 8001DDFC 2673AF68 */ addiu $s3, %lo(D_8011AF68) # addiu $s3, $s3, -0x5098 +/* 01EA00 8001DE00 3C118012 */ lui $s1, %hi(D_8011AFE8) # $s1, 0x8012 +/* 01EA04 8001DE04 8FC60038 */ lw $a2, 0x38($fp) +/* 01EA08 8001DE08 2631AFE8 */ addiu $s1, %lo(D_8011AFE8) # addiu $s1, $s1, -0x5018 +.L8001DE0C: +/* 01EA0C 8001DE0C 87B70062 */ lh $s7, 0x62($sp) +/* 01EA10 8001DE10 3C010002 */ lui $at, 2 +/* 01EA14 8001DE14 00175880 */ sll $t3, $s7, 2 +/* 01EA18 8001DE18 01775823 */ subu $t3, $t3, $s7 +/* 01EA1C 8001DE1C 000BB880 */ sll $s7, $t3, 2 +/* 01EA20 8001DE20 00D72821 */ addu $a1, $a2, $s7 +/* 01EA24 8001DE24 8CA30008 */ lw $v1, 8($a1) +/* 01EA28 8001DE28 00000000 */ nop +/* 01EA2C 8001DE2C 306C8000 */ andi $t4, $v1, 0x8000 +/* 01EA30 8001DE30 118000A3 */ beqz $t4, .L8001E0C0 +/* 01EA34 8001DE34 00616824 */ and $t5, $v1, $at +/* 01EA38 8001DE38 35AE8000 */ ori $t6, $t5, 0x8000 +/* 01EA3C 8001DE3C 39CF8000 */ xori $t7, $t6, 0x8000 +/* 01EA40 8001DE40 AFAF0070 */ sw $t7, 0x70($sp) +/* 01EA44 8001DE44 90B90000 */ lbu $t9, ($a1) +/* 01EA48 8001DE48 8FD80000 */ lw $t8, ($fp) +/* 01EA4C 8001DE4C 001940C0 */ sll $t0, $t9, 3 +/* 01EA50 8001DE50 03084821 */ addu $t1, $t8, $t0 +/* 01EA54 8001DE54 8D240000 */ lw $a0, ($t1) +/* 01EA58 8001DE58 24070020 */ li $a3, 32 +/* 01EA5C 8001DE5C 90820000 */ lbu $v0, ($a0) +/* 01EA60 8001DE60 00009025 */ move $s2, $zero +/* 01EA64 8001DE64 10470014 */ beq $v0, $a3, .L8001DEB8 +/* 01EA68 8001DE68 24190006 */ li $t9, 6 +/* 01EA6C 8001DE6C 24010040 */ li $at, 64 +/* 01EA70 8001DE70 1041000D */ beq $v0, $at, .L8001DEA8 +/* 01EA74 8001DE74 240E0005 */ li $t6, 5 +/* 01EA78 8001DE78 24010080 */ li $at, 128 +/* 01EA7C 8001DE7C 10410006 */ beq $v0, $at, .L8001DE98 +/* 01EA80 8001DE80 240C0004 */ li $t4, 4 +/* 01EA84 8001DE84 240A0007 */ li $t2, 7 +/* 01EA88 8001DE88 240B01FF */ li $t3, 511 +/* 01EA8C 8001DE8C A7AB0068 */ sh $t3, 0x68($sp) +/* 01EA90 8001DE90 1000000C */ b .L8001DEC4 +/* 01EA94 8001DE94 A7AA006A */ sh $t2, 0x6a($sp) +.L8001DE98: +/* 01EA98 8001DE98 240D0FFF */ li $t5, 4095 +/* 01EA9C 8001DE9C A7AD0068 */ sh $t5, 0x68($sp) +/* 01EAA0 8001DEA0 10000008 */ b .L8001DEC4 +/* 01EAA4 8001DEA4 A7AC006A */ sh $t4, 0x6a($sp) +.L8001DEA8: +/* 01EAA8 8001DEA8 240F07FF */ li $t7, 2047 +/* 01EAAC 8001DEAC A7AF0068 */ sh $t7, 0x68($sp) +/* 01EAB0 8001DEB0 10000004 */ b .L8001DEC4 +/* 01EAB4 8001DEB4 A7AE006A */ sh $t6, 0x6a($sp) +.L8001DEB8: +/* 01EAB8 8001DEB8 241803FF */ li $t8, 1023 +/* 01EABC 8001DEBC A7B80068 */ sh $t8, 0x68($sp) +/* 01EAC0 8001DEC0 A7B9006A */ sh $t9, 0x6a($sp) +.L8001DEC4: +/* 01EAC4 8001DEC4 90820001 */ lbu $v0, 1($a0) +/* 01EAC8 8001DEC8 24150006 */ li $s5, 6 +/* 01EACC 8001DECC 1047000E */ beq $v0, $a3, .L8001DF08 +/* 01EAD0 8001DED0 241603FF */ li $s6, 1023 +/* 01EAD4 8001DED4 24010040 */ li $at, 64 +/* 01EAD8 8001DED8 10410009 */ beq $v0, $at, .L8001DF00 +/* 01EADC 8001DEDC 24150005 */ li $s5, 5 +/* 01EAE0 8001DEE0 24010080 */ li $at, 128 +/* 01EAE4 8001DEE4 10410004 */ beq $v0, $at, .L8001DEF8 +/* 01EAE8 8001DEE8 24150004 */ li $s5, 4 +/* 01EAEC 8001DEEC 24150007 */ li $s5, 7 +/* 01EAF0 8001DEF0 10000005 */ b .L8001DF08 +/* 01EAF4 8001DEF4 241601FF */ li $s6, 511 +.L8001DEF8: +/* 01EAF8 8001DEF8 10000003 */ b .L8001DF08 +/* 01EAFC 8001DEFC 24160FFF */ li $s6, 4095 +.L8001DF00: +/* 01EB00 8001DF00 10000001 */ b .L8001DF08 +/* 01EB04 8001DF04 241607FF */ li $s6, 2047 +.L8001DF08: +/* 01EB08 8001DF08 84B00002 */ lh $s0, 2($a1) +/* 01EB0C 8001DF0C 84A8000E */ lh $t0, 0xe($a1) +/* 01EB10 8001DF10 00000000 */ nop +/* 01EB14 8001DF14 0208082A */ slt $at, $s0, $t0 +/* 01EB18 8001DF18 10200040 */ beqz $at, .L8001E01C +.L8001DF1C: +/* 01EB1C 8001DF1C 00145080 */ sll $t2, $s4, 2 +/* 01EB20 8001DF20 8FA90074 */ lw $t1, 0x74($sp) +/* 01EB24 8001DF24 01545023 */ subu $t2, $t2, $s4 +/* 01EB28 8001DF28 000A5040 */ sll $t2, $t2, 1 +/* 01EB2C 8001DF2C 012A1021 */ addu $v0, $t1, $t2 +/* 01EB30 8001DF30 844B0000 */ lh $t3, ($v0) +/* 01EB34 8001DF34 26940001 */ addiu $s4, $s4, 1 +/* 01EB38 8001DF38 A62B0006 */ sh $t3, 6($s1) +/* 01EB3C 8001DF3C 844C0002 */ lh $t4, 2($v0) +/* 01EB40 8001DF40 00147400 */ sll $t6, $s4, 0x10 +/* 01EB44 8001DF44 A62C0008 */ sh $t4, 8($s1) +/* 01EB48 8001DF48 844D0004 */ lh $t5, 4($v0) +/* 01EB4C 8001DF4C 3C058012 */ lui $a1, %hi(D_8011AFEE) # $a1, 0x8012 +/* 01EB50 8001DF50 000EA403 */ sra $s4, $t6, 0x10 +/* 01EB54 8001DF54 24A5AFEE */ addiu $a1, %lo(D_8011AFEE) # addiu $a1, $a1, -0x5012 +/* 01EB58 8001DF58 27A400D8 */ addiu $a0, $sp, 0xd8 +/* 01EB5C 8001DF5C 0C01BED8 */ jal func_8006FB60 +/* 01EB60 8001DF60 A62D000A */ sh $t5, 0xa($s1) +/* 01EB64 8001DF64 8FB90070 */ lw $t9, 0x70($sp) +/* 01EB68 8001DF68 02202025 */ move $a0, $s1 +/* 01EB6C 8001DF6C 17200003 */ bnez $t9, .L8001DF7C +/* 01EB70 8001DF70 3C058012 */ lui $a1, %hi(D_8011AFEE) # $a1, 0x8012 +/* 01EB74 8001DF74 0C01BE6E */ jal func_8006F9B8 +/* 01EB78 8001DF78 24A5AFEE */ addiu $a1, %lo(D_8011AFEE) # addiu $a1, $a1, -0x5012 +.L8001DF7C: +/* 01EB7C 8001DF7C 86220006 */ lh $v0, 6($s1) +/* 01EB80 8001DF80 86230008 */ lh $v1, 8($s1) +/* 01EB84 8001DF84 18400004 */ blez $v0, .L8001DF98 +/* 01EB88 8001DF88 34078000 */ li $a3, 32768 +/* 01EB8C 8001DF8C 2442FFFF */ addiu $v0, $v0, -1 +/* 01EB90 8001DF90 0002C400 */ sll $t8, $v0, 0x10 +/* 01EB94 8001DF94 00181403 */ sra $v0, $t8, 0x10 +.L8001DF98: +/* 01EB98 8001DF98 18600004 */ blez $v1, .L8001DFAC +/* 01EB9C 8001DF9C 00025880 */ sll $t3, $v0, 2 +/* 01EBA0 8001DFA0 2463FFFF */ addiu $v1, $v1, -1 +/* 01EBA4 8001DFA4 00034C00 */ sll $t1, $v1, 0x10 +/* 01EBA8 8001DFA8 00091C03 */ sra $v1, $t1, 0x10 +.L8001DFAC: +/* 01EBAC 8001DFAC 01671021 */ addu $v0, $t3, $a3 +/* 01EBB0 8001DFB0 00037080 */ sll $t6, $v1, 2 +/* 01EBB4 8001DFB4 87A8006A */ lh $t0, 0x6a($sp) +/* 01EBB8 8001DFB8 00026400 */ sll $t4, $v0, 0x10 +/* 01EBBC 8001DFBC 01C71821 */ addu $v1, $t6, $a3 +/* 01EBC0 8001DFC0 000C6C03 */ sra $t5, $t4, 0x10 +/* 01EBC4 8001DFC4 00037C00 */ sll $t7, $v1, 0x10 +/* 01EBC8 8001DFC8 87AA0068 */ lh $t2, 0x68($sp) +/* 01EBCC 8001DFCC 000FCC03 */ sra $t9, $t7, 0x10 +/* 01EBD0 8001DFD0 0012C080 */ sll $t8, $s2, 2 +/* 01EBD4 8001DFD4 010D4807 */ srav $t1, $t5, $t0 +/* 01EBD8 8001DFD8 02782021 */ addu $a0, $s3, $t8 +/* 01EBDC 8001DFDC 02B96007 */ srav $t4, $t9, $s5 +/* 01EBE0 8001DFE0 01966824 */ and $t5, $t4, $s6 +/* 01EBE4 8001DFE4 012A5824 */ and $t3, $t1, $t2 +/* 01EBE8 8001DFE8 A48B0000 */ sh $t3, ($a0) +/* 01EBEC 8001DFEC A48D0002 */ sh $t5, 2($a0) +/* 01EBF0 8001DFF0 8FC60038 */ lw $a2, 0x38($fp) +/* 01EBF4 8001DFF4 26100001 */ addiu $s0, $s0, 1 +/* 01EBF8 8001DFF8 00D72821 */ addu $a1, $a2, $s7 +/* 01EBFC 8001DFFC 84A8000E */ lh $t0, 0xe($a1) +/* 01EC00 8001E000 00107400 */ sll $t6, $s0, 0x10 +/* 01EC04 8001E004 000E8403 */ sra $s0, $t6, 0x10 +/* 01EC08 8001E008 26520001 */ addiu $s2, $s2, 1 +/* 01EC0C 8001E00C 0012CC00 */ sll $t9, $s2, 0x10 +/* 01EC10 8001E010 0208082A */ slt $at, $s0, $t0 +/* 01EC14 8001E014 1420FFC1 */ bnez $at, .L8001DF1C +/* 01EC18 8001E018 00199403 */ sra $s2, $t9, 0x10 +.L8001E01C: +/* 01EC1C 8001E01C 84B00004 */ lh $s0, 4($a1) +/* 01EC20 8001E020 84A90010 */ lh $t1, 0x10($a1) +/* 01EC24 8001E024 8FA70078 */ lw $a3, 0x78($sp) +/* 01EC28 8001E028 0209082A */ slt $at, $s0, $t1 +/* 01EC2C 8001E02C 10200021 */ beqz $at, .L8001E0B4 +/* 01EC30 8001E030 00105100 */ sll $t2, $s0, 4 +.L8001E034: +/* 01EC34 8001E034 00EA1021 */ addu $v0, $a3, $t2 +/* 01EC38 8001E038 904B0001 */ lbu $t3, 1($v0) +/* 01EC3C 8001E03C 904F0002 */ lbu $t7, 2($v0) +/* 01EC40 8001E040 000B6080 */ sll $t4, $t3, 2 +/* 01EC44 8001E044 026C1821 */ addu $v1, $s3, $t4 +/* 01EC48 8001E048 846D0000 */ lh $t5, ($v1) +/* 01EC4C 8001E04C 000FC880 */ sll $t9, $t7, 2 +/* 01EC50 8001E050 A44D0004 */ sh $t5, 4($v0) +/* 01EC54 8001E054 846E0002 */ lh $t6, 2($v1) +/* 01EC58 8001E058 02792021 */ addu $a0, $s3, $t9 +/* 01EC5C 8001E05C A44E0006 */ sh $t6, 6($v0) +/* 01EC60 8001E060 84980000 */ lh $t8, ($a0) +/* 01EC64 8001E064 90490003 */ lbu $t1, 3($v0) +/* 01EC68 8001E068 A4580008 */ sh $t8, 8($v0) +/* 01EC6C 8001E06C 84880002 */ lh $t0, 2($a0) +/* 01EC70 8001E070 00095080 */ sll $t2, $t1, 2 +/* 01EC74 8001E074 026A2821 */ addu $a1, $s3, $t2 +/* 01EC78 8001E078 A448000A */ sh $t0, 0xa($v0) +/* 01EC7C 8001E07C 84AB0000 */ lh $t3, ($a1) +/* 01EC80 8001E080 26100001 */ addiu $s0, $s0, 1 +/* 01EC84 8001E084 A44B000C */ sh $t3, 0xc($v0) +/* 01EC88 8001E088 84AC0002 */ lh $t4, 2($a1) +/* 01EC8C 8001E08C 00106C00 */ sll $t5, $s0, 0x10 +/* 01EC90 8001E090 A44C000E */ sh $t4, 0xe($v0) +/* 01EC94 8001E094 8FC60038 */ lw $a2, 0x38($fp) +/* 01EC98 8001E098 000D8403 */ sra $s0, $t5, 0x10 +/* 01EC9C 8001E09C 00D77821 */ addu $t7, $a2, $s7 +/* 01ECA0 8001E0A0 85F90010 */ lh $t9, 0x10($t7) +/* 01ECA4 8001E0A4 00000000 */ nop +/* 01ECA8 8001E0A8 0219082A */ slt $at, $s0, $t9 +/* 01ECAC 8001E0AC 1420FFE1 */ bnez $at, .L8001E034 +/* 01ECB0 8001E0B0 00105100 */ sll $t2, $s0, 4 +.L8001E0B4: +/* 01ECB4 8001E0B4 87C20028 */ lh $v0, 0x28($fp) +/* 01ECB8 8001E0B8 1000000D */ b .L8001E0F0 +/* 01ECBC 8001E0BC 87AD0062 */ lh $t5, 0x62($sp) +.L8001E0C0: +/* 01ECC0 8001E0C0 90B80006 */ lbu $t8, 6($a1) +/* 01ECC4 8001E0C4 00000000 */ nop +/* 01ECC8 8001E0C8 2B0100FF */ slti $at, $t8, 0xff +/* 01ECCC 8001E0CC 10200008 */ beqz $at, .L8001E0F0 +/* 01ECD0 8001E0D0 87AD0062 */ lh $t5, 0x62($sp) +/* 01ECD4 8001E0D4 84A8000E */ lh $t0, 0xe($a1) +/* 01ECD8 8001E0D8 84AA0002 */ lh $t2, 2($a1) +/* 01ECDC 8001E0DC 02884821 */ addu $t1, $s4, $t0 +/* 01ECE0 8001E0E0 012AA023 */ subu $s4, $t1, $t2 +/* 01ECE4 8001E0E4 00145C00 */ sll $t3, $s4, 0x10 +/* 01ECE8 8001E0E8 000BA403 */ sra $s4, $t3, 0x10 +/* 01ECEC 8001E0EC 87AD0062 */ lh $t5, 0x62($sp) +.L8001E0F0: +/* 01ECF0 8001E0F0 00000000 */ nop +/* 01ECF4 8001E0F4 25AE0001 */ addiu $t6, $t5, 1 +/* 01ECF8 8001E0F8 000E7C00 */ sll $t7, $t6, 0x10 +/* 01ECFC 8001E0FC 000FCC03 */ sra $t9, $t7, 0x10 +/* 01ED00 8001E100 0322082A */ slt $at, $t9, $v0 +/* 01ED04 8001E104 1420FF41 */ bnez $at, .L8001DE0C +/* 01ED08 8001E108 A7AE0062 */ sh $t6, 0x62($sp) +.L8001E10C: +/* 01ED0C 8001E10C 8FBF003C */ lw $ra, 0x3c($sp) +/* 01ED10 8001E110 8FB00018 */ lw $s0, 0x18($sp) +/* 01ED14 8001E114 8FB1001C */ lw $s1, 0x1c($sp) +/* 01ED18 8001E118 8FB20020 */ lw $s2, 0x20($sp) +/* 01ED1C 8001E11C 8FB30024 */ lw $s3, 0x24($sp) +/* 01ED20 8001E120 8FB40028 */ lw $s4, 0x28($sp) +/* 01ED24 8001E124 8FB5002C */ lw $s5, 0x2c($sp) +/* 01ED28 8001E128 8FB60030 */ lw $s6, 0x30($sp) +/* 01ED2C 8001E12C 8FB70034 */ lw $s7, 0x34($sp) +/* 01ED30 8001E130 8FBE0038 */ lw $fp, 0x38($sp) +/* 01ED34 8001E134 03E00008 */ jr $ra +/* 01ED38 8001E138 27BD0118 */ addiu $sp, $sp, 0x118 + +/* 01ED3C 8001E13C 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 01ED40 8001E140 3C0B8012 */ lui $t3, %hi(D_8011AE5C) # $t3, 0x8012 +/* 01ED44 8001E144 256BAE5C */ addiu $t3, %lo(D_8011AE5C) # addiu $t3, $t3, -0x51a4 +/* 01ED48 8001E148 AFB00008 */ sw $s0, 8($sp) +/* 01ED4C 8001E14C 8D630000 */ lw $v1, ($t3) +/* 01ED50 8001E150 00048400 */ sll $s0, $a0, 0x10 +/* 01ED54 8001E154 00107403 */ sra $t6, $s0, 0x10 +/* 01ED58 8001E158 AFB1000C */ sw $s1, 0xc($sp) +/* 01ED5C 8001E15C 00A08825 */ move $s1, $a1 +/* 01ED60 8001E160 01C08025 */ move $s0, $t6 +/* 01ED64 8001E164 AFA40010 */ sw $a0, 0x10($sp) +/* 01ED68 8001E168 18600048 */ blez $v1, .L8001E28C +/* 01ED6C 8001E16C 00001025 */ move $v0, $zero +/* 01ED70 8001E170 3C0C8012 */ lui $t4, %hi(D_8011AE58) # $t4, 0x8012 +/* 01ED74 8001E174 8FAA0028 */ lw $t2, 0x28($sp) +/* 01ED78 8001E178 8FA90024 */ lw $t1, 0x24($sp) +/* 01ED7C 8001E17C 8FA80020 */ lw $t0, 0x20($sp) +/* 01ED80 8001E180 258CAE58 */ addiu $t4, %lo(D_8011AE58) # addiu $t4, $t4, -0x51a8 +/* 01ED84 8001E184 240D0001 */ li $t5, 1 +.L8001E188: +/* 01ED88 8001E188 8D8F0000 */ lw $t7, ($t4) +/* 01ED8C 8001E18C 0002C080 */ sll $t8, $v0, 2 +/* 01ED90 8001E190 01F8C821 */ addu $t9, $t7, $t8 +/* 01ED94 8001E194 8F240000 */ lw $a0, ($t9) +/* 01ED98 8001E198 00000000 */ nop +/* 01ED9C 8001E19C 848E0006 */ lh $t6, 6($a0) +/* 01EDA0 8001E1A0 00000000 */ nop +/* 01EDA4 8001E1A4 31CF8000 */ andi $t7, $t6, 0x8000 +/* 01EDA8 8001E1A8 15E00034 */ bnez $t7, .L8001E27C +/* 01EDAC 8001E1AC 00000000 */ nop +/* 01EDB0 8001E1B0 84980048 */ lh $t8, 0x48($a0) +/* 01EDB4 8001E1B4 00000000 */ nop +/* 01EDB8 8001E1B8 15B80030 */ bne $t5, $t8, .L8001E27C +/* 01EDBC 8001E1BC 00000000 */ nop +/* 01EDC0 8001E1C0 8C850064 */ lw $a1, 0x64($a0) +/* 01EDC4 8001E1C4 00000000 */ nop +/* 01EDC8 8001E1C8 84B90000 */ lh $t9, ($a1) +/* 01EDCC 8001E1CC 00000000 */ nop +/* 01EDD0 8001E1D0 1619002B */ bne $s0, $t9, .L8001E280 +/* 01EDD4 8001E1D4 24420001 */ addiu $v0, $v0, 1 +/* 01EDD8 8001E1D8 444EF800 */ cfc1 $t6, $31 +/* 01EDDC 8001E1DC C484000C */ lwc1 $f4, 0xc($a0) +/* 01EDE0 8001E1E0 35C10003 */ ori $at, $t6, 3 +/* 01EDE4 8001E1E4 38210002 */ xori $at, $at, 2 +/* 01EDE8 8001E1E8 44C1F800 */ ctc1 $at, $31 +/* 01EDEC 8001E1EC 00000000 */ nop +/* 01EDF0 8001E1F0 460021A4 */ cvt.w.s $f6, $f4 +/* 01EDF4 8001E1F4 44CEF800 */ ctc1 $t6, $31 +/* 01EDF8 8001E1F8 440F3000 */ mfc1 $t7, $f6 +/* 01EDFC 8001E1FC 00000000 */ nop +/* 01EE00 8001E200 4458F800 */ cfc1 $t8, $31 +/* 01EE04 8001E204 A62F0000 */ sh $t7, ($s1) +/* 01EE08 8001E208 37010003 */ ori $at, $t8, 3 +/* 01EE0C 8001E20C 38210002 */ xori $at, $at, 2 +/* 01EE10 8001E210 44C1F800 */ ctc1 $at, $31 +/* 01EE14 8001E214 C4880010 */ lwc1 $f8, 0x10($a0) +/* 01EE18 8001E218 35C10003 */ ori $at, $t6, 3 +/* 01EE1C 8001E21C 460042A4 */ cvt.w.s $f10, $f8 +/* 01EE20 8001E220 38210002 */ xori $at, $at, 2 +/* 01EE24 8001E224 44195000 */ mfc1 $t9, $f10 +/* 01EE28 8001E228 44D8F800 */ ctc1 $t8, $31 +/* 01EE2C 8001E22C A4D90000 */ sh $t9, ($a2) +/* 01EE30 8001E230 C4900014 */ lwc1 $f16, 0x14($a0) +/* 01EE34 8001E234 44C1F800 */ ctc1 $at, $31 +/* 01EE38 8001E238 00000000 */ nop +/* 01EE3C 8001E23C 460084A4 */ cvt.w.s $f18, $f16 +/* 01EE40 8001E240 440F9000 */ mfc1 $t7, $f18 +/* 01EE44 8001E244 44CEF800 */ ctc1 $t6, $31 +/* 01EE48 8001E248 A4EF0000 */ sh $t7, ($a3) +/* 01EE4C 8001E24C 84980004 */ lh $t8, 4($a0) +/* 01EE50 8001E250 00000000 */ nop +/* 01EE54 8001E254 A5180000 */ sh $t8, ($t0) +/* 01EE58 8001E258 84990002 */ lh $t9, 2($a0) +/* 01EE5C 8001E25C 00000000 */ nop +/* 01EE60 8001E260 A5390000 */ sh $t9, ($t1) +/* 01EE64 8001E264 848E0000 */ lh $t6, ($a0) +/* 01EE68 8001E268 00000000 */ nop +/* 01EE6C 8001E26C A54E0000 */ sh $t6, ($t2) +/* 01EE70 8001E270 8D630000 */ lw $v1, ($t3) +/* 01EE74 8001E274 00000000 */ nop +/* 01EE78 8001E278 00601025 */ move $v0, $v1 +.L8001E27C: +/* 01EE7C 8001E27C 24420001 */ addiu $v0, $v0, 1 +.L8001E280: +/* 01EE80 8001E280 0043082A */ slt $at, $v0, $v1 +/* 01EE84 8001E284 1420FFC0 */ bnez $at, .L8001E188 +/* 01EE88 8001E288 00000000 */ nop +.L8001E28C: +/* 01EE8C 8001E28C 8FB00008 */ lw $s0, 8($sp) +/* 01EE90 8001E290 8FB1000C */ lw $s1, 0xc($sp) +/* 01EE94 8001E294 03E00008 */ jr $ra +/* 01EE98 8001E298 27BD0010 */ addiu $sp, $sp, 0x10 + diff --git a/asm/non_matchings/unknown_005740/func_8001E29C.s b/asm/non_matchings/unknown_005740/func_8001E29C.s new file mode 100644 index 00000000..a7b62abb --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001E29C.s @@ -0,0 +1,25 @@ +glabel func_8001E29C +/* 01EE9C 8001E29C 04800006 */ bltz $a0, .L8001E2B8 +/* 01EEA0 8001E2A0 3C0E8012 */ lui $t6, %hi(D_8011ADA0) # $t6, 0x8012 +/* 01EEA4 8001E2A4 8DCEADA0 */ lw $t6, %lo(D_8011ADA0)($t6) +/* 01EEA8 8001E2A8 3C0F8012 */ lui $t7, 0x8012 +/* 01EEAC 8001E2AC 008E082A */ slt $at, $a0, $t6 +/* 01EEB0 8001E2B0 14200005 */ bnez $at, .L8001E2C8 +/* 01EEB4 8001E2B4 0004C080 */ sll $t8, $a0, 2 +.L8001E2B8: +/* 01EEB8 8001E2B8 3C028012 */ lui $v0, %hi(D_8011AD6C) # $v0, 0x8012 +/* 01EEBC 8001E2BC 8C42AD6C */ lw $v0, %lo(D_8011AD6C)($v0) +/* 01EEC0 8001E2C0 03E00008 */ jr $ra +/* 01EEC4 8001E2C4 00000000 */ nop + +.L8001E2C8: +/* 01EEC8 8001E2C8 8DEFAD70 */ lw $t7, -0x5290($t7) +/* 01EECC 8001E2CC 3C0A8012 */ lui $t2, %hi(D_8011AD6C) # $t2, 0x8012 +/* 01EED0 8001E2D0 01F8C821 */ addu $t9, $t7, $t8 +/* 01EED4 8001E2D4 8F280000 */ lw $t0, ($t9) +/* 01EED8 8001E2D8 8D4AAD6C */ lw $t2, %lo(D_8011AD6C)($t2) +/* 01EEDC 8001E2DC 00084880 */ sll $t1, $t0, 2 +/* 01EEE0 8001E2E0 012A1021 */ addu $v0, $t1, $t2 +/* 01EEE4 8001E2E4 03E00008 */ jr $ra +/* 01EEE8 8001E2E8 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001E2EC.s b/asm/non_matchings/unknown_005740/func_8001E2EC.s new file mode 100644 index 00000000..7320bb8a --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001E2EC.s @@ -0,0 +1,27 @@ +glabel func_8001E2EC +/* 01EEEC 8001E2EC 04800012 */ bltz $a0, .L8001E338 +/* 01EEF0 8001E2F0 28810008 */ slti $at, $a0, 8 +/* 01EEF4 8001E2F4 10200010 */ beqz $at, .L8001E338 +/* 01EEF8 8001E2F8 3C0E8012 */ lui $t6, %hi(D_8011ADCC) # $t6, 0x8012 +/* 01EEFC 8001E2FC 8DCEADCC */ lw $t6, %lo(D_8011ADCC)($t6) +/* 01EF00 8001E300 3C188012 */ lui $t8, %hi(D_8011ADCC) # $t8, 0x8012 +/* 01EF04 8001E304 01C41021 */ addu $v0, $t6, $a0 +/* 01EF08 8001E308 80430000 */ lb $v1, ($v0) +/* 01EF0C 8001E30C 00000000 */ nop +/* 01EF10 8001E310 18600007 */ blez $v1, .L8001E330 +/* 01EF14 8001E314 246FFFFF */ addiu $t7, $v1, -1 +/* 01EF18 8001E318 A04F0000 */ sb $t7, ($v0) +/* 01EF1C 8001E31C 8F18ADCC */ lw $t8, %lo(D_8011ADCC)($t8) +/* 01EF20 8001E320 00000000 */ nop +/* 01EF24 8001E324 0304C821 */ addu $t9, $t8, $a0 +/* 01EF28 8001E328 83230000 */ lb $v1, ($t9) +/* 01EF2C 8001E32C 00000000 */ nop +.L8001E330: +/* 01EF30 8001E330 03E00008 */ jr $ra +/* 01EF34 8001E334 00601025 */ move $v0, $v1 + +.L8001E338: +/* 01EF38 8001E338 00001025 */ move $v0, $zero +/* 01EF3C 8001E33C 03E00008 */ jr $ra +/* 01EF40 8001E340 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001E344.s b/asm/non_matchings/unknown_005740/func_8001E344.s new file mode 100644 index 00000000..c39f1ca9 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001E344.s @@ -0,0 +1,13 @@ +glabel func_8001E344 +/* 01EF44 8001E344 04800007 */ bltz $a0, .L8001E364 +/* 01EF48 8001E348 28810008 */ slti $at, $a0, 8 +/* 01EF4C 8001E34C 10200005 */ beqz $at, .L8001E364 +/* 01EF50 8001E350 3C0F8012 */ lui $t7, %hi(D_8011ADCC) # $t7, 0x8012 +/* 01EF54 8001E354 8DEFADCC */ lw $t7, %lo(D_8011ADCC)($t7) +/* 01EF58 8001E358 240E0008 */ li $t6, 8 +/* 01EF5C 8001E35C 01E4C021 */ addu $t8, $t7, $a0 +/* 01EF60 8001E360 A30E0000 */ sb $t6, ($t8) +.L8001E364: +/* 01EF64 8001E364 03E00008 */ jr $ra +/* 01EF68 8001E368 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001E36C.s b/asm/non_matchings/unknown_005740/func_8001E36C.s new file mode 100644 index 00000000..d3697070 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001E36C.s @@ -0,0 +1,58 @@ +glabel func_8001E36C +/* 01EF6C 8001E36C 3C01C6FA */ li $at, 0xC6FA0000 # -32000.000000 +/* 01EF70 8001E370 44810000 */ mtc1 $at, $f0 +/* 01EF74 8001E374 27BDFFF8 */ addiu $sp, $sp, -8 +/* 01EF78 8001E378 AFB00004 */ sw $s0, 4($sp) +/* 01EF7C 8001E37C E4A00000 */ swc1 $f0, ($a1) +/* 01EF80 8001E380 E4C00000 */ swc1 $f0, ($a2) +/* 01EF84 8001E384 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 +/* 01EF88 8001E388 E4E00000 */ swc1 $f0, ($a3) +/* 01EF8C 8001E38C 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) +/* 01EF90 8001E390 00808025 */ move $s0, $a0 +/* 01EF94 8001E394 18600027 */ blez $v1, .L8001E434 +/* 01EF98 8001E398 00001025 */ move $v0, $zero +/* 01EF9C 8001E39C 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 +/* 01EFA0 8001E3A0 2529AE58 */ addiu $t1, %lo(D_8011AE58) # addiu $t1, $t1, -0x51a8 +/* 01EFA4 8001E3A4 00004025 */ move $t0, $zero +/* 01EFA8 8001E3A8 240A0027 */ li $t2, 39 +.L8001E3AC: +/* 01EFAC 8001E3AC 8D2E0000 */ lw $t6, ($t1) +/* 01EFB0 8001E3B0 24420001 */ addiu $v0, $v0, 1 +/* 01EFB4 8001E3B4 01C87821 */ addu $t7, $t6, $t0 +/* 01EFB8 8001E3B8 8DE40000 */ lw $a0, ($t7) +/* 01EFBC 8001E3BC 00000000 */ nop +/* 01EFC0 8001E3C0 1080001A */ beqz $a0, .L8001E42C +/* 01EFC4 8001E3C4 0043082A */ slt $at, $v0, $v1 +/* 01EFC8 8001E3C8 84980006 */ lh $t8, 6($a0) +/* 01EFCC 8001E3CC 00000000 */ nop +/* 01EFD0 8001E3D0 33198000 */ andi $t9, $t8, 0x8000 +/* 01EFD4 8001E3D4 17200015 */ bnez $t9, .L8001E42C +/* 01EFD8 8001E3D8 0043082A */ slt $at, $v0, $v1 +/* 01EFDC 8001E3DC 848B0048 */ lh $t3, 0x48($a0) +/* 01EFE0 8001E3E0 00000000 */ nop +/* 01EFE4 8001E3E4 154B0011 */ bne $t2, $t3, .L8001E42C +/* 01EFE8 8001E3E8 0043082A */ slt $at, $v0, $v1 +/* 01EFEC 8001E3EC 8C8C0078 */ lw $t4, 0x78($a0) +/* 01EFF0 8001E3F0 00000000 */ nop +/* 01EFF4 8001E3F4 160C000D */ bne $s0, $t4, .L8001E42C +/* 01EFF8 8001E3F8 0043082A */ slt $at, $v0, $v1 +/* 01EFFC 8001E3FC C484000C */ lwc1 $f4, 0xc($a0) +/* 01F000 8001E400 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 +/* 01F004 8001E404 E4A40000 */ swc1 $f4, ($a1) +/* 01F008 8001E408 C4860010 */ lwc1 $f6, 0x10($a0) +/* 01F00C 8001E40C 00000000 */ nop +/* 01F010 8001E410 E4C60000 */ swc1 $f6, ($a2) +/* 01F014 8001E414 C4880014 */ lwc1 $f8, 0x14($a0) +/* 01F018 8001E418 00000000 */ nop +/* 01F01C 8001E41C E4E80000 */ swc1 $f8, ($a3) +/* 01F020 8001E420 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) +/* 01F024 8001E424 00000000 */ nop +/* 01F028 8001E428 0043082A */ slt $at, $v0, $v1 +.L8001E42C: +/* 01F02C 8001E42C 1420FFDF */ bnez $at, .L8001E3AC +/* 01F030 8001E430 25080004 */ addiu $t0, $t0, 4 +.L8001E434: +/* 01F034 8001E434 8FB00004 */ lw $s0, 4($sp) +/* 01F038 8001E438 03E00008 */ jr $ra +/* 01F03C 8001E43C 27BD0008 */ addiu $sp, $sp, 8 + diff --git a/asm/non_matchings/unknown_005740/func_8001E440.s b/asm/non_matchings/unknown_005740/func_8001E440.s new file mode 100644 index 00000000..54cc2678 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001E440.s @@ -0,0 +1,6 @@ +glabel func_8001E440 +/* 01F040 8001E440 3C028012 */ lui $v0, %hi(D_8011AE7A) # $v0, 0x8012 +/* 01F044 8001E444 8442AE7A */ lh $v0, %lo(D_8011AE7A)($v0) +/* 01F048 8001E448 03E00008 */ jr $ra +/* 01F04C 8001E44C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001E450.s b/asm/non_matchings/unknown_005740/func_8001E450.s new file mode 100644 index 00000000..a6bdffb7 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001E450.s @@ -0,0 +1,5 @@ +glabel func_8001E450 +/* 01F050 8001E450 3C018012 */ lui $at, 0x8012 +/* 01F054 8001E454 03E00008 */ jr $ra +/* 01F058 8001E458 A424AE7A */ sh $a0, -0x5186($at) + diff --git a/asm/non_matchings/unknown_005740/func_8001E45C.s b/asm/non_matchings/unknown_005740/func_8001E45C.s new file mode 100644 index 00000000..124a6894 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001E45C.s @@ -0,0 +1,31 @@ +glabel func_8001E45C +/* 01F05C 8001E45C 3C028012 */ lui $v0, %hi(D_8011AE7A) # $v0, 0x8012 +/* 01F060 8001E460 2442AE7A */ addiu $v0, %lo(D_8011AE7A) # addiu $v0, $v0, -0x5186 +/* 01F064 8001E464 844E0000 */ lh $t6, ($v0) +/* 01F068 8001E468 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 01F06C 8001E46C 108E000D */ beq $a0, $t6, .L8001E4A4 +/* 01F070 8001E470 AFBF0014 */ sw $ra, 0x14($sp) +/* 01F074 8001E474 A4440000 */ sh $a0, ($v0) +/* 01F078 8001E478 3C018012 */ lui $at, %hi(D_8011ADAC) # $at, 0x8012 +/* 01F07C 8001E47C AC20ADAC */ sw $zero, %lo(D_8011ADAC)($at) +/* 01F080 8001E480 3C018012 */ lui $at, %hi(D_8011AE7E) # $at, 0x8012 +/* 01F084 8001E484 240F0001 */ li $t7, 1 +/* 01F088 8001E488 0C01B683 */ jal func_8006DA0C +/* 01F08C 8001E48C A02FAE7E */ sb $t7, %lo(D_8011AE7E)($at) +/* 01F090 8001E490 24010001 */ li $at, 1 +/* 01F094 8001E494 14410004 */ bne $v0, $at, .L8001E4A8 +/* 01F098 8001E498 8FBF0014 */ lw $ra, 0x14($sp) +/* 01F09C 8001E49C 0C01BD0B */ jal func_8006F42C +/* 01F0A0 8001E4A0 00000000 */ nop +.L8001E4A4: +/* 01F0A4 8001E4A4 8FBF0014 */ lw $ra, 0x14($sp) +.L8001E4A8: +/* 01F0A8 8001E4A8 27BD0018 */ addiu $sp, $sp, 0x18 +/* 01F0AC 8001E4AC 03E00008 */ jr $ra +/* 01F0B0 8001E4B0 00000000 */ nop + +/* 01F0B4 8001E4B4 3C028012 */ lui $v0, %hi(D_8011AE60) # $v0, 0x8012 +/* 01F0B8 8001E4B8 8C42AE60 */ lw $v0, %lo(D_8011AE60)($v0) +/* 01F0BC 8001E4BC 03E00008 */ jr $ra +/* 01F0C0 8001E4C0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001E4C4.s b/asm/non_matchings/unknown_005740/func_8001E4C4.s new file mode 100644 index 00000000..cd5e2430 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001E4C4.s @@ -0,0 +1,157 @@ +glabel func_8001E4C4 +/* 01F0C4 8001E4C4 3C088012 */ lui $t0, %hi(D_8011AE5C) # $t0, 0x8012 +/* 01F0C8 8001E4C8 2508AE5C */ addiu $t0, %lo(D_8011AE5C) # addiu $t0, $t0, -0x51a4 +/* 01F0CC 8001E4CC 8D030000 */ lw $v1, ($t0) +/* 01F0D0 8001E4D0 00001025 */ move $v0, $zero +/* 01F0D4 8001E4D4 18600013 */ blez $v1, .L8001E524 +/* 01F0D8 8001E4D8 00002025 */ move $a0, $zero +/* 01F0DC 8001E4DC 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 +/* 01F0E0 8001E4E0 2529AE58 */ addiu $t1, %lo(D_8011AE58) # addiu $t1, $t1, -0x51a8 +/* 01F0E4 8001E4E4 2406DFFF */ li $a2, -8193 +.L8001E4E8: +/* 01F0E8 8001E4E8 8D2E0000 */ lw $t6, ($t1) +/* 01F0EC 8001E4EC 24420001 */ addiu $v0, $v0, 1 +/* 01F0F0 8001E4F0 01C47821 */ addu $t7, $t6, $a0 +/* 01F0F4 8001E4F4 8DE50000 */ lw $a1, ($t7) +/* 01F0F8 8001E4F8 24840004 */ addiu $a0, $a0, 4 +/* 01F0FC 8001E4FC 84B80006 */ lh $t8, 6($a1) +/* 01F100 8001E500 00000000 */ nop +/* 01F104 8001E504 0306C824 */ and $t9, $t8, $a2 +/* 01F108 8001E508 A4B90006 */ sh $t9, 6($a1) +/* 01F10C 8001E50C 8D030000 */ lw $v1, ($t0) +/* 01F110 8001E510 00000000 */ nop +/* 01F114 8001E514 0043082A */ slt $at, $v0, $v1 +/* 01F118 8001E518 1420FFF3 */ bnez $at, .L8001E4E8 +/* 01F11C 8001E51C 00000000 */ nop +/* 01F120 8001E520 00001025 */ move $v0, $zero +.L8001E524: +/* 01F124 8001E524 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 +/* 01F128 8001E528 1860002C */ blez $v1, .L8001E5DC +/* 01F12C 8001E52C 2529AE58 */ addiu $t1, %lo(D_8011AE58) # addiu $t1, $t1, -0x51a8 +/* 01F130 8001E530 3C0B8012 */ lui $t3, %hi(D_8011AE7A) # $t3, 0x8012 +/* 01F134 8001E534 256BAE7A */ addiu $t3, %lo(D_8011AE7A) # addiu $t3, $t3, -0x5186 +/* 01F138 8001E538 00002025 */ move $a0, $zero +/* 01F13C 8001E53C 240C0014 */ li $t4, 20 +/* 01F140 8001E540 240A0031 */ li $t2, 49 +.L8001E544: +/* 01F144 8001E544 8D2D0000 */ lw $t5, ($t1) +/* 01F148 8001E548 00000000 */ nop +/* 01F14C 8001E54C 01A47021 */ addu $t6, $t5, $a0 +/* 01F150 8001E550 8DC50000 */ lw $a1, ($t6) +/* 01F154 8001E554 00000000 */ nop +/* 01F158 8001E558 10A0001A */ beqz $a1, .L8001E5C4 +/* 01F15C 8001E55C 00000000 */ nop +/* 01F160 8001E560 84A30006 */ lh $v1, 6($a1) +/* 01F164 8001E564 00000000 */ nop +/* 01F168 8001E568 306F8000 */ andi $t7, $v1, 0x8000 +/* 01F16C 8001E56C 15E00015 */ bnez $t7, .L8001E5C4 +/* 01F170 8001E570 00000000 */ nop +/* 01F174 8001E574 84B80048 */ lh $t8, 0x48($a1) +/* 01F178 8001E578 00000000 */ nop +/* 01F17C 8001E57C 15580011 */ bne $t2, $t8, .L8001E5C4 +/* 01F180 8001E580 00000000 */ nop +/* 01F184 8001E584 8CA6003C */ lw $a2, 0x3c($a1) +/* 01F188 8001E588 85790000 */ lh $t9, ($t3) +/* 01F18C 8001E58C 80C70021 */ lb $a3, 0x21($a2) +/* 01F190 8001E590 00000000 */ nop +/* 01F194 8001E594 1327000B */ beq $t9, $a3, .L8001E5C4 +/* 01F198 8001E598 00000000 */ nop +/* 01F19C 8001E59C 11870009 */ beq $t4, $a3, .L8001E5C4 +/* 01F1A0 8001E5A0 00000000 */ nop +/* 01F1A4 8001E5A4 8CA60064 */ lw $a2, 0x64($a1) +/* 01F1A8 8001E5A8 346D2000 */ ori $t5, $v1, 0x2000 +/* 01F1AC 8001E5AC 10C00005 */ beqz $a2, .L8001E5C4 +/* 01F1B0 8001E5B0 A4AD0006 */ sh $t5, 6($a1) +/* 01F1B4 8001E5B4 84CE0006 */ lh $t6, 6($a2) +/* 01F1B8 8001E5B8 00000000 */ nop +/* 01F1BC 8001E5BC 35CF2000 */ ori $t7, $t6, 0x2000 +/* 01F1C0 8001E5C0 A4CF0006 */ sh $t7, 6($a2) +.L8001E5C4: +/* 01F1C4 8001E5C4 8D030000 */ lw $v1, ($t0) +/* 01F1C8 8001E5C8 24420001 */ addiu $v0, $v0, 1 +/* 01F1CC 8001E5CC 0043082A */ slt $at, $v0, $v1 +/* 01F1D0 8001E5D0 1420FFDC */ bnez $at, .L8001E544 +/* 01F1D4 8001E5D4 24840004 */ addiu $a0, $a0, 4 +/* 01F1D8 8001E5D8 00001025 */ move $v0, $zero +.L8001E5DC: +/* 01F1DC 8001E5DC 2466FFFF */ addiu $a2, $v1, -1 +/* 01F1E0 8001E5E0 04C0003D */ bltz $a2, .L8001E6D8 +/* 01F1E4 8001E5E4 00C03825 */ move $a3, $a2 +/* 01F1E8 8001E5E8 00E2082A */ slt $at, $a3, $v0 +.L8001E5EC: +/* 01F1EC 8001E5EC 14200014 */ bnez $at, .L8001E640 +/* 01F1F0 8001E5F0 00001825 */ move $v1, $zero +/* 01F1F4 8001E5F4 8D380000 */ lw $t8, ($t1) +/* 01F1F8 8001E5F8 0002C880 */ sll $t9, $v0, 2 +/* 01F1FC 8001E5FC 03192021 */ addu $a0, $t8, $t9 +.L8001E600: +/* 01F200 8001E600 8C8D0000 */ lw $t5, ($a0) +/* 01F204 8001E604 00000000 */ nop +/* 01F208 8001E608 85AE0006 */ lh $t6, 6($t5) +/* 01F20C 8001E60C 00000000 */ nop +/* 01F210 8001E610 31CF2000 */ andi $t7, $t6, 0x2000 +/* 01F214 8001E614 11E00004 */ beqz $t7, .L8001E628 +/* 01F218 8001E618 00000000 */ nop +/* 01F21C 8001E61C 24420001 */ addiu $v0, $v0, 1 +/* 01F220 8001E620 10000002 */ b .L8001E62C +/* 01F224 8001E624 24840004 */ addiu $a0, $a0, 4 +.L8001E628: +/* 01F228 8001E628 2403FFFF */ li $v1, -1 +.L8001E62C: +/* 01F22C 8001E62C 00E2082A */ slt $at, $a3, $v0 +/* 01F230 8001E630 14200003 */ bnez $at, .L8001E640 +/* 01F234 8001E634 00000000 */ nop +/* 01F238 8001E638 1060FFF1 */ beqz $v1, .L8001E600 +/* 01F23C 8001E63C 00000000 */ nop +.L8001E640: +/* 01F240 8001E640 04C00013 */ bltz $a2, .L8001E690 +/* 01F244 8001E644 00001825 */ move $v1, $zero +/* 01F248 8001E648 8D380000 */ lw $t8, ($t1) +/* 01F24C 8001E64C 0006C880 */ sll $t9, $a2, 2 +/* 01F250 8001E650 03192021 */ addu $a0, $t8, $t9 +.L8001E654: +/* 01F254 8001E654 8C8D0000 */ lw $t5, ($a0) +/* 01F258 8001E658 00000000 */ nop +/* 01F25C 8001E65C 85AE0006 */ lh $t6, 6($t5) +/* 01F260 8001E660 00000000 */ nop +/* 01F264 8001E664 31CF2000 */ andi $t7, $t6, 0x2000 +/* 01F268 8001E668 11E00003 */ beqz $t7, .L8001E678 +/* 01F26C 8001E66C 00000000 */ nop +/* 01F270 8001E670 10000003 */ b .L8001E680 +/* 01F274 8001E674 2403FFFF */ li $v1, -1 +.L8001E678: +/* 01F278 8001E678 24C6FFFF */ addiu $a2, $a2, -1 +/* 01F27C 8001E67C 2484FFFC */ addiu $a0, $a0, -4 +.L8001E680: +/* 01F280 8001E680 04C00004 */ bltz $a2, .L8001E694 +/* 01F284 8001E684 0046082A */ slt $at, $v0, $a2 +/* 01F288 8001E688 1060FFF2 */ beqz $v1, .L8001E654 +/* 01F28C 8001E68C 00000000 */ nop +.L8001E690: +/* 01F290 8001E690 0046082A */ slt $at, $v0, $a2 +.L8001E694: +/* 01F294 8001E694 1020000D */ beqz $at, .L8001E6CC +/* 01F298 8001E698 0002C080 */ sll $t8, $v0, 2 +/* 01F29C 8001E69C 8D230000 */ lw $v1, ($t1) +/* 01F2A0 8001E6A0 00064080 */ sll $t0, $a2, 2 +/* 01F2A4 8001E6A4 0068C821 */ addu $t9, $v1, $t0 +/* 01F2A8 8001E6A8 8F2D0000 */ lw $t5, ($t9) +/* 01F2AC 8001E6AC 00782021 */ addu $a0, $v1, $t8 +/* 01F2B0 8001E6B0 8C850000 */ lw $a1, ($a0) +/* 01F2B4 8001E6B4 AC8D0000 */ sw $t5, ($a0) +/* 01F2B8 8001E6B8 8D2E0000 */ lw $t6, ($t1) +/* 01F2BC 8001E6BC 24420001 */ addiu $v0, $v0, 1 +/* 01F2C0 8001E6C0 01C87821 */ addu $t7, $t6, $t0 +/* 01F2C4 8001E6C4 24C6FFFF */ addiu $a2, $a2, -1 +/* 01F2C8 8001E6C8 ADE50000 */ sw $a1, ($t7) +.L8001E6CC: +/* 01F2CC 8001E6CC 00C2082A */ slt $at, $a2, $v0 +/* 01F2D0 8001E6D0 1020FFC6 */ beqz $at, .L8001E5EC +/* 01F2D4 8001E6D4 00E2082A */ slt $at, $a3, $v0 +.L8001E6D8: +/* 01F2D8 8001E6D8 3C018012 */ lui $at, %hi(D_8011AE60) # $at, 0x8012 +/* 01F2DC 8001E6DC AC22AE60 */ sw $v0, %lo(D_8011AE60)($at) +/* 01F2E0 8001E6E0 3C018012 */ lui $at, 0x8012 +/* 01F2E4 8001E6E4 03E00008 */ jr $ra +/* 01F2E8 8001E6E8 A420AE7C */ sh $zero, -0x5184($at) + diff --git a/asm/non_matchings/unknown_005740/func_8001E6EC.s b/asm/non_matchings/unknown_005740/func_8001E6EC.s new file mode 100644 index 00000000..4947b791 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001E6EC.s @@ -0,0 +1,118 @@ +glabel func_8001E6EC +/* 01F2EC 8001E6EC 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 01F2F0 8001E6F0 AFB00004 */ sw $s0, 4($sp) +/* 01F2F4 8001E6F4 3C038012 */ lui $v1, %hi(D_8011AE00) # $v1, 0x8012 +/* 01F2F8 8001E6F8 8063AE00 */ lb $v1, %lo(D_8011AE00)($v1) +/* 01F2FC 8001E6FC 00048600 */ sll $s0, $a0, 0x18 +/* 01F300 8001E700 00107603 */ sra $t6, $s0, 0x18 +/* 01F304 8001E704 01C08025 */ move $s0, $t6 +/* 01F308 8001E708 AFB2000C */ sw $s2, 0xc($sp) +/* 01F30C 8001E70C AFB10008 */ sw $s1, 8($sp) +/* 01F310 8001E710 AFA40010 */ sw $a0, 0x10($sp) +/* 01F314 8001E714 1860005A */ blez $v1, .L8001E880 +/* 01F318 8001E718 00001025 */ move $v0, $zero +/* 01F31C 8001E71C 3C058012 */ lui $a1, %hi(D_8011ADD8) # $a1, 0x8012 +/* 01F320 8001E720 3C128012 */ lui $s2, %hi(D_8011AE74) # $s2, 0x8012 +/* 01F324 8001E724 3C118012 */ lui $s1, %hi(D_8011AE78) # $s1, 0x8012 +/* 01F328 8001E728 3C0C8012 */ lui $t4, %hi(D_8011AE7A) # $t4, 0x8012 +/* 01F32C 8001E72C 258CAE7A */ addiu $t4, %lo(D_8011AE7A) # addiu $t4, $t4, -0x5186 +/* 01F330 8001E730 2631AE78 */ addiu $s1, %lo(D_8011AE78) # addiu $s1, $s1, -0x5188 +/* 01F334 8001E734 2652AE74 */ addiu $s2, %lo(D_8011AE74) # addiu $s2, $s2, -0x518c +/* 01F338 8001E738 24A5ADD8 */ addiu $a1, %lo(D_8011ADD8) # addiu $a1, $a1, -0x5228 +/* 01F33C 8001E73C 240D0014 */ li $t5, 20 +.L8001E740: +/* 01F340 8001E740 8CA40000 */ lw $a0, ($a1) +/* 01F344 8001E744 858F0000 */ lh $t7, ($t4) +/* 01F348 8001E748 8C86003C */ lw $a2, 0x3c($a0) +/* 01F34C 8001E74C 8C870064 */ lw $a3, 0x64($a0) +/* 01F350 8001E750 80C80009 */ lb $t0, 9($a2) +/* 01F354 8001E754 24420001 */ addiu $v0, $v0, 1 +/* 01F358 8001E758 11E80003 */ beq $t7, $t0, .L8001E768 +/* 01F35C 8001E75C 00000000 */ nop +/* 01F360 8001E760 15A80045 */ bne $t5, $t0, .L8001E878 +/* 01F364 8001E764 0043082A */ slt $at, $v0, $v1 +.L8001E768: +/* 01F368 8001E768 86290000 */ lh $t1, ($s1) +/* 01F36C 8001E76C 00004025 */ move $t0, $zero +/* 01F370 8001E770 19200014 */ blez $t1, .L8001E7C4 +/* 01F374 8001E774 00000000 */ nop +/* 01F378 8001E778 8E4B0000 */ lw $t3, ($s2) +/* 01F37C 8001E77C 80CA0008 */ lb $t2, 8($a2) +/* 01F380 8001E780 8D780000 */ lw $t8, ($t3) +/* 01F384 8001E784 00000000 */ nop +/* 01F388 8001E788 8F19007C */ lw $t9, 0x7c($t8) +/* 01F38C 8001E78C 00000000 */ nop +/* 01F390 8001E790 1159000C */ beq $t2, $t9, .L8001E7C4 +/* 01F394 8001E794 00000000 */ nop +.L8001E798: +/* 01F398 8001E798 25080001 */ addiu $t0, $t0, 1 +/* 01F39C 8001E79C 0109082A */ slt $at, $t0, $t1 +/* 01F3A0 8001E7A0 10200008 */ beqz $at, .L8001E7C4 +/* 01F3A4 8001E7A4 00087080 */ sll $t6, $t0, 2 +/* 01F3A8 8001E7A8 016E7821 */ addu $t7, $t3, $t6 +/* 01F3AC 8001E7AC 8DF80000 */ lw $t8, ($t7) +/* 01F3B0 8001E7B0 00000000 */ nop +/* 01F3B4 8001E7B4 8F19007C */ lw $t9, 0x7c($t8) +/* 01F3B8 8001E7B8 00000000 */ nop +/* 01F3BC 8001E7BC 1559FFF6 */ bne $t2, $t9, .L8001E798 +/* 01F3C0 8001E7C0 00000000 */ nop +.L8001E7C4: +/* 01F3C4 8001E7C4 11090027 */ beq $t0, $t1, .L8001E864 +/* 01F3C8 8001E7C8 00000000 */ nop +/* 01F3CC 8001E7CC 8E4E0000 */ lw $t6, ($s2) +/* 01F3D0 8001E7D0 00087880 */ sll $t7, $t0, 2 +/* 01F3D4 8001E7D4 01CFC021 */ addu $t8, $t6, $t7 +/* 01F3D8 8001E7D8 8F190000 */ lw $t9, ($t8) +/* 01F3DC 8001E7DC 00000000 */ nop +/* 01F3E0 8001E7E0 8F260064 */ lw $a2, 0x64($t9) +/* 01F3E4 8001E7E4 00000000 */ nop +/* 01F3E8 8001E7E8 10C0001E */ beqz $a2, .L8001E864 +/* 01F3EC 8001E7EC 00000000 */ nop +/* 01F3F0 8001E7F0 8CCE005C */ lw $t6, 0x5c($a2) +/* 01F3F4 8001E7F4 24080001 */ li $t0, 1 +/* 01F3F8 8001E7F8 11C00003 */ beqz $t6, .L8001E808 +/* 01F3FC 8001E7FC 00000000 */ nop +/* 01F400 8001E800 10000001 */ b .L8001E808 +/* 01F404 8001E804 00004025 */ move $t0, $zero +.L8001E808: +/* 01F408 8001E808 1208001B */ beq $s0, $t0, .L8001E878 +/* 01F40C 8001E80C 0043082A */ slt $at, $v0, $v1 +/* 01F410 8001E810 C4C4000C */ lwc1 $f4, 0xc($a2) +/* 01F414 8001E814 3C038012 */ lui $v1, %hi(D_8011AE00) # $v1, 0x8012 +/* 01F418 8001E818 E4E40000 */ swc1 $f4, ($a3) +/* 01F41C 8001E81C C4C60010 */ lwc1 $f6, 0x10($a2) +/* 01F420 8001E820 00000000 */ nop +/* 01F424 8001E824 E4E60004 */ swc1 $f6, 4($a3) +/* 01F428 8001E828 C4C80014 */ lwc1 $f8, 0x14($a2) +/* 01F42C 8001E82C ACE6000C */ sw $a2, 0xc($a3) +/* 01F430 8001E830 E4E80008 */ swc1 $f8, 8($a3) +/* 01F434 8001E834 C48A000C */ lwc1 $f10, 0xc($a0) +/* 01F438 8001E838 00000000 */ nop +/* 01F43C 8001E83C E4CA000C */ swc1 $f10, 0xc($a2) +/* 01F440 8001E840 C4900010 */ lwc1 $f16, 0x10($a0) +/* 01F444 8001E844 00000000 */ nop +/* 01F448 8001E848 E4D00010 */ swc1 $f16, 0x10($a2) +/* 01F44C 8001E84C C4920014 */ lwc1 $f18, 0x14($a0) +/* 01F450 8001E850 00000000 */ nop +/* 01F454 8001E854 E4D20014 */ swc1 $f18, 0x14($a2) +/* 01F458 8001E858 8063AE00 */ lb $v1, %lo(D_8011AE00)($v1) +/* 01F45C 8001E85C 10000006 */ b .L8001E878 +/* 01F460 8001E860 0043082A */ slt $at, $v0, $v1 +.L8001E864: +/* 01F464 8001E864 ACE0000C */ sw $zero, 0xc($a3) +/* 01F468 8001E868 3C038012 */ lui $v1, %hi(D_8011AE00) # $v1, 0x8012 +/* 01F46C 8001E86C 8063AE00 */ lb $v1, %lo(D_8011AE00)($v1) +/* 01F470 8001E870 00000000 */ nop +/* 01F474 8001E874 0043082A */ slt $at, $v0, $v1 +.L8001E878: +/* 01F478 8001E878 1420FFB1 */ bnez $at, .L8001E740 +/* 01F47C 8001E87C 24A50004 */ addiu $a1, $a1, 4 +.L8001E880: +/* 01F480 8001E880 3C018012 */ lui $at, %hi(D_8011AE01) # $at, 0x8012 +/* 01F484 8001E884 8FB00004 */ lw $s0, 4($sp) +/* 01F488 8001E888 8FB10008 */ lw $s1, 8($sp) +/* 01F48C 8001E88C 8FB2000C */ lw $s2, 0xc($sp) +/* 01F490 8001E890 A020AE01 */ sb $zero, %lo(D_8011AE01)($at) +/* 01F494 8001E894 03E00008 */ jr $ra +/* 01F498 8001E898 27BD0010 */ addiu $sp, $sp, 0x10 + diff --git a/asm/non_matchings/unknown_005740/func_8001E89C.s b/asm/non_matchings/unknown_005740/func_8001E89C.s new file mode 100644 index 00000000..0cf00264 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001E89C.s @@ -0,0 +1,47 @@ +glabel func_8001E89C +/* 01F49C 8001E89C 3C028012 */ lui $v0, %hi(D_8011AE01) # $v0, 0x8012 +/* 01F4A0 8001E8A0 2442AE01 */ addiu $v0, %lo(D_8011AE01) # addiu $v0, $v0, -0x51ff +/* 01F4A4 8001E8A4 804E0000 */ lb $t6, ($v0) +/* 01F4A8 8001E8A8 00000000 */ nop +/* 01F4AC 8001E8AC 11C00003 */ beqz $t6, .L8001E8BC +/* 01F4B0 8001E8B0 00000000 */ nop +/* 01F4B4 8001E8B4 03E00008 */ jr $ra +/* 01F4B8 8001E8B8 A0400000 */ sb $zero, ($v0) + +.L8001E8BC: +/* 01F4BC 8001E8BC 3C038012 */ lui $v1, %hi(D_8011AE00) # $v1, 0x8012 +/* 01F4C0 8001E8C0 8063AE00 */ lb $v1, %lo(D_8011AE00)($v1) +/* 01F4C4 8001E8C4 00001025 */ move $v0, $zero +/* 01F4C8 8001E8C8 1860001A */ blez $v1, .L8001E934 +/* 01F4CC 8001E8CC 3C058012 */ lui $a1, %hi(D_8011ADD8) # $a1, 0x8012 +/* 01F4D0 8001E8D0 24A5ADD8 */ addiu $a1, %lo(D_8011ADD8) # addiu $a1, $a1, -0x5228 +.L8001E8D4: +/* 01F4D4 8001E8D4 8CA40000 */ lw $a0, ($a1) +/* 01F4D8 8001E8D8 24420001 */ addiu $v0, $v0, 1 +/* 01F4DC 8001E8DC 8C860064 */ lw $a2, 0x64($a0) +/* 01F4E0 8001E8E0 00000000 */ nop +/* 01F4E4 8001E8E4 8CC7000C */ lw $a3, 0xc($a2) +/* 01F4E8 8001E8E8 00000000 */ nop +/* 01F4EC 8001E8EC 10E0000F */ beqz $a3, .L8001E92C +/* 01F4F0 8001E8F0 0043082A */ slt $at, $v0, $v1 +/* 01F4F4 8001E8F4 C4C40000 */ lwc1 $f4, ($a2) +/* 01F4F8 8001E8F8 3C038012 */ lui $v1, %hi(D_8011AE00) # $v1, 0x8012 +/* 01F4FC 8001E8FC E4E4000C */ swc1 $f4, 0xc($a3) +/* 01F500 8001E900 8CCF000C */ lw $t7, 0xc($a2) +/* 01F504 8001E904 C4C60004 */ lwc1 $f6, 4($a2) +/* 01F508 8001E908 00000000 */ nop +/* 01F50C 8001E90C E5E60010 */ swc1 $f6, 0x10($t7) +/* 01F510 8001E910 8CD8000C */ lw $t8, 0xc($a2) +/* 01F514 8001E914 C4C80008 */ lwc1 $f8, 8($a2) +/* 01F518 8001E918 00000000 */ nop +/* 01F51C 8001E91C E7080014 */ swc1 $f8, 0x14($t8) +/* 01F520 8001E920 8063AE00 */ lb $v1, %lo(D_8011AE00)($v1) +/* 01F524 8001E924 00000000 */ nop +/* 01F528 8001E928 0043082A */ slt $at, $v0, $v1 +.L8001E92C: +/* 01F52C 8001E92C 1420FFE9 */ bnez $at, .L8001E8D4 +/* 01F530 8001E930 24A50004 */ addiu $a1, $a1, 4 +.L8001E934: +/* 01F534 8001E934 03E00008 */ jr $ra +/* 01F538 8001E938 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001E93C.s b/asm/non_matchings/unknown_005740/func_8001E93C.s new file mode 100644 index 00000000..66b819f2 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001E93C.s @@ -0,0 +1,366 @@ +glabel func_8001E93C +/* 01F53C 8001E93C 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 01F540 8001E940 3C0E8012 */ lui $t6, %hi(D_8011AE7E) # $t6, 0x8012 +/* 01F544 8001E944 81CEAE7E */ lb $t6, %lo(D_8011AE7E)($t6) +/* 01F548 8001E948 AFBF0024 */ sw $ra, 0x24($sp) +/* 01F54C 8001E94C AFB30020 */ sw $s3, 0x20($sp) +/* 01F550 8001E950 AFB2001C */ sw $s2, 0x1c($sp) +/* 01F554 8001E954 AFB10018 */ sw $s1, 0x18($sp) +/* 01F558 8001E958 11C00023 */ beqz $t6, .L8001E9E8 +/* 01F55C 8001E95C AFB00014 */ sw $s0, 0x14($sp) +/* 01F560 8001E960 3C048012 */ lui $a0, %hi(D_8011AE78) # $a0, 0x8012 +/* 01F564 8001E964 8484AE78 */ lh $a0, %lo(D_8011AE78)($a0) +/* 01F568 8001E968 00009825 */ move $s3, $zero +/* 01F56C 8001E96C 1880001E */ blez $a0, .L8001E9E8 +/* 01F570 8001E970 00008825 */ move $s1, $zero +/* 01F574 8001E974 3C0D8012 */ lui $t5, %hi(D_8011AE74) # $t5, 0x8012 +/* 01F578 8001E978 25ADAE74 */ addiu $t5, %lo(D_8011AE74) # addiu $t5, $t5, -0x518c +/* 01F57C 8001E97C 24100014 */ li $s0, 20 +.L8001E980: +/* 01F580 8001E980 8DAF0000 */ lw $t7, ($t5) +/* 01F584 8001E984 00000000 */ nop +/* 01F588 8001E988 01F1C021 */ addu $t8, $t7, $s1 +/* 01F58C 8001E98C 8F020000 */ lw $v0, ($t8) +/* 01F590 8001E990 00000000 */ nop +/* 01F594 8001E994 8C430064 */ lw $v1, 0x64($v0) +/* 01F598 8001E998 8C48003C */ lw $t0, 0x3c($v0) +/* 01F59C 8001E99C 1060000E */ beqz $v1, .L8001E9D8 +/* 01F5A0 8001E9A0 00000000 */ nop +/* 01F5A4 8001E9A4 81190021 */ lb $t9, 0x21($t0) +/* 01F5A8 8001E9A8 00000000 */ nop +/* 01F5AC 8001E9AC 1219000A */ beq $s0, $t9, .L8001E9D8 +/* 01F5B0 8001E9B0 00000000 */ nop +/* 01F5B4 8001E9B4 00602025 */ move $a0, $v1 +/* 01F5B8 8001E9B8 0C003FEE */ jal func_8000FFB8 +/* 01F5BC 8001E9BC AFA2003C */ sw $v0, 0x3c($sp) +/* 01F5C0 8001E9C0 8FA2003C */ lw $v0, 0x3c($sp) +/* 01F5C4 8001E9C4 3C048012 */ lui $a0, %hi(D_8011AE78) # $a0, 0x8012 +/* 01F5C8 8001E9C8 AC400064 */ sw $zero, 0x64($v0) +/* 01F5CC 8001E9CC 3C0D8012 */ lui $t5, %hi(D_8011AE74) # $t5, 0x8012 +/* 01F5D0 8001E9D0 8484AE78 */ lh $a0, %lo(D_8011AE78)($a0) +/* 01F5D4 8001E9D4 25ADAE74 */ addiu $t5, %lo(D_8011AE74) # addiu $t5, $t5, -0x518c +.L8001E9D8: +/* 01F5D8 8001E9D8 26730001 */ addiu $s3, $s3, 1 +/* 01F5DC 8001E9DC 0264082A */ slt $at, $s3, $a0 +/* 01F5E0 8001E9E0 1420FFE7 */ bnez $at, .L8001E980 +/* 01F5E4 8001E9E4 26310004 */ addiu $s1, $s1, 4 +.L8001E9E8: +/* 01F5E8 8001E9E8 3C028012 */ lui $v0, %hi(D_8011AD3E) # $v0, 0x8012 +/* 01F5EC 8001E9EC 2442AD3E */ addiu $v0, %lo(D_8011AD3E) # addiu $v0, $v0, -0x52c2 +/* 01F5F0 8001E9F0 804E0000 */ lb $t6, ($v0) +/* 01F5F4 8001E9F4 24100014 */ li $s0, 20 +/* 01F5F8 8001E9F8 29C10015 */ slti $at, $t6, 0x15 +/* 01F5FC 8001E9FC 14200002 */ bnez $at, .L8001EA08 +/* 01F600 8001EA00 00009825 */ move $s3, $zero +/* 01F604 8001EA04 A0400000 */ sb $zero, ($v0) +.L8001EA08: +/* 01F608 8001EA08 0C007931 */ jal func_8001E4C4 +/* 01F60C 8001EA0C 00000000 */ nop +/* 01F610 8001EA10 3C068012 */ lui $a2, %hi(D_8011AE5C) # $a2, 0x8012 +/* 01F614 8001EA14 8CC6AE5C */ lw $a2, %lo(D_8011AE5C)($a2) +/* 01F618 8001EA18 3C0D8012 */ lui $t5, %hi(D_8011AE74) # $t5, 0x8012 +/* 01F61C 8001EA1C 18C00023 */ blez $a2, .L8001EAAC +/* 01F620 8001EA20 25ADAE74 */ addiu $t5, %lo(D_8011AE74) # addiu $t5, $t5, -0x518c +/* 01F624 8001EA24 3C058012 */ lui $a1, %hi(D_8011AE58) # $a1, 0x8012 +/* 01F628 8001EA28 3C0B8012 */ lui $t3, %hi(D_8011ADD8) # $t3, 0x8012 +/* 01F62C 8001EA2C 3C098012 */ lui $t1, %hi(D_8011AE7A) # $t1, 0x8012 +/* 01F630 8001EA30 8CA5AE58 */ lw $a1, %lo(D_8011AE58)($a1) +/* 01F634 8001EA34 2529AE7A */ addiu $t1, %lo(D_8011AE7A) # addiu $t1, $t1, -0x5186 +/* 01F638 8001EA38 256BADD8 */ addiu $t3, %lo(D_8011ADD8) # addiu $t3, $t3, -0x5228 +/* 01F63C 8001EA3C 00005025 */ move $t2, $zero +/* 01F640 8001EA40 00063880 */ sll $a3, $a2, 2 +/* 01F644 8001EA44 24080053 */ li $t0, 83 +.L8001EA48: +/* 01F648 8001EA48 8CA20000 */ lw $v0, ($a1) +/* 01F64C 8001EA4C 254A0004 */ addiu $t2, $t2, 4 +/* 01F650 8001EA50 10400014 */ beqz $v0, .L8001EAA4 +/* 01F654 8001EA54 0147082A */ slt $at, $t2, $a3 +/* 01F658 8001EA58 844F0006 */ lh $t7, 6($v0) +/* 01F65C 8001EA5C 00000000 */ nop +/* 01F660 8001EA60 31F88000 */ andi $t8, $t7, 0x8000 +/* 01F664 8001EA64 1700000F */ bnez $t8, .L8001EAA4 +/* 01F668 8001EA68 00000000 */ nop +/* 01F66C 8001EA6C 84590048 */ lh $t9, 0x48($v0) +/* 01F670 8001EA70 00000000 */ nop +/* 01F674 8001EA74 1519000B */ bne $t0, $t9, .L8001EAA4 +/* 01F678 8001EA78 00000000 */ nop +/* 01F67C 8001EA7C 8C43003C */ lw $v1, 0x3c($v0) +/* 01F680 8001EA80 852E0000 */ lh $t6, ($t1) +/* 01F684 8001EA84 80640009 */ lb $a0, 9($v1) +/* 01F688 8001EA88 00137880 */ sll $t7, $s3, 2 +/* 01F68C 8001EA8C 11C40003 */ beq $t6, $a0, .L8001EA9C +/* 01F690 8001EA90 016FC021 */ addu $t8, $t3, $t7 +/* 01F694 8001EA94 16040003 */ bne $s0, $a0, .L8001EAA4 +/* 01F698 8001EA98 00000000 */ nop +.L8001EA9C: +/* 01F69C 8001EA9C AF020000 */ sw $v0, ($t8) +/* 01F6A0 8001EAA0 26730001 */ addiu $s3, $s3, 1 +.L8001EAA4: +/* 01F6A4 8001EAA4 1420FFE8 */ bnez $at, .L8001EA48 +/* 01F6A8 8001EAA8 24A50004 */ addiu $a1, $a1, 4 +.L8001EAAC: +/* 01F6AC 8001EAAC 3C018012 */ lui $at, %hi(D_8011AE00) # $at, 0x8012 +/* 01F6B0 8001EAB0 A033AE00 */ sb $s3, %lo(D_8011AE00)($at) +/* 01F6B4 8001EAB4 24120001 */ li $s2, 1 +/* 01F6B8 8001EAB8 3C018012 */ lui $at, %hi(D_8011AE01) # $at, 0x8012 +/* 01F6BC 8001EABC A032AE01 */ sb $s2, %lo(D_8011AE01)($at) +/* 01F6C0 8001EAC0 3C0C8012 */ lui $t4, %hi(D_8011AE60) # $t4, 0x8012 +/* 01F6C4 8001EAC4 8D8CAE60 */ lw $t4, %lo(D_8011AE60)($t4) +/* 01F6C8 8001EAC8 3C018012 */ lui $at, %hi(D_8011AE78) # $at, 0x8012 +/* 01F6CC 8001EACC A420AE78 */ sh $zero, %lo(D_8011AE78)($at) +/* 01F6D0 8001EAD0 0186082A */ slt $at, $t4, $a2 +/* 01F6D4 8001EAD4 1020001E */ beqz $at, .L8001EB50 +/* 01F6D8 8001EAD8 00009825 */ move $s3, $zero +/* 01F6DC 8001EADC 3C038012 */ lui $v1, %hi(D_8011AE58) # $v1, 0x8012 +/* 01F6E0 8001EAE0 2463AE58 */ addiu $v1, %lo(D_8011AE58) # addiu $v1, $v1, -0x51a8 +/* 01F6E4 8001EAE4 000C5080 */ sll $t2, $t4, 2 +/* 01F6E8 8001EAE8 24040031 */ li $a0, 49 +.L8001EAEC: +/* 01F6EC 8001EAEC 8C790000 */ lw $t9, ($v1) +/* 01F6F0 8001EAF0 258C0001 */ addiu $t4, $t4, 1 +/* 01F6F4 8001EAF4 032A7021 */ addu $t6, $t9, $t2 +/* 01F6F8 8001EAF8 8DC20000 */ lw $v0, ($t6) +/* 01F6FC 8001EAFC 00000000 */ nop +/* 01F700 8001EB00 10400011 */ beqz $v0, .L8001EB48 +/* 01F704 8001EB04 0186082A */ slt $at, $t4, $a2 +/* 01F708 8001EB08 844F0006 */ lh $t7, 6($v0) +/* 01F70C 8001EB0C 00000000 */ nop +/* 01F710 8001EB10 31F88000 */ andi $t8, $t7, 0x8000 +/* 01F714 8001EB14 1700000C */ bnez $t8, .L8001EB48 +/* 01F718 8001EB18 0186082A */ slt $at, $t4, $a2 +/* 01F71C 8001EB1C 84590048 */ lh $t9, 0x48($v0) +/* 01F720 8001EB20 00137880 */ sll $t7, $s3, 2 +/* 01F724 8001EB24 14990008 */ bne $a0, $t9, .L8001EB48 +/* 01F728 8001EB28 0186082A */ slt $at, $t4, $a2 +/* 01F72C 8001EB2C 8DAE0000 */ lw $t6, ($t5) +/* 01F730 8001EB30 3C068012 */ lui $a2, %hi(D_8011AE5C) # $a2, 0x8012 +/* 01F734 8001EB34 01CFC021 */ addu $t8, $t6, $t7 +/* 01F738 8001EB38 AF020000 */ sw $v0, ($t8) +/* 01F73C 8001EB3C 8CC6AE5C */ lw $a2, %lo(D_8011AE5C)($a2) +/* 01F740 8001EB40 26730001 */ addiu $s3, $s3, 1 +/* 01F744 8001EB44 0186082A */ slt $at, $t4, $a2 +.L8001EB48: +/* 01F748 8001EB48 1420FFE8 */ bnez $at, .L8001EAEC +/* 01F74C 8001EB4C 254A0004 */ addiu $t2, $t2, 4 +.L8001EB50: +/* 01F750 8001EB50 00006025 */ move $t4, $zero +/* 01F754 8001EB54 267FFFFF */ addiu $ra, $s3, -1 +/* 01F758 8001EB58 24110002 */ li $s1, 2 +.L8001EB5C: +/* 01F75C 8001EB5C 1BE00041 */ blez $ra, .L8001EC64 +/* 01F760 8001EB60 02405825 */ move $t3, $s2 +/* 01F764 8001EB64 00005025 */ move $t2, $zero +.L8001EB68: +/* 01F768 8001EB68 8DB90000 */ lw $t9, ($t5) +/* 01F76C 8001EB6C 258C0001 */ addiu $t4, $t4, 1 +/* 01F770 8001EB70 032A2821 */ addu $a1, $t9, $t2 +/* 01F774 8001EB74 8CA60000 */ lw $a2, ($a1) +/* 01F778 8001EB78 8CA70004 */ lw $a3, 4($a1) +/* 01F77C 8001EB7C 8CC9003C */ lw $t1, 0x3c($a2) +/* 01F780 8001EB80 8CE4003C */ lw $a0, 0x3c($a3) +/* 01F784 8001EB84 812E0021 */ lb $t6, 0x21($t1) +/* 01F788 8001EB88 81220010 */ lb $v0, 0x10($t1) +/* 01F78C 8001EB8C 80830010 */ lb $v1, 0x10($a0) +/* 01F790 8001EB90 160E0004 */ bne $s0, $t6, .L8001EBA4 +/* 01F794 8001EB94 00000000 */ nop +/* 01F798 8001EB98 2442FE70 */ addiu $v0, $v0, -0x190 +/* 01F79C 8001EB9C 00027C00 */ sll $t7, $v0, 0x10 +/* 01F7A0 8001EBA0 000F1403 */ sra $v0, $t7, 0x10 +.L8001EBA4: +/* 01F7A4 8001EBA4 80990021 */ lb $t9, 0x21($a0) +/* 01F7A8 8001EBA8 00000000 */ nop +/* 01F7AC 8001EBAC 16190005 */ bne $s0, $t9, .L8001EBC4 +/* 01F7B0 8001EBB0 0062082A */ slt $at, $v1, $v0 +/* 01F7B4 8001EBB4 2463FE70 */ addiu $v1, $v1, -0x190 +/* 01F7B8 8001EBB8 00037400 */ sll $t6, $v1, 0x10 +/* 01F7BC 8001EBBC 000E1C03 */ sra $v1, $t6, 0x10 +/* 01F7C0 8001EBC0 0062082A */ slt $at, $v1, $v0 +.L8001EBC4: +/* 01F7C4 8001EBC4 10200007 */ beqz $at, .L8001EBE4 +/* 01F7C8 8001EBC8 00000000 */ nop +/* 01F7CC 8001EBCC ACA70000 */ sw $a3, ($a1) +/* 01F7D0 8001EBD0 8DB80000 */ lw $t8, ($t5) +/* 01F7D4 8001EBD4 00005825 */ move $t3, $zero +/* 01F7D8 8001EBD8 030AC821 */ addu $t9, $t8, $t2 +/* 01F7DC 8001EBDC 1000001E */ b .L8001EC58 +/* 01F7E0 8001EBE0 AF260004 */ sw $a2, 4($t9) +.L8001EBE4: +/* 01F7E4 8001EBE4 1443001C */ bne $v0, $v1, .L8001EC58 +/* 01F7E8 8001EBE8 00000000 */ nop +/* 01F7EC 8001EBEC 80820011 */ lb $v0, 0x11($a0) +/* 01F7F0 8001EBF0 81230011 */ lb $v1, 0x11($t1) +/* 01F7F4 8001EBF4 00000000 */ nop +/* 01F7F8 8001EBF8 0043082A */ slt $at, $v0, $v1 +/* 01F7FC 8001EBFC 10200007 */ beqz $at, .L8001EC1C +/* 01F800 8001EC00 00000000 */ nop +/* 01F804 8001EC04 ACA70000 */ sw $a3, ($a1) +/* 01F808 8001EC08 8DAE0000 */ lw $t6, ($t5) +/* 01F80C 8001EC0C 00005825 */ move $t3, $zero +/* 01F810 8001EC10 01CA7821 */ addu $t7, $t6, $t2 +/* 01F814 8001EC14 10000010 */ b .L8001EC58 +/* 01F818 8001EC18 ADE60004 */ sw $a2, 4($t7) +.L8001EC1C: +/* 01F81C 8001EC1C 1443000E */ bne $v0, $v1, .L8001EC58 +/* 01F820 8001EC20 00000000 */ nop +/* 01F824 8001EC24 8CF80078 */ lw $t8, 0x78($a3) +/* 01F828 8001EC28 00000000 */ nop +/* 01F82C 8001EC2C 12580005 */ beq $s2, $t8, .L8001EC44 +/* 01F830 8001EC30 00000000 */ nop +/* 01F834 8001EC34 8CD90078 */ lw $t9, 0x78($a2) +/* 01F838 8001EC38 00000000 */ nop +/* 01F83C 8001EC3C 16390006 */ bne $s1, $t9, .L8001EC58 +/* 01F840 8001EC40 00000000 */ nop +.L8001EC44: +/* 01F844 8001EC44 ACA70000 */ sw $a3, ($a1) +/* 01F848 8001EC48 8DAE0000 */ lw $t6, ($t5) +/* 01F84C 8001EC4C 00005825 */ move $t3, $zero +/* 01F850 8001EC50 01CA7821 */ addu $t7, $t6, $t2 +/* 01F854 8001EC54 ADE60004 */ sw $a2, 4($t7) +.L8001EC58: +/* 01F858 8001EC58 159FFFC3 */ bne $t4, $ra, .L8001EB68 +/* 01F85C 8001EC5C 254A0004 */ addiu $t2, $t2, 4 +/* 01F860 8001EC60 00006025 */ move $t4, $zero +.L8001EC64: +/* 01F864 8001EC64 1160FFBD */ beqz $t3, .L8001EB5C +/* 01F868 8001EC68 00000000 */ nop +/* 01F86C 8001EC6C 1A600071 */ blez $s3, .L8001EE34 +/* 01F870 8001EC70 2404FF9B */ li $a0, -101 +/* 01F874 8001EC74 32620003 */ andi $v0, $s3, 3 +/* 01F878 8001EC78 1040001A */ beqz $v0, .L8001ECE4 +/* 01F87C 8001EC7C 00401825 */ move $v1, $v0 +/* 01F880 8001EC80 8FA20028 */ lw $v0, 0x28($sp) +/* 01F884 8001EC84 000C5080 */ sll $t2, $t4, 2 +.L8001EC88: +/* 01F888 8001EC88 8DB80000 */ lw $t8, ($t5) +/* 01F88C 8001EC8C 258C0001 */ addiu $t4, $t4, 1 +/* 01F890 8001EC90 030AC821 */ addu $t9, $t8, $t2 +/* 01F894 8001EC94 8F2E0000 */ lw $t6, ($t9) +/* 01F898 8001EC98 00000000 */ nop +/* 01F89C 8001EC9C 8DC9003C */ lw $t1, 0x3c($t6) +/* 01F8A0 8001ECA0 00000000 */ nop +/* 01F8A4 8001ECA4 812F0010 */ lb $t7, 0x10($t1) +/* 01F8A8 8001ECA8 01204025 */ move $t0, $t1 +/* 01F8AC 8001ECAC 108F0003 */ beq $a0, $t7, .L8001ECBC +/* 01F8B0 8001ECB0 00000000 */ nop +/* 01F8B4 8001ECB4 81240010 */ lb $a0, 0x10($t1) +/* 01F8B8 8001ECB8 00001025 */ move $v0, $zero +.L8001ECBC: +/* 01F8BC 8001ECBC A1020011 */ sb $v0, 0x11($t0) +/* 01F8C0 8001ECC0 8DB80000 */ lw $t8, ($t5) +/* 01F8C4 8001ECC4 24420001 */ addiu $v0, $v0, 1 +/* 01F8C8 8001ECC8 030AC821 */ addu $t9, $t8, $t2 +/* 01F8CC 8001ECCC 8F2E0000 */ lw $t6, ($t9) +/* 01F8D0 8001ECD0 254A0004 */ addiu $t2, $t2, 4 +/* 01F8D4 8001ECD4 146CFFEC */ bne $v1, $t4, .L8001EC88 +/* 01F8D8 8001ECD8 ADC00078 */ sw $zero, 0x78($t6) +/* 01F8DC 8001ECDC 11930055 */ beq $t4, $s3, .L8001EE34 +/* 01F8E0 8001ECE0 AFA20028 */ sw $v0, 0x28($sp) +.L8001ECE4: +/* 01F8E4 8001ECE4 8FA20028 */ lw $v0, 0x28($sp) +/* 01F8E8 8001ECE8 000C5080 */ sll $t2, $t4, 2 +/* 01F8EC 8001ECEC 00132880 */ sll $a1, $s3, 2 +.L8001ECF0: +/* 01F8F0 8001ECF0 8DAF0000 */ lw $t7, ($t5) +/* 01F8F4 8001ECF4 00000000 */ nop +/* 01F8F8 8001ECF8 01EAC021 */ addu $t8, $t7, $t2 +/* 01F8FC 8001ECFC 8F190000 */ lw $t9, ($t8) +/* 01F900 8001ED00 00000000 */ nop +/* 01F904 8001ED04 8F29003C */ lw $t1, 0x3c($t9) +/* 01F908 8001ED08 00000000 */ nop +/* 01F90C 8001ED0C 812E0010 */ lb $t6, 0x10($t1) +/* 01F910 8001ED10 01204025 */ move $t0, $t1 +/* 01F914 8001ED14 108E0003 */ beq $a0, $t6, .L8001ED24 +/* 01F918 8001ED18 00000000 */ nop +/* 01F91C 8001ED1C 81240010 */ lb $a0, 0x10($t1) +/* 01F920 8001ED20 00001025 */ move $v0, $zero +.L8001ED24: +/* 01F924 8001ED24 A1020011 */ sb $v0, 0x11($t0) +/* 01F928 8001ED28 8DAF0000 */ lw $t7, ($t5) +/* 01F92C 8001ED2C 24420001 */ addiu $v0, $v0, 1 +/* 01F930 8001ED30 01EAC021 */ addu $t8, $t7, $t2 +/* 01F934 8001ED34 8F190000 */ lw $t9, ($t8) +/* 01F938 8001ED38 00000000 */ nop +/* 01F93C 8001ED3C AF200078 */ sw $zero, 0x78($t9) +/* 01F940 8001ED40 8DAE0000 */ lw $t6, ($t5) +/* 01F944 8001ED44 00000000 */ nop +/* 01F948 8001ED48 01CA7821 */ addu $t7, $t6, $t2 +/* 01F94C 8001ED4C 8DF80004 */ lw $t8, 4($t7) +/* 01F950 8001ED50 00000000 */ nop +/* 01F954 8001ED54 8F08003C */ lw $t0, 0x3c($t8) +/* 01F958 8001ED58 00000000 */ nop +/* 01F95C 8001ED5C 81030010 */ lb $v1, 0x10($t0) +/* 01F960 8001ED60 00000000 */ nop +/* 01F964 8001ED64 10830003 */ beq $a0, $v1, .L8001ED74 +/* 01F968 8001ED68 00000000 */ nop +/* 01F96C 8001ED6C 00602025 */ move $a0, $v1 +/* 01F970 8001ED70 00001025 */ move $v0, $zero +.L8001ED74: +/* 01F974 8001ED74 A1020011 */ sb $v0, 0x11($t0) +/* 01F978 8001ED78 8DB90000 */ lw $t9, ($t5) +/* 01F97C 8001ED7C 24420001 */ addiu $v0, $v0, 1 +/* 01F980 8001ED80 032A7021 */ addu $t6, $t9, $t2 +/* 01F984 8001ED84 8DCF0004 */ lw $t7, 4($t6) +/* 01F988 8001ED88 00000000 */ nop +/* 01F98C 8001ED8C ADE00078 */ sw $zero, 0x78($t7) +/* 01F990 8001ED90 8DB80000 */ lw $t8, ($t5) +/* 01F994 8001ED94 00000000 */ nop +/* 01F998 8001ED98 030AC821 */ addu $t9, $t8, $t2 +/* 01F99C 8001ED9C 8F2E0008 */ lw $t6, 8($t9) +/* 01F9A0 8001EDA0 00000000 */ nop +/* 01F9A4 8001EDA4 8DC8003C */ lw $t0, 0x3c($t6) +/* 01F9A8 8001EDA8 00000000 */ nop +/* 01F9AC 8001EDAC 81030010 */ lb $v1, 0x10($t0) +/* 01F9B0 8001EDB0 00000000 */ nop +/* 01F9B4 8001EDB4 10830003 */ beq $a0, $v1, .L8001EDC4 +/* 01F9B8 8001EDB8 00000000 */ nop +/* 01F9BC 8001EDBC 00602025 */ move $a0, $v1 +/* 01F9C0 8001EDC0 00001025 */ move $v0, $zero +.L8001EDC4: +/* 01F9C4 8001EDC4 A1020011 */ sb $v0, 0x11($t0) +/* 01F9C8 8001EDC8 8DAF0000 */ lw $t7, ($t5) +/* 01F9CC 8001EDCC 24420001 */ addiu $v0, $v0, 1 +/* 01F9D0 8001EDD0 01EAC021 */ addu $t8, $t7, $t2 +/* 01F9D4 8001EDD4 8F190008 */ lw $t9, 8($t8) +/* 01F9D8 8001EDD8 00000000 */ nop +/* 01F9DC 8001EDDC AF200078 */ sw $zero, 0x78($t9) +/* 01F9E0 8001EDE0 8DAE0000 */ lw $t6, ($t5) +/* 01F9E4 8001EDE4 00000000 */ nop +/* 01F9E8 8001EDE8 01CA7821 */ addu $t7, $t6, $t2 +/* 01F9EC 8001EDEC 8DF8000C */ lw $t8, 0xc($t7) +/* 01F9F0 8001EDF0 00000000 */ nop +/* 01F9F4 8001EDF4 8F08003C */ lw $t0, 0x3c($t8) +/* 01F9F8 8001EDF8 00000000 */ nop +/* 01F9FC 8001EDFC 81030010 */ lb $v1, 0x10($t0) +/* 01FA00 8001EE00 00000000 */ nop +/* 01FA04 8001EE04 10830003 */ beq $a0, $v1, .L8001EE14 +/* 01FA08 8001EE08 00000000 */ nop +/* 01FA0C 8001EE0C 00602025 */ move $a0, $v1 +/* 01FA10 8001EE10 00001025 */ move $v0, $zero +.L8001EE14: +/* 01FA14 8001EE14 A1020011 */ sb $v0, 0x11($t0) +/* 01FA18 8001EE18 8DB90000 */ lw $t9, ($t5) +/* 01FA1C 8001EE1C 24420001 */ addiu $v0, $v0, 1 +/* 01FA20 8001EE20 032A7021 */ addu $t6, $t9, $t2 +/* 01FA24 8001EE24 8DCF000C */ lw $t7, 0xc($t6) +/* 01FA28 8001EE28 254A0010 */ addiu $t2, $t2, 0x10 +/* 01FA2C 8001EE2C 1545FFB0 */ bne $t2, $a1, .L8001ECF0 +/* 01FA30 8001EE30 ADE00078 */ sw $zero, 0x78($t7) +.L8001EE34: +/* 01FA34 8001EE34 3C188012 */ lui $t8, %hi(D_8011AE7E) # $t8, 0x8012 +/* 01FA38 8001EE38 8318AE7E */ lb $t8, %lo(D_8011AE7E)($t8) +/* 01FA3C 8001EE3C 3C018012 */ lui $at, %hi(D_8011AE78) # $at, 0x8012 +/* 01FA40 8001EE40 13000003 */ beqz $t8, .L8001EE50 +/* 01FA44 8001EE44 A433AE78 */ sh $s3, %lo(D_8011AE78)($at) +/* 01FA48 8001EE48 0C007B9D */ jal func_8001EE74 +/* 01FA4C 8001EE4C 00000000 */ nop +.L8001EE50: +/* 01FA50 8001EE50 8FBF0024 */ lw $ra, 0x24($sp) +/* 01FA54 8001EE54 3C018012 */ lui $at, %hi(D_8011AE7E) # $at, 0x8012 +/* 01FA58 8001EE58 8FB00014 */ lw $s0, 0x14($sp) +/* 01FA5C 8001EE5C 8FB10018 */ lw $s1, 0x18($sp) +/* 01FA60 8001EE60 8FB2001C */ lw $s2, 0x1c($sp) +/* 01FA64 8001EE64 8FB30020 */ lw $s3, 0x20($sp) +/* 01FA68 8001EE68 A020AE7E */ sb $zero, %lo(D_8011AE7E)($at) +/* 01FA6C 8001EE6C 03E00008 */ jr $ra +/* 01FA70 8001EE70 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_005740/func_8001EE74.s b/asm/non_matchings/unknown_005740/func_8001EE74.s new file mode 100644 index 00000000..3f57792f --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001EE74.s @@ -0,0 +1,83 @@ +glabel func_8001EE74 +/* 01FA74 8001EE74 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 01FA78 8001EE78 AFB70034 */ sw $s7, 0x34($sp) +/* 01FA7C 8001EE7C 3C178012 */ lui $s7, %hi(D_8011AE78) # $s7, 0x8012 +/* 01FA80 8001EE80 26F7AE78 */ addiu $s7, %lo(D_8011AE78) # addiu $s7, $s7, -0x5188 +/* 01FA84 8001EE84 86EE0000 */ lh $t6, ($s7) +/* 01FA88 8001EE88 AFB30024 */ sw $s3, 0x24($sp) +/* 01FA8C 8001EE8C AFBF003C */ sw $ra, 0x3c($sp) +/* 01FA90 8001EE90 AFBE0038 */ sw $fp, 0x38($sp) +/* 01FA94 8001EE94 AFB60030 */ sw $s6, 0x30($sp) +/* 01FA98 8001EE98 AFB5002C */ sw $s5, 0x2c($sp) +/* 01FA9C 8001EE9C AFB40028 */ sw $s4, 0x28($sp) +/* 01FAA0 8001EEA0 AFB20020 */ sw $s2, 0x20($sp) +/* 01FAA4 8001EEA4 AFB1001C */ sw $s1, 0x1c($sp) +/* 01FAA8 8001EEA8 AFB00018 */ sw $s0, 0x18($sp) +/* 01FAAC 8001EEAC 19C0002E */ blez $t6, .L8001EF68 +/* 01FAB0 8001EEB0 00009825 */ move $s3, $zero +/* 01FAB4 8001EEB4 3C1E8012 */ lui $fp, %hi(D_8011AD26) # $fp, 0x8012 +/* 01FAB8 8001EEB8 3C148012 */ lui $s4, %hi(D_8011AE74) # $s4, 0x8012 +/* 01FABC 8001EEBC 2694AE74 */ addiu $s4, %lo(D_8011AE74) # addiu $s4, $s4, -0x518c +/* 01FAC0 8001EEC0 27DEAD26 */ addiu $fp, %lo(D_8011AD26) # addiu $fp, $fp, -0x52da +/* 01FAC4 8001EEC4 00009025 */ move $s2, $zero +/* 01FAC8 8001EEC8 24160014 */ li $s6, 20 +/* 01FACC 8001EECC 2415FFFF */ li $s5, -1 +.L8001EED0: +/* 01FAD0 8001EED0 8E8F0000 */ lw $t7, ($s4) +/* 01FAD4 8001EED4 00000000 */ nop +/* 01FAD8 8001EED8 01F2C021 */ addu $t8, $t7, $s2 +/* 01FADC 8001EEDC 8F110000 */ lw $s1, ($t8) +/* 01FAE0 8001EEE0 00000000 */ nop +/* 01FAE4 8001EEE4 8E390064 */ lw $t9, 0x64($s1) +/* 01FAE8 8001EEE8 8E30003C */ lw $s0, 0x3c($s1) +/* 01FAEC 8001EEEC 1720000B */ bnez $t9, .L8001EF1C +/* 01FAF0 8001EEF0 00000000 */ nop +/* 01FAF4 8001EEF4 82080011 */ lb $t0, 0x11($s0) +/* 01FAF8 8001EEF8 00000000 */ nop +/* 01FAFC 8001EEFC 15000007 */ bnez $t0, .L8001EF1C +/* 01FB00 8001EF00 00000000 */ nop +/* 01FB04 8001EF04 8609000C */ lh $t1, 0xc($s0) +/* 01FB08 8001EF08 02202025 */ move $a0, $s1 +/* 01FB0C 8001EF0C 12A90003 */ beq $s5, $t1, .L8001EF1C +/* 01FB10 8001EF10 00000000 */ nop +/* 01FB14 8001EF14 0C007C8F */ jal func_8001F23C +/* 01FB18 8001EF18 02002825 */ move $a1, $s0 +.L8001EF1C: +/* 01FB1C 8001EF1C 83CA0000 */ lb $t2, ($fp) +/* 01FB20 8001EF20 00000000 */ nop +/* 01FB24 8001EF24 15400005 */ bnez $t2, .L8001EF3C +/* 01FB28 8001EF28 00000000 */ nop +/* 01FB2C 8001EF2C 820B0021 */ lb $t3, 0x21($s0) +/* 01FB30 8001EF30 00000000 */ nop +/* 01FB34 8001EF34 12CB0007 */ beq $s6, $t3, .L8001EF54 +/* 01FB38 8001EF38 00000000 */ nop +.L8001EF3C: +/* 01FB3C 8001EF3C 8E250064 */ lw $a1, 0x64($s1) +/* 01FB40 8001EF40 00000000 */ nop +/* 01FB44 8001EF44 10A00003 */ beqz $a1, .L8001EF54 +/* 01FB48 8001EF48 00000000 */ nop +/* 01FB4C 8001EF4C 0C007BE9 */ jal func_8001EFA4 +/* 01FB50 8001EF50 02202025 */ move $a0, $s1 +.L8001EF54: +/* 01FB54 8001EF54 86EC0000 */ lh $t4, ($s7) +/* 01FB58 8001EF58 26730001 */ addiu $s3, $s3, 1 +/* 01FB5C 8001EF5C 026C082A */ slt $at, $s3, $t4 +/* 01FB60 8001EF60 1420FFDB */ bnez $at, .L8001EED0 +/* 01FB64 8001EF64 26520004 */ addiu $s2, $s2, 4 +.L8001EF68: +/* 01FB68 8001EF68 3C1E8012 */ lui $fp, %hi(D_8011AD26) # $fp, 0x8012 +/* 01FB6C 8001EF6C 27DEAD26 */ addiu $fp, %lo(D_8011AD26) # addiu $fp, $fp, -0x52da +/* 01FB70 8001EF70 8FBF003C */ lw $ra, 0x3c($sp) +/* 01FB74 8001EF74 A3C00000 */ sb $zero, ($fp) +/* 01FB78 8001EF78 8FBE0038 */ lw $fp, 0x38($sp) +/* 01FB7C 8001EF7C 8FB00018 */ lw $s0, 0x18($sp) +/* 01FB80 8001EF80 8FB1001C */ lw $s1, 0x1c($sp) +/* 01FB84 8001EF84 8FB20020 */ lw $s2, 0x20($sp) +/* 01FB88 8001EF88 8FB30024 */ lw $s3, 0x24($sp) +/* 01FB8C 8001EF8C 8FB40028 */ lw $s4, 0x28($sp) +/* 01FB90 8001EF90 8FB5002C */ lw $s5, 0x2c($sp) +/* 01FB94 8001EF94 8FB60030 */ lw $s6, 0x30($sp) +/* 01FB98 8001EF98 8FB70034 */ lw $s7, 0x34($sp) +/* 01FB9C 8001EF9C 03E00008 */ jr $ra +/* 01FBA0 8001EFA0 27BD0040 */ addiu $sp, $sp, 0x40 + diff --git a/asm/non_matchings/unknown_005740/func_8001EFA4.s b/asm/non_matchings/unknown_005740/func_8001EFA4.s new file mode 100644 index 00000000..b33b84c9 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001EFA4.s @@ -0,0 +1,173 @@ +glabel func_8001EFA4 +/* 01FBA4 8001EFA4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 01FBA8 8001EFA8 AFBF0024 */ sw $ra, 0x24($sp) +/* 01FBAC 8001EFAC AFB20020 */ sw $s2, 0x20($sp) +/* 01FBB0 8001EFB0 AFB1001C */ sw $s1, 0x1c($sp) +/* 01FBB4 8001EFB4 AFB00018 */ sw $s0, 0x18($sp) +/* 01FBB8 8001EFB8 8C91003C */ lw $s1, 0x3c($a0) +/* 01FBBC 8001EFBC 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 01FBC0 8001EFC0 922F000B */ lbu $t7, 0xb($s1) +/* 01FBC4 8001EFC4 44811000 */ mtc1 $at, $f2 +/* 01FBC8 8001EFC8 448F2000 */ mtc1 $t7, $f4 +/* 01FBCC 8001EFCC 3C014280 */ li $at, 0x42800000 # 64.000000 +/* 01FBD0 8001EFD0 46802020 */ cvt.s.w $f0, $f4 +/* 01FBD4 8001EFD4 8CB00064 */ lw $s0, 0x64($a1) +/* 01FBD8 8001EFD8 44813000 */ mtc1 $at, $f6 +/* 01FBDC 8001EFDC 4602003C */ c.lt.s $f0, $f2 +/* 01FBE0 8001EFE0 00809025 */ move $s2, $a0 +/* 01FBE4 8001EFE4 45000003 */ bc1f .L8001EFF4 +/* 01FBE8 8001EFE8 00000000 */ nop +/* 01FBEC 8001EFEC 46001006 */ mov.s $f0, $f2 +/* 01FBF0 8001EFF0 00000000 */ nop +.L8001EFF4: +/* 01FBF4 8001EFF4 46060003 */ div.s $f0, $f0, $f6 +/* 01FBF8 8001EFF8 8CB80040 */ lw $t8, 0x40($a1) +/* 01FBFC 8001EFFC 00000000 */ nop +/* 01FC00 8001F000 C708000C */ lwc1 $f8, 0xc($t8) +/* 01FC04 8001F004 ACA00078 */ sw $zero, 0x78($a1) +/* 01FC08 8001F008 ACA0007C */ sw $zero, 0x7c($a1) +/* 01FC0C 8001F00C 46004282 */ mul.s $f10, $f8, $f0 +/* 01FC10 8001F010 E4AA0008 */ swc1 $f10, 8($a1) +/* 01FC14 8001F014 82220022 */ lb $v0, 0x22($s1) +/* 01FC18 8001F018 00000000 */ nop +/* 01FC1C 8001F01C 28410002 */ slti $at, $v0, 2 +/* 01FC20 8001F020 14200006 */ bnez $at, .L8001F03C +/* 01FC24 8001F024 2841000A */ slti $at, $v0, 0xa +/* 01FC28 8001F028 10200004 */ beqz $at, .L8001F03C +/* 01FC2C 8001F02C 2459FFFF */ addiu $t9, $v0, -1 +/* 01FC30 8001F030 ACB90078 */ sw $t9, 0x78($a1) +/* 01FC34 8001F034 82220022 */ lb $v0, 0x22($s1) +/* 01FC38 8001F038 00000000 */ nop +.L8001F03C: +/* 01FC3C 8001F03C 2841000A */ slti $at, $v0, 0xa +/* 01FC40 8001F040 14200004 */ bnez $at, .L8001F054 +/* 01FC44 8001F044 28410012 */ slti $at, $v0, 0x12 +/* 01FC48 8001F048 10200002 */ beqz $at, .L8001F054 +/* 01FC4C 8001F04C 2448FFF7 */ addiu $t0, $v0, -9 +/* 01FC50 8001F050 ACA80078 */ sw $t0, 0x78($a1) +.L8001F054: +/* 01FC54 8001F054 C650000C */ lwc1 $f16, 0xc($s2) +/* 01FC58 8001F058 3C01800E */ lui $at, %hi(D_800E5668) # $at, 0x800e +/* 01FC5C 8001F05C E4B0000C */ swc1 $f16, 0xc($a1) +/* 01FC60 8001F060 C6520010 */ lwc1 $f18, 0x10($s2) +/* 01FC64 8001F064 00000000 */ nop +/* 01FC68 8001F068 E4B20010 */ swc1 $f18, 0x10($a1) +/* 01FC6C 8001F06C C6440014 */ lwc1 $f4, 0x14($s2) +/* 01FC70 8001F070 00000000 */ nop +/* 01FC74 8001F074 E4A40014 */ swc1 $f4, 0x14($a1) +/* 01FC78 8001F078 86490000 */ lh $t1, ($s2) +/* 01FC7C 8001F07C 00000000 */ nop +/* 01FC80 8001F080 A4A90000 */ sh $t1, ($a1) +/* 01FC84 8001F084 864A0004 */ lh $t2, 4($s2) +/* 01FC88 8001F088 00000000 */ nop +/* 01FC8C 8001F08C A4AA0004 */ sh $t2, 4($a1) +/* 01FC90 8001F090 864B0002 */ lh $t3, 2($s2) +/* 01FC94 8001F094 00000000 */ nop +/* 01FC98 8001F098 A4AB0002 */ sh $t3, 2($a1) +/* 01FC9C 8001F09C A6000026 */ sh $zero, 0x26($s0) +/* 01FCA0 8001F0A0 822C0021 */ lb $t4, 0x21($s1) +/* 01FCA4 8001F0A4 00000000 */ nop +/* 01FCA8 8001F0A8 A20C003D */ sb $t4, 0x3d($s0) +/* 01FCAC 8001F0AC 822D0010 */ lb $t5, 0x10($s1) +/* 01FCB0 8001F0B0 00000000 */ nop +/* 01FCB4 8001F0B4 A60D0028 */ sh $t5, 0x28($s0) +/* 01FCB8 8001F0B8 822E0014 */ lb $t6, 0x14($s1) +/* 01FCBC 8001F0BC C430566C */ lwc1 $f16, %lo(D_800E566C)($at) +/* 01FCC0 8001F0C0 448E3000 */ mtc1 $t6, $f6 +/* 01FCC4 8001F0C4 C4315668 */ lwc1 $f17, %lo(D_800E5668)($at) +/* 01FCC8 8001F0C8 46803220 */ cvt.s.w $f8, $f6 +/* 01FCCC 8001F0CC 460042A1 */ cvt.d.s $f10, $f8 +/* 01FCD0 8001F0D0 46305482 */ mul.d $f18, $f10, $f16 +/* 01FCD4 8001F0D4 46209120 */ cvt.s.d $f4, $f18 +/* 01FCD8 8001F0D8 E6040008 */ swc1 $f4, 8($s0) +/* 01FCDC 8001F0DC 8624000E */ lh $a0, 0xe($s1) +/* 01FCE0 8001F0E0 0C00322D */ jal func_8000C8B4 +/* 01FCE4 8001F0E4 AFA5002C */ sw $a1, 0x2c($sp) +/* 01FCE8 8001F0E8 8FA5002C */ lw $a1, 0x2c($sp) +/* 01FCEC 8001F0EC A602002A */ sh $v0, 0x2a($s0) +/* 01FCF0 8001F0F0 822F0012 */ lb $t7, 0x12($s1) +/* 01FCF4 8001F0F4 44800000 */ mtc1 $zero, $f0 +/* 01FCF8 8001F0F8 A0AF003B */ sb $t7, 0x3b($a1) +/* 01FCFC 8001F0FC 92380016 */ lbu $t8, 0x16($s1) +/* 01FD00 8001F100 00000000 */ nop +/* 01FD04 8001F104 A4B80018 */ sh $t8, 0x18($a1) +/* 01FD08 8001F108 82390017 */ lb $t9, 0x17($s1) +/* 01FD0C 8001F10C E6000010 */ swc1 $f0, 0x10($s0) +/* 01FD10 8001F110 44993000 */ mtc1 $t9, $f6 +/* 01FD14 8001F114 00000000 */ nop +/* 01FD18 8001F118 46803220 */ cvt.s.w $f8, $f6 +/* 01FD1C 8001F11C E6080014 */ swc1 $f8, 0x14($s0) +/* 01FD20 8001F120 92280018 */ lbu $t0, 0x18($s1) +/* 01FD24 8001F124 00000000 */ nop +/* 01FD28 8001F128 A208002C */ sb $t0, 0x2c($s0) +/* 01FD2C 8001F12C 92290019 */ lbu $t1, 0x19($s1) +/* 01FD30 8001F130 00000000 */ nop +/* 01FD34 8001F134 A209002E */ sb $t1, 0x2e($s0) +/* 01FD38 8001F138 822A002C */ lb $t2, 0x2c($s1) +/* 01FD3C 8001F13C 00000000 */ nop +/* 01FD40 8001F140 A20A003E */ sb $t2, 0x3e($s0) +/* 01FD44 8001F144 822B002D */ lb $t3, 0x2d($s1) +/* 01FD48 8001F148 00000000 */ nop +/* 01FD4C 8001F14C A20B003F */ sb $t3, 0x3f($s0) +/* 01FD50 8001F150 822C001A */ lb $t4, 0x1a($s1) +/* 01FD54 8001F154 00000000 */ nop +/* 01FD58 8001F158 A20C0031 */ sb $t4, 0x31($s0) +/* 01FD5C 8001F15C 822D001B */ lb $t5, 0x1b($s1) +/* 01FD60 8001F160 00000000 */ nop +/* 01FD64 8001F164 A20D0032 */ sb $t5, 0x32($s0) +/* 01FD68 8001F168 822E001C */ lb $t6, 0x1c($s1) +/* 01FD6C 8001F16C 00000000 */ nop +/* 01FD70 8001F170 A20E0033 */ sb $t6, 0x33($s0) +/* 01FD74 8001F174 822F0020 */ lb $t7, 0x20($s1) +/* 01FD78 8001F178 A200002D */ sb $zero, 0x2d($s0) +/* 01FD7C 8001F17C E6000004 */ swc1 $f0, 4($s0) +/* 01FD80 8001F180 E6000000 */ swc1 $f0, ($s0) +/* 01FD84 8001F184 A20F0034 */ sb $t7, 0x34($s0) +/* 01FD88 8001F188 AE40006C */ sw $zero, 0x6c($s2) +/* 01FD8C 8001F18C 86240024 */ lh $a0, 0x24($s1) +/* 01FD90 8001F190 0C00322D */ jal func_8000C8B4 +/* 01FD94 8001F194 00000000 */ nop +/* 01FD98 8001F198 A6020036 */ sh $v0, 0x36($s0) +/* 01FD9C 8001F19C 82380026 */ lb $t8, 0x26($s1) +/* 01FDA0 8001F1A0 00000000 */ nop +/* 01FDA4 8001F1A4 A218003A */ sb $t8, 0x3a($s0) +/* 01FDA8 8001F1A8 82230013 */ lb $v1, 0x13($s1) +/* 01FDAC 8001F1AC 00000000 */ nop +/* 01FDB0 8001F1B0 04600002 */ bltz $v1, .L8001F1BC +/* 01FDB4 8001F1B4 00000000 */ nop +/* 01FDB8 8001F1B8 A203002F */ sb $v1, 0x2f($s0) +.L8001F1BC: +/* 01FDBC 8001F1BC 8239001F */ lb $t9, 0x1f($s1) +/* 01FDC0 8001F1C0 8E040018 */ lw $a0, 0x18($s0) +/* 01FDC4 8001F1C4 A2190039 */ sb $t9, 0x39($s0) +/* 01FDC8 8001F1C8 9228001E */ lbu $t0, 0x1e($s1) +/* 01FDCC 8001F1CC 240D00FF */ li $t5, 255 +/* 01FDD0 8001F1D0 A2080038 */ sb $t0, 0x38($s0) +/* 01FDD4 8001F1D4 82290029 */ lb $t1, 0x29($s1) +/* 01FDD8 8001F1D8 00000000 */ nop +/* 01FDDC 8001F1DC A209003B */ sb $t1, 0x3b($s0) +/* 01FDE0 8001F1E0 822A002E */ lb $t2, 0x2e($s1) +/* 01FDE4 8001F1E4 00000000 */ nop +/* 01FDE8 8001F1E8 A20A0040 */ sb $t2, 0x40($s0) +/* 01FDEC 8001F1EC 822B002F */ lb $t3, 0x2f($s1) +/* 01FDF0 8001F1F0 00000000 */ nop +/* 01FDF4 8001F1F4 A20B0041 */ sb $t3, 0x41($s0) +/* 01FDF8 8001F1F8 822C002B */ lb $t4, 0x2b($s1) +/* 01FDFC 8001F1FC A20D0042 */ sb $t5, 0x42($s0) +/* 01FE00 8001F200 10800003 */ beqz $a0, .L8001F210 +/* 01FE04 8001F204 A20C003C */ sb $t4, 0x3c($s0) +/* 01FE08 8001F208 0C001223 */ jal func_8000488C +/* 01FE0C 8001F20C 00000000 */ nop +.L8001F210: +/* 01FE10 8001F210 AE000018 */ sw $zero, 0x18($s0) +/* 01FE14 8001F214 822E0030 */ lb $t6, 0x30($s1) +/* 01FE18 8001F218 AE12001C */ sw $s2, 0x1c($s0) +/* 01FE1C 8001F21C A2000045 */ sb $zero, 0x45($s0) +/* 01FE20 8001F220 A20E0043 */ sb $t6, 0x43($s0) +/* 01FE24 8001F224 8FBF0024 */ lw $ra, 0x24($sp) +/* 01FE28 8001F228 8FB20020 */ lw $s2, 0x20($sp) +/* 01FE2C 8001F22C 8FB1001C */ lw $s1, 0x1c($sp) +/* 01FE30 8001F230 8FB00018 */ lw $s0, 0x18($sp) +/* 01FE34 8001F234 03E00008 */ jr $ra +/* 01FE38 8001F238 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_005740/func_8001F23C.s b/asm/non_matchings/unknown_005740/func_8001F23C.s new file mode 100644 index 00000000..7aa33f76 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001F23C.s @@ -0,0 +1,103 @@ +glabel func_8001F23C +/* 01FE3C 8001F23C 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 01FE40 8001F240 AFBF002C */ sw $ra, 0x2c($sp) +/* 01FE44 8001F244 AFB50028 */ sw $s5, 0x28($sp) +/* 01FE48 8001F248 AFB40024 */ sw $s4, 0x24($sp) +/* 01FE4C 8001F24C AFB30020 */ sw $s3, 0x20($sp) +/* 01FE50 8001F250 AFB2001C */ sw $s2, 0x1c($sp) +/* 01FE54 8001F254 AFB10018 */ sw $s1, 0x18($sp) +/* 01FE58 8001F258 AFB00014 */ sw $s0, 0x14($sp) +/* 01FE5C 8001F25C 84AE0002 */ lh $t6, 2($a1) +/* 01FE60 8001F260 0080A025 */ move $s4, $a0 +/* 01FE64 8001F264 A7AE003E */ sh $t6, 0x3e($sp) +/* 01FE68 8001F268 84AF0004 */ lh $t7, 4($a1) +/* 01FE6C 8001F26C 27B5003C */ addiu $s5, $sp, 0x3c +/* 01FE70 8001F270 A7AF0040 */ sh $t7, 0x40($sp) +/* 01FE74 8001F274 84B80006 */ lh $t8, 6($a1) +/* 01FE78 8001F278 02A02025 */ move $a0, $s5 +/* 01FE7C 8001F27C A7B80042 */ sh $t8, 0x42($sp) +/* 01FE80 8001F280 84B9000C */ lh $t9, 0xc($a1) +/* 01FE84 8001F284 00000000 */ nop +/* 01FE88 8001F288 00194043 */ sra $t0, $t9, 1 +/* 01FE8C 8001F28C 31090080 */ andi $t1, $t0, 0x80 +/* 01FE90 8001F290 352A0008 */ ori $t2, $t1, 8 +/* 01FE94 8001F294 A3AA003D */ sb $t2, 0x3d($sp) +/* 01FE98 8001F298 84AB000C */ lh $t3, 0xc($a1) +/* 01FE9C 8001F29C 24050001 */ li $a1, 1 +/* 01FEA0 8001F2A0 0C003A95 */ jal func_8000EA54 +/* 01FEA4 8001F2A4 A3AB003C */ sb $t3, 0x3c($sp) +/* 01FEA8 8001F2A8 AE820064 */ sw $v0, 0x64($s4) +/* 01FEAC 8001F2AC 1040000D */ beqz $v0, .L8001F2E4 +/* 01FEB0 8001F2B0 00408825 */ move $s1, $v0 +/* 01FEB4 8001F2B4 844C0048 */ lh $t4, 0x48($v0) +/* 01FEB8 8001F2B8 2401000C */ li $at, 12 +/* 01FEBC 8001F2BC 15810009 */ bne $t4, $at, .L8001F2E4 +/* 01FEC0 8001F2C0 3C0D8012 */ lui $t5, %hi(D_8011AEF4) # $t5, 0x8012 +/* 01FEC4 8001F2C4 91ADAEF4 */ lbu $t5, %lo(D_8011AEF4)($t5) +/* 01FEC8 8001F2C8 00000000 */ nop +/* 01FECC 8001F2CC 11A00005 */ beqz $t5, .L8001F2E4 +/* 01FED0 8001F2D0 00000000 */ nop +/* 01FED4 8001F2D4 0C003FEE */ jal func_8000FFB8 +/* 01FED8 8001F2D8 00402025 */ move $a0, $v0 +/* 01FEDC 8001F2DC AE800064 */ sw $zero, 0x64($s4) +/* 01FEE0 8001F2E0 00008825 */ move $s1, $zero +.L8001F2E4: +/* 01FEE4 8001F2E4 1220002B */ beqz $s1, .L8001F394 +/* 01FEE8 8001F2E8 02802025 */ move $a0, $s4 +/* 01FEEC 8001F2EC AE20003C */ sw $zero, 0x3c($s1) +/* 01FEF0 8001F2F0 0C007BE9 */ jal func_8001EFA4 +/* 01FEF4 8001F2F4 02202825 */ move $a1, $s1 +/* 01FEF8 8001F2F8 8E2E0040 */ lw $t6, 0x40($s1) +/* 01FEFC 8001F2FC 24010033 */ li $at, 51 +/* 01FF00 8001F300 81CF0054 */ lb $t7, 0x54($t6) +/* 01FF04 8001F304 3C138012 */ lui $s3, %hi(D_8011AD3E) # $s3, 0x8012 +/* 01FF08 8001F308 15E10022 */ bne $t7, $at, .L8001F394 +/* 01FF0C 8001F30C 2673AD3E */ addiu $s3, %lo(D_8011AD3E) # addiu $s3, $s3, -0x52c2 +/* 01FF10 8001F310 8E220064 */ lw $v0, 0x64($s1) +/* 01FF14 8001F314 82780000 */ lb $t8, ($s3) +/* 01FF18 8001F318 0C019884 */ jal func_80066210 +/* 01FF1C 8001F31C A0580044 */ sb $t8, 0x44($v0) +/* 01FF20 8001F320 0C01B067 */ jal func_8006C19C +/* 01FF24 8001F324 00409025 */ move $s2, $v0 +/* 01FF28 8001F328 10400002 */ beqz $v0, .L8001F334 +/* 01FF2C 8001F32C 00000000 */ nop +/* 01FF30 8001F330 24120001 */ li $s2, 1 +.L8001F334: +/* 01FF34 8001F334 1A400013 */ blez $s2, .L8001F384 +/* 01FF38 8001F338 00008025 */ move $s0, $zero +/* 01FF3C 8001F33C 02A02025 */ move $a0, $s5 +.L8001F340: +/* 01FF40 8001F340 0C003A95 */ jal func_8000EA54 +/* 01FF44 8001F344 24050001 */ li $a1, 1 +/* 01FF48 8001F348 1040000B */ beqz $v0, .L8001F378 +/* 01FF4C 8001F34C 00408825 */ move $s1, $v0 +/* 01FF50 8001F350 AC40003C */ sw $zero, 0x3c($v0) +/* 01FF54 8001F354 02802025 */ move $a0, $s4 +/* 01FF58 8001F358 0C007BE9 */ jal func_8001EFA4 +/* 01FF5C 8001F35C 00402825 */ move $a1, $v0 +/* 01FF60 8001F360 8E220064 */ lw $v0, 0x64($s1) +/* 01FF64 8001F364 26100001 */ addiu $s0, $s0, 1 +/* 01FF68 8001F368 A0500030 */ sb $s0, 0x30($v0) +/* 01FF6C 8001F36C 82790000 */ lb $t9, ($s3) +/* 01FF70 8001F370 00000000 */ nop +/* 01FF74 8001F374 A0590044 */ sb $t9, 0x44($v0) +.L8001F378: +/* 01FF78 8001F378 0212082A */ slt $at, $s0, $s2 +/* 01FF7C 8001F37C 1420FFF0 */ bnez $at, .L8001F340 +/* 01FF80 8001F380 02A02025 */ move $a0, $s5 +.L8001F384: +/* 01FF84 8001F384 82680000 */ lb $t0, ($s3) +/* 01FF88 8001F388 00000000 */ nop +/* 01FF8C 8001F38C 25090001 */ addiu $t1, $t0, 1 +/* 01FF90 8001F390 A2690000 */ sb $t1, ($s3) +.L8001F394: +/* 01FF94 8001F394 8FBF002C */ lw $ra, 0x2c($sp) +/* 01FF98 8001F398 8FB00014 */ lw $s0, 0x14($sp) +/* 01FF9C 8001F39C 8FB10018 */ lw $s1, 0x18($sp) +/* 01FFA0 8001F3A0 8FB2001C */ lw $s2, 0x1c($sp) +/* 01FFA4 8001F3A4 8FB30020 */ lw $s3, 0x20($sp) +/* 01FFA8 8001F3A8 8FB40024 */ lw $s4, 0x24($sp) +/* 01FFAC 8001F3AC 8FB50028 */ lw $s5, 0x28($sp) +/* 01FFB0 8001F3B0 03E00008 */ jr $ra +/* 01FFB4 8001F3B4 27BD0048 */ addiu $sp, $sp, 0x48 + diff --git a/asm/non_matchings/unknown_005740/func_8001F3B8.s b/asm/non_matchings/unknown_005740/func_8001F3B8.s new file mode 100644 index 00000000..032b1832 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001F3B8.s @@ -0,0 +1,6 @@ +glabel func_8001F3B8 +/* 01FFB8 8001F3B8 3C028012 */ lui $v0, %hi(D_8011ADD4) # $v0, 0x8012 +/* 01FFBC 8001F3BC 8042ADD4 */ lb $v0, %lo(D_8011ADD4)($v0) +/* 01FFC0 8001F3C0 03E00008 */ jr $ra +/* 01FFC4 8001F3C4 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001F3C8.s b/asm/non_matchings/unknown_005740/func_8001F3C8.s new file mode 100644 index 00000000..d374f972 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001F3C8.s @@ -0,0 +1,12 @@ +glabel func_8001F3C8 +/* 01FFC8 8001F3C8 3C028012 */ lui $v0, %hi(D_8011ADD4) # $v0, 0x8012 +/* 01FFCC 8001F3CC 2442ADD4 */ addiu $v0, %lo(D_8011ADD4) # addiu $v0, $v0, -0x522c +/* 01FFD0 8001F3D0 804E0000 */ lb $t6, ($v0) +/* 01FFD4 8001F3D4 3C018012 */ lui $at, %hi(D_8011AE78) # $at, 0x8012 +/* 01FFD8 8001F3D8 108E0002 */ beq $a0, $t6, .L8001F3E4 +/* 01FFDC 8001F3DC 00000000 */ nop +/* 01FFE0 8001F3E0 A420AE78 */ sh $zero, %lo(D_8011AE78)($at) +.L8001F3E4: +/* 01FFE4 8001F3E4 03E00008 */ jr $ra +/* 01FFE8 8001F3E8 A0440000 */ sb $a0, ($v0) + diff --git a/asm/non_matchings/unknown_005740/func_8001F3EC.s b/asm/non_matchings/unknown_005740/func_8001F3EC.s new file mode 100644 index 00000000..50f91aa7 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001F3EC.s @@ -0,0 +1,32 @@ +glabel func_8001F3EC +/* 01FFEC 8001F3EC 3C028012 */ lui $v0, %hi(D_8011AE78) # $v0, 0x8012 +/* 01FFF0 8001F3F0 8442AE78 */ lh $v0, %lo(D_8011AE78)($v0) +/* 01FFF4 8001F3F4 00802825 */ move $a1, $a0 +/* 01FFF8 8001F3F8 14400003 */ bnez $v0, .L8001F408 +/* 01FFFC 8001F3FC 00000000 */ nop +/* 020000 8001F400 03E00008 */ jr $ra +/* 020004 8001F404 2402FFFF */ li $v0, -1 + +.L8001F408: +/* 020008 8001F408 1840000E */ blez $v0, .L8001F444 +/* 02000C 8001F40C 00001825 */ move $v1, $zero +/* 020010 8001F410 3C068012 */ lui $a2, %hi(D_8011AE74) # $a2, 0x8012 +/* 020014 8001F414 8CC6AE74 */ lw $a2, %lo(D_8011AE74)($a2) +/* 020018 8001F418 00002025 */ move $a0, $zero +/* 02001C 8001F41C 00023880 */ sll $a3, $v0, 2 +.L8001F420: +/* 020020 8001F420 8CCE0000 */ lw $t6, ($a2) +/* 020024 8001F424 24840004 */ addiu $a0, $a0, 4 +/* 020028 8001F428 8DCF007C */ lw $t7, 0x7c($t6) +/* 02002C 8001F42C 0087082A */ slt $at, $a0, $a3 +/* 020030 8001F430 14AF0002 */ bne $a1, $t7, .L8001F43C +/* 020034 8001F434 00000000 */ nop +/* 020038 8001F438 24630001 */ addiu $v1, $v1, 1 +.L8001F43C: +/* 02003C 8001F43C 1420FFF8 */ bnez $at, .L8001F420 +/* 020040 8001F440 24C60004 */ addiu $a2, $a2, 4 +.L8001F444: +/* 020044 8001F444 00601025 */ move $v0, $v1 +/* 020048 8001F448 03E00008 */ jr $ra +/* 02004C 8001F44C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8001F450.s b/asm/non_matchings/unknown_005740/func_8001F450.s new file mode 100644 index 00000000..5f50d5de --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001F450.s @@ -0,0 +1,6 @@ +glabel func_8001F450 +/* 020050 8001F450 240E0001 */ li $t6, 1 +/* 020054 8001F454 3C018012 */ lui $at, 0x8012 +/* 020058 8001F458 03E00008 */ jr $ra +/* 02005C 8001F45C A02EAD53 */ sb $t6, -0x52ad($at) + diff --git a/asm/non_matchings/unknown_005740/func_8001F460.s b/asm/non_matchings/unknown_005740/func_8001F460.s new file mode 100644 index 00000000..5f51503d --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8001F460.s @@ -0,0 +1,1942 @@ +glabel func_8001F460 +/* 020060 8001F460 27BDFE68 */ addiu $sp, $sp, -0x198 +/* 020064 8001F464 3C0E8012 */ lui $t6, %hi(D_8011AE7A) # $t6, 0x8012 +/* 020068 8001F468 85CEAE7A */ lh $t6, %lo(D_8011AE7A)($t6) +/* 02006C 8001F46C AFB60050 */ sw $s6, 0x50($sp) +/* 020070 8001F470 AFB40048 */ sw $s4, 0x48($sp) +/* 020074 8001F474 00C0A025 */ move $s4, $a2 +/* 020078 8001F478 0080B025 */ move $s6, $a0 +/* 02007C 8001F47C AFBF0054 */ sw $ra, 0x54($sp) +/* 020080 8001F480 AFB5004C */ sw $s5, 0x4c($sp) +/* 020084 8001F484 AFB30044 */ sw $s3, 0x44($sp) +/* 020088 8001F488 AFB20040 */ sw $s2, 0x40($sp) +/* 02008C 8001F48C AFB1003C */ sw $s1, 0x3c($sp) +/* 020090 8001F490 AFB00038 */ sw $s0, 0x38($sp) +/* 020094 8001F494 E7B70030 */ swc1 $f23, 0x30($sp) +/* 020098 8001F498 E7B60034 */ swc1 $f22, 0x34($sp) +/* 02009C 8001F49C E7B50028 */ swc1 $f21, 0x28($sp) +/* 0200A0 8001F4A0 E7B4002C */ swc1 $f20, 0x2c($sp) +/* 0200A4 8001F4A4 05C10003 */ bgez $t6, .L8001F4B4 +/* 0200A8 8001F4A8 AFA5019C */ sw $a1, 0x19c($sp) +/* 0200AC 8001F4AC 100006F9 */ b .L80021094 +/* 0200B0 8001F4B0 24020001 */ li $v0, 1 +.L8001F4B4: +/* 0200B4 8001F4B4 8FAF019C */ lw $t7, 0x19c($sp) +/* 0200B8 8001F4B8 24180008 */ li $t8, 8 +/* 0200BC 8001F4BC 29E10009 */ slti $at, $t7, 9 +/* 0200C0 8001F4C0 14200002 */ bnez $at, .L8001F4CC +/* 0200C4 8001F4C4 00009025 */ move $s2, $zero +/* 0200C8 8001F4C8 AFB8019C */ sw $t8, 0x19c($sp) +.L8001F4CC: +/* 0200CC 8001F4CC 8FB9019C */ lw $t9, 0x19c($sp) +/* 0200D0 8001F4D0 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 +/* 0200D4 8001F4D4 44992000 */ mtc1 $t9, $f4 +/* 0200D8 8001F4D8 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) +/* 0200DC 8001F4DC 46802020 */ cvt.s.w $f0, $f4 +/* 0200E0 8001F4E0 3C01800E */ lui $at, %hi(D_800E5674) # $at, 0x800e +/* 0200E4 8001F4E4 00008025 */ move $s0, $zero +/* 0200E8 8001F4E8 E7A00114 */ swc1 $f0, 0x114($sp) +/* 0200EC 8001F4EC 8ED30064 */ lw $s3, 0x64($s6) +/* 0200F0 8001F4F0 15C00007 */ bnez $t6, .L8001F510 +/* 0200F4 8001F4F4 24110004 */ li $s1, 4 +/* 0200F8 8001F4F8 C4295670 */ lwc1 $f9, %lo(D_800E5670)($at) +/* 0200FC 8001F4FC C4285674 */ lwc1 $f8, %lo(D_800E5674)($at) +/* 020100 8001F500 460001A1 */ cvt.d.s $f6, $f0 +/* 020104 8001F504 46283282 */ mul.d $f10, $f6, $f8 +/* 020108 8001F508 46205120 */ cvt.s.d $f4, $f10 +/* 02010C 8001F50C E7A40114 */ swc1 $f4, 0x114($sp) +.L8001F510: +/* 020110 8001F510 866F002A */ lh $t7, 0x2a($s3) +/* 020114 8001F514 00000000 */ nop +/* 020118 8001F518 05E10019 */ bgez $t7, .L8001F580 +/* 02011C 8001F51C 00000000 */ nop +/* 020120 8001F520 92620034 */ lbu $v0, 0x34($s3) +/* 020124 8001F524 00004025 */ move $t0, $zero +/* 020128 8001F528 30580001 */ andi $t8, $v0, 1 +/* 02012C 8001F52C 13000002 */ beqz $t8, .L8001F538 +/* 020130 8001F530 30590002 */ andi $t9, $v0, 2 +/* 020134 8001F534 34088000 */ li $t0, 32768 +.L8001F538: +/* 020138 8001F538 13200003 */ beqz $t9, .L8001F548 +/* 02013C 8001F53C 304F0004 */ andi $t7, $v0, 4 +/* 020140 8001F540 350E4000 */ ori $t6, $t0, 0x4000 +/* 020144 8001F544 01C04025 */ move $t0, $t6 +.L8001F548: +/* 020148 8001F548 11E00002 */ beqz $t7, .L8001F554 +/* 02014C 8001F54C 35181000 */ ori $t8, $t0, 0x1000 +/* 020150 8001F550 03004025 */ move $t0, $t8 +.L8001F554: +/* 020154 8001F554 02002025 */ move $a0, $s0 +/* 020158 8001F558 0C01A955 */ jal func_8006A554 +/* 02015C 8001F55C AFA80174 */ sw $t0, 0x174($sp) +/* 020160 8001F560 8FA80174 */ lw $t0, 0x174($sp) +/* 020164 8001F564 26100001 */ addiu $s0, $s0, 1 +/* 020168 8001F568 1611FFFA */ bne $s0, $s1, .L8001F554 +/* 02016C 8001F56C 02429025 */ or $s2, $s2, $v0 +/* 020170 8001F570 0248C824 */ and $t9, $s2, $t0 +/* 020174 8001F574 13200002 */ beqz $t9, .L8001F580 +/* 020178 8001F578 240E0001 */ li $t6, 1 +/* 02017C 8001F57C A66E002A */ sh $t6, 0x2a($s3) +.L8001F580: +/* 020180 8001F580 8662002A */ lh $v0, 0x2a($s3) +/* 020184 8001F584 00000000 */ nop +/* 020188 8001F588 04400018 */ bltz $v0, .L8001F5EC +/* 02018C 8001F58C 00000000 */ nop +/* 020190 8001F590 826F0045 */ lb $t7, 0x45($s3) +/* 020194 8001F594 8FB8019C */ lw $t8, 0x19c($sp) +/* 020198 8001F598 15E00014 */ bnez $t7, .L8001F5EC +/* 02019C 8001F59C 0058C823 */ subu $t9, $v0, $t8 +/* 0201A0 8001F5A0 A679002A */ sh $t9, 0x2a($s3) +/* 0201A4 8001F5A4 8662002A */ lh $v0, 0x2a($s3) +/* 0201A8 8001F5A8 240E0001 */ li $t6, 1 +/* 0201AC 8001F5AC 1C40000F */ bgtz $v0, .L8001F5EC +/* 0201B0 8001F5B0 02C02025 */ move $a0, $s6 +/* 0201B4 8001F5B4 8E6F001C */ lw $t7, 0x1c($s3) +/* 0201B8 8001F5B8 A26E0045 */ sb $t6, 0x45($s3) +/* 0201BC 8001F5BC 8DF1003C */ lw $s1, 0x3c($t7) +/* 0201C0 8001F5C0 02602825 */ move $a1, $s3 +/* 0201C4 8001F5C4 0C008441 */ jal func_80021104 +/* 0201C8 8001F5C8 02203025 */ move $a2, $s1 +/* 0201CC 8001F5CC A660002A */ sh $zero, 0x2a($s3) +/* 0201D0 8001F5D0 02C02025 */ move $a0, $s6 +/* 0201D4 8001F5D4 02202825 */ move $a1, $s1 +/* 0201D8 8001F5D8 02603025 */ move $a2, $s3 +/* 0201DC 8001F5DC 0C008497 */ jal func_8002125C +/* 0201E0 8001F5E0 2407FFFF */ li $a3, -1 +/* 0201E4 8001F5E4 8662002A */ lh $v0, 0x2a($s3) +/* 0201E8 8001F5E8 00000000 */ nop +.L8001F5EC: +/* 0201EC 8001F5EC 1040000D */ beqz $v0, .L8001F624 +/* 0201F0 8001F5F0 00000000 */ nop +/* 0201F4 8001F5F4 8278003A */ lb $t8, 0x3a($s3) +/* 0201F8 8001F5F8 00000000 */ nop +/* 0201FC 8001F5FC 13000007 */ beqz $t8, .L8001F61C +/* 020200 8001F600 00000000 */ nop +/* 020204 8001F604 86D90006 */ lh $t9, 6($s6) +/* 020208 8001F608 24020001 */ li $v0, 1 +/* 02020C 8001F60C 372E4000 */ ori $t6, $t9, 0x4000 +/* 020210 8001F610 A6CE0006 */ sh $t6, 6($s6) +/* 020214 8001F614 1000069F */ b .L80021094 +/* 020218 8001F618 A2600042 */ sb $zero, 0x42($s3) +.L8001F61C: +/* 02021C 8001F61C 1000069D */ b .L80021094 +/* 020220 8001F620 00001025 */ move $v0, $zero +.L8001F624: +/* 020224 8001F624 86CF0006 */ lh $t7, 6($s6) +/* 020228 8001F628 2410BFFF */ li $s0, -16385 +/* 02022C 8001F62C 31F8BFFF */ andi $t8, $t7, 0xbfff +/* 020230 8001F630 A6D80006 */ sh $t8, 6($s6) +/* 020234 8001F634 82630039 */ lb $v1, 0x39($s3) +/* 020238 8001F638 2401FFFE */ li $at, -2 +/* 02023C 8001F63C 18600010 */ blez $v1, .L8001F680 +/* 020240 8001F640 00000000 */ nop +/* 020244 8001F644 0C000646 */ jal func_80001918 +/* 020248 8001F648 00000000 */ nop +/* 02024C 8001F64C 82630039 */ lb $v1, 0x39($s3) +/* 020250 8001F650 00000000 */ nop +/* 020254 8001F654 10620006 */ beq $v1, $v0, .L8001F670 +/* 020258 8001F658 2419FFFE */ li $t9, -2 +/* 02025C 8001F65C 0C0002CD */ jal func_80000B34 +/* 020260 8001F660 306400FF */ andi $a0, $v1, 0xff +/* 020264 8001F664 0C0002C6 */ jal func_80000B18 +/* 020268 8001F668 00000000 */ nop +/* 02026C 8001F66C 2419FFFE */ li $t9, -2 +.L8001F670: +/* 020270 8001F670 0C00032F */ jal func_80000CBC +/* 020274 8001F674 A2790039 */ sb $t9, 0x39($s3) +/* 020278 8001F678 10000008 */ b .L8001F69C +/* 02027C 8001F67C 82630038 */ lb $v1, 0x38($s3) +.L8001F680: +/* 020280 8001F680 14610005 */ bne $v1, $at, .L8001F698 +/* 020284 8001F684 00000000 */ nop +/* 020288 8001F688 0C0002CA */ jal func_80000B28 +/* 02028C 8001F68C 00000000 */ nop +/* 020290 8001F690 240EFFFF */ li $t6, -1 +/* 020294 8001F694 A26E0039 */ sb $t6, 0x39($s3) +.L8001F698: +/* 020298 8001F698 82630038 */ lb $v1, 0x38($s3) +.L8001F69C: +/* 02029C 8001F69C 00000000 */ nop +/* 0202A0 8001F6A0 1060001D */ beqz $v1, .L8001F718 +/* 0202A4 8001F6A4 00000000 */ nop +/* 0202A8 8001F6A8 866F0024 */ lh $t7, 0x24($s3) +/* 0202AC 8001F6AC 306200FF */ andi $v0, $v1, 0xff +/* 0202B0 8001F6B0 15E00019 */ bnez $t7, .L8001F718 +/* 0202B4 8001F6B4 240100FF */ li $at, 255 +/* 0202B8 8001F6B8 14410009 */ bne $v0, $at, .L8001F6E0 +/* 0202BC 8001F6BC 00000000 */ nop +/* 0202C0 8001F6C0 8E640018 */ lw $a0, 0x18($s3) +/* 0202C4 8001F6C4 00000000 */ nop +/* 0202C8 8001F6C8 10800012 */ beqz $a0, .L8001F714 +/* 0202CC 8001F6CC 00000000 */ nop +/* 0202D0 8001F6D0 0C001223 */ jal func_8000488C +/* 0202D4 8001F6D4 00000000 */ nop +/* 0202D8 8001F6D8 1000000F */ b .L8001F718 +/* 0202DC 8001F6DC A2600038 */ sb $zero, 0x38($s3) +.L8001F6E0: +/* 0202E0 8001F6E0 8E640018 */ lw $a0, 0x18($s3) +/* 0202E4 8001F6E4 00000000 */ nop +/* 0202E8 8001F6E8 10800007 */ beqz $a0, .L8001F708 +/* 0202EC 8001F6EC 00000000 */ nop +/* 0202F0 8001F6F0 0C001223 */ jal func_8000488C +/* 0202F4 8001F6F4 00000000 */ nop +/* 0202F8 8001F6F8 82620038 */ lb $v0, 0x38($s3) +/* 0202FC 8001F6FC 00000000 */ nop +/* 020300 8001F700 305800FF */ andi $t8, $v0, 0xff +/* 020304 8001F704 03001025 */ move $v0, $t8 +.L8001F708: +/* 020308 8001F708 3044FFFF */ andi $a0, $v0, 0xffff +/* 02030C 8001F70C 0C000741 */ jal func_80001D04 +/* 020310 8001F710 26650018 */ addiu $a1, $s3, 0x18 +.L8001F714: +/* 020314 8001F714 A2600038 */ sb $zero, 0x38($s3) +.L8001F718: +/* 020318 8001F718 82620043 */ lb $v0, 0x43($s3) +/* 02031C 8001F71C 00000000 */ nop +/* 020320 8001F720 10400004 */ beqz $v0, .L8001F734 +/* 020324 8001F724 00000000 */ nop +/* 020328 8001F728 0C000326 */ jal func_80000C98 +/* 02032C 8001F72C 00022200 */ sll $a0, $v0, 8 +/* 020330 8001F730 A2600043 */ sb $zero, 0x43($s3) +.L8001F734: +/* 020334 8001F734 82620041 */ lb $v0, 0x41($s3) +/* 020338 8001F738 92680042 */ lbu $t0, 0x42($s3) +/* 02033C 8001F73C 30590001 */ andi $t9, $v0, 1 +/* 020340 8001F740 13200010 */ beqz $t9, .L8001F784 +/* 020344 8001F744 304E0002 */ andi $t6, $v0, 2 +/* 020348 8001F748 304E0002 */ andi $t6, $v0, 2 +/* 02034C 8001F74C 8FA2019C */ lw $v0, 0x19c($sp) +/* 020350 8001F750 11C00002 */ beqz $t6, .L8001F75C +/* 020354 8001F754 000278C0 */ sll $t7, $v0, 3 +/* 020358 8001F758 00004025 */ move $t0, $zero +.L8001F75C: +/* 02035C 8001F75C 01E8082A */ slt $at, $t7, $t0 +/* 020360 8001F760 10200003 */ beqz $at, .L8001F770 +/* 020364 8001F764 00000000 */ nop +/* 020368 8001F768 10000013 */ b .L8001F7B8 +/* 02036C 8001F76C 010F4023 */ subu $t0, $t0, $t7 +.L8001F770: +/* 020370 8001F770 86D80006 */ lh $t8, 6($s6) +/* 020374 8001F774 00004025 */ move $t0, $zero +/* 020378 8001F778 37194000 */ ori $t9, $t8, 0x4000 +/* 02037C 8001F77C 1000000E */ b .L8001F7B8 +/* 020380 8001F780 A6D90006 */ sh $t9, 6($s6) +.L8001F784: +/* 020384 8001F784 8FAF019C */ lw $t7, 0x19c($sp) +/* 020388 8001F788 11C00002 */ beqz $t6, .L8001F794 +/* 02038C 8001F78C 000FC0C0 */ sll $t8, $t7, 3 +/* 020390 8001F790 240800FF */ li $t0, 255 +.L8001F794: +/* 020394 8001F794 01184021 */ addu $t0, $t0, $t8 +/* 020398 8001F798 29010100 */ slti $at, $t0, 0x100 +/* 02039C 8001F79C 14200002 */ bnez $at, .L8001F7A8 +/* 0203A0 8001F7A0 00000000 */ nop +/* 0203A4 8001F7A4 240800FF */ li $t0, 255 +.L8001F7A8: +/* 0203A8 8001F7A8 86D90006 */ lh $t9, 6($s6) +/* 0203AC 8001F7AC 00000000 */ nop +/* 0203B0 8001F7B0 03307024 */ and $t6, $t9, $s0 +/* 0203B4 8001F7B4 A6CE0006 */ sh $t6, 6($s6) +.L8001F7B8: +/* 0203B8 8001F7B8 9262003B */ lbu $v0, 0x3b($s3) +/* 0203BC 8001F7BC 2401007F */ li $at, 127 +/* 0203C0 8001F7C0 3052007F */ andi $s2, $v0, 0x7f +/* 0203C4 8001F7C4 12410070 */ beq $s2, $at, .L8001F988 +/* 0203C8 8001F7C8 A2680042 */ sb $t0, 0x42($s3) +/* 0203CC 8001F7CC 2A410008 */ slti $at, $s2, 8 +/* 0203D0 8001F7D0 14200026 */ bnez $at, .L8001F86C +/* 0203D4 8001F7D4 2A410006 */ slti $at, $s2, 6 +/* 0203D8 8001F7D8 0C0078A7 */ jal func_8001E29C +/* 0203DC 8001F7DC 2404000D */ li $a0, 13 +/* 0203E0 8001F7E0 00127880 */ sll $t7, $s2, 2 +/* 0203E4 8001F7E4 01F27821 */ addu $t7, $t7, $s2 +/* 0203E8 8001F7E8 004F1821 */ addu $v1, $v0, $t7 +/* 0203EC 8001F7EC 2471FFD8 */ addiu $s1, $v1, -0x28 +/* 0203F0 8001F7F0 82280000 */ lb $t0, ($s1) +/* 0203F4 8001F7F4 82300001 */ lb $s0, 1($s1) +/* 0203F8 8001F7F8 311800FF */ andi $t8, $t0, 0xff +/* 0203FC 8001F7FC 27080384 */ addiu $t0, $t8, 0x384 +/* 020400 8001F800 321900FF */ andi $t9, $s0, 0xff +/* 020404 8001F804 27300384 */ addiu $s0, $t9, 0x384 +/* 020408 8001F808 AFA80174 */ sw $t0, 0x174($sp) +/* 02040C 8001F80C 0C00322D */ jal func_8000C8B4 +/* 020410 8001F810 24040006 */ li $a0, 6 +/* 020414 8001F814 8FA80174 */ lw $t0, 0x174($sp) +/* 020418 8001F818 82250002 */ lb $a1, 2($s1) +/* 02041C 8001F81C 82260003 */ lb $a2, 3($s1) +/* 020420 8001F820 82270004 */ lb $a3, 4($s1) +/* 020424 8001F824 AFB00014 */ sw $s0, 0x14($sp) +/* 020428 8001F828 AFA80010 */ sw $t0, 0x10($sp) +/* 02042C 8001F82C 9279003C */ lbu $t9, 0x3c($s3) +/* 020430 8001F830 30AE00FF */ andi $t6, $a1, 0xff +/* 020434 8001F834 00590019 */ multu $v0, $t9 +/* 020438 8001F838 01C02825 */ move $a1, $t6 +/* 02043C 8001F83C 30CF00FF */ andi $t7, $a2, 0xff +/* 020440 8001F840 30F800FF */ andi $t8, $a3, 0xff +/* 020444 8001F844 03003825 */ move $a3, $t8 +/* 020448 8001F848 01E03025 */ move $a2, $t7 +/* 02044C 8001F84C 00002025 */ move $a0, $zero +/* 020450 8001F850 00007012 */ mflo $t6 +/* 020454 8001F854 AFAE0018 */ sw $t6, 0x18($sp) +/* 020458 8001F858 0C00C378 */ jal func_80030DE0 +/* 02045C 8001F85C 00000000 */ nop +/* 020460 8001F860 10000048 */ b .L8001F984 +/* 020464 8001F864 241800FF */ li $t8, 255 +/* 020468 8001F868 2A410006 */ slti $at, $s2, 6 +.L8001F86C: +/* 02046C 8001F86C 1420001A */ bnez $at, .L8001F8D8 +/* 020470 8001F870 2404000E */ li $a0, 14 +/* 020474 8001F874 240F0040 */ li $t7, 64 +/* 020478 8001F878 24010007 */ li $at, 7 +/* 02047C 8001F87C 16410008 */ bne $s2, $at, .L8001F8A0 +/* 020480 8001F880 A3AF00A4 */ sb $t7, 0xa4($sp) +/* 020484 8001F884 241800C8 */ li $t8, 200 +/* 020488 8001F888 241900C8 */ li $t9, 200 +/* 02048C 8001F88C 240E00FF */ li $t6, 255 +/* 020490 8001F890 A3AE00A7 */ sb $t6, 0xa7($sp) +/* 020494 8001F894 A3B900A6 */ sb $t9, 0xa6($sp) +/* 020498 8001F898 10000007 */ b .L8001F8B8 +/* 02049C 8001F89C A3B800A5 */ sb $t8, 0xa5($sp) +.L8001F8A0: +/* 0204A0 8001F8A0 240F00FF */ li $t7, 255 +/* 0204A4 8001F8A4 241800FF */ li $t8, 255 +/* 0204A8 8001F8A8 241900FF */ li $t9, 255 +/* 0204AC 8001F8AC A3B900A7 */ sb $t9, 0xa7($sp) +/* 0204B0 8001F8B0 A3B800A6 */ sb $t8, 0xa6($sp) +/* 0204B4 8001F8B4 A3AF00A5 */ sb $t7, 0xa5($sp) +.L8001F8B8: +/* 0204B8 8001F8B8 240E0007 */ li $t6, 7 +/* 0204BC 8001F8BC 240F0003 */ li $t7, 3 +/* 0204C0 8001F8C0 A7AE00A8 */ sh $t6, 0xa8($sp) +/* 0204C4 8001F8C4 A7AF00AA */ sh $t7, 0xaa($sp) +/* 0204C8 8001F8C8 0C030076 */ jal func_800C01D8 +/* 0204CC 8001F8CC 27A400A4 */ addiu $a0, $sp, 0xa4 +/* 0204D0 8001F8D0 1000002C */ b .L8001F984 +/* 0204D4 8001F8D4 241800FF */ li $t8, 255 +.L8001F8D8: +/* 0204D8 8001F8D8 0C0078A7 */ jal func_8001E29C +/* 0204DC 8001F8DC A3A200A4 */ sb $v0, 0xa4($sp) +/* 0204E0 8001F8E0 82780040 */ lb $t8, 0x40($s3) +/* 0204E4 8001F8E4 00000000 */ nop +/* 0204E8 8001F8E8 0018C880 */ sll $t9, $t8, 2 +/* 0204EC 8001F8EC 0338C823 */ subu $t9, $t9, $t8 +/* 0204F0 8001F8F0 00598821 */ addu $s1, $v0, $t9 +/* 0204F4 8001F8F4 822E0000 */ lb $t6, ($s1) +/* 0204F8 8001F8F8 00000000 */ nop +/* 0204FC 8001F8FC A3AE00A5 */ sb $t6, 0xa5($sp) +/* 020500 8001F900 822F0001 */ lb $t7, 1($s1) +/* 020504 8001F904 00000000 */ nop +/* 020508 8001F908 A3AF00A6 */ sb $t7, 0xa6($sp) +/* 02050C 8001F90C 82380002 */ lb $t8, 2($s1) +/* 020510 8001F910 340FFFFF */ li $t7, 65535 +/* 020514 8001F914 A3B800A7 */ sb $t8, 0xa7($sp) +/* 020518 8001F918 9279003B */ lbu $t9, 0x3b($s3) +/* 02051C 8001F91C 00000000 */ nop +/* 020520 8001F920 332E0080 */ andi $t6, $t9, 0x80 +/* 020524 8001F924 11C00003 */ beqz $t6, .L8001F934 +/* 020528 8001F928 00000000 */ nop +/* 02052C 8001F92C 10000002 */ b .L8001F938 +/* 020530 8001F930 A7A000AA */ sh $zero, 0xaa($sp) +.L8001F934: +/* 020534 8001F934 A7AF00AA */ sh $t7, 0xaa($sp) +.L8001F938: +/* 020538 8001F938 0C00322D */ jal func_8000C8B4 +/* 02053C 8001F93C 24040006 */ li $a0, 6 +/* 020540 8001F940 9278003C */ lbu $t8, 0x3c($s3) +/* 020544 8001F944 00000000 */ nop +/* 020548 8001F948 00580019 */ multu $v0, $t8 +/* 02054C 8001F94C 0000C812 */ mflo $t9 +/* 020550 8001F950 A7B900A8 */ sh $t9, 0xa8($sp) +/* 020554 8001F954 0C030063 */ jal func_800C018C +/* 020558 8001F958 00000000 */ nop +/* 02055C 8001F95C 10400006 */ beqz $v0, .L8001F978 +/* 020560 8001F960 00000000 */ nop +/* 020564 8001F964 93AE00A4 */ lbu $t6, 0xa4($sp) +/* 020568 8001F968 00000000 */ nop +/* 02056C 8001F96C 31CF0080 */ andi $t7, $t6, 0x80 +/* 020570 8001F970 11E00004 */ beqz $t7, .L8001F984 +/* 020574 8001F974 241800FF */ li $t8, 255 +.L8001F978: +/* 020578 8001F978 0C030076 */ jal func_800C01D8 +/* 02057C 8001F97C 27A400A4 */ addiu $a0, $sp, 0xa4 +/* 020580 8001F980 241800FF */ li $t8, 255 +.L8001F984: +/* 020584 8001F984 A278003B */ sb $t8, 0x3b($s3) +.L8001F988: +/* 020588 8001F988 9279002E */ lbu $t9, 0x2e($s3) +/* 02058C 8001F98C 24010001 */ li $at, 1 +/* 020590 8001F990 1721003E */ bne $t9, $at, .L8001FA8C +/* 020594 8001F994 00000000 */ nop +/* 020598 8001F998 C7A60114 */ lwc1 $f6, 0x114($sp) +/* 02059C 8001F99C 3C014020 */ li $at, 0x40200000 # 2.500000 +/* 0205A0 8001F9A0 44815800 */ mtc1 $at, $f11 +/* 0205A4 8001F9A4 44805000 */ mtc1 $zero, $f10 +/* 0205A8 8001F9A8 46003221 */ cvt.d.s $f8, $f6 +/* 0205AC 8001F9AC 462A4102 */ mul.d $f4, $f8, $f10 +/* 0205B0 8001F9B0 826F0031 */ lb $t7, 0x31($s3) +/* 0205B4 8001F9B4 86CE0000 */ lh $t6, ($s6) +/* 0205B8 8001F9B8 448F3000 */ mtc1 $t7, $f6 +/* 0205BC 8001F9BC 86CF0002 */ lh $t7, 2($s6) +/* 0205C0 8001F9C0 46803220 */ cvt.s.w $f8, $f6 +/* 0205C4 8001F9C4 46202020 */ cvt.s.d $f0, $f4 +/* 0205C8 8001F9C8 46004282 */ mul.s $f10, $f8, $f0 +/* 0205CC 8001F9CC 4458F800 */ cfc1 $t8, $31 +/* 0205D0 8001F9D0 00000000 */ nop +/* 0205D4 8001F9D4 37010003 */ ori $at, $t8, 3 +/* 0205D8 8001F9D8 38210002 */ xori $at, $at, 2 +/* 0205DC 8001F9DC 44C1F800 */ ctc1 $at, $31 +/* 0205E0 8001F9E0 00000000 */ nop +/* 0205E4 8001F9E4 46005124 */ cvt.w.s $f4, $f10 +/* 0205E8 8001F9E8 44D8F800 */ ctc1 $t8, $31 +/* 0205EC 8001F9EC 44182000 */ mfc1 $t8, $f4 +/* 0205F0 8001F9F0 00000000 */ nop +/* 0205F4 8001F9F4 01D8C821 */ addu $t9, $t6, $t8 +/* 0205F8 8001F9F8 A6D90000 */ sh $t9, ($s6) +/* 0205FC 8001F9FC 826E0032 */ lb $t6, 0x32($s3) +/* 020600 8001FA00 00000000 */ nop +/* 020604 8001FA04 448E3000 */ mtc1 $t6, $f6 +/* 020608 8001FA08 86CE0004 */ lh $t6, 4($s6) +/* 02060C 8001FA0C 46803220 */ cvt.s.w $f8, $f6 +/* 020610 8001FA10 46004282 */ mul.s $f10, $f8, $f0 +/* 020614 8001FA14 4458F800 */ cfc1 $t8, $31 +/* 020618 8001FA18 00000000 */ nop +/* 02061C 8001FA1C 37010003 */ ori $at, $t8, 3 +/* 020620 8001FA20 38210002 */ xori $at, $at, 2 +/* 020624 8001FA24 44C1F800 */ ctc1 $at, $31 +/* 020628 8001FA28 00000000 */ nop +/* 02062C 8001FA2C 46005124 */ cvt.w.s $f4, $f10 +/* 020630 8001FA30 44D8F800 */ ctc1 $t8, $31 +/* 020634 8001FA34 44182000 */ mfc1 $t8, $f4 +/* 020638 8001FA38 00000000 */ nop +/* 02063C 8001FA3C 01F8C821 */ addu $t9, $t7, $t8 +/* 020640 8001FA40 A6D90002 */ sh $t9, 2($s6) +/* 020644 8001FA44 826F0033 */ lb $t7, 0x33($s3) +/* 020648 8001FA48 00000000 */ nop +/* 02064C 8001FA4C 448F3000 */ mtc1 $t7, $f6 +/* 020650 8001FA50 00000000 */ nop +/* 020654 8001FA54 46803220 */ cvt.s.w $f8, $f6 +/* 020658 8001FA58 46004282 */ mul.s $f10, $f8, $f0 +/* 02065C 8001FA5C 4458F800 */ cfc1 $t8, $31 +/* 020660 8001FA60 00000000 */ nop +/* 020664 8001FA64 37010003 */ ori $at, $t8, 3 +/* 020668 8001FA68 38210002 */ xori $at, $at, 2 +/* 02066C 8001FA6C 44C1F800 */ ctc1 $at, $31 +/* 020670 8001FA70 00000000 */ nop +/* 020674 8001FA74 46005124 */ cvt.w.s $f4, $f10 +/* 020678 8001FA78 44D8F800 */ ctc1 $t8, $31 +/* 02067C 8001FA7C 44182000 */ mfc1 $t8, $f4 +/* 020680 8001FA80 00000000 */ nop +/* 020684 8001FA84 01D8C821 */ addu $t9, $t6, $t8 +/* 020688 8001FA88 A6D90004 */ sh $t9, 4($s6) +.L8001FA8C: +/* 02068C 8001FA8C 128000C5 */ beqz $s4, .L8001FDA4 +/* 020690 8001FA90 00000000 */ nop +/* 020694 8001FA94 8E8F0040 */ lw $t7, 0x40($s4) +/* 020698 8001FA98 00000000 */ nop +/* 02069C 8001FA9C 81EE0053 */ lb $t6, 0x53($t7) +/* 0206A0 8001FAA0 00000000 */ nop +/* 0206A4 8001FAA4 15C000BF */ bnez $t6, .L8001FDA4 +/* 0206A8 8001FAA8 00000000 */ nop +/* 0206AC 8001FAAC 4459F800 */ cfc1 $t9, $31 +/* 0206B0 8001FAB0 82D8003B */ lb $t8, 0x3b($s6) +/* 0206B4 8001FAB4 37210003 */ ori $at, $t9, 3 +/* 0206B8 8001FAB8 38210002 */ xori $at, $at, 2 +/* 0206BC 8001FABC A298003B */ sb $t8, 0x3b($s4) +/* 0206C0 8001FAC0 C6620010 */ lwc1 $f2, 0x10($s3) +/* 0206C4 8001FAC4 44C1F800 */ ctc1 $at, $31 +/* 0206C8 8001FAC8 86820018 */ lh $v0, 0x18($s4) +/* 0206CC 8001FACC 460011A4 */ cvt.w.s $f6, $f2 +/* 0206D0 8001FAD0 440F3000 */ mfc1 $t7, $f6 +/* 0206D4 8001FAD4 44D9F800 */ ctc1 $t9, $31 +/* 0206D8 8001FAD8 000F7400 */ sll $t6, $t7, 0x10 +/* 0206DC 8001FADC 000EC403 */ sra $t8, $t6, 0x10 +/* 0206E0 8001FAE0 10580007 */ beq $v0, $t8, .L8001FB00 +/* 0206E4 8001FAE4 00000000 */ nop +/* 0206E8 8001FAE8 44824000 */ mtc1 $v0, $f8 +/* 0206EC 8001FAEC 00000000 */ nop +/* 0206F0 8001FAF0 468042A0 */ cvt.s.w $f10, $f8 +/* 0206F4 8001FAF4 E66A0010 */ swc1 $f10, 0x10($s3) +/* 0206F8 8001FAF8 C6620010 */ lwc1 $f2, 0x10($s3) +/* 0206FC 8001FAFC 00000000 */ nop +.L8001FB00: +/* 020700 8001FB00 828F003A */ lb $t7, 0x3a($s4) +/* 020704 8001FB04 8E990068 */ lw $t9, 0x68($s4) +/* 020708 8001FB08 000F7080 */ sll $t6, $t7, 2 +/* 02070C 8001FB0C 032EC021 */ addu $t8, $t9, $t6 +/* 020710 8001FB10 8F030000 */ lw $v1, ($t8) +/* 020714 8001FB14 00000000 */ nop +/* 020718 8001FB18 10600097 */ beqz $v1, .L8001FD78 +/* 02071C 8001FB1C 00000000 */ nop +/* 020720 8001FB20 8282003B */ lb $v0, 0x3b($s4) +/* 020724 8001FB24 8C640000 */ lw $a0, ($v1) +/* 020728 8001FB28 04400093 */ bltz $v0, .L8001FD78 +/* 02072C 8001FB2C 00000000 */ nop +/* 020730 8001FB30 848F0048 */ lh $t7, 0x48($a0) +/* 020734 8001FB34 00000000 */ nop +/* 020738 8001FB38 004F082A */ slt $at, $v0, $t7 +/* 02073C 8001FB3C 1020008E */ beqz $at, .L8001FD78 +/* 020740 8001FB40 00000000 */ nop +/* 020744 8001FB44 8C990044 */ lw $t9, 0x44($a0) +/* 020748 8001FB48 000270C0 */ sll $t6, $v0, 3 +/* 02074C 8001FB4C 032EC021 */ addu $t8, $t9, $t6 +/* 020750 8001FB50 8F150004 */ lw $s5, 4($t8) +/* 020754 8001FB54 9263002C */ lbu $v1, 0x2c($s3) +/* 020758 8001FB58 26B5FFFF */ addiu $s5, $s5, -1 +/* 02075C 8001FB5C 00157900 */ sll $t7, $s5, 4 +/* 020760 8001FB60 1060000A */ beqz $v1, .L8001FB8C +/* 020764 8001FB64 01E0A825 */ move $s5, $t7 +/* 020768 8001FB68 24010001 */ li $at, 1 +/* 02076C 8001FB6C 1061002F */ beq $v1, $at, .L8001FC2C +/* 020770 8001FB70 24010002 */ li $at, 2 +/* 020774 8001FB74 10610018 */ beq $v1, $at, .L8001FBD8 +/* 020778 8001FB78 24010003 */ li $at, 3 +/* 02077C 8001FB7C 10610055 */ beq $v1, $at, .L8001FCD4 +/* 020780 8001FB80 00000000 */ nop +/* 020784 8001FB84 1000007D */ b .L8001FD7C +/* 020788 8001FB88 4459F800 */ cfc1 $t9, $31 +.L8001FB8C: +/* 02078C 8001FB8C C6640014 */ lwc1 $f4, 0x14($s3) +/* 020790 8001FB90 C7A60114 */ lwc1 $f6, 0x114($sp) +/* 020794 8001FB94 00000000 */ nop +/* 020798 8001FB98 46062202 */ mul.s $f8, $f4, $f6 +/* 02079C 8001FB9C 44952000 */ mtc1 $s5, $f4 +/* 0207A0 8001FBA0 46081280 */ add.s $f10, $f2, $f8 +/* 0207A4 8001FBA4 46802020 */ cvt.s.w $f0, $f4 +/* 0207A8 8001FBA8 E66A0010 */ swc1 $f10, 0x10($s3) +/* 0207AC 8001FBAC C6620010 */ lwc1 $f2, 0x10($s3) +/* 0207B0 8001FBB0 00000000 */ nop +/* 0207B4 8001FBB4 4602003E */ c.le.s $f0, $f2 +/* 0207B8 8001FBB8 00000000 */ nop +/* 0207BC 8001FBBC 4500006E */ bc1f .L8001FD78 +/* 0207C0 8001FBC0 00000000 */ nop +/* 0207C4 8001FBC4 46001181 */ sub.s $f6, $f2, $f0 +/* 0207C8 8001FBC8 E6660010 */ swc1 $f6, 0x10($s3) +/* 0207CC 8001FBCC C6620010 */ lwc1 $f2, 0x10($s3) +/* 0207D0 8001FBD0 1000006A */ b .L8001FD7C +/* 0207D4 8001FBD4 4459F800 */ cfc1 $t9, $31 +.L8001FBD8: +/* 0207D8 8001FBD8 C6680014 */ lwc1 $f8, 0x14($s3) +/* 0207DC 8001FBDC C7AA0114 */ lwc1 $f10, 0x114($sp) +/* 0207E0 8001FBE0 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0207E4 8001FBE4 460A4102 */ mul.s $f4, $f8, $f10 +/* 0207E8 8001FBE8 44954000 */ mtc1 $s5, $f8 +/* 0207EC 8001FBEC 46041180 */ add.s $f6, $f2, $f4 +/* 0207F0 8001FBF0 46804020 */ cvt.s.w $f0, $f8 +/* 0207F4 8001FBF4 E6660010 */ swc1 $f6, 0x10($s3) +/* 0207F8 8001FBF8 C6620010 */ lwc1 $f2, 0x10($s3) +/* 0207FC 8001FBFC 00000000 */ nop +/* 020800 8001FC00 4602003E */ c.le.s $f0, $f2 +/* 020804 8001FC04 00000000 */ nop +/* 020808 8001FC08 4500005B */ bc1f .L8001FD78 +/* 02080C 8001FC0C 00000000 */ nop +/* 020810 8001FC10 44815000 */ mtc1 $at, $f10 +/* 020814 8001FC14 00000000 */ nop +/* 020818 8001FC18 460A0101 */ sub.s $f4, $f0, $f10 +/* 02081C 8001FC1C E6640010 */ swc1 $f4, 0x10($s3) +/* 020820 8001FC20 C6620010 */ lwc1 $f2, 0x10($s3) +/* 020824 8001FC24 10000055 */ b .L8001FD7C +/* 020828 8001FC28 4459F800 */ cfc1 $t9, $31 +.L8001FC2C: +/* 02082C 8001FC2C 9279002D */ lbu $t9, 0x2d($s3) +/* 020830 8001FC30 C7A60114 */ lwc1 $f6, 0x114($sp) +/* 020834 8001FC34 17200018 */ bnez $t9, .L8001FC98 +/* 020838 8001FC38 00000000 */ nop +/* 02083C 8001FC3C C6660014 */ lwc1 $f6, 0x14($s3) +/* 020840 8001FC40 C7A80114 */ lwc1 $f8, 0x114($sp) +/* 020844 8001FC44 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 020848 8001FC48 46083282 */ mul.s $f10, $f6, $f8 +/* 02084C 8001FC4C 44953000 */ mtc1 $s5, $f6 +/* 020850 8001FC50 460A1100 */ add.s $f4, $f2, $f10 +/* 020854 8001FC54 46803020 */ cvt.s.w $f0, $f6 +/* 020858 8001FC58 E6640010 */ swc1 $f4, 0x10($s3) +/* 02085C 8001FC5C C6620010 */ lwc1 $f2, 0x10($s3) +/* 020860 8001FC60 00000000 */ nop +/* 020864 8001FC64 4602003E */ c.le.s $f0, $f2 +/* 020868 8001FC68 00000000 */ nop +/* 02086C 8001FC6C 45000008 */ bc1f .L8001FC90 +/* 020870 8001FC70 00000000 */ nop +/* 020874 8001FC74 44814000 */ mtc1 $at, $f8 +/* 020878 8001FC78 240E0001 */ li $t6, 1 +/* 02087C 8001FC7C 46080281 */ sub.s $f10, $f0, $f8 +/* 020880 8001FC80 A26E002D */ sb $t6, 0x2d($s3) +/* 020884 8001FC84 E66A0010 */ swc1 $f10, 0x10($s3) +/* 020888 8001FC88 C6620010 */ lwc1 $f2, 0x10($s3) +/* 02088C 8001FC8C 00000000 */ nop +.L8001FC90: +/* 020890 8001FC90 1000003A */ b .L8001FD7C +/* 020894 8001FC94 4459F800 */ cfc1 $t9, $31 +.L8001FC98: +/* 020898 8001FC98 C6640014 */ lwc1 $f4, 0x14($s3) +/* 02089C 8001FC9C 4480B000 */ mtc1 $zero, $f22 +/* 0208A0 8001FCA0 46062202 */ mul.s $f8, $f4, $f6 +/* 0208A4 8001FCA4 46081281 */ sub.s $f10, $f2, $f8 +/* 0208A8 8001FCA8 E66A0010 */ swc1 $f10, 0x10($s3) +/* 0208AC 8001FCAC C6620010 */ lwc1 $f2, 0x10($s3) +/* 0208B0 8001FCB0 00000000 */ nop +/* 0208B4 8001FCB4 4616103E */ c.le.s $f2, $f22 +/* 0208B8 8001FCB8 00000000 */ nop +/* 0208BC 8001FCBC 4500002E */ bc1f .L8001FD78 +/* 0208C0 8001FCC0 00000000 */ nop +/* 0208C4 8001FCC4 E6760010 */ swc1 $f22, 0x10($s3) +/* 0208C8 8001FCC8 C6620010 */ lwc1 $f2, 0x10($s3) +/* 0208CC 8001FCCC 1000002A */ b .L8001FD78 +/* 0208D0 8001FCD0 A260002D */ sb $zero, 0x2d($s3) +.L8001FCD4: +/* 0208D4 8001FCD4 9278002D */ lbu $t8, 0x2d($s3) +/* 0208D8 8001FCD8 C7A40114 */ lwc1 $f4, 0x114($sp) +/* 0208DC 8001FCDC 17000018 */ bnez $t8, .L8001FD40 +/* 0208E0 8001FCE0 00000000 */ nop +/* 0208E4 8001FCE4 C6640014 */ lwc1 $f4, 0x14($s3) +/* 0208E8 8001FCE8 C7A60114 */ lwc1 $f6, 0x114($sp) +/* 0208EC 8001FCEC 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0208F0 8001FCF0 46062202 */ mul.s $f8, $f4, $f6 +/* 0208F4 8001FCF4 44952000 */ mtc1 $s5, $f4 +/* 0208F8 8001FCF8 46081280 */ add.s $f10, $f2, $f8 +/* 0208FC 8001FCFC 46802020 */ cvt.s.w $f0, $f4 +/* 020900 8001FD00 E66A0010 */ swc1 $f10, 0x10($s3) +/* 020904 8001FD04 C6620010 */ lwc1 $f2, 0x10($s3) +/* 020908 8001FD08 00000000 */ nop +/* 02090C 8001FD0C 4602003E */ c.le.s $f0, $f2 +/* 020910 8001FD10 00000000 */ nop +/* 020914 8001FD14 45000008 */ bc1f .L8001FD38 +/* 020918 8001FD18 00000000 */ nop +/* 02091C 8001FD1C 44813000 */ mtc1 $at, $f6 +/* 020920 8001FD20 240F0001 */ li $t7, 1 +/* 020924 8001FD24 46060201 */ sub.s $f8, $f0, $f6 +/* 020928 8001FD28 A26F002D */ sb $t7, 0x2d($s3) +/* 02092C 8001FD2C E6680010 */ swc1 $f8, 0x10($s3) +/* 020930 8001FD30 C6620010 */ lwc1 $f2, 0x10($s3) +/* 020934 8001FD34 00000000 */ nop +.L8001FD38: +/* 020938 8001FD38 10000010 */ b .L8001FD7C +/* 02093C 8001FD3C 4459F800 */ cfc1 $t9, $31 +.L8001FD40: +/* 020940 8001FD40 C66A0014 */ lwc1 $f10, 0x14($s3) +/* 020944 8001FD44 4480B000 */ mtc1 $zero, $f22 +/* 020948 8001FD48 46045182 */ mul.s $f6, $f10, $f4 +/* 02094C 8001FD4C 46061201 */ sub.s $f8, $f2, $f6 +/* 020950 8001FD50 E6680010 */ swc1 $f8, 0x10($s3) +/* 020954 8001FD54 C6620010 */ lwc1 $f2, 0x10($s3) +/* 020958 8001FD58 00000000 */ nop +/* 02095C 8001FD5C 4616103E */ c.le.s $f2, $f22 +/* 020960 8001FD60 00000000 */ nop +/* 020964 8001FD64 45000004 */ bc1f .L8001FD78 +/* 020968 8001FD68 00000000 */ nop +/* 02096C 8001FD6C E6760010 */ swc1 $f22, 0x10($s3) +/* 020970 8001FD70 C6620010 */ lwc1 $f2, 0x10($s3) +/* 020974 8001FD74 00000000 */ nop +.L8001FD78: +/* 020978 8001FD78 4459F800 */ cfc1 $t9, $31 +.L8001FD7C: +/* 02097C 8001FD7C 00000000 */ nop +/* 020980 8001FD80 37210003 */ ori $at, $t9, 3 +/* 020984 8001FD84 38210002 */ xori $at, $at, 2 +/* 020988 8001FD88 44C1F800 */ ctc1 $at, $31 +/* 02098C 8001FD8C 00000000 */ nop +/* 020990 8001FD90 460012A4 */ cvt.w.s $f10, $f2 +/* 020994 8001FD94 440E5000 */ mfc1 $t6, $f10 +/* 020998 8001FD98 44D9F800 */ ctc1 $t9, $31 +/* 02099C 8001FD9C A68E0018 */ sh $t6, 0x18($s4) +/* 0209A0 8001FDA0 00000000 */ nop +.L8001FDA4: +/* 0209A4 8001FDA4 C6660008 */ lwc1 $f6, 8($s3) +/* 0209A8 8001FDA8 44802800 */ mtc1 $zero, $f5 +/* 0209AC 8001FDAC 44802000 */ mtc1 $zero, $f4 +/* 0209B0 8001FDB0 46003221 */ cvt.d.s $f8, $f6 +/* 0209B4 8001FDB4 4624403E */ c.le.d $f8, $f4 +/* 0209B8 8001FDB8 4480B000 */ mtc1 $zero, $f22 +/* 0209BC 8001FDBC 45000006 */ bc1f .L8001FDD8 +/* 0209C0 8001FDC0 3C038012 */ lui $v1, %hi(D_8011AE78) # $v1, 0x8012 +/* 0209C4 8001FDC4 8FA5019C */ lw $a1, 0x19c($sp) +/* 0209C8 8001FDC8 0C008539 */ jal func_800214E4 +/* 0209CC 8001FDCC 02C02025 */ move $a0, $s6 +/* 0209D0 8001FDD0 100004B1 */ b .L80021098 +/* 0209D4 8001FDD4 8FBF0054 */ lw $ra, 0x54($sp) +.L8001FDD8: +/* 0209D8 8001FDD8 8463AE78 */ lh $v1, %lo(D_8011AE78)($v1) +/* 0209DC 8001FDDC 86650028 */ lh $a1, 0x28($s3) +/* 0209E0 8001FDE0 18600016 */ blez $v1, .L8001FE3C +/* 0209E4 8001FDE4 0000A025 */ move $s4, $zero +/* 0209E8 8001FDE8 3C078012 */ lui $a3, %hi(D_8011AE74) # $a3, 0x8012 +/* 0209EC 8001FDEC 24E7AE74 */ addiu $a3, %lo(D_8011AE74) # addiu $a3, $a3, -0x518c +/* 0209F0 8001FDF0 8CE60000 */ lw $a2, ($a3) +/* 0209F4 8001FDF4 00000000 */ nop +/* 0209F8 8001FDF8 8CD80000 */ lw $t8, ($a2) +/* 0209FC 8001FDFC 00000000 */ nop +/* 020A00 8001FE00 8F0F007C */ lw $t7, 0x7c($t8) +/* 020A04 8001FE04 00000000 */ nop +/* 020A08 8001FE08 10AF000C */ beq $a1, $t7, .L8001FE3C +/* 020A0C 8001FE0C 00000000 */ nop +.L8001FE10: +/* 020A10 8001FE10 26940001 */ addiu $s4, $s4, 1 +/* 020A14 8001FE14 0283082A */ slt $at, $s4, $v1 +/* 020A18 8001FE18 10200008 */ beqz $at, .L8001FE3C +/* 020A1C 8001FE1C 0014C880 */ sll $t9, $s4, 2 +/* 020A20 8001FE20 00D97021 */ addu $t6, $a2, $t9 +/* 020A24 8001FE24 8DD80000 */ lw $t8, ($t6) +/* 020A28 8001FE28 00000000 */ nop +/* 020A2C 8001FE2C 8F0F007C */ lw $t7, 0x7c($t8) +/* 020A30 8001FE30 00000000 */ nop +/* 020A34 8001FE34 14AFFFF6 */ bne $a1, $t7, .L8001FE10 +/* 020A38 8001FE38 00000000 */ nop +.L8001FE3C: +/* 020A3C 8001FE3C 3C078012 */ lui $a3, %hi(D_8011AE74) # $a3, 0x8012 +/* 020A40 8001FE40 0283082A */ slt $at, $s4, $v1 +/* 020A44 8001FE44 14200006 */ bnez $at, .L8001FE60 +/* 020A48 8001FE48 24E7AE74 */ addiu $a3, %lo(D_8011AE74) # addiu $a3, $a3, -0x518c +/* 020A4C 8001FE4C 8FA5019C */ lw $a1, 0x19c($sp) +/* 020A50 8001FE50 0C008539 */ jal func_800214E4 +/* 020A54 8001FE54 02C02025 */ move $a0, $s6 +/* 020A58 8001FE58 1000048F */ b .L80021098 +/* 020A5C 8001FE5C 8FBF0054 */ lw $ra, 0x54($sp) +.L8001FE60: +/* 020A60 8001FE60 26990001 */ addiu $t9, $s4, 1 +/* 020A64 8001FE64 0323082A */ slt $at, $t9, $v1 +/* 020A68 8001FE68 10200015 */ beqz $at, .L8001FEC0 +/* 020A6C 8001FE6C 24150001 */ li $s5, 1 +/* 020A70 8001FE70 8CEE0000 */ lw $t6, ($a3) +/* 020A74 8001FE74 0014C080 */ sll $t8, $s4, 2 +/* 020A78 8001FE78 01D82021 */ addu $a0, $t6, $t8 +/* 020A7C 8001FE7C 8C8F0004 */ lw $t7, 4($a0) +/* 020A80 8001FE80 02951021 */ addu $v0, $s4, $s5 +/* 020A84 8001FE84 8DF9007C */ lw $t9, 0x7c($t7) +/* 020A88 8001FE88 00000000 */ nop +/* 020A8C 8001FE8C 14B9000C */ bne $a1, $t9, .L8001FEC0 +/* 020A90 8001FE90 24420001 */ addiu $v0, $v0, 1 +.L8001FE94: +/* 020A94 8001FE94 0043082A */ slt $at, $v0, $v1 +/* 020A98 8001FE98 10200009 */ beqz $at, .L8001FEC0 +/* 020A9C 8001FE9C 26B50001 */ addiu $s5, $s5, 1 +/* 020AA0 8001FEA0 00157080 */ sll $t6, $s5, 2 +/* 020AA4 8001FEA4 008EC021 */ addu $t8, $a0, $t6 +/* 020AA8 8001FEA8 8F0F0000 */ lw $t7, ($t8) +/* 020AAC 8001FEAC 00000000 */ nop +/* 020AB0 8001FEB0 8DF9007C */ lw $t9, 0x7c($t7) +/* 020AB4 8001FEB4 00000000 */ nop +/* 020AB8 8001FEB8 10B9FFF6 */ beq $a1, $t9, .L8001FE94 +/* 020ABC 8001FEBC 24420001 */ addiu $v0, $v0, 1 +.L8001FEC0: +/* 020AC0 8001FEC0 2AA10002 */ slti $at, $s5, 2 +/* 020AC4 8001FEC4 10200006 */ beqz $at, .L8001FEE0 +/* 020AC8 8001FEC8 00000000 */ nop +/* 020ACC 8001FECC 8FA5019C */ lw $a1, 0x19c($sp) +/* 020AD0 8001FED0 0C008539 */ jal func_800214E4 +/* 020AD4 8001FED4 02C02025 */ move $a0, $s6 +/* 020AD8 8001FED8 1000046F */ b .L80021098 +/* 020ADC 8001FEDC 8FBF0054 */ lw $ra, 0x54($sp) +.L8001FEE0: +/* 020AE0 8001FEE0 8CE60000 */ lw $a2, ($a3) +/* 020AE4 8001FEE4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 020AE8 8001FEE8 8CCE0000 */ lw $t6, ($a2) +/* 020AEC 8001FEEC 44815800 */ mtc1 $at, $f11 +/* 020AF0 8001FEF0 8DD80040 */ lw $t8, 0x40($t6) +/* 020AF4 8001FEF4 44805000 */ mtc1 $zero, $f10 +/* 020AF8 8001FEF8 C706000C */ lwc1 $f6, 0xc($t8) +/* 020AFC 8001FEFC 00147880 */ sll $t7, $s4, 2 +/* 020B00 8001FF00 46003121 */ cvt.d.s $f4, $f6 +/* 020B04 8001FF04 00000000 */ nop +/* 020B08 8001FF08 46245203 */ div.d $f8, $f10, $f4 +/* 020B0C 8001FF0C 00157080 */ sll $t6, $s5, 2 +/* 020B10 8001FF10 00CFC821 */ addu $t9, $a2, $t7 +/* 020B14 8001FF14 032EC021 */ addu $t8, $t9, $t6 +/* 020B18 8001FF18 2AA10003 */ slti $at, $s5, 3 +/* 020B1C 8001FF1C 2403FFFF */ li $v1, -1 +/* 020B20 8001FF20 462041A0 */ cvt.s.d $f6, $f8 +/* 020B24 8001FF24 E7A600B4 */ swc1 $f6, 0xb4($sp) +/* 020B28 8001FF28 8F0FFFFC */ lw $t7, -4($t8) +/* 020B2C 8001FF2C 00000000 */ nop +/* 020B30 8001FF30 8DF1003C */ lw $s1, 0x3c($t7) +/* 020B34 8001FF34 14200009 */ bnez $at, .L8001FF5C +/* 020B38 8001FF38 2401FFFF */ li $at, -1 +/* 020B3C 8001FF3C 8222001D */ lb $v0, 0x1d($s1) +/* 020B40 8001FF40 26B9FFFF */ addiu $t9, $s5, -1 +/* 020B44 8001FF44 04400004 */ bltz $v0, .L8001FF58 +/* 020B48 8001FF48 0059082A */ slt $at, $v0, $t9 +/* 020B4C 8001FF4C 10200003 */ beqz $at, .L8001FF5C +/* 020B50 8001FF50 2401FFFF */ li $at, -1 +/* 020B54 8001FF54 00401825 */ move $v1, $v0 +.L8001FF58: +/* 020B58 8001FF58 2401FFFF */ li $at, -1 +.L8001FF5C: +/* 020B5C 8001FF5C 1461000B */ bne $v1, $at, .L8001FF8C +/* 020B60 8001FF60 00000000 */ nop +/* 020B64 8001FF64 866E0026 */ lh $t6, 0x26($s3) +/* 020B68 8001FF68 26B8FFFF */ addiu $t8, $s5, -1 +/* 020B6C 8001FF6C 01D8082A */ slt $at, $t6, $t8 +/* 020B70 8001FF70 14200006 */ bnez $at, .L8001FF8C +/* 020B74 8001FF74 00000000 */ nop +/* 020B78 8001FF78 8FA5019C */ lw $a1, 0x19c($sp) +/* 020B7C 8001FF7C 0C008539 */ jal func_800214E4 +/* 020B80 8001FF80 02C02025 */ move $a0, $s6 +/* 020B84 8001FF84 10000444 */ b .L80021098 +/* 020B88 8001FF88 8FBF0054 */ lw $ra, 0x54($sp) +.L8001FF8C: +/* 020B8C 8001FF8C 86620036 */ lh $v0, 0x36($s3) +/* 020B90 8001FF90 AFA30168 */ sw $v1, 0x168($sp) +/* 020B94 8001FF94 04400009 */ bltz $v0, .L8001FFBC +/* 020B98 8001FF98 27A90154 */ addiu $t1, $sp, 0x154 +/* 020B9C 8001FF9C 3C0F8012 */ lui $t7, %hi(D_8011AD53) # $t7, 0x8012 +/* 020BA0 8001FFA0 81EFAD53 */ lb $t7, %lo(D_8011AD53)($t7) +/* 020BA4 8001FFA4 8FB9019C */ lw $t9, 0x19c($sp) +/* 020BA8 8001FFA8 15E00002 */ bnez $t7, .L8001FFB4 +/* 020BAC 8001FFAC 00597023 */ subu $t6, $v0, $t9 +/* 020BB0 8001FFB0 A66E0036 */ sh $t6, 0x36($s3) +.L8001FFB4: +/* 020BB4 8001FFB4 10000437 */ b .L80021094 +/* 020BB8 8001FFB8 00001025 */ move $v0, $zero +.L8001FFBC: +/* 020BBC 8001FFBC 86700026 */ lh $s0, 0x26($s3) +/* 020BC0 8001FFC0 27AA0140 */ addiu $t2, $sp, 0x140 +/* 020BC4 8001FFC4 27AB012C */ addiu $t3, $sp, 0x12c +/* 020BC8 8001FFC8 27AD00E0 */ addiu $t5, $sp, 0xe0 +/* 020BCC 8001FFCC 27AC00CC */ addiu $t4, $sp, 0xcc +/* 020BD0 8001FFD0 27BF00B8 */ addiu $ra, $sp, 0xb8 +/* 020BD4 8001FFD4 27A700F4 */ addiu $a3, $sp, 0xf4 +/* 020BD8 8001FFD8 27B20108 */ addiu $s2, $sp, 0x108 +/* 020BDC 8001FFDC 2610FFFF */ addiu $s0, $s0, -1 +.L8001FFE0: +/* 020BE0 8001FFE0 2401FFFF */ li $at, -1 +/* 020BE4 8001FFE4 1601006A */ bne $s0, $at, .L80020190 +/* 020BE8 8001FFE8 0215082A */ slt $at, $s0, $s5 +/* 020BEC 8001FFEC 8FB80168 */ lw $t8, 0x168($sp) +/* 020BF0 8001FFF0 00147880 */ sll $t7, $s4, 2 +/* 020BF4 8001FFF4 13000037 */ beqz $t8, .L800200D4 +/* 020BF8 8001FFF8 02957021 */ addu $t6, $s4, $s5 +/* 020BFC 8001FFFC 00CF1021 */ addu $v0, $a2, $t7 +/* 020C00 80020000 8C590000 */ lw $t9, ($v0) +/* 020C04 80020004 8C4E0004 */ lw $t6, 4($v0) +/* 020C08 80020008 C720000C */ lwc1 $f0, 0xc($t9) +/* 020C0C 8002000C C5CA000C */ lwc1 $f10, 0xc($t6) +/* 020C10 80020010 00000000 */ nop +/* 020C14 80020014 460A0101 */ sub.s $f4, $f0, $f10 +/* 020C18 80020018 46002200 */ add.s $f8, $f4, $f0 +/* 020C1C 8002001C E5280000 */ swc1 $f8, ($t1) +/* 020C20 80020020 8C580000 */ lw $t8, ($v0) +/* 020C24 80020024 8C4F0004 */ lw $t7, 4($v0) +/* 020C28 80020028 C7020010 */ lwc1 $f2, 0x10($t8) +/* 020C2C 8002002C C5E60010 */ lwc1 $f6, 0x10($t7) +/* 020C30 80020030 00000000 */ nop +/* 020C34 80020034 46061281 */ sub.s $f10, $f2, $f6 +/* 020C38 80020038 46025100 */ add.s $f4, $f10, $f2 +/* 020C3C 8002003C E5440000 */ swc1 $f4, ($t2) +/* 020C40 80020040 8C590000 */ lw $t9, ($v0) +/* 020C44 80020044 8C4E0004 */ lw $t6, 4($v0) +/* 020C48 80020048 C72C0014 */ lwc1 $f12, 0x14($t9) +/* 020C4C 8002004C C5C80014 */ lwc1 $f8, 0x14($t6) +/* 020C50 80020050 00000000 */ nop +/* 020C54 80020054 46086181 */ sub.s $f6, $f12, $f8 +/* 020C58 80020058 460C3280 */ add.s $f10, $f6, $f12 +/* 020C5C 8002005C E56A0000 */ swc1 $f10, ($t3) +/* 020C60 80020060 8C580000 */ lw $t8, ($v0) +/* 020C64 80020064 00000000 */ nop +/* 020C68 80020068 870F0000 */ lh $t7, ($t8) +/* 020C6C 8002006C 00000000 */ nop +/* 020C70 80020070 448F2000 */ mtc1 $t7, $f4 +/* 020C74 80020074 00000000 */ nop +/* 020C78 80020078 46802220 */ cvt.s.w $f8, $f4 +/* 020C7C 8002007C E5A80000 */ swc1 $f8, ($t5) +/* 020C80 80020080 8C590000 */ lw $t9, ($v0) +/* 020C84 80020084 00000000 */ nop +/* 020C88 80020088 872E0002 */ lh $t6, 2($t9) +/* 020C8C 8002008C 00000000 */ nop +/* 020C90 80020090 448E3000 */ mtc1 $t6, $f6 +/* 020C94 80020094 00000000 */ nop +/* 020C98 80020098 468032A0 */ cvt.s.w $f10, $f6 +/* 020C9C 8002009C E58A0000 */ swc1 $f10, ($t4) +/* 020CA0 800200A0 8C580000 */ lw $t8, ($v0) +/* 020CA4 800200A4 00000000 */ nop +/* 020CA8 800200A8 870F0004 */ lh $t7, 4($t8) +/* 020CAC 800200AC 00000000 */ nop +/* 020CB0 800200B0 448F2000 */ mtc1 $t7, $f4 +/* 020CB4 800200B4 00000000 */ nop +/* 020CB8 800200B8 46802220 */ cvt.s.w $f8, $f4 +/* 020CBC 800200BC E7E80000 */ swc1 $f8, ($ra) +/* 020CC0 800200C0 8C590000 */ lw $t9, ($v0) +/* 020CC4 800200C4 00000000 */ nop +/* 020CC8 800200C8 C7260008 */ lwc1 $f6, 8($t9) +/* 020CCC 800200CC 1000010A */ b .L800204F8 +/* 020CD0 800200D0 E4E60000 */ swc1 $f6, ($a3) +.L800200D4: +/* 020CD4 800200D4 000EC080 */ sll $t8, $t6, 2 +/* 020CD8 800200D8 00D81021 */ addu $v0, $a2, $t8 +/* 020CDC 800200DC 8C4FFFFC */ lw $t7, -4($v0) +/* 020CE0 800200E0 00000000 */ nop +/* 020CE4 800200E4 C5EA000C */ lwc1 $f10, 0xc($t7) +/* 020CE8 800200E8 00000000 */ nop +/* 020CEC 800200EC E52A0000 */ swc1 $f10, ($t1) +/* 020CF0 800200F0 8C59FFFC */ lw $t9, -4($v0) +/* 020CF4 800200F4 00000000 */ nop +/* 020CF8 800200F8 C7240010 */ lwc1 $f4, 0x10($t9) +/* 020CFC 800200FC 00000000 */ nop +/* 020D00 80020100 E5440000 */ swc1 $f4, ($t2) +/* 020D04 80020104 8C4EFFFC */ lw $t6, -4($v0) +/* 020D08 80020108 00000000 */ nop +/* 020D0C 8002010C C5C80014 */ lwc1 $f8, 0x14($t6) +/* 020D10 80020110 00000000 */ nop +/* 020D14 80020114 E5680000 */ swc1 $f8, ($t3) +/* 020D18 80020118 8C58FFFC */ lw $t8, -4($v0) +/* 020D1C 8002011C 00000000 */ nop +/* 020D20 80020120 870F0000 */ lh $t7, ($t8) +/* 020D24 80020124 00000000 */ nop +/* 020D28 80020128 448F3000 */ mtc1 $t7, $f6 +/* 020D2C 8002012C 00000000 */ nop +/* 020D30 80020130 468032A0 */ cvt.s.w $f10, $f6 +/* 020D34 80020134 E5AA0000 */ swc1 $f10, ($t5) +/* 020D38 80020138 8C59FFFC */ lw $t9, -4($v0) +/* 020D3C 8002013C 00000000 */ nop +/* 020D40 80020140 872E0002 */ lh $t6, 2($t9) +/* 020D44 80020144 00000000 */ nop +/* 020D48 80020148 448E2000 */ mtc1 $t6, $f4 +/* 020D4C 8002014C 00000000 */ nop +/* 020D50 80020150 46802220 */ cvt.s.w $f8, $f4 +/* 020D54 80020154 E5880000 */ swc1 $f8, ($t4) +/* 020D58 80020158 8C58FFFC */ lw $t8, -4($v0) +/* 020D5C 8002015C 00000000 */ nop +/* 020D60 80020160 870F0004 */ lh $t7, 4($t8) +/* 020D64 80020164 00000000 */ nop +/* 020D68 80020168 448F3000 */ mtc1 $t7, $f6 +/* 020D6C 8002016C 00000000 */ nop +/* 020D70 80020170 468032A0 */ cvt.s.w $f10, $f6 +/* 020D74 80020174 E7EA0000 */ swc1 $f10, ($ra) +/* 020D78 80020178 8C59FFFC */ lw $t9, -4($v0) +/* 020D7C 8002017C 00000000 */ nop +/* 020D80 80020180 C7240008 */ lwc1 $f4, 8($t9) +/* 020D84 80020184 100000DC */ b .L800204F8 +/* 020D88 80020188 E4E40000 */ swc1 $f4, ($a3) +/* 020D8C 8002018C 0215082A */ slt $at, $s0, $s5 +.L80020190: +/* 020D90 80020190 1420008C */ bnez $at, .L800203C4 +/* 020D94 80020194 02142821 */ addu $a1, $s0, $s4 +/* 020D98 80020198 8FAE0168 */ lw $t6, 0x168($sp) +/* 020D9C 8002019C 2401FFFF */ li $at, -1 +/* 020DA0 800201A0 15C10055 */ bne $t6, $at, .L800202F8 +/* 020DA4 800201A4 02B41021 */ addu $v0, $s5, $s4 +/* 020DA8 800201A8 0002C080 */ sll $t8, $v0, 2 +/* 020DAC 800201AC 00D87821 */ addu $t7, $a2, $t8 +/* 020DB0 800201B0 8DF9FFFC */ lw $t9, -4($t7) +/* 020DB4 800201B4 00022880 */ sll $a1, $v0, 2 +/* 020DB8 800201B8 8F31003C */ lw $s1, 0x3c($t9) +/* 020DBC 800201BC 24010001 */ li $at, 1 +/* 020DC0 800201C0 822E0022 */ lb $t6, 0x22($s1) +/* 020DC4 800201C4 26B0FFFF */ addiu $s0, $s5, -1 +/* 020DC8 800201C8 15C1001A */ bne $t6, $at, .L80020234 +/* 020DCC 800201CC 24A5FFFC */ addiu $a1, $a1, -4 +/* 020DD0 800201D0 82640030 */ lb $a0, 0x30($s3) +/* 020DD4 800201D4 AFBF006C */ sw $ra, 0x6c($sp) +/* 020DD8 800201D8 AFAD0074 */ sw $t5, 0x74($sp) +/* 020DDC 800201DC AFAC0070 */ sw $t4, 0x70($sp) +/* 020DE0 800201E0 AFAB0078 */ sw $t3, 0x78($sp) +/* 020DE4 800201E4 AFAA007C */ sw $t2, 0x7c($sp) +/* 020DE8 800201E8 AFA90088 */ sw $t1, 0x88($sp) +/* 020DEC 800201EC AFA70068 */ sw $a3, 0x68($sp) +/* 020DF0 800201F0 0C01997A */ jal func_800665E8 +/* 020DF4 800201F4 AFA5005C */ sw $a1, 0x5c($sp) +/* 020DF8 800201F8 0C01A73F */ jal func_80069CFC +/* 020DFC 800201FC 00000000 */ nop +/* 020E00 80020200 3C068012 */ lui $a2, %hi(D_8011AE74) # $a2, 0x8012 +/* 020E04 80020204 8CC6AE74 */ lw $a2, %lo(D_8011AE74)($a2) +/* 020E08 80020208 8FA5005C */ lw $a1, 0x5c($sp) +/* 020E0C 8002020C 8FA70068 */ lw $a3, 0x68($sp) +/* 020E10 80020210 8FA90088 */ lw $t1, 0x88($sp) +/* 020E14 80020214 8FAA007C */ lw $t2, 0x7c($sp) +/* 020E18 80020218 8FAB0078 */ lw $t3, 0x78($sp) +/* 020E1C 8002021C 8FAC0070 */ lw $t4, 0x70($sp) +/* 020E20 80020220 8FAD0074 */ lw $t5, 0x74($sp) +/* 020E24 80020224 8FBF006C */ lw $ra, 0x6c($sp) +/* 020E28 80020228 00401825 */ move $v1, $v0 +/* 020E2C 8002022C 10000004 */ b .L80020240 +/* 020E30 80020230 00C52021 */ addu $a0, $a2, $a1 +.L80020234: +/* 020E34 80020234 00C52021 */ addu $a0, $a2, $a1 +/* 020E38 80020238 8C830000 */ lw $v1, ($a0) +/* 020E3C 8002023C 00000000 */ nop +.L80020240: +/* 020E40 80020240 8C98FFFC */ lw $t8, -4($a0) +/* 020E44 80020244 C460000C */ lwc1 $f0, 0xc($v1) +/* 020E48 80020248 C708000C */ lwc1 $f8, 0xc($t8) +/* 020E4C 8002024C 00000000 */ nop +/* 020E50 80020250 46080181 */ sub.s $f6, $f0, $f8 +/* 020E54 80020254 46003280 */ add.s $f10, $f6, $f0 +/* 020E58 80020258 E52A0000 */ swc1 $f10, ($t1) +/* 020E5C 8002025C 8C8FFFFC */ lw $t7, -4($a0) +/* 020E60 80020260 C4620010 */ lwc1 $f2, 0x10($v1) +/* 020E64 80020264 C5E40010 */ lwc1 $f4, 0x10($t7) +/* 020E68 80020268 00000000 */ nop +/* 020E6C 8002026C 46041201 */ sub.s $f8, $f2, $f4 +/* 020E70 80020270 46024180 */ add.s $f6, $f8, $f2 +/* 020E74 80020274 E5460000 */ swc1 $f6, ($t2) +/* 020E78 80020278 8C99FFFC */ lw $t9, -4($a0) +/* 020E7C 8002027C C46C0014 */ lwc1 $f12, 0x14($v1) +/* 020E80 80020280 C72A0014 */ lwc1 $f10, 0x14($t9) +/* 020E84 80020284 00000000 */ nop +/* 020E88 80020288 460A6101 */ sub.s $f4, $f12, $f10 +/* 020E8C 8002028C 460C2200 */ add.s $f8, $f4, $f12 +/* 020E90 80020290 E5680000 */ swc1 $f8, ($t3) +/* 020E94 80020294 846E0002 */ lh $t6, 2($v1) +/* 020E98 80020298 00000000 */ nop +/* 020E9C 8002029C 448E3000 */ mtc1 $t6, $f6 +/* 020EA0 800202A0 00000000 */ nop +/* 020EA4 800202A4 468032A0 */ cvt.s.w $f10, $f6 +/* 020EA8 800202A8 E58A0000 */ swc1 $f10, ($t4) +/* 020EAC 800202AC 84780004 */ lh $t8, 4($v1) +/* 020EB0 800202B0 00000000 */ nop +/* 020EB4 800202B4 44982000 */ mtc1 $t8, $f4 +/* 020EB8 800202B8 00000000 */ nop +/* 020EBC 800202BC 46802220 */ cvt.s.w $f8, $f4 +/* 020EC0 800202C0 E7E80000 */ swc1 $f8, ($ra) +/* 020EC4 800202C4 8C830000 */ lw $v1, ($a0) +/* 020EC8 800202C8 00000000 */ nop +/* 020ECC 800202CC 846F0000 */ lh $t7, ($v1) +/* 020ED0 800202D0 00000000 */ nop +/* 020ED4 800202D4 448F3000 */ mtc1 $t7, $f6 +/* 020ED8 800202D8 00000000 */ nop +/* 020EDC 800202DC 468032A0 */ cvt.s.w $f10, $f6 +/* 020EE0 800202E0 E5AA0000 */ swc1 $f10, ($t5) +/* 020EE4 800202E4 8C990000 */ lw $t9, ($a0) +/* 020EE8 800202E8 00000000 */ nop +/* 020EEC 800202EC C7240008 */ lwc1 $f4, 8($t9) +/* 020EF0 800202F0 10000081 */ b .L800204F8 +/* 020EF4 800202F4 E4E40000 */ swc1 $f4, ($a3) +.L800202F8: +/* 020EF8 800202F8 8FAE0168 */ lw $t6, 0x168($sp) +/* 020EFC 800202FC 00000000 */ nop +/* 020F00 80020300 028EC021 */ addu $t8, $s4, $t6 +/* 020F04 80020304 03107821 */ addu $t7, $t8, $s0 +/* 020F08 80020308 01F5C823 */ subu $t9, $t7, $s5 +/* 020F0C 8002030C 00197080 */ sll $t6, $t9, 2 +/* 020F10 80020310 00CE1021 */ addu $v0, $a2, $t6 +/* 020F14 80020314 8C580000 */ lw $t8, ($v0) +/* 020F18 80020318 00000000 */ nop +/* 020F1C 8002031C C708000C */ lwc1 $f8, 0xc($t8) +/* 020F20 80020320 00000000 */ nop +/* 020F24 80020324 E5280000 */ swc1 $f8, ($t1) +/* 020F28 80020328 8C4F0000 */ lw $t7, ($v0) +/* 020F2C 8002032C 00000000 */ nop +/* 020F30 80020330 C5E60010 */ lwc1 $f6, 0x10($t7) +/* 020F34 80020334 00000000 */ nop +/* 020F38 80020338 E5460000 */ swc1 $f6, ($t2) +/* 020F3C 8002033C 8C590000 */ lw $t9, ($v0) +/* 020F40 80020340 00000000 */ nop +/* 020F44 80020344 C72A0014 */ lwc1 $f10, 0x14($t9) +/* 020F48 80020348 00000000 */ nop +/* 020F4C 8002034C E56A0000 */ swc1 $f10, ($t3) +/* 020F50 80020350 8C4E0000 */ lw $t6, ($v0) +/* 020F54 80020354 00000000 */ nop +/* 020F58 80020358 85D80000 */ lh $t8, ($t6) +/* 020F5C 8002035C 00000000 */ nop +/* 020F60 80020360 44982000 */ mtc1 $t8, $f4 +/* 020F64 80020364 00000000 */ nop +/* 020F68 80020368 46802220 */ cvt.s.w $f8, $f4 +/* 020F6C 8002036C E5A80000 */ swc1 $f8, ($t5) +/* 020F70 80020370 8C4F0000 */ lw $t7, ($v0) +/* 020F74 80020374 00000000 */ nop +/* 020F78 80020378 85F90002 */ lh $t9, 2($t7) +/* 020F7C 8002037C 00000000 */ nop +/* 020F80 80020380 44993000 */ mtc1 $t9, $f6 +/* 020F84 80020384 00000000 */ nop +/* 020F88 80020388 468032A0 */ cvt.s.w $f10, $f6 +/* 020F8C 8002038C E58A0000 */ swc1 $f10, ($t4) +/* 020F90 80020390 8C4E0000 */ lw $t6, ($v0) +/* 020F94 80020394 00000000 */ nop +/* 020F98 80020398 85D80004 */ lh $t8, 4($t6) +/* 020F9C 8002039C 00000000 */ nop +/* 020FA0 800203A0 44982000 */ mtc1 $t8, $f4 +/* 020FA4 800203A4 00000000 */ nop +/* 020FA8 800203A8 46802220 */ cvt.s.w $f8, $f4 +/* 020FAC 800203AC E7E80000 */ swc1 $f8, ($ra) +/* 020FB0 800203B0 8C4F0000 */ lw $t7, ($v0) +/* 020FB4 800203B4 00000000 */ nop +/* 020FB8 800203B8 C5E60008 */ lwc1 $f6, 8($t7) +/* 020FBC 800203BC 1000004E */ b .L800204F8 +/* 020FC0 800203C0 E4E60000 */ swc1 $f6, ($a3) +.L800203C4: +/* 020FC4 800203C4 0005C880 */ sll $t9, $a1, 2 +/* 020FC8 800203C8 00D92021 */ addu $a0, $a2, $t9 +/* 020FCC 800203CC 8C820000 */ lw $v0, ($a0) +/* 020FD0 800203D0 24010001 */ li $at, 1 +/* 020FD4 800203D4 8C51003C */ lw $s1, 0x3c($v0) +/* 020FD8 800203D8 00401825 */ move $v1, $v0 +/* 020FDC 800203DC 822E0022 */ lb $t6, 0x22($s1) +/* 020FE0 800203E0 00000000 */ nop +/* 020FE4 800203E4 15C1001A */ bne $t6, $at, .L80020450 +/* 020FE8 800203E8 00000000 */ nop +/* 020FEC 800203EC 82640030 */ lb $a0, 0x30($s3) +/* 020FF0 800203F0 AFBF006C */ sw $ra, 0x6c($sp) +/* 020FF4 800203F4 AFAD0074 */ sw $t5, 0x74($sp) +/* 020FF8 800203F8 AFAC0070 */ sw $t4, 0x70($sp) +/* 020FFC 800203FC AFAB0078 */ sw $t3, 0x78($sp) +/* 021000 80020400 AFAA007C */ sw $t2, 0x7c($sp) +/* 021004 80020404 AFA90088 */ sw $t1, 0x88($sp) +/* 021008 80020408 AFA70068 */ sw $a3, 0x68($sp) +/* 02100C 8002040C 0C01997A */ jal func_800665E8 +/* 021010 80020410 AFB90080 */ sw $t9, 0x80($sp) +/* 021014 80020414 0C01A73F */ jal func_80069CFC +/* 021018 80020418 00000000 */ nop +/* 02101C 8002041C 3C068012 */ lui $a2, %hi(D_8011AE74) # $a2, 0x8012 +/* 021020 80020420 8CC6AE74 */ lw $a2, %lo(D_8011AE74)($a2) +/* 021024 80020424 8FA50080 */ lw $a1, 0x80($sp) +/* 021028 80020428 8FA70068 */ lw $a3, 0x68($sp) +/* 02102C 8002042C 8FA90088 */ lw $t1, 0x88($sp) +/* 021030 80020430 8FAA007C */ lw $t2, 0x7c($sp) +/* 021034 80020434 8FAB0078 */ lw $t3, 0x78($sp) +/* 021038 80020438 8FAC0070 */ lw $t4, 0x70($sp) +/* 02103C 8002043C 8FAD0074 */ lw $t5, 0x74($sp) +/* 021040 80020440 8FBF006C */ lw $ra, 0x6c($sp) +/* 021044 80020444 00401825 */ move $v1, $v0 +/* 021048 80020448 10000001 */ b .L80020450 +/* 02104C 8002044C 00C52021 */ addu $a0, $a2, $a1 +.L80020450: +/* 021050 80020450 C46A000C */ lwc1 $f10, 0xc($v1) +/* 021054 80020454 24010001 */ li $at, 1 +/* 021058 80020458 E52A0000 */ swc1 $f10, ($t1) +/* 02105C 8002045C C4640010 */ lwc1 $f4, 0x10($v1) +/* 021060 80020460 00000000 */ nop +/* 021064 80020464 E5440000 */ swc1 $f4, ($t2) +/* 021068 80020468 C4680014 */ lwc1 $f8, 0x14($v1) +/* 02106C 8002046C 00000000 */ nop +/* 021070 80020470 E5680000 */ swc1 $f8, ($t3) +/* 021074 80020474 84780002 */ lh $t8, 2($v1) +/* 021078 80020478 00000000 */ nop +/* 02107C 8002047C 44983000 */ mtc1 $t8, $f6 +/* 021080 80020480 00000000 */ nop +/* 021084 80020484 468032A0 */ cvt.s.w $f10, $f6 +/* 021088 80020488 E58A0000 */ swc1 $f10, ($t4) +/* 02108C 8002048C 846F0004 */ lh $t7, 4($v1) +/* 021090 80020490 00000000 */ nop +/* 021094 80020494 448F2000 */ mtc1 $t7, $f4 +/* 021098 80020498 00000000 */ nop +/* 02109C 8002049C 46802220 */ cvt.s.w $f8, $f4 +/* 0210A0 800204A0 E7E80000 */ swc1 $f8, ($ra) +/* 0210A4 800204A4 8C830000 */ lw $v1, ($a0) +/* 0210A8 800204A8 00000000 */ nop +/* 0210AC 800204AC 84790000 */ lh $t9, ($v1) +/* 0210B0 800204B0 00000000 */ nop +/* 0210B4 800204B4 44993000 */ mtc1 $t9, $f6 +/* 0210B8 800204B8 00000000 */ nop +/* 0210BC 800204BC 468032A0 */ cvt.s.w $f10, $f6 +/* 0210C0 800204C0 E5AA0000 */ swc1 $f10, ($t5) +/* 0210C4 800204C4 822E0022 */ lb $t6, 0x22($s1) +/* 0210C8 800204C8 00000000 */ nop +/* 0210CC 800204CC 15C10005 */ bne $t6, $at, .L800204E4 +/* 0210D0 800204D0 00000000 */ nop +/* 0210D4 800204D4 C5840000 */ lwc1 $f4, ($t4) +/* 0210D8 800204D8 00000000 */ nop +/* 0210DC 800204DC 46002207 */ neg.s $f8, $f4 +/* 0210E0 800204E0 E5880000 */ swc1 $f8, ($t4) +.L800204E4: +/* 0210E4 800204E4 8C980000 */ lw $t8, ($a0) +/* 0210E8 800204E8 00000000 */ nop +/* 0210EC 800204EC C7060008 */ lwc1 $f6, 8($t8) +/* 0210F0 800204F0 00000000 */ nop +/* 0210F4 800204F4 E4E60000 */ swc1 $f6, ($a3) +.L800204F8: +/* 0210F8 800204F8 24E70004 */ addiu $a3, $a3, 4 +/* 0210FC 800204FC 25290004 */ addiu $t1, $t1, 4 +/* 021100 80020500 254A0004 */ addiu $t2, $t2, 4 +/* 021104 80020504 256B0004 */ addiu $t3, $t3, 4 +/* 021108 80020508 25AD0004 */ addiu $t5, $t5, 4 +/* 02110C 8002050C 258C0004 */ addiu $t4, $t4, 4 +/* 021110 80020510 27FF0004 */ addiu $ra, $ra, 4 +/* 021114 80020514 14F2FEB2 */ bne $a3, $s2, .L8001FFE0 +/* 021118 80020518 26100001 */ addiu $s0, $s0, 1 +/* 02111C 8002051C C66A0004 */ lwc1 $f10, 4($s3) +/* 021120 80020520 00009025 */ move $s2, $zero +/* 021124 80020524 460AB032 */ c.eq.s $f22, $f10 +/* 021128 80020528 00008025 */ move $s0, $zero +/* 02112C 8002052C 45000005 */ bc1f .L80020544 +/* 021130 80020530 27B10154 */ addiu $s1, $sp, 0x154 +/* 021134 80020534 3C01800E */ lui $at, %hi(D_800E5678) # $at, 0x800e +/* 021138 80020538 C4245678 */ lwc1 $f4, %lo(D_800E5678)($at) +/* 02113C 8002053C 00000000 */ nop +/* 021140 80020540 E6640004 */ swc1 $f4, 4($s3) +.L80020544: +/* 021144 80020544 C6680004 */ lwc1 $f8, 4($s3) +/* 021148 80020548 C7A60114 */ lwc1 $f6, 0x114($sp) +/* 02114C 8002054C C6640000 */ lwc1 $f4, ($s3) +/* 021150 80020550 46064282 */ mul.s $f10, $f8, $f6 +/* 021154 80020554 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 021158 80020558 44814800 */ mtc1 $at, $f9 +/* 02115C 8002055C 44804000 */ mtc1 $zero, $f8 +/* 021160 80020560 460A2500 */ add.s $f20, $f4, $f10 +/* 021164 80020564 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 021168 80020568 4600A021 */ cvt.d.s $f0, $f20 +/* 02116C 8002056C 4620403E */ c.le.d $f8, $f0 +/* 021170 80020570 02202025 */ move $a0, $s1 +/* 021174 80020574 45000006 */ bc1f .L80020590 +/* 021178 80020578 00000000 */ nop +/* 02117C 8002057C 44813800 */ mtc1 $at, $f7 +/* 021180 80020580 44803000 */ mtc1 $zero, $f6 +/* 021184 80020584 24120001 */ li $s2, 1 +/* 021188 80020588 46260101 */ sub.d $f4, $f0, $f6 +/* 02118C 8002058C 46202520 */ cvt.s.d $f20, $f4 +.L80020590: +/* 021190 80020590 826F003F */ lb $t7, 0x3f($s3) +/* 021194 80020594 02402825 */ move $a1, $s2 +/* 021198 80020598 15E00010 */ bnez $t7, .L800205DC +/* 02119C 8002059C 00000000 */ nop +/* 0211A0 800205A0 4406A000 */ mfc1 $a2, $f20 +/* 0211A4 800205A4 0C008950 */ jal func_80022540 +/* 0211A8 800205A8 02202025 */ move $a0, $s1 +/* 0211AC 800205AC 4406A000 */ mfc1 $a2, $f20 +/* 0211B0 800205B0 E7A00124 */ swc1 $f0, 0x124($sp) +/* 0211B4 800205B4 27A40140 */ addiu $a0, $sp, 0x140 +/* 0211B8 800205B8 0C008950 */ jal func_80022540 +/* 0211BC 800205BC 02402825 */ move $a1, $s2 +/* 0211C0 800205C0 4406A000 */ mfc1 $a2, $f20 +/* 0211C4 800205C4 27A4012C */ addiu $a0, $sp, 0x12c +/* 0211C8 800205C8 02402825 */ move $a1, $s2 +/* 0211CC 800205CC 0C008950 */ jal func_80022540 +/* 0211D0 800205D0 E7A00120 */ swc1 $f0, 0x120($sp) +/* 0211D4 800205D4 1000000F */ b .L80020614 +/* 0211D8 800205D8 E7A0011C */ swc1 $f0, 0x11c($sp) +.L800205DC: +/* 0211DC 800205DC 4406A000 */ mfc1 $a2, $f20 +/* 0211E0 800205E0 0C008A22 */ jal func_80022888 +/* 0211E4 800205E4 02402825 */ move $a1, $s2 +/* 0211E8 800205E8 4406A000 */ mfc1 $a2, $f20 +/* 0211EC 800205EC E7A00124 */ swc1 $f0, 0x124($sp) +/* 0211F0 800205F0 27A40140 */ addiu $a0, $sp, 0x140 +/* 0211F4 800205F4 0C008A22 */ jal func_80022888 +/* 0211F8 800205F8 02402825 */ move $a1, $s2 +/* 0211FC 800205FC 4406A000 */ mfc1 $a2, $f20 +/* 021200 80020600 27A4012C */ addiu $a0, $sp, 0x12c +/* 021204 80020604 02402825 */ move $a1, $s2 +/* 021208 80020608 0C008A22 */ jal func_80022888 +/* 02120C 8002060C E7A00120 */ swc1 $f0, 0x120($sp) +/* 021210 80020610 E7A0011C */ swc1 $f0, 0x11c($sp) +.L80020614: +/* 021214 80020614 C7AA0124 */ lwc1 $f10, 0x124($sp) +/* 021218 80020618 C6C8000C */ lwc1 $f8, 0xc($s6) +/* 02121C 8002061C C7A40120 */ lwc1 $f4, 0x120($sp) +/* 021220 80020620 46085181 */ sub.s $f6, $f10, $f8 +/* 021224 80020624 24010001 */ li $at, 1 +/* 021228 80020628 E7A60124 */ swc1 $f6, 0x124($sp) +/* 02122C 8002062C C6CA0010 */ lwc1 $f10, 0x10($s6) +/* 021230 80020630 00000000 */ nop +/* 021234 80020634 460A2201 */ sub.s $f8, $f4, $f10 +/* 021238 80020638 E7A80120 */ swc1 $f8, 0x120($sp) +/* 02123C 8002063C C6C40014 */ lwc1 $f4, 0x14($s6) +/* 021240 80020640 00000000 */ nop +/* 021244 80020644 46040281 */ sub.s $f10, $f0, $f4 +/* 021248 80020648 12010016 */ beq $s0, $at, .L800206A4 +/* 02124C 8002064C E7AA011C */ swc1 $f10, 0x11c($sp) +/* 021250 80020650 46063102 */ mul.s $f4, $f6, $f6 +/* 021254 80020654 C7AE011C */ lwc1 $f14, 0x11c($sp) +/* 021258 80020658 00009025 */ move $s2, $zero +/* 02125C 8002065C 46084282 */ mul.s $f10, $f8, $f8 +/* 021260 80020660 00000000 */ nop +/* 021264 80020664 460E7202 */ mul.s $f8, $f14, $f14 +/* 021268 80020668 460A2180 */ add.s $f6, $f4, $f10 +/* 02126C 8002066C 0C0326B4 */ jal sqrtf +/* 021270 80020670 46083300 */ add.s $f12, $f6, $f8 +/* 021274 80020674 C7A40114 */ lwc1 $f4, 0x114($sp) +/* 021278 80020678 00000000 */ nop +/* 02127C 8002067C 46040083 */ div.s $f2, $f0, $f4 +/* 021280 80020680 4602B032 */ c.eq.s $f22, $f2 +/* 021284 80020684 00000000 */ nop +/* 021288 80020688 45010006 */ bc1t .L800206A4 +/* 02128C 8002068C 00000000 */ nop +/* 021290 80020690 C6660008 */ lwc1 $f6, 8($s3) +/* 021294 80020694 C66A0004 */ lwc1 $f10, 4($s3) +/* 021298 80020698 46023203 */ div.s $f8, $f6, $f2 +/* 02129C 8002069C 46085102 */ mul.s $f4, $f10, $f8 +/* 0212A0 800206A0 E6640004 */ swc1 $f4, 4($s3) +.L800206A4: +/* 0212A4 800206A4 26100001 */ addiu $s0, $s0, 1 +/* 0212A8 800206A8 24010002 */ li $at, 2 +/* 0212AC 800206AC 1601FFA5 */ bne $s0, $at, .L80020544 +/* 0212B0 800206B0 00000000 */ nop +/* 0212B4 800206B4 4406A000 */ mfc1 $a2, $f20 +/* 0212B8 800206B8 27A400F4 */ addiu $a0, $sp, 0xf4 +/* 0212BC 800206BC 0C008950 */ jal func_80022540 +/* 0212C0 800206C0 02402825 */ move $a1, $s2 +/* 0212C4 800206C4 C7A600B4 */ lwc1 $f6, 0xb4($sp) +/* 0212C8 800206C8 8ED90040 */ lw $t9, 0x40($s6) +/* 0212CC 800206CC 46060282 */ mul.s $f10, $f0, $f6 +/* 0212D0 800206D0 C728000C */ lwc1 $f8, 0xc($t9) +/* 0212D4 800206D4 00000000 */ nop +/* 0212D8 800206D8 46085102 */ mul.s $f4, $f10, $f8 +/* 0212DC 800206DC 12400024 */ beqz $s2, .L80020770 +/* 0212E0 800206E0 E6C40008 */ swc1 $f4, 8($s6) +/* 0212E4 800206E4 8FAE0168 */ lw $t6, 0x168($sp) +/* 0212E8 800206E8 2401FFFF */ li $at, -1 +/* 0212EC 800206EC 15C10020 */ bne $t6, $at, .L80020770 +/* 0212F0 800206F0 00000000 */ nop +/* 0212F4 800206F4 86780026 */ lh $t8, 0x26($s3) +/* 0212F8 800206F8 02202025 */ move $a0, $s1 +/* 0212FC 800206FC 270F0002 */ addiu $t7, $t8, 2 +/* 021300 80020700 16AF001B */ bne $s5, $t7, .L80020770 +/* 021304 80020704 00002825 */ move $a1, $zero +/* 021308 80020708 0C008950 */ jal func_80022540 +/* 02130C 8002070C 3C063F80 */ lui $a2, 0x3f80 +/* 021310 80020710 E7A00124 */ swc1 $f0, 0x124($sp) +/* 021314 80020714 27A40140 */ addiu $a0, $sp, 0x140 +/* 021318 80020718 00002825 */ move $a1, $zero +/* 02131C 8002071C 0C008950 */ jal func_80022540 +/* 021320 80020720 3C063F80 */ lui $a2, 0x3f80 +/* 021324 80020724 27A4012C */ addiu $a0, $sp, 0x12c +/* 021328 80020728 00002825 */ move $a1, $zero +/* 02132C 8002072C 3C063F80 */ lui $a2, 0x3f80 +/* 021330 80020730 0C008950 */ jal func_80022540 +/* 021334 80020734 E7A00120 */ swc1 $f0, 0x120($sp) +/* 021338 80020738 E7A0011C */ swc1 $f0, 0x11c($sp) +/* 02133C 8002073C C6CA000C */ lwc1 $f10, 0xc($s6) +/* 021340 80020740 C7A60124 */ lwc1 $f6, 0x124($sp) +/* 021344 80020744 C7A40120 */ lwc1 $f4, 0x120($sp) +/* 021348 80020748 460A3201 */ sub.s $f8, $f6, $f10 +/* 02134C 8002074C E7A80124 */ swc1 $f8, 0x124($sp) +/* 021350 80020750 C6C60010 */ lwc1 $f6, 0x10($s6) +/* 021354 80020754 00000000 */ nop +/* 021358 80020758 46062281 */ sub.s $f10, $f4, $f6 +/* 02135C 8002075C E7AA0120 */ swc1 $f10, 0x120($sp) +/* 021360 80020760 C6C80014 */ lwc1 $f8, 0x14($s6) +/* 021364 80020764 00000000 */ nop +/* 021368 80020768 46080101 */ sub.s $f4, $f0, $f8 +/* 02136C 8002076C E7A4011C */ swc1 $f4, 0x11c($sp) +.L80020770: +/* 021370 80020770 C7A60124 */ lwc1 $f6, 0x124($sp) +/* 021374 80020774 C7AA0114 */ lwc1 $f10, 0x114($sp) +/* 021378 80020778 02C02025 */ move $a0, $s6 +/* 02137C 8002077C 460A3203 */ div.s $f8, $f6, $f10 +/* 021380 80020780 E6C8001C */ swc1 $f8, 0x1c($s6) +/* 021384 80020784 C7A40120 */ lwc1 $f4, 0x120($sp) +/* 021388 80020788 C7A60114 */ lwc1 $f6, 0x114($sp) +/* 02138C 8002078C 00000000 */ nop +/* 021390 80020790 46062283 */ div.s $f10, $f4, $f6 +/* 021394 80020794 E6CA0020 */ swc1 $f10, 0x20($s6) +/* 021398 80020798 C7A8011C */ lwc1 $f8, 0x11c($sp) +/* 02139C 8002079C C7A40114 */ lwc1 $f4, 0x114($sp) +/* 0213A0 800207A0 00000000 */ nop +/* 0213A4 800207A4 46044183 */ div.s $f6, $f8, $f4 +/* 0213A8 800207A8 E6C60024 */ swc1 $f6, 0x24($s6) +/* 0213AC 800207AC 8FA7011C */ lw $a3, 0x11c($sp) +/* 0213B0 800207B0 8FA60120 */ lw $a2, 0x120($sp) +/* 0213B4 800207B4 8FA50124 */ lw $a1, 0x124($sp) +/* 0213B8 800207B8 0C00455C */ jal func_80011570 +/* 0213BC 800207BC 00000000 */ nop +/* 0213C0 800207C0 9263002E */ lbu $v1, 0x2e($s3) +/* 0213C4 800207C4 24010001 */ li $at, 1 +/* 0213C8 800207C8 1061015B */ beq $v1, $at, .L80020D38 +/* 0213CC 800207CC 24010002 */ li $at, 2 +/* 0213D0 800207D0 10610005 */ beq $v1, $at, .L800207E8 +/* 0213D4 800207D4 24010003 */ li $at, 3 +/* 0213D8 800207D8 10610157 */ beq $v1, $at, .L80020D38 +/* 0213DC 800207DC 24080001 */ li $t0, 1 +/* 0213E0 800207E0 1000004F */ b .L80020920 +/* 0213E4 800207E4 27AD00E4 */ addiu $t5, $sp, 0xe4 +.L800207E8: +/* 0213E8 800207E8 8279003F */ lb $t9, 0x3f($s3) +/* 0213EC 800207EC 02202025 */ move $a0, $s1 +/* 0213F0 800207F0 17200012 */ bnez $t9, .L8002083C +/* 0213F4 800207F4 02402825 */ move $a1, $s2 +/* 0213F8 800207F8 4406A000 */ mfc1 $a2, $f20 +/* 0213FC 800207FC 02202025 */ move $a0, $s1 +/* 021400 80020800 02402825 */ move $a1, $s2 +/* 021404 80020804 0C00898F */ jal func_8002263C +/* 021408 80020808 27A70124 */ addiu $a3, $sp, 0x124 +/* 02140C 8002080C 4406A000 */ mfc1 $a2, $f20 +/* 021410 80020810 27A40140 */ addiu $a0, $sp, 0x140 +/* 021414 80020814 02402825 */ move $a1, $s2 +/* 021418 80020818 0C00898F */ jal func_8002263C +/* 02141C 8002081C 27A70120 */ addiu $a3, $sp, 0x120 +/* 021420 80020820 4406A000 */ mfc1 $a2, $f20 +/* 021424 80020824 27A4012C */ addiu $a0, $sp, 0x12c +/* 021428 80020828 02402825 */ move $a1, $s2 +/* 02142C 8002082C 0C00898F */ jal func_8002263C +/* 021430 80020830 27A7011C */ addiu $a3, $sp, 0x11c +/* 021434 80020834 1000000F */ b .L80020874 +/* 021438 80020838 C7AA0124 */ lwc1 $f10, 0x124($sp) +.L8002083C: +/* 02143C 8002083C 4406A000 */ mfc1 $a2, $f20 +/* 021440 80020840 0C008A2C */ jal func_800228B0 +/* 021444 80020844 27A70124 */ addiu $a3, $sp, 0x124 +/* 021448 80020848 4406A000 */ mfc1 $a2, $f20 +/* 02144C 8002084C 27A40140 */ addiu $a0, $sp, 0x140 +/* 021450 80020850 02402825 */ move $a1, $s2 +/* 021454 80020854 0C008A2C */ jal func_800228B0 +/* 021458 80020858 27A70120 */ addiu $a3, $sp, 0x120 +/* 02145C 8002085C 4406A000 */ mfc1 $a2, $f20 +/* 021460 80020860 27A4012C */ addiu $a0, $sp, 0x12c +/* 021464 80020864 02402825 */ move $a1, $s2 +/* 021468 80020868 0C008A2C */ jal func_800228B0 +/* 02146C 8002086C 27A7011C */ addiu $a3, $sp, 0x11c +/* 021470 80020870 C7AA0124 */ lwc1 $f10, 0x124($sp) +.L80020874: +/* 021474 80020874 C7A20120 */ lwc1 $f2, 0x120($sp) +/* 021478 80020878 460A5202 */ mul.s $f8, $f10, $f10 +/* 02147C 8002087C C7AE011C */ lwc1 $f14, 0x11c($sp) +/* 021480 80020880 46021102 */ mul.s $f4, $f2, $f2 +/* 021484 80020884 00000000 */ nop +/* 021488 80020888 460E7282 */ mul.s $f10, $f14, $f14 +/* 02148C 8002088C 46044180 */ add.s $f6, $f8, $f4 +/* 021490 80020890 0C0326B4 */ jal sqrtf +/* 021494 80020894 460A3300 */ add.s $f12, $f6, $f10 +/* 021498 80020898 46160032 */ c.eq.s $f0, $f22 +/* 02149C 8002089C 3C014059 */ li $at, 0x40590000 # 3.390625 +/* 0214A0 800208A0 45010011 */ bc1t .L800208E8 +/* 0214A4 800208A4 00000000 */ nop +/* 0214A8 800208A8 44814800 */ mtc1 $at, $f9 +/* 0214AC 800208AC 44804000 */ mtc1 $zero, $f8 +/* 0214B0 800208B0 46000121 */ cvt.d.s $f4, $f0 +/* 0214B4 800208B4 00000000 */ nop +/* 0214B8 800208B8 46244183 */ div.d $f6, $f8, $f4 +/* 0214BC 800208BC C7AA0124 */ lwc1 $f10, 0x124($sp) +/* 0214C0 800208C0 C7A20120 */ lwc1 $f2, 0x120($sp) +/* 0214C4 800208C4 C7AE011C */ lwc1 $f14, 0x11c($sp) +/* 0214C8 800208C8 46203320 */ cvt.s.d $f12, $f6 +/* 0214CC 800208CC 460C5202 */ mul.s $f8, $f10, $f12 +/* 0214D0 800208D0 00000000 */ nop +/* 0214D4 800208D4 460C1082 */ mul.s $f2, $f2, $f12 +/* 0214D8 800208D8 E7A80124 */ swc1 $f8, 0x124($sp) +/* 0214DC 800208DC 460C7382 */ mul.s $f14, $f14, $f12 +/* 0214E0 800208E0 E7A20120 */ swc1 $f2, 0x120($sp) +/* 0214E4 800208E4 E7AE011C */ swc1 $f14, 0x11c($sp) +.L800208E8: +/* 0214E8 800208E8 C7AE011C */ lwc1 $f14, 0x11c($sp) +/* 0214EC 800208EC C7AC0124 */ lwc1 $f12, 0x124($sp) +/* 0214F0 800208F0 0C01C1D4 */ jal func_80070750 +/* 0214F4 800208F4 00000000 */ nop +/* 0214F8 800208F8 24018000 */ li $at, -32768 +/* 0214FC 800208FC 00417021 */ addu $t6, $v0, $at +/* 021500 80020900 A6CE0000 */ sh $t6, ($s6) +/* 021504 80020904 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 021508 80020908 44817000 */ mtc1 $at, $f14 +/* 02150C 8002090C C7AC0120 */ lwc1 $f12, 0x120($sp) +/* 021510 80020910 0C01C1D4 */ jal func_80070750 +/* 021514 80020914 00000000 */ nop +/* 021518 80020918 10000107 */ b .L80020D38 +/* 02151C 8002091C A6C20002 */ sh $v0, 2($s6) +.L80020920: +/* 021520 80020920 3C01C0E0 */ li $at, 0xC0E00000 # -7.000000 +/* 021524 80020924 44819800 */ mtc1 $at, $f19 +/* 021528 80020928 3C0140E0 */ li $at, 0x40E00000 # 7.000000 +/* 02152C 8002092C 44818800 */ mtc1 $at, $f17 +/* 021530 80020930 3C0140F0 */ li $at, 0x40F00000 # 7.500000 +/* 021534 80020934 44817800 */ mtc1 $at, $f15 +/* 021538 80020938 44809000 */ mtc1 $zero, $f18 +/* 02153C 8002093C 44808000 */ mtc1 $zero, $f16 +/* 021540 80020940 44807000 */ mtc1 $zero, $f14 +/* 021544 80020944 27AC00D0 */ addiu $t4, $sp, 0xd0 +/* 021548 80020948 27BF00BC */ addiu $ra, $sp, 0xbc +/* 02154C 8002094C 27A700CC */ addiu $a3, $sp, 0xcc +/* 021550 80020950 27A600E0 */ addiu $a2, $sp, 0xe0 +/* 021554 80020954 27A500F4 */ addiu $a1, $sp, 0xf4 +.L80020958: +/* 021558 80020958 C5A40000 */ lwc1 $f4, ($t5) +/* 02155C 8002095C C5A6FFFC */ lwc1 $f6, -4($t5) +/* 021560 80020960 25AD0004 */ addiu $t5, $t5, 4 +/* 021564 80020964 46062301 */ sub.s $f12, $f4, $f6 +/* 021568 80020968 29010005 */ slti $at, $t0, 5 +/* 02156C 8002096C 460060A1 */ cvt.d.s $f2, $f12 +/* 021570 80020970 4622803C */ c.lt.d $f16, $f2 +/* 021574 80020974 4600B006 */ mov.s $f0, $f22 +/* 021578 80020978 45000005 */ bc1f .L80020990 +/* 02157C 8002097C 24180005 */ li $t8, 5 +/* 021580 80020980 4600B2A1 */ cvt.d.s $f10, $f22 +/* 021584 80020984 462E5201 */ sub.d $f8, $f10, $f14 +/* 021588 80020988 10000008 */ b .L800209AC +/* 02158C 8002098C 46204020 */ cvt.s.d $f0, $f8 +.L80020990: +/* 021590 80020990 4632103C */ c.lt.d $f2, $f18 +/* 021594 80020994 00000000 */ nop +/* 021598 80020998 45000004 */ bc1f .L800209AC +/* 02159C 8002099C 00000000 */ nop +/* 0215A0 800209A0 4600B121 */ cvt.d.s $f4, $f22 +/* 0215A4 800209A4 462E2180 */ add.d $f6, $f4, $f14 +/* 0215A8 800209A8 46203020 */ cvt.s.d $f0, $f6 +.L800209AC: +/* 0215AC 800209AC 10200022 */ beqz $at, .L80020A38 +/* 0215B0 800209B0 01008025 */ move $s0, $t0 +/* 0215B4 800209B4 03082023 */ subu $a0, $t8, $t0 +/* 0215B8 800209B8 308F0003 */ andi $t7, $a0, 3 +/* 0215BC 800209BC 11E0000C */ beqz $t7, .L800209F0 +/* 0215C0 800209C0 01E81821 */ addu $v1, $t7, $t0 +/* 0215C4 800209C4 0010C880 */ sll $t9, $s0, 2 +/* 0215C8 800209C8 27AE00E0 */ addiu $t6, $sp, 0xe0 +/* 0215CC 800209CC 032E1021 */ addu $v0, $t9, $t6 +.L800209D0: +/* 0215D0 800209D0 C44A0000 */ lwc1 $f10, ($v0) +/* 0215D4 800209D4 26100001 */ addiu $s0, $s0, 1 +/* 0215D8 800209D8 46005200 */ add.s $f8, $f10, $f0 +/* 0215DC 800209DC 24420004 */ addiu $v0, $v0, 4 +/* 0215E0 800209E0 1470FFFB */ bne $v1, $s0, .L800209D0 +/* 0215E4 800209E4 E448FFFC */ swc1 $f8, -4($v0) +/* 0215E8 800209E8 24010005 */ li $at, 5 +/* 0215EC 800209EC 12010011 */ beq $s0, $at, .L80020A34 +.L800209F0: +/* 0215F0 800209F0 0010C080 */ sll $t8, $s0, 2 +/* 0215F4 800209F4 27AF00E0 */ addiu $t7, $sp, 0xe0 +/* 0215F8 800209F8 030F1021 */ addu $v0, $t8, $t7 +.L800209FC: +/* 0215FC 800209FC C4440000 */ lwc1 $f4, ($v0) +/* 021600 80020A00 C44A0004 */ lwc1 $f10, 4($v0) +/* 021604 80020A04 46002180 */ add.s $f6, $f4, $f0 +/* 021608 80020A08 C4440008 */ lwc1 $f4, 8($v0) +/* 02160C 80020A0C 46005200 */ add.s $f8, $f10, $f0 +/* 021610 80020A10 C44A000C */ lwc1 $f10, 0xc($v0) +/* 021614 80020A14 E4480004 */ swc1 $f8, 4($v0) +/* 021618 80020A18 E4460000 */ swc1 $f6, ($v0) +/* 02161C 80020A1C 46002180 */ add.s $f6, $f4, $f0 +/* 021620 80020A20 24420010 */ addiu $v0, $v0, 0x10 +/* 021624 80020A24 46005200 */ add.s $f8, $f10, $f0 +/* 021628 80020A28 E446FFF8 */ swc1 $f6, -8($v0) +/* 02162C 80020A2C 1445FFF3 */ bne $v0, $a1, .L800209FC +/* 021630 80020A30 E448FFFC */ swc1 $f8, -4($v0) +.L80020A34: +/* 021634 80020A34 01008025 */ move $s0, $t0 +.L80020A38: +/* 021638 80020A38 C5840000 */ lwc1 $f4, ($t4) +/* 02163C 80020A3C C586FFFC */ lwc1 $f6, -4($t4) +/* 021640 80020A40 258C0004 */ addiu $t4, $t4, 4 +/* 021644 80020A44 46062301 */ sub.s $f12, $f4, $f6 +/* 021648 80020A48 29010005 */ slti $at, $t0, 5 +/* 02164C 80020A4C 460060A1 */ cvt.d.s $f2, $f12 +/* 021650 80020A50 4622803C */ c.lt.d $f16, $f2 +/* 021654 80020A54 4600B006 */ mov.s $f0, $f22 +/* 021658 80020A58 45000005 */ bc1f .L80020A70 +/* 02165C 80020A5C 24190005 */ li $t9, 5 +/* 021660 80020A60 4600B2A1 */ cvt.d.s $f10, $f22 +/* 021664 80020A64 462E5201 */ sub.d $f8, $f10, $f14 +/* 021668 80020A68 10000008 */ b .L80020A8C +/* 02166C 80020A6C 46204020 */ cvt.s.d $f0, $f8 +.L80020A70: +/* 021670 80020A70 4632103C */ c.lt.d $f2, $f18 +/* 021674 80020A74 00000000 */ nop +/* 021678 80020A78 45000004 */ bc1f .L80020A8C +/* 02167C 80020A7C 00000000 */ nop +/* 021680 80020A80 4600B121 */ cvt.d.s $f4, $f22 +/* 021684 80020A84 462E2180 */ add.d $f6, $f4, $f14 +/* 021688 80020A88 46203020 */ cvt.s.d $f0, $f6 +.L80020A8C: +/* 02168C 80020A8C 10200021 */ beqz $at, .L80020B14 +/* 021690 80020A90 03282023 */ subu $a0, $t9, $t0 +/* 021694 80020A94 308E0003 */ andi $t6, $a0, 3 +/* 021698 80020A98 11C0000C */ beqz $t6, .L80020ACC +/* 02169C 80020A9C 01C81821 */ addu $v1, $t6, $t0 +/* 0216A0 80020AA0 0010C080 */ sll $t8, $s0, 2 +/* 0216A4 80020AA4 27AF00CC */ addiu $t7, $sp, 0xcc +/* 0216A8 80020AA8 030F1021 */ addu $v0, $t8, $t7 +.L80020AAC: +/* 0216AC 80020AAC C44A0000 */ lwc1 $f10, ($v0) +/* 0216B0 80020AB0 26100001 */ addiu $s0, $s0, 1 +/* 0216B4 80020AB4 46005200 */ add.s $f8, $f10, $f0 +/* 0216B8 80020AB8 24420004 */ addiu $v0, $v0, 4 +/* 0216BC 80020ABC 1470FFFB */ bne $v1, $s0, .L80020AAC +/* 0216C0 80020AC0 E448FFFC */ swc1 $f8, -4($v0) +/* 0216C4 80020AC4 24010005 */ li $at, 5 +/* 0216C8 80020AC8 12010011 */ beq $s0, $at, .L80020B10 +.L80020ACC: +/* 0216CC 80020ACC 0010C880 */ sll $t9, $s0, 2 +/* 0216D0 80020AD0 27AE00CC */ addiu $t6, $sp, 0xcc +/* 0216D4 80020AD4 032E1021 */ addu $v0, $t9, $t6 +.L80020AD8: +/* 0216D8 80020AD8 C4440000 */ lwc1 $f4, ($v0) +/* 0216DC 80020ADC C44A0004 */ lwc1 $f10, 4($v0) +/* 0216E0 80020AE0 46002180 */ add.s $f6, $f4, $f0 +/* 0216E4 80020AE4 C4440008 */ lwc1 $f4, 8($v0) +/* 0216E8 80020AE8 46005200 */ add.s $f8, $f10, $f0 +/* 0216EC 80020AEC C44A000C */ lwc1 $f10, 0xc($v0) +/* 0216F0 80020AF0 E4480004 */ swc1 $f8, 4($v0) +/* 0216F4 80020AF4 E4460000 */ swc1 $f6, ($v0) +/* 0216F8 80020AF8 46002180 */ add.s $f6, $f4, $f0 +/* 0216FC 80020AFC 24420010 */ addiu $v0, $v0, 0x10 +/* 021700 80020B00 46005200 */ add.s $f8, $f10, $f0 +/* 021704 80020B04 E446FFF8 */ swc1 $f6, -8($v0) +/* 021708 80020B08 1446FFF3 */ bne $v0, $a2, .L80020AD8 +/* 02170C 80020B0C E448FFFC */ swc1 $f8, -4($v0) +.L80020B10: +/* 021710 80020B10 01008025 */ move $s0, $t0 +.L80020B14: +/* 021714 80020B14 C7E40000 */ lwc1 $f4, ($ra) +/* 021718 80020B18 C7E6FFFC */ lwc1 $f6, -4($ra) +/* 02171C 80020B1C 24180005 */ li $t8, 5 +/* 021720 80020B20 46062301 */ sub.s $f12, $f4, $f6 +/* 021724 80020B24 03082023 */ subu $a0, $t8, $t0 +/* 021728 80020B28 460060A1 */ cvt.d.s $f2, $f12 +/* 02172C 80020B2C 4622803C */ c.lt.d $f16, $f2 +/* 021730 80020B30 4600B006 */ mov.s $f0, $f22 +/* 021734 80020B34 45000005 */ bc1f .L80020B4C +/* 021738 80020B38 29010005 */ slti $at, $t0, 5 +/* 02173C 80020B3C 4600B2A1 */ cvt.d.s $f10, $f22 +/* 021740 80020B40 462E5201 */ sub.d $f8, $f10, $f14 +/* 021744 80020B44 10000008 */ b .L80020B68 +/* 021748 80020B48 46204020 */ cvt.s.d $f0, $f8 +.L80020B4C: +/* 02174C 80020B4C 4632103C */ c.lt.d $f2, $f18 +/* 021750 80020B50 00000000 */ nop +/* 021754 80020B54 45000004 */ bc1f .L80020B68 +/* 021758 80020B58 00000000 */ nop +/* 02175C 80020B5C 4600B121 */ cvt.d.s $f4, $f22 +/* 021760 80020B60 462E2180 */ add.d $f6, $f4, $f14 +/* 021764 80020B64 46203020 */ cvt.s.d $f0, $f6 +.L80020B68: +/* 021768 80020B68 1020001F */ beqz $at, .L80020BE8 +/* 02176C 80020B6C 308F0003 */ andi $t7, $a0, 3 +/* 021770 80020B70 11E0000C */ beqz $t7, .L80020BA4 +/* 021774 80020B74 01E81821 */ addu $v1, $t7, $t0 +/* 021778 80020B78 0010C880 */ sll $t9, $s0, 2 +/* 02177C 80020B7C 27AE00B8 */ addiu $t6, $sp, 0xb8 +/* 021780 80020B80 032E1021 */ addu $v0, $t9, $t6 +.L80020B84: +/* 021784 80020B84 C44A0000 */ lwc1 $f10, ($v0) +/* 021788 80020B88 26100001 */ addiu $s0, $s0, 1 +/* 02178C 80020B8C 46005200 */ add.s $f8, $f10, $f0 +/* 021790 80020B90 24420004 */ addiu $v0, $v0, 4 +/* 021794 80020B94 1470FFFB */ bne $v1, $s0, .L80020B84 +/* 021798 80020B98 E448FFFC */ swc1 $f8, -4($v0) +/* 02179C 80020B9C 24010005 */ li $at, 5 +/* 0217A0 80020BA0 12010011 */ beq $s0, $at, .L80020BE8 +.L80020BA4: +/* 0217A4 80020BA4 0010C080 */ sll $t8, $s0, 2 +/* 0217A8 80020BA8 27AF00B8 */ addiu $t7, $sp, 0xb8 +/* 0217AC 80020BAC 030F1021 */ addu $v0, $t8, $t7 +.L80020BB0: +/* 0217B0 80020BB0 C4440000 */ lwc1 $f4, ($v0) +/* 0217B4 80020BB4 C44A0004 */ lwc1 $f10, 4($v0) +/* 0217B8 80020BB8 46002180 */ add.s $f6, $f4, $f0 +/* 0217BC 80020BBC C4440008 */ lwc1 $f4, 8($v0) +/* 0217C0 80020BC0 46005200 */ add.s $f8, $f10, $f0 +/* 0217C4 80020BC4 C44A000C */ lwc1 $f10, 0xc($v0) +/* 0217C8 80020BC8 E4480004 */ swc1 $f8, 4($v0) +/* 0217CC 80020BCC E4460000 */ swc1 $f6, ($v0) +/* 0217D0 80020BD0 46002180 */ add.s $f6, $f4, $f0 +/* 0217D4 80020BD4 24420010 */ addiu $v0, $v0, 0x10 +/* 0217D8 80020BD8 46005200 */ add.s $f8, $f10, $f0 +/* 0217DC 80020BDC E446FFF8 */ swc1 $f6, -8($v0) +/* 0217E0 80020BE0 1447FFF3 */ bne $v0, $a3, .L80020BB0 +/* 0217E4 80020BE4 E448FFFC */ swc1 $f8, -4($v0) +.L80020BE8: +/* 0217E8 80020BE8 25080001 */ addiu $t0, $t0, 1 +/* 0217EC 80020BEC 24010005 */ li $at, 5 +/* 0217F0 80020BF0 1501FF59 */ bne $t0, $at, .L80020958 +/* 0217F4 80020BF4 27FF0004 */ addiu $ra, $ra, 4 +/* 0217F8 80020BF8 8279003F */ lb $t9, 0x3f($s3) +/* 0217FC 80020BFC 02402825 */ move $a1, $s2 +/* 021800 80020C00 17200027 */ bnez $t9, .L80020CA0 +/* 021804 80020C04 27A400E0 */ addiu $a0, $sp, 0xe0 +/* 021808 80020C08 4406A000 */ mfc1 $a2, $f20 +/* 02180C 80020C0C 0C008950 */ jal func_80022540 +/* 021810 80020C10 27A400E0 */ addiu $a0, $sp, 0xe0 +/* 021814 80020C14 444EF800 */ cfc1 $t6, $31 +/* 021818 80020C18 4406A000 */ mfc1 $a2, $f20 +/* 02181C 80020C1C 35C10003 */ ori $at, $t6, 3 +/* 021820 80020C20 38210002 */ xori $at, $at, 2 +/* 021824 80020C24 44C1F800 */ ctc1 $at, $31 +/* 021828 80020C28 27A400CC */ addiu $a0, $sp, 0xcc +/* 02182C 80020C2C 46000124 */ cvt.w.s $f4, $f0 +/* 021830 80020C30 02402825 */ move $a1, $s2 +/* 021834 80020C34 44182000 */ mfc1 $t8, $f4 +/* 021838 80020C38 44CEF800 */ ctc1 $t6, $31 +/* 02183C 80020C3C 0C008950 */ jal func_80022540 +/* 021840 80020C40 A6D80000 */ sh $t8, ($s6) +/* 021844 80020C44 444FF800 */ cfc1 $t7, $31 +/* 021848 80020C48 4406A000 */ mfc1 $a2, $f20 +/* 02184C 80020C4C 35E10003 */ ori $at, $t7, 3 +/* 021850 80020C50 38210002 */ xori $at, $at, 2 +/* 021854 80020C54 44C1F800 */ ctc1 $at, $31 +/* 021858 80020C58 27A400B8 */ addiu $a0, $sp, 0xb8 +/* 02185C 80020C5C 460001A4 */ cvt.w.s $f6, $f0 +/* 021860 80020C60 02402825 */ move $a1, $s2 +/* 021864 80020C64 44193000 */ mfc1 $t9, $f6 +/* 021868 80020C68 44CFF800 */ ctc1 $t7, $31 +/* 02186C 80020C6C 0C008950 */ jal func_80022540 +/* 021870 80020C70 A6D90002 */ sh $t9, 2($s6) +/* 021874 80020C74 444EF800 */ cfc1 $t6, $31 +/* 021878 80020C78 00000000 */ nop +/* 02187C 80020C7C 35C10003 */ ori $at, $t6, 3 +/* 021880 80020C80 38210002 */ xori $at, $at, 2 +/* 021884 80020C84 44C1F800 */ ctc1 $at, $31 +/* 021888 80020C88 00000000 */ nop +/* 02188C 80020C8C 460002A4 */ cvt.w.s $f10, $f0 +/* 021890 80020C90 44185000 */ mfc1 $t8, $f10 +/* 021894 80020C94 44CEF800 */ ctc1 $t6, $31 +/* 021898 80020C98 10000027 */ b .L80020D38 +/* 02189C 80020C9C A6D80004 */ sh $t8, 4($s6) +.L80020CA0: +/* 0218A0 80020CA0 4406A000 */ mfc1 $a2, $f20 +/* 0218A4 80020CA4 0C008A22 */ jal func_80022888 +/* 0218A8 80020CA8 02402825 */ move $a1, $s2 +/* 0218AC 80020CAC 444FF800 */ cfc1 $t7, $31 +/* 0218B0 80020CB0 4406A000 */ mfc1 $a2, $f20 +/* 0218B4 80020CB4 35E10003 */ ori $at, $t7, 3 +/* 0218B8 80020CB8 38210002 */ xori $at, $at, 2 +/* 0218BC 80020CBC 44C1F800 */ ctc1 $at, $31 +/* 0218C0 80020CC0 27A400CC */ addiu $a0, $sp, 0xcc +/* 0218C4 80020CC4 46000224 */ cvt.w.s $f8, $f0 +/* 0218C8 80020CC8 02402825 */ move $a1, $s2 +/* 0218CC 80020CCC 44194000 */ mfc1 $t9, $f8 +/* 0218D0 80020CD0 44CFF800 */ ctc1 $t7, $31 +/* 0218D4 80020CD4 0C008A22 */ jal func_80022888 +/* 0218D8 80020CD8 A6D90000 */ sh $t9, ($s6) +/* 0218DC 80020CDC 444EF800 */ cfc1 $t6, $31 +/* 0218E0 80020CE0 4406A000 */ mfc1 $a2, $f20 +/* 0218E4 80020CE4 35C10003 */ ori $at, $t6, 3 +/* 0218E8 80020CE8 38210002 */ xori $at, $at, 2 +/* 0218EC 80020CEC 44C1F800 */ ctc1 $at, $31 +/* 0218F0 80020CF0 27A400B8 */ addiu $a0, $sp, 0xb8 +/* 0218F4 80020CF4 46000124 */ cvt.w.s $f4, $f0 +/* 0218F8 80020CF8 02402825 */ move $a1, $s2 +/* 0218FC 80020CFC 44182000 */ mfc1 $t8, $f4 +/* 021900 80020D00 44CEF800 */ ctc1 $t6, $31 +/* 021904 80020D04 0C008A22 */ jal func_80022888 +/* 021908 80020D08 A6D80002 */ sh $t8, 2($s6) +/* 02190C 80020D0C 444FF800 */ cfc1 $t7, $31 +/* 021910 80020D10 00000000 */ nop +/* 021914 80020D14 35E10003 */ ori $at, $t7, 3 +/* 021918 80020D18 38210002 */ xori $at, $at, 2 +/* 02191C 80020D1C 44C1F800 */ ctc1 $at, $31 +/* 021920 80020D20 00000000 */ nop +/* 021924 80020D24 460001A4 */ cvt.w.s $f6, $f0 +/* 021928 80020D28 44193000 */ mfc1 $t9, $f6 +/* 02192C 80020D2C 44CFF800 */ ctc1 $t7, $31 +/* 021930 80020D30 A6D90004 */ sh $t9, 4($s6) +/* 021934 80020D34 00000000 */ nop +.L80020D38: +/* 021938 80020D38 8FA30168 */ lw $v1, 0x168($sp) +/* 02193C 80020D3C 86680026 */ lh $t0, 0x26($s3) +/* 021940 80020D40 2401FFFF */ li $at, -1 +/* 021944 80020D44 10610005 */ beq $v1, $at, .L80020D5C +/* 021948 80020D48 E6740000 */ swc1 $f20, ($s3) +/* 02194C 80020D4C 0115082A */ slt $at, $t0, $s5 +/* 021950 80020D50 14200002 */ bnez $at, .L80020D5C +/* 021954 80020D54 01157023 */ subu $t6, $t0, $s5 +/* 021958 80020D58 01C34021 */ addu $t0, $t6, $v1 +.L80020D5C: +/* 02195C 80020D5C 3C098012 */ lui $t1, %hi(D_8011AE74) # $t1, 0x8012 +/* 021960 80020D60 2529AE74 */ addiu $t1, %lo(D_8011AE74) # addiu $t1, $t1, -0x518c +/* 021964 80020D64 8D380000 */ lw $t8, ($t1) +/* 021968 80020D68 00147880 */ sll $t7, $s4, 2 +/* 02196C 80020D6C 00087080 */ sll $t6, $t0, 2 +/* 021970 80020D70 030FC821 */ addu $t9, $t8, $t7 +/* 021974 80020D74 032EC021 */ addu $t8, $t9, $t6 +/* 021978 80020D78 8F0F0000 */ lw $t7, ($t8) +/* 02197C 80020D7C 3C01800E */ lui $at, %hi(D_800E5684) # $at, 0x800e +/* 021980 80020D80 8DF1003C */ lw $s1, 0x3c($t7) +/* 021984 80020D84 C4215680 */ lwc1 $f1, %lo(D_800E5680)($at) +/* 021988 80020D88 82390014 */ lb $t9, 0x14($s1) +/* 02198C 80020D8C C4205684 */ lwc1 $f0, %lo(D_800E5684)($at) +/* 021990 80020D90 44995000 */ mtc1 $t9, $f10 +/* 021994 80020D94 00000000 */ nop +/* 021998 80020D98 46805220 */ cvt.s.w $f8, $f10 +/* 02199C 80020D9C 46004121 */ cvt.d.s $f4, $f8 +/* 0219A0 80020DA0 46202182 */ mul.d $f6, $f4, $f0 +/* 0219A4 80020DA4 462032A0 */ cvt.s.d $f10, $f6 +/* 0219A8 80020DA8 4616503C */ c.lt.s $f10, $f22 +/* 0219AC 80020DAC E7AA0124 */ swc1 $f10, 0x124($sp) +/* 0219B0 80020DB0 45000004 */ bc1f .L80020DC4 +/* 0219B4 80020DB4 00000000 */ nop +/* 0219B8 80020DB8 C668000C */ lwc1 $f8, 0xc($s3) +/* 0219BC 80020DBC 10000004 */ b .L80020DD0 +/* 0219C0 80020DC0 E7A80124 */ swc1 $f8, 0x124($sp) +.L80020DC4: +/* 0219C4 80020DC4 C7A40124 */ lwc1 $f4, 0x124($sp) +/* 0219C8 80020DC8 00000000 */ nop +/* 0219CC 80020DCC E664000C */ swc1 $f4, 0xc($s3) +.L80020DD0: +/* 0219D0 80020DD0 C7A60124 */ lwc1 $f6, 0x124($sp) +/* 0219D4 80020DD4 00000000 */ nop +/* 0219D8 80020DD8 4606B03E */ c.le.s $f22, $f6 +/* 0219DC 80020DDC 00000000 */ nop +/* 0219E0 80020DE0 45000029 */ bc1f .L80020E88 +/* 0219E4 80020DE4 00000000 */ nop +/* 0219E8 80020DE8 16400027 */ bnez $s2, .L80020E88 +/* 0219EC 80020DEC 25020001 */ addiu $v0, $t0, 1 +/* 0219F0 80020DF0 2401FFFF */ li $at, -1 +/* 0219F4 80020DF4 10610005 */ beq $v1, $at, .L80020E0C +/* 0219F8 80020DF8 00408025 */ move $s0, $v0 +/* 0219FC 80020DFC 0055082A */ slt $at, $v0, $s5 +/* 021A00 80020E00 14200002 */ bnez $at, .L80020E0C +/* 021A04 80020E04 00557023 */ subu $t6, $v0, $s5 +/* 021A08 80020E08 01C38021 */ addu $s0, $t6, $v1 +.L80020E0C: +/* 021A0C 80020E0C 0215082A */ slt $at, $s0, $s5 +/* 021A10 80020E10 10200016 */ beqz $at, .L80020E6C +/* 021A14 80020E14 00147880 */ sll $t7, $s4, 2 +/* 021A18 80020E18 8D380000 */ lw $t8, ($t1) +/* 021A1C 80020E1C 00107080 */ sll $t6, $s0, 2 +/* 021A20 80020E20 030FC821 */ addu $t9, $t8, $t7 +/* 021A24 80020E24 032EC021 */ addu $t8, $t9, $t6 +/* 021A28 80020E28 8F0F0000 */ lw $t7, ($t8) +/* 021A2C 80020E2C C7AE0124 */ lwc1 $f14, 0x124($sp) +/* 021A30 80020E30 8DF1003C */ lw $s1, 0x3c($t7) +/* 021A34 80020E34 00000000 */ nop +/* 021A38 80020E38 82220014 */ lb $v0, 0x14($s1) +/* 021A3C 80020E3C 00000000 */ nop +/* 021A40 80020E40 04400009 */ bltz $v0, .L80020E68 +/* 021A44 80020E44 00000000 */ nop +/* 021A48 80020E48 44825000 */ mtc1 $v0, $f10 +/* 021A4C 80020E4C 00000000 */ nop +/* 021A50 80020E50 46805220 */ cvt.s.w $f8, $f10 +/* 021A54 80020E54 46004121 */ cvt.d.s $f4, $f8 +/* 021A58 80020E58 46202182 */ mul.d $f6, $f4, $f0 +/* 021A5C 80020E5C 462032A0 */ cvt.s.d $f10, $f6 +/* 021A60 80020E60 10000002 */ b .L80020E6C +/* 021A64 80020E64 E7AA011C */ swc1 $f10, 0x11c($sp) +.L80020E68: +/* 021A68 80020E68 E7AE011C */ swc1 $f14, 0x11c($sp) +.L80020E6C: +/* 021A6C 80020E6C C7A8011C */ lwc1 $f8, 0x11c($sp) +/* 021A70 80020E70 C7A40124 */ lwc1 $f4, 0x124($sp) +/* 021A74 80020E74 00000000 */ nop +/* 021A78 80020E78 46044181 */ sub.s $f6, $f8, $f4 +/* 021A7C 80020E7C 46143282 */ mul.s $f10, $f6, $f20 +/* 021A80 80020E80 46045200 */ add.s $f8, $f10, $f4 +/* 021A84 80020E84 E6680008 */ swc1 $f8, 8($s3) +.L80020E88: +/* 021A88 80020E88 1240002F */ beqz $s2, .L80020F48 +/* 021A8C 80020E8C 00000000 */ nop +/* 021A90 80020E90 86790026 */ lh $t9, 0x26($s3) +/* 021A94 80020E94 2401FFFF */ li $at, -1 +/* 021A98 80020E98 272E0001 */ addiu $t6, $t9, 1 +/* 021A9C 80020E9C 14610014 */ bne $v1, $at, .L80020EF0 +/* 021AA0 80020EA0 A66E0026 */ sh $t6, 0x26($s3) +/* 021AA4 80020EA4 86620026 */ lh $v0, 0x26($s3) +/* 021AA8 80020EA8 0014C080 */ sll $t8, $s4, 2 +/* 021AAC 80020EAC 0055082A */ slt $at, $v0, $s5 +/* 021AB0 80020EB0 14200004 */ bnez $at, .L80020EC4 +/* 021AB4 80020EB4 0002C880 */ sll $t9, $v0, 2 +/* 021AB8 80020EB8 26B8FFFF */ addiu $t8, $s5, -1 +/* 021ABC 80020EBC 10000022 */ b .L80020F48 +/* 021AC0 80020EC0 A6780026 */ sh $t8, 0x26($s3) +.L80020EC4: +/* 021AC4 80020EC4 8D2F0000 */ lw $t7, ($t1) +/* 021AC8 80020EC8 02C02025 */ move $a0, $s6 +/* 021ACC 80020ECC 01F97021 */ addu $t6, $t7, $t9 +/* 021AD0 80020ED0 01D87821 */ addu $t7, $t6, $t8 +/* 021AD4 80020ED4 8DF90000 */ lw $t9, ($t7) +/* 021AD8 80020ED8 02603025 */ move $a2, $s3 +/* 021ADC 80020EDC 8F25003C */ lw $a1, 0x3c($t9) +/* 021AE0 80020EE0 0C008497 */ jal func_8002125C +/* 021AE4 80020EE4 02803825 */ move $a3, $s4 +/* 021AE8 80020EE8 10000018 */ b .L80020F4C +/* 021AEC 80020EEC 926F002E */ lbu $t7, 0x2e($s3) +.L80020EF0: +/* 021AF0 80020EF0 86620026 */ lh $v0, 0x26($s3) +/* 021AF4 80020EF4 246E0001 */ addiu $t6, $v1, 1 +/* 021AF8 80020EF8 02A2082A */ slt $at, $s5, $v0 +/* 021AFC 80020EFC 10200004 */ beqz $at, .L80020F10 +/* 021B00 80020F00 02C02025 */ move $a0, $s6 +/* 021B04 80020F04 A66E0026 */ sh $t6, 0x26($s3) +/* 021B08 80020F08 86620026 */ lh $v0, 0x26($s3) +/* 021B0C 80020F0C 00000000 */ nop +.L80020F10: +/* 021B10 80020F10 0055082A */ slt $at, $v0, $s5 +/* 021B14 80020F14 14200003 */ bnez $at, .L80020F24 +/* 021B18 80020F18 00409025 */ move $s2, $v0 +/* 021B1C 80020F1C 0055C023 */ subu $t8, $v0, $s5 +/* 021B20 80020F20 03039021 */ addu $s2, $t8, $v1 +.L80020F24: +/* 021B24 80020F24 8D2F0000 */ lw $t7, ($t1) +/* 021B28 80020F28 02549021 */ addu $s2, $s2, $s4 +/* 021B2C 80020F2C 0012C880 */ sll $t9, $s2, 2 +/* 021B30 80020F30 01F97021 */ addu $t6, $t7, $t9 +/* 021B34 80020F34 8DD80000 */ lw $t8, ($t6) +/* 021B38 80020F38 02603025 */ move $a2, $s3 +/* 021B3C 80020F3C 8F05003C */ lw $a1, 0x3c($t8) +/* 021B40 80020F40 0C008497 */ jal func_8002125C +/* 021B44 80020F44 02803825 */ move $a3, $s4 +.L80020F48: +/* 021B48 80020F48 926F002E */ lbu $t7, 0x2e($s3) +.L80020F4C: +/* 021B4C 80020F4C 24010003 */ li $at, 3 +/* 021B50 80020F50 15E10049 */ bne $t7, $at, .L80021078 +/* 021B54 80020F54 3C038012 */ lui $v1, %hi(D_8011AE78) # $v1, 0x8012 +/* 021B58 80020F58 8463AE78 */ lh $v1, %lo(D_8011AE78)($v1) +/* 021B5C 80020F5C 00004025 */ move $t0, $zero +/* 021B60 80020F60 18600015 */ blez $v1, .L80020FB8 +/* 021B64 80020F64 3C098012 */ lui $t1, %hi(D_8011AE74) # $t1, 0x8012 +/* 021B68 80020F68 3C068012 */ lui $a2, %hi(D_8011AE74) # $a2, 0x8012 +/* 021B6C 80020F6C 8CC6AE74 */ lw $a2, %lo(D_8011AE74)($a2) +/* 021B70 80020F70 8262003E */ lb $v0, 0x3e($s3) +/* 021B74 80020F74 8CD90000 */ lw $t9, ($a2) +/* 021B78 80020F78 00000000 */ nop +/* 021B7C 80020F7C 8F2E007C */ lw $t6, 0x7c($t9) +/* 021B80 80020F80 00000000 */ nop +/* 021B84 80020F84 104E000C */ beq $v0, $t6, .L80020FB8 +/* 021B88 80020F88 00000000 */ nop +.L80020F8C: +/* 021B8C 80020F8C 25080001 */ addiu $t0, $t0, 1 +/* 021B90 80020F90 0103082A */ slt $at, $t0, $v1 +/* 021B94 80020F94 10200008 */ beqz $at, .L80020FB8 +/* 021B98 80020F98 0008C080 */ sll $t8, $t0, 2 +/* 021B9C 80020F9C 00D87821 */ addu $t7, $a2, $t8 +/* 021BA0 80020FA0 8DF90000 */ lw $t9, ($t7) +/* 021BA4 80020FA4 00000000 */ nop +/* 021BA8 80020FA8 8F2E007C */ lw $t6, 0x7c($t9) +/* 021BAC 80020FAC 00000000 */ nop +/* 021BB0 80020FB0 144EFFF6 */ bne $v0, $t6, .L80020F8C +/* 021BB4 80020FB4 00000000 */ nop +.L80020FB8: +/* 021BB8 80020FB8 1103002F */ beq $t0, $v1, .L80021078 +/* 021BBC 80020FBC 2529AE74 */ addiu $t1, %lo(D_8011AE74) # addiu $t1, $t1, -0x518c +/* 021BC0 80020FC0 8D380000 */ lw $t8, ($t1) +/* 021BC4 80020FC4 00087880 */ sll $t7, $t0, 2 +/* 021BC8 80020FC8 030FC821 */ addu $t9, $t8, $t7 +/* 021BCC 80020FCC 8F2E0000 */ lw $t6, ($t9) +/* 021BD0 80020FD0 00000000 */ nop +/* 021BD4 80020FD4 8DC30064 */ lw $v1, 0x64($t6) +/* 021BD8 80020FD8 00000000 */ nop +/* 021BDC 80020FDC 10600026 */ beqz $v1, .L80021078 +/* 021BE0 80020FE0 00000000 */ nop +/* 021BE4 80020FE4 C466000C */ lwc1 $f6, 0xc($v1) +/* 021BE8 80020FE8 C6CA000C */ lwc1 $f10, 0xc($s6) +/* 021BEC 80020FEC 00000000 */ nop +/* 021BF0 80020FF0 460A3101 */ sub.s $f4, $f6, $f10 +/* 021BF4 80020FF4 E7A40124 */ swc1 $f4, 0x124($sp) +/* 021BF8 80020FF8 C6C60010 */ lwc1 $f6, 0x10($s6) +/* 021BFC 80020FFC C4680010 */ lwc1 $f8, 0x10($v1) +/* 021C00 80021000 00000000 */ nop +/* 021C04 80021004 46064281 */ sub.s $f10, $f8, $f6 +/* 021C08 80021008 E7AA0120 */ swc1 $f10, 0x120($sp) +/* 021C0C 8002100C C6C80014 */ lwc1 $f8, 0x14($s6) +/* 021C10 80021010 C4640014 */ lwc1 $f4, 0x14($v1) +/* 021C14 80021014 C7AA0124 */ lwc1 $f10, 0x124($sp) +/* 021C18 80021018 46082181 */ sub.s $f6, $f4, $f8 +/* 021C1C 8002101C C7A80120 */ lwc1 $f8, 0x120($sp) +/* 021C20 80021020 460A5102 */ mul.s $f4, $f10, $f10 +/* 021C24 80021024 E7A6011C */ swc1 $f6, 0x11c($sp) +/* 021C28 80021028 46084182 */ mul.s $f6, $f8, $f8 +/* 021C2C 8002102C C7A8011C */ lwc1 $f8, 0x11c($sp) +/* 021C30 80021030 46062280 */ add.s $f10, $f4, $f6 +/* 021C34 80021034 46084102 */ mul.s $f4, $f8, $f8 +/* 021C38 80021038 0C0326B4 */ jal sqrtf +/* 021C3C 8002103C 46045300 */ add.s $f12, $f10, $f4 +/* 021C40 80021040 4600B03C */ c.lt.s $f22, $f0 +/* 021C44 80021044 C7AE011C */ lwc1 $f14, 0x11c($sp) +/* 021C48 80021048 4500000B */ bc1f .L80021078 +/* 021C4C 8002104C 46000506 */ mov.s $f20, $f0 +/* 021C50 80021050 C7AC0124 */ lwc1 $f12, 0x124($sp) +/* 021C54 80021054 0C01C1D4 */ jal func_80070750 +/* 021C58 80021058 00000000 */ nop +/* 021C5C 8002105C 24018000 */ li $at, -32768 +/* 021C60 80021060 0041C021 */ addu $t8, $v0, $at +/* 021C64 80021064 A6D80000 */ sh $t8, ($s6) +/* 021C68 80021068 C7AC0120 */ lwc1 $f12, 0x120($sp) +/* 021C6C 8002106C 0C01C1D4 */ jal func_80070750 +/* 021C70 80021070 4600A386 */ mov.s $f14, $f20 +/* 021C74 80021074 A6C20002 */ sh $v0, 2($s6) +.L80021078: +/* 021C78 80021078 826F002F */ lb $t7, 0x2f($s3) +/* 021C7C 8002107C 02C02025 */ move $a0, $s6 +/* 021C80 80021080 AECF0074 */ sw $t7, 0x74($s6) +/* 021C84 80021084 8FA5019C */ lw $a1, 0x19c($sp) +/* 021C88 80021088 0C02BF0F */ jal func_800AFC3C +/* 021C8C 8002108C 00000000 */ nop +/* 021C90 80021090 00001025 */ move $v0, $zero +.L80021094: +/* 021C94 80021094 8FBF0054 */ lw $ra, 0x54($sp) +.L80021098: +/* 021C98 80021098 C7B50028 */ lwc1 $f21, 0x28($sp) +/* 021C9C 8002109C C7B4002C */ lwc1 $f20, 0x2c($sp) +/* 021CA0 800210A0 C7B70030 */ lwc1 $f23, 0x30($sp) +/* 021CA4 800210A4 C7B60034 */ lwc1 $f22, 0x34($sp) +/* 021CA8 800210A8 8FB00038 */ lw $s0, 0x38($sp) +/* 021CAC 800210AC 8FB1003C */ lw $s1, 0x3c($sp) +/* 021CB0 800210B0 8FB20040 */ lw $s2, 0x40($sp) +/* 021CB4 800210B4 8FB30044 */ lw $s3, 0x44($sp) +/* 021CB8 800210B8 8FB40048 */ lw $s4, 0x48($sp) +/* 021CBC 800210BC 8FB5004C */ lw $s5, 0x4c($sp) +/* 021CC0 800210C0 8FB60050 */ lw $s6, 0x50($sp) +/* 021CC4 800210C4 03E00008 */ jr $ra +/* 021CC8 800210C8 27BD0198 */ addiu $sp, $sp, 0x198 + diff --git a/asm/non_matchings/unknown_005740/func_800210CC.s b/asm/non_matchings/unknown_005740/func_800210CC.s new file mode 100644 index 00000000..e3af7ec9 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800210CC.s @@ -0,0 +1,18 @@ +glabel func_800210CC +/* 021CCC 800210CC 3C038012 */ lui $v1, %hi(D_8011AD3D) # $v1, 0x8012 +/* 021CD0 800210D0 2463AD3D */ addiu $v1, %lo(D_8011AD3D) # addiu $v1, $v1, -0x52c3 +/* 021CD4 800210D4 80780000 */ lb $t8, ($v1) +/* 021CD8 800210D8 00047600 */ sll $t6, $a0, 0x18 +/* 021CDC 800210DC 000E7E03 */ sra $t7, $t6, 0x18 +/* 021CE0 800210E0 01F8082A */ slt $at, $t7, $t8 +/* 021CE4 800210E4 14200004 */ bnez $at, .L800210F8 +/* 021CE8 800210E8 AFA40000 */ sw $a0, ($sp) +/* 021CEC 800210EC A06F0000 */ sb $t7, ($v1) +/* 021CF0 800210F0 03E00008 */ jr $ra +/* 021CF4 800210F4 24020001 */ li $v0, 1 + +.L800210F8: +/* 021CF8 800210F8 00001025 */ move $v0, $zero +/* 021CFC 800210FC 03E00008 */ jr $ra +/* 021D00 80021100 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80021104.s b/asm/non_matchings/unknown_005740/func_80021104.s new file mode 100644 index 00000000..a95d6f34 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80021104.s @@ -0,0 +1,92 @@ +glabel func_80021104 +/* 021D04 80021104 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 021D08 80021108 AFBF0014 */ sw $ra, 0x14($sp) +/* 021D0C 8002110C AFA60028 */ sw $a2, 0x28($sp) +/* 021D10 80021110 848E0048 */ lh $t6, 0x48($a0) +/* 021D14 80021114 8CA3001C */ lw $v1, 0x1c($a1) +/* 021D18 80021118 24010033 */ li $at, 51 +/* 021D1C 8002111C 15C10009 */ bne $t6, $at, .L80021144 +/* 021D20 80021120 3C028012 */ lui $v0, %hi(D_8011AD3E) # $v0, 0x8012 +/* 021D24 80021124 2442AD3E */ addiu $v0, %lo(D_8011AD3E) # addiu $v0, $v0, -0x52c2 +/* 021D28 80021128 804F0000 */ lb $t7, ($v0) +/* 021D2C 8002112C 00000000 */ nop +/* 021D30 80021130 A0AF0044 */ sb $t7, 0x44($a1) +/* 021D34 80021134 80580000 */ lb $t8, ($v0) +/* 021D38 80021138 00000000 */ nop +/* 021D3C 8002113C 27190001 */ addiu $t9, $t8, 1 +/* 021D40 80021140 A0590000 */ sb $t9, ($v0) +.L80021144: +/* 021D44 80021144 8FA80028 */ lw $t0, 0x28($sp) +/* 021D48 80021148 24010012 */ li $at, 18 +/* 021D4C 8002114C 81040022 */ lb $a0, 0x22($t0) +/* 021D50 80021150 00000000 */ nop +/* 021D54 80021154 14810020 */ bne $a0, $at, .L800211D8 +/* 021D58 80021158 2881000A */ slti $at, $a0, 0xa +/* 021D5C 8002115C 80A40030 */ lb $a0, 0x30($a1) +/* 021D60 80021160 0C01997A */ jal func_800665E8 +/* 021D64 80021164 AFA30018 */ sw $v1, 0x18($sp) +/* 021D68 80021168 0C01A73F */ jal func_80069CFC +/* 021D6C 8002116C 00000000 */ nop +/* 021D70 80021170 8FA30018 */ lw $v1, 0x18($sp) +/* 021D74 80021174 C444000C */ lwc1 $f4, 0xc($v0) +/* 021D78 80021178 340A8000 */ li $t2, 32768 +/* 021D7C 8002117C E464000C */ swc1 $f4, 0xc($v1) +/* 021D80 80021180 C4460010 */ lwc1 $f6, 0x10($v0) +/* 021D84 80021184 00000000 */ nop +/* 021D88 80021188 E4660010 */ swc1 $f6, 0x10($v1) +/* 021D8C 8002118C C4480014 */ lwc1 $f8, 0x14($v0) +/* 021D90 80021190 00000000 */ nop +/* 021D94 80021194 E4680014 */ swc1 $f8, 0x14($v1) +/* 021D98 80021198 84490000 */ lh $t1, ($v0) +/* 021D9C 8002119C 00000000 */ nop +/* 021DA0 800211A0 01495823 */ subu $t3, $t2, $t1 +/* 021DA4 800211A4 A46B0000 */ sh $t3, ($v1) +/* 021DA8 800211A8 844C0002 */ lh $t4, 2($v0) +/* 021DAC 800211AC 00000000 */ nop +/* 021DB0 800211B0 000C6823 */ negu $t5, $t4 +/* 021DB4 800211B4 A46D0002 */ sh $t5, 2($v1) +/* 021DB8 800211B8 844E0004 */ lh $t6, 4($v0) +/* 021DBC 800211BC 00000000 */ nop +/* 021DC0 800211C0 A46E0004 */ sh $t6, 4($v1) +/* 021DC4 800211C4 8FAF0028 */ lw $t7, 0x28($sp) +/* 021DC8 800211C8 00000000 */ nop +/* 021DCC 800211CC 81E40022 */ lb $a0, 0x22($t7) +/* 021DD0 800211D0 00000000 */ nop +/* 021DD4 800211D4 2881000A */ slti $at, $a0, 0xa +.L800211D8: +/* 021DD8 800211D8 1420001C */ bnez $at, .L8002124C +/* 021DDC 800211DC 28810012 */ slti $at, $a0, 0x12 +/* 021DE0 800211E0 1020001A */ beqz $at, .L8002124C +/* 021DE4 800211E4 3C188012 */ lui $t8, %hi(D_8011AEE4) # $t8, 0x8012 +/* 021DE8 800211E8 8F18AEE4 */ lw $t8, %lo(D_8011AEE4)($t8) +/* 021DEC 800211EC 0004C880 */ sll $t9, $a0, 2 +/* 021DF0 800211F0 03194021 */ addu $t0, $t8, $t9 +/* 021DF4 800211F4 8D02FFD8 */ lw $v0, -0x28($t0) +/* 021DF8 800211F8 00000000 */ nop +/* 021DFC 800211FC 10400014 */ beqz $v0, .L80021250 +/* 021E00 80021200 8FBF0014 */ lw $ra, 0x14($sp) +/* 021E04 80021204 C44A000C */ lwc1 $f10, 0xc($v0) +/* 021E08 80021208 00000000 */ nop +/* 021E0C 8002120C E46A000C */ swc1 $f10, 0xc($v1) +/* 021E10 80021210 C4500010 */ lwc1 $f16, 0x10($v0) +/* 021E14 80021214 00000000 */ nop +/* 021E18 80021218 E4700010 */ swc1 $f16, 0x10($v1) +/* 021E1C 8002121C C4520014 */ lwc1 $f18, 0x14($v0) +/* 021E20 80021220 00000000 */ nop +/* 021E24 80021224 E4720014 */ swc1 $f18, 0x14($v1) +/* 021E28 80021228 844A0000 */ lh $t2, ($v0) +/* 021E2C 8002122C 00000000 */ nop +/* 021E30 80021230 A46A0000 */ sh $t2, ($v1) +/* 021E34 80021234 84490002 */ lh $t1, 2($v0) +/* 021E38 80021238 00000000 */ nop +/* 021E3C 8002123C A4690002 */ sh $t1, 2($v1) +/* 021E40 80021240 844B0004 */ lh $t3, 4($v0) +/* 021E44 80021244 00000000 */ nop +/* 021E48 80021248 A46B0004 */ sh $t3, 4($v1) +.L8002124C: +/* 021E4C 8002124C 8FBF0014 */ lw $ra, 0x14($sp) +.L80021250: +/* 021E50 80021250 27BD0020 */ addiu $sp, $sp, 0x20 +/* 021E54 80021254 03E00008 */ jr $ra +/* 021E58 80021258 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8002125C.s b/asm/non_matchings/unknown_005740/func_8002125C.s new file mode 100644 index 00000000..e08fde9d --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8002125C.s @@ -0,0 +1,115 @@ +glabel func_8002125C +/* 021E5C 8002125C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 021E60 80021260 AFBF0014 */ sw $ra, 0x14($sp) +/* 021E64 80021264 AFA70024 */ sw $a3, 0x24($sp) +/* 021E68 80021268 80A20012 */ lb $v0, 0x12($a1) +/* 021E6C 8002126C 00000000 */ nop +/* 021E70 80021270 04400014 */ bltz $v0, .L800212C4 +/* 021E74 80021274 00000000 */ nop +/* 021E78 80021278 808E003B */ lb $t6, 0x3b($a0) +/* 021E7C 8002127C 00000000 */ nop +/* 021E80 80021280 104E0006 */ beq $v0, $t6, .L8002129C +/* 021E84 80021284 00000000 */ nop +/* 021E88 80021288 90AF0016 */ lbu $t7, 0x16($a1) +/* 021E8C 8002128C 00000000 */ nop +/* 021E90 80021290 A48F0018 */ sh $t7, 0x18($a0) +/* 021E94 80021294 80A20012 */ lb $v0, 0x12($a1) +/* 021E98 80021298 00000000 */ nop +.L8002129C: +/* 021E9C 8002129C A082003B */ sb $v0, 0x3b($a0) +/* 021EA0 800212A0 80B80017 */ lb $t8, 0x17($a1) +/* 021EA4 800212A4 00000000 */ nop +/* 021EA8 800212A8 44982000 */ mtc1 $t8, $f4 +/* 021EAC 800212AC 00000000 */ nop +/* 021EB0 800212B0 468021A0 */ cvt.s.w $f6, $f4 +/* 021EB4 800212B4 E4C60014 */ swc1 $f6, 0x14($a2) +/* 021EB8 800212B8 90B90018 */ lbu $t9, 0x18($a1) +/* 021EBC 800212BC 00000000 */ nop +/* 021EC0 800212C0 A0D9002C */ sb $t9, 0x2c($a2) +.L800212C4: +/* 021EC4 800212C4 80A20013 */ lb $v0, 0x13($a1) +/* 021EC8 800212C8 00000000 */ nop +/* 021ECC 800212CC 04400002 */ bltz $v0, .L800212D8 +/* 021ED0 800212D0 00000000 */ nop +/* 021ED4 800212D4 A0C2002F */ sb $v0, 0x2f($a2) +.L800212D8: +/* 021ED8 800212D8 84A40024 */ lh $a0, 0x24($a1) +/* 021EDC 800212DC AFA60020 */ sw $a2, 0x20($sp) +/* 021EE0 800212E0 0C00322D */ jal func_8000C8B4 +/* 021EE4 800212E4 AFA5001C */ sw $a1, 0x1c($sp) +/* 021EE8 800212E8 8FA5001C */ lw $a1, 0x1c($sp) +/* 021EEC 800212EC 8FA60020 */ lw $a2, 0x20($sp) +/* 021EF0 800212F0 240100FF */ li $at, 255 +/* 021EF4 800212F4 A4C20036 */ sh $v0, 0x36($a2) +/* 021EF8 800212F8 80A8002D */ lb $t0, 0x2d($a1) +/* 021EFC 800212FC 00000000 */ nop +/* 021F00 80021300 A0C8003F */ sb $t0, 0x3f($a2) +/* 021F04 80021304 80A90026 */ lb $t1, 0x26($a1) +/* 021F08 80021308 00000000 */ nop +/* 021F0C 8002130C A0C9003A */ sb $t1, 0x3a($a2) +/* 021F10 80021310 80AA001F */ lb $t2, 0x1f($a1) +/* 021F14 80021314 00000000 */ nop +/* 021F18 80021318 A0CA0039 */ sb $t2, 0x39($a2) +/* 021F1C 8002131C 80AB0030 */ lb $t3, 0x30($a1) +/* 021F20 80021320 00000000 */ nop +/* 021F24 80021324 A0CB0043 */ sb $t3, 0x43($a2) +/* 021F28 80021328 90AC001E */ lbu $t4, 0x1e($a1) +/* 021F2C 8002132C 00000000 */ nop +/* 021F30 80021330 A0CC0038 */ sb $t4, 0x38($a2) +/* 021F34 80021334 80AD0029 */ lb $t5, 0x29($a1) +/* 021F38 80021338 00000000 */ nop +/* 021F3C 8002133C A0CD003B */ sb $t5, 0x3b($a2) +/* 021F40 80021340 80AE002E */ lb $t6, 0x2e($a1) +/* 021F44 80021344 00000000 */ nop +/* 021F48 80021348 A0CE0040 */ sb $t6, 0x40($a2) +/* 021F4C 8002134C 80AF002F */ lb $t7, 0x2f($a1) +/* 021F50 80021350 00000000 */ nop +/* 021F54 80021354 A0CF0041 */ sb $t7, 0x41($a2) +/* 021F58 80021358 80B8002B */ lb $t8, 0x2b($a1) +/* 021F5C 8002135C 00000000 */ nop +/* 021F60 80021360 A0D8003C */ sb $t8, 0x3c($a2) +/* 021F64 80021364 90A40027 */ lbu $a0, 0x27($a1) +/* 021F68 80021368 00000000 */ nop +/* 021F6C 8002136C 10810005 */ beq $a0, $at, .L80021384 +/* 021F70 80021370 00000000 */ nop +/* 021F74 80021374 0C030C7B */ jal func_800C31EC +/* 021F78 80021378 AFA5001C */ sw $a1, 0x1c($sp) +/* 021F7C 8002137C 8FA5001C */ lw $a1, 0x1c($sp) +/* 021F80 80021380 00000000 */ nop +.L80021384: +/* 021F84 80021384 80A4002A */ lb $a0, 0x2a($a1) +/* 021F88 80021388 00000000 */ nop +/* 021F8C 8002138C 04800005 */ bltz $a0, .L800213A4 +/* 021F90 80021390 00000000 */ nop +/* 021F94 80021394 0C007917 */ jal func_8001E45C +/* 021F98 80021398 00000000 */ nop +/* 021F9C 8002139C 10000015 */ b .L800213F4 +/* 021FA0 800213A0 8FBF0014 */ lw $ra, 0x14($sp) +.L800213A4: +/* 021FA4 800213A4 80A40015 */ lb $a0, 0x15($a1) +/* 021FA8 800213A8 00000000 */ nop +/* 021FAC 800213AC 04800005 */ bltz $a0, .L800213C4 +/* 021FB0 800213B0 00000000 */ nop +/* 021FB4 800213B4 0C008500 */ jal func_80021400 +/* 021FB8 800213B8 AFA5001C */ sw $a1, 0x1c($sp) +/* 021FBC 800213BC 8FA5001C */ lw $a1, 0x1c($sp) +/* 021FC0 800213C0 00000000 */ nop +.L800213C4: +/* 021FC4 800213C4 80B90028 */ lb $t9, 0x28($a1) +/* 021FC8 800213C8 3C088012 */ lui $t0, %hi(D_8011AD21) # $t0, 0x8012 +/* 021FCC 800213CC 07200008 */ bltz $t9, .L800213F0 +/* 021FD0 800213D0 3C098012 */ lui $t1, %hi(D_8011AD22) # $t1, 0x8012 +/* 021FD4 800213D4 8108AD21 */ lb $t0, %lo(D_8011AD21)($t0) +/* 021FD8 800213D8 2529AD22 */ addiu $t1, %lo(D_8011AD22) # addiu $t1, $t1, -0x52de +/* 021FDC 800213DC 01091021 */ addu $v0, $t0, $t1 +/* 021FE0 800213E0 804A0000 */ lb $t2, ($v0) +/* 021FE4 800213E4 00000000 */ nop +/* 021FE8 800213E8 254B0001 */ addiu $t3, $t2, 1 +/* 021FEC 800213EC A04B0000 */ sb $t3, ($v0) +.L800213F0: +/* 021FF0 800213F0 8FBF0014 */ lw $ra, 0x14($sp) +.L800213F4: +/* 021FF4 800213F4 27BD0018 */ addiu $sp, $sp, 0x18 +/* 021FF8 800213F8 03E00008 */ jr $ra +/* 021FFC 800213FC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80021400.s b/asm/non_matchings/unknown_005740/func_80021400.s new file mode 100644 index 00000000..13ba17a3 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80021400.s @@ -0,0 +1,55 @@ +glabel func_80021400 +/* 022000 80021400 3C038012 */ lui $v1, %hi(D_8011AE78) # $v1, 0x8012 +/* 022004 80021404 8463AE78 */ lh $v1, %lo(D_8011AE78)($v1) +/* 022008 80021408 308E00FF */ andi $t6, $a0, 0xff +/* 02200C 8002140C 01C02025 */ move $a0, $t6 +/* 022010 80021410 18600017 */ blez $v1, .L80021470 +/* 022014 80021414 00001025 */ move $v0, $zero +/* 022018 80021418 3C058012 */ lui $a1, %hi(D_8011AE74) # $a1, 0x8012 +/* 02201C 8002141C 8CA5AE74 */ lw $a1, %lo(D_8011AE74)($a1) +/* 022020 80021420 00000000 */ nop +/* 022024 80021424 8CAF0000 */ lw $t7, ($a1) +/* 022028 80021428 00000000 */ nop +/* 02202C 8002142C 8DF8007C */ lw $t8, 0x7c($t7) +/* 022030 80021430 00000000 */ nop +/* 022034 80021434 331900FF */ andi $t9, $t8, 0xff +/* 022038 80021438 11D9000E */ beq $t6, $t9, .L80021474 +/* 02203C 8002143C 0043082A */ slt $at, $v0, $v1 +.L80021440: +/* 022040 80021440 24420001 */ addiu $v0, $v0, 1 +/* 022044 80021444 0043082A */ slt $at, $v0, $v1 +/* 022048 80021448 10200009 */ beqz $at, .L80021470 +/* 02204C 8002144C 00024080 */ sll $t0, $v0, 2 +/* 022050 80021450 00A84821 */ addu $t1, $a1, $t0 +/* 022054 80021454 8D2A0000 */ lw $t2, ($t1) +/* 022058 80021458 00000000 */ nop +/* 02205C 8002145C 8D4B007C */ lw $t3, 0x7c($t2) +/* 022060 80021460 00000000 */ nop +/* 022064 80021464 316C00FF */ andi $t4, $t3, 0xff +/* 022068 80021468 148CFFF5 */ bne $a0, $t4, .L80021440 +/* 02206C 8002146C 00000000 */ nop +.L80021470: +/* 022070 80021470 0043082A */ slt $at, $v0, $v1 +.L80021474: +/* 022074 80021474 10200011 */ beqz $at, .L800214BC +/* 022078 80021478 3C0D8012 */ lui $t5, %hi(D_8011AE74) # $t5, 0x8012 +/* 02207C 8002147C 8DADAE74 */ lw $t5, %lo(D_8011AE74)($t5) +/* 022080 80021480 00027080 */ sll $t6, $v0, 2 +/* 022084 80021484 01AE7821 */ addu $t7, $t5, $t6 +/* 022088 80021488 8DF80000 */ lw $t8, ($t7) +/* 02208C 8002148C 00000000 */ nop +/* 022090 80021490 8F030064 */ lw $v1, 0x64($t8) +/* 022094 80021494 00000000 */ nop +/* 022098 80021498 10600008 */ beqz $v1, .L800214BC +/* 02209C 8002149C 00000000 */ nop +/* 0220A0 800214A0 8C620064 */ lw $v0, 0x64($v1) +/* 0220A4 800214A4 24080001 */ li $t0, 1 +/* 0220A8 800214A8 8459002A */ lh $t9, 0x2a($v0) +/* 0220AC 800214AC 00000000 */ nop +/* 0220B0 800214B0 07210002 */ bgez $t9, .L800214BC +/* 0220B4 800214B4 00000000 */ nop +/* 0220B8 800214B8 A448002A */ sh $t0, 0x2a($v0) +.L800214BC: +/* 0220BC 800214BC 03E00008 */ jr $ra +/* 0220C0 800214C0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800214C4.s b/asm/non_matchings/unknown_005740/func_800214C4.s new file mode 100644 index 00000000..b82c1621 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800214C4.s @@ -0,0 +1,10 @@ +glabel func_800214C4 +/* 0220C4 800214C4 3C0E8012 */ lui $t6, %hi(D_8011AD21) # $t6, 0x8012 +/* 0220C8 800214C8 81CEAD21 */ lb $t6, %lo(D_8011AD21)($t6) +/* 0220CC 800214CC 3C028012 */ lui $v0, 0x8012 +/* 0220D0 800214D0 000E7823 */ negu $t7, $t6 +/* 0220D4 800214D4 004F1021 */ addu $v0, $v0, $t7 +/* 0220D8 800214D8 8042AD23 */ lb $v0, -0x52dd($v0) +/* 0220DC 800214DC 03E00008 */ jr $ra +/* 0220E0 800214E0 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800214E4.s b/asm/non_matchings/unknown_005740/func_800214E4.s new file mode 100644 index 00000000..6ff0df4c --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800214E4.s @@ -0,0 +1,82 @@ +glabel func_800214E4 +/* 0220E4 800214E4 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0220E8 800214E8 AFBF0014 */ sw $ra, 0x14($sp) +/* 0220EC 800214EC 8C860064 */ lw $a2, 0x64($a0) +/* 0220F0 800214F0 00803825 */ move $a3, $a0 +/* 0220F4 800214F4 80CE003A */ lb $t6, 0x3a($a2) +/* 0220F8 800214F8 00000000 */ nop +/* 0220FC 800214FC 11C00005 */ beqz $t6, .L80021514 +/* 022100 80021500 00000000 */ nop +/* 022104 80021504 848F0006 */ lh $t7, 6($a0) +/* 022108 80021508 00000000 */ nop +/* 02210C 8002150C 35F84000 */ ori $t8, $t7, 0x4000 +/* 022110 80021510 A4980006 */ sh $t8, 6($a0) +.L80021514: +/* 022114 80021514 84C20036 */ lh $v0, 0x36($a2) +/* 022118 80021518 2403FFFF */ li $v1, -1 +/* 02211C 8002151C 14620004 */ bne $v1, $v0, .L80021530 +/* 022120 80021520 00000000 */ nop +/* 022124 80021524 80C2003A */ lb $v0, 0x3a($a2) +/* 022128 80021528 10000032 */ b .L800215F4 +/* 02212C 8002152C 8FBF0014 */ lw $ra, 0x14($sp) +.L80021530: +/* 022130 80021530 04400004 */ bltz $v0, .L80021544 +/* 022134 80021534 0045C823 */ subu $t9, $v0, $a1 +/* 022138 80021538 A4D90036 */ sh $t9, 0x36($a2) +/* 02213C 8002153C 84C20036 */ lh $v0, 0x36($a2) +/* 022140 80021540 00000000 */ nop +.L80021544: +/* 022144 80021544 14620004 */ bne $v1, $v0, .L80021558 +/* 022148 80021548 2408FFFE */ li $t0, -2 +/* 02214C 8002154C A4C80036 */ sh $t0, 0x36($a2) +/* 022150 80021550 84C20036 */ lh $v0, 0x36($a2) +/* 022154 80021554 00000000 */ nop +.L80021558: +/* 022158 80021558 1C400024 */ bgtz $v0, .L800215EC +/* 02215C 8002155C 3C198012 */ lui $t9, %hi(D_8011AE74) # $t9, 0x8012 +/* 022160 80021560 84E90006 */ lh $t1, 6($a3) +/* 022164 80021564 3C058012 */ lui $a1, %hi(D_8011AE78) # $a1, 0x8012 +/* 022168 80021568 352A4000 */ ori $t2, $t1, 0x4000 +/* 02216C 8002156C A4EA0006 */ sh $t2, 6($a3) +/* 022170 80021570 84A5AE78 */ lh $a1, %lo(D_8011AE78)($a1) +/* 022174 80021574 00001025 */ move $v0, $zero +/* 022178 80021578 18A00014 */ blez $a1, .L800215CC +/* 02217C 8002157C 3C048012 */ lui $a0, %hi(D_8011AE74) # $a0, 0x8012 +/* 022180 80021580 8C84AE74 */ lw $a0, %lo(D_8011AE74)($a0) +/* 022184 80021584 84C30028 */ lh $v1, 0x28($a2) +/* 022188 80021588 8C8B0000 */ lw $t3, ($a0) +/* 02218C 8002158C 00000000 */ nop +/* 022190 80021590 8D6C007C */ lw $t4, 0x7c($t3) +/* 022194 80021594 00000000 */ nop +/* 022198 80021598 106C000C */ beq $v1, $t4, .L800215CC +/* 02219C 8002159C 00000000 */ nop +.L800215A0: +/* 0221A0 800215A0 24420001 */ addiu $v0, $v0, 1 +/* 0221A4 800215A4 0045082A */ slt $at, $v0, $a1 +/* 0221A8 800215A8 10200008 */ beqz $at, .L800215CC +/* 0221AC 800215AC 00026880 */ sll $t5, $v0, 2 +/* 0221B0 800215B0 008D7021 */ addu $t6, $a0, $t5 +/* 0221B4 800215B4 8DCF0000 */ lw $t7, ($t6) +/* 0221B8 800215B8 00000000 */ nop +/* 0221BC 800215BC 8DF8007C */ lw $t8, 0x7c($t7) +/* 0221C0 800215C0 00000000 */ nop +/* 0221C4 800215C4 1478FFF6 */ bne $v1, $t8, .L800215A0 +/* 0221C8 800215C8 00000000 */ nop +.L800215CC: +/* 0221CC 800215CC 8F39AE74 */ lw $t9, %lo(D_8011AE74)($t9) +/* 0221D0 800215D0 00024080 */ sll $t0, $v0, 2 +/* 0221D4 800215D4 03284821 */ addu $t1, $t9, $t0 +/* 0221D8 800215D8 8D240000 */ lw $a0, ($t1) +/* 0221DC 800215DC 0C007BE9 */ jal func_8001EFA4 +/* 0221E0 800215E0 00E02825 */ move $a1, $a3 +/* 0221E4 800215E4 10000002 */ b .L800215F0 +/* 0221E8 800215E8 24020001 */ li $v0, 1 +.L800215EC: +/* 0221EC 800215EC 00001025 */ move $v0, $zero +.L800215F0: +/* 0221F0 800215F0 8FBF0014 */ lw $ra, 0x14($sp) +.L800215F4: +/* 0221F4 800215F4 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0221F8 800215F8 03E00008 */ jr $ra +/* 0221FC 800215FC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80021600.s b/asm/non_matchings/unknown_005740/func_80021600.s new file mode 100644 index 00000000..8ae60edb --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80021600.s @@ -0,0 +1,1031 @@ +glabel func_80021600 +/* 022200 80021600 27BDFEA0 */ addiu $sp, $sp, -0x160 +/* 022204 80021604 3C0E8012 */ lui $t6, %hi(D_8011AE7A) # $t6, 0x8012 +/* 022208 80021608 85CEAE7A */ lh $t6, %lo(D_8011AE7A)($t6) +/* 02220C 8002160C AFBF0044 */ sw $ra, 0x44($sp) +/* 022210 80021610 AFBE0040 */ sw $fp, 0x40($sp) +/* 022214 80021614 AFB7003C */ sw $s7, 0x3c($sp) +/* 022218 80021618 AFB60038 */ sw $s6, 0x38($sp) +/* 02221C 8002161C AFB50034 */ sw $s5, 0x34($sp) +/* 022220 80021620 AFB40030 */ sw $s4, 0x30($sp) +/* 022224 80021624 AFB3002C */ sw $s3, 0x2c($sp) +/* 022228 80021628 AFB20028 */ sw $s2, 0x28($sp) +/* 02222C 8002162C AFB10024 */ sw $s1, 0x24($sp) +/* 022230 80021630 AFB00020 */ sw $s0, 0x20($sp) +/* 022234 80021634 E7B50018 */ swc1 $f21, 0x18($sp) +/* 022238 80021638 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 02223C 8002163C 05C10003 */ bgez $t6, .L8002164C +/* 022240 80021640 00802825 */ move $a1, $a0 +/* 022244 80021644 100003B0 */ b .L80022508 +/* 022248 80021648 24020001 */ li $v0, 1 +.L8002164C: +/* 02224C 8002164C 3C038012 */ lui $v1, %hi(D_8011AE78) # $v1, 0x8012 +/* 022250 80021650 8463AE78 */ lh $v1, %lo(D_8011AE78)($v1) +/* 022254 80021654 0000B825 */ move $s7, $zero +/* 022258 80021658 18600015 */ blez $v1, .L800216B0 +/* 02225C 8002165C 3C068012 */ lui $a2, %hi(D_8011AE74) # $a2, 0x8012 +/* 022260 80021660 24C6AE74 */ addiu $a2, %lo(D_8011AE74) # addiu $a2, $a2, -0x518c +/* 022264 80021664 8CC70000 */ lw $a3, ($a2) +/* 022268 80021668 00000000 */ nop +/* 02226C 8002166C 8CEF0000 */ lw $t7, ($a3) +/* 022270 80021670 00000000 */ nop +/* 022274 80021674 8DF8007C */ lw $t8, 0x7c($t7) +/* 022278 80021678 00000000 */ nop +/* 02227C 8002167C 10B8000C */ beq $a1, $t8, .L800216B0 +/* 022280 80021680 00000000 */ nop +.L80021684: +/* 022284 80021684 26F70001 */ addiu $s7, $s7, 1 +/* 022288 80021688 02E3082A */ slt $at, $s7, $v1 +/* 02228C 8002168C 10200008 */ beqz $at, .L800216B0 +/* 022290 80021690 0017C880 */ sll $t9, $s7, 2 +/* 022294 80021694 00F95821 */ addu $t3, $a3, $t9 +/* 022298 80021698 8D6C0000 */ lw $t4, ($t3) +/* 02229C 8002169C 00000000 */ nop +/* 0222A0 800216A0 8D8D007C */ lw $t5, 0x7c($t4) +/* 0222A4 800216A4 00000000 */ nop +/* 0222A8 800216A8 14ADFFF6 */ bne $a1, $t5, .L80021684 +/* 0222AC 800216AC 00000000 */ nop +.L800216B0: +/* 0222B0 800216B0 3C068012 */ lui $a2, %hi(D_8011AE74) # $a2, 0x8012 +/* 0222B4 800216B4 02E3082A */ slt $at, $s7, $v1 +/* 0222B8 800216B8 14200003 */ bnez $at, .L800216C8 +/* 0222BC 800216BC 24C6AE74 */ addiu $a2, %lo(D_8011AE74) # addiu $a2, $a2, -0x518c +/* 0222C0 800216C0 10000391 */ b .L80022508 +/* 0222C4 800216C4 24020001 */ li $v0, 1 +.L800216C8: +/* 0222C8 800216C8 26EE0001 */ addiu $t6, $s7, 1 +/* 0222CC 800216CC 01C3082A */ slt $at, $t6, $v1 +/* 0222D0 800216D0 10200015 */ beqz $at, .L80021728 +/* 0222D4 800216D4 24150001 */ li $s5, 1 +/* 0222D8 800216D8 8CCF0000 */ lw $t7, ($a2) +/* 0222DC 800216DC 0017C080 */ sll $t8, $s7, 2 +/* 0222E0 800216E0 01F82021 */ addu $a0, $t7, $t8 +/* 0222E4 800216E4 8C990004 */ lw $t9, 4($a0) +/* 0222E8 800216E8 02F51021 */ addu $v0, $s7, $s5 +/* 0222EC 800216EC 8F2B007C */ lw $t3, 0x7c($t9) +/* 0222F0 800216F0 00000000 */ nop +/* 0222F4 800216F4 14AB000C */ bne $a1, $t3, .L80021728 +/* 0222F8 800216F8 24420001 */ addiu $v0, $v0, 1 +.L800216FC: +/* 0222FC 800216FC 0043082A */ slt $at, $v0, $v1 +/* 022300 80021700 10200009 */ beqz $at, .L80021728 +/* 022304 80021704 26B50001 */ addiu $s5, $s5, 1 +/* 022308 80021708 00156080 */ sll $t4, $s5, 2 +/* 02230C 8002170C 008C6821 */ addu $t5, $a0, $t4 +/* 022310 80021710 8DAE0000 */ lw $t6, ($t5) +/* 022314 80021714 00000000 */ nop +/* 022318 80021718 8DCF007C */ lw $t7, 0x7c($t6) +/* 02231C 8002171C 00000000 */ nop +/* 022320 80021720 10AFFFF6 */ beq $a1, $t7, .L800216FC +/* 022324 80021724 24420001 */ addiu $v0, $v0, 1 +.L80021728: +/* 022328 80021728 2AA10002 */ slti $at, $s5, 2 +/* 02232C 8002172C 10200003 */ beqz $at, .L8002173C +/* 022330 80021730 0017C080 */ sll $t8, $s7, 2 +/* 022334 80021734 10000374 */ b .L80022508 +/* 022338 80021738 24020001 */ li $v0, 1 +.L8002173C: +/* 02233C 8002173C 8CC70000 */ lw $a3, ($a2) +/* 022340 80021740 AFB8007C */ sw $t8, 0x7c($sp) +/* 022344 80021744 00F85821 */ addu $t3, $a3, $t8 +/* 022348 80021748 8D620000 */ lw $v0, ($t3) +/* 02234C 8002174C 27B20124 */ addiu $s2, $sp, 0x124 +/* 022350 80021750 8C4C0064 */ lw $t4, 0x64($v0) +/* 022354 80021754 27B30110 */ addiu $s3, $sp, 0x110 +/* 022358 80021758 15800003 */ bnez $t4, .L80021768 +/* 02235C 8002175C AFAC0154 */ sw $t4, 0x154($sp) +/* 022360 80021760 10000369 */ b .L80022508 +/* 022364 80021764 24020001 */ li $v0, 1 +.L80021768: +/* 022368 80021768 8FAE0154 */ lw $t6, 0x154($sp) +/* 02236C 8002176C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 +/* 022370 80021770 8DCF0064 */ lw $t7, 0x64($t6) +/* 022374 80021774 44812800 */ mtc1 $at, $f5 +/* 022378 80021778 AFAF015C */ sw $t7, 0x15c($sp) +/* 02237C 8002177C 8C580040 */ lw $t8, 0x40($v0) +/* 022380 80021780 44802000 */ mtc1 $zero, $f4 +/* 022384 80021784 C706000C */ lwc1 $f6, 0xc($t8) +/* 022388 80021788 0017C880 */ sll $t9, $s7, 2 +/* 02238C 8002178C 46003221 */ cvt.d.s $f8, $f6 +/* 022390 80021790 00000000 */ nop +/* 022394 80021794 46282283 */ div.d $f10, $f4, $f8 +/* 022398 80021798 00F95821 */ addu $t3, $a3, $t9 +/* 02239C 8002179C 00156080 */ sll $t4, $s5, 2 +/* 0223A0 800217A0 016C6821 */ addu $t5, $t3, $t4 +/* 0223A4 800217A4 2AA10003 */ slti $at, $s5, 3 +/* 0223A8 800217A8 8FB8015C */ lw $t8, 0x15c($sp) +/* 0223AC 800217AC 2403FFFF */ li $v1, -1 +/* 0223B0 800217B0 27B400FC */ addiu $s4, $sp, 0xfc +/* 0223B4 800217B4 27BE00BC */ addiu $fp, $sp, 0xbc +/* 0223B8 800217B8 27B600A8 */ addiu $s6, $sp, 0xa8 +/* 0223BC 800217BC 27A90094 */ addiu $t1, $sp, 0x94 +/* 0223C0 800217C0 27B100D0 */ addiu $s1, $sp, 0xd0 +/* 0223C4 800217C4 462051A0 */ cvt.s.d $f6, $f10 +/* 0223C8 800217C8 E7A60090 */ swc1 $f6, 0x90($sp) +/* 0223CC 800217CC 8DAEFFFC */ lw $t6, -4($t5) +/* 0223D0 800217D0 00000000 */ nop +/* 0223D4 800217D4 8DC5003C */ lw $a1, 0x3c($t6) +/* 0223D8 800217D8 14200008 */ bnez $at, .L800217FC +/* 0223DC 800217DC 00000000 */ nop +/* 0223E0 800217E0 80A2001D */ lb $v0, 0x1d($a1) +/* 0223E4 800217E4 26AFFFFF */ addiu $t7, $s5, -1 +/* 0223E8 800217E8 04400004 */ bltz $v0, .L800217FC +/* 0223EC 800217EC 004F082A */ slt $at, $v0, $t7 +/* 0223F0 800217F0 10200002 */ beqz $at, .L800217FC +/* 0223F4 800217F4 00000000 */ nop +/* 0223F8 800217F8 00401825 */ move $v1, $v0 +.L800217FC: +/* 0223FC 800217FC 87100026 */ lh $s0, 0x26($t8) +/* 022400 80021800 AFA30138 */ sw $v1, 0x138($sp) +/* 022404 80021804 2610FFFF */ addiu $s0, $s0, -1 +.L80021808: +/* 022408 80021808 2401FFFF */ li $at, -1 +/* 02240C 8002180C 1601006B */ bne $s0, $at, .L800219BC +/* 022410 80021810 0215082A */ slt $at, $s0, $s5 +/* 022414 80021814 8FB90138 */ lw $t9, 0x138($sp) +/* 022418 80021818 02F55821 */ addu $t3, $s7, $s5 +/* 02241C 8002181C 13200039 */ beqz $t9, .L80021904 +/* 022420 80021820 000B6080 */ sll $t4, $t3, 2 +/* 022424 80021824 8FAB007C */ lw $t3, 0x7c($sp) +/* 022428 80021828 00000000 */ nop +/* 02242C 8002182C 00EB1021 */ addu $v0, $a3, $t3 +/* 022430 80021830 8C4C0000 */ lw $t4, ($v0) +/* 022434 80021834 8C4D0004 */ lw $t5, 4($v0) +/* 022438 80021838 C580000C */ lwc1 $f0, 0xc($t4) +/* 02243C 8002183C C5A4000C */ lwc1 $f4, 0xc($t5) +/* 022440 80021840 00000000 */ nop +/* 022444 80021844 46040201 */ sub.s $f8, $f0, $f4 +/* 022448 80021848 46004280 */ add.s $f10, $f8, $f0 +/* 02244C 8002184C E64A0000 */ swc1 $f10, ($s2) +/* 022450 80021850 8C4E0000 */ lw $t6, ($v0) +/* 022454 80021854 8C4F0004 */ lw $t7, 4($v0) +/* 022458 80021858 C5C20010 */ lwc1 $f2, 0x10($t6) +/* 02245C 8002185C C5E60010 */ lwc1 $f6, 0x10($t7) +/* 022460 80021860 00000000 */ nop +/* 022464 80021864 46061101 */ sub.s $f4, $f2, $f6 +/* 022468 80021868 46022200 */ add.s $f8, $f4, $f2 +/* 02246C 8002186C E6680000 */ swc1 $f8, ($s3) +/* 022470 80021870 8C580000 */ lw $t8, ($v0) +/* 022474 80021874 8C590004 */ lw $t9, 4($v0) +/* 022478 80021878 C70C0014 */ lwc1 $f12, 0x14($t8) +/* 02247C 8002187C C72A0014 */ lwc1 $f10, 0x14($t9) +/* 022480 80021880 00000000 */ nop +/* 022484 80021884 460A6181 */ sub.s $f6, $f12, $f10 +/* 022488 80021888 460C3100 */ add.s $f4, $f6, $f12 +/* 02248C 8002188C E6840000 */ swc1 $f4, ($s4) +/* 022490 80021890 8C4B0000 */ lw $t3, ($v0) +/* 022494 80021894 00000000 */ nop +/* 022498 80021898 856C0000 */ lh $t4, ($t3) +/* 02249C 8002189C 00000000 */ nop +/* 0224A0 800218A0 448C4000 */ mtc1 $t4, $f8 +/* 0224A4 800218A4 00000000 */ nop +/* 0224A8 800218A8 468042A0 */ cvt.s.w $f10, $f8 +/* 0224AC 800218AC E7CA0000 */ swc1 $f10, ($fp) +/* 0224B0 800218B0 8C4D0000 */ lw $t5, ($v0) +/* 0224B4 800218B4 00000000 */ nop +/* 0224B8 800218B8 85AE0002 */ lh $t6, 2($t5) +/* 0224BC 800218BC 00000000 */ nop +/* 0224C0 800218C0 448E3000 */ mtc1 $t6, $f6 +/* 0224C4 800218C4 00000000 */ nop +/* 0224C8 800218C8 46803120 */ cvt.s.w $f4, $f6 +/* 0224CC 800218CC E6C40000 */ swc1 $f4, ($s6) +/* 0224D0 800218D0 8C4F0000 */ lw $t7, ($v0) +/* 0224D4 800218D4 00000000 */ nop +/* 0224D8 800218D8 85F80004 */ lh $t8, 4($t7) +/* 0224DC 800218DC 00000000 */ nop +/* 0224E0 800218E0 44984000 */ mtc1 $t8, $f8 +/* 0224E4 800218E4 00000000 */ nop +/* 0224E8 800218E8 468042A0 */ cvt.s.w $f10, $f8 +/* 0224EC 800218EC E52A0000 */ swc1 $f10, ($t1) +/* 0224F0 800218F0 8C590000 */ lw $t9, ($v0) +/* 0224F4 800218F4 00000000 */ nop +/* 0224F8 800218F8 C7260008 */ lwc1 $f6, 8($t9) +/* 0224FC 800218FC 100000F5 */ b .L80021CD4 +/* 022500 80021900 E6260000 */ swc1 $f6, ($s1) +.L80021904: +/* 022504 80021904 00EC1021 */ addu $v0, $a3, $t4 +/* 022508 80021908 8C4DFFFC */ lw $t5, -4($v0) +/* 02250C 8002190C 00000000 */ nop +/* 022510 80021910 C5A4000C */ lwc1 $f4, 0xc($t5) +/* 022514 80021914 00000000 */ nop +/* 022518 80021918 E6440000 */ swc1 $f4, ($s2) +/* 02251C 8002191C 8C4EFFFC */ lw $t6, -4($v0) +/* 022520 80021920 00000000 */ nop +/* 022524 80021924 C5C80010 */ lwc1 $f8, 0x10($t6) +/* 022528 80021928 00000000 */ nop +/* 02252C 8002192C E6680000 */ swc1 $f8, ($s3) +/* 022530 80021930 8C4FFFFC */ lw $t7, -4($v0) +/* 022534 80021934 00000000 */ nop +/* 022538 80021938 C5EA0014 */ lwc1 $f10, 0x14($t7) +/* 02253C 8002193C 00000000 */ nop +/* 022540 80021940 E68A0000 */ swc1 $f10, ($s4) +/* 022544 80021944 8C58FFFC */ lw $t8, -4($v0) +/* 022548 80021948 00000000 */ nop +/* 02254C 8002194C 87190000 */ lh $t9, ($t8) +/* 022550 80021950 00000000 */ nop +/* 022554 80021954 44993000 */ mtc1 $t9, $f6 +/* 022558 80021958 00000000 */ nop +/* 02255C 8002195C 46803120 */ cvt.s.w $f4, $f6 +/* 022560 80021960 E7C40000 */ swc1 $f4, ($fp) +/* 022564 80021964 8C4BFFFC */ lw $t3, -4($v0) +/* 022568 80021968 00000000 */ nop +/* 02256C 8002196C 856C0002 */ lh $t4, 2($t3) +/* 022570 80021970 00000000 */ nop +/* 022574 80021974 448C4000 */ mtc1 $t4, $f8 +/* 022578 80021978 00000000 */ nop +/* 02257C 8002197C 468042A0 */ cvt.s.w $f10, $f8 +/* 022580 80021980 E6CA0000 */ swc1 $f10, ($s6) +/* 022584 80021984 8C4DFFFC */ lw $t5, -4($v0) +/* 022588 80021988 00000000 */ nop +/* 02258C 8002198C 85AE0004 */ lh $t6, 4($t5) +/* 022590 80021990 00000000 */ nop +/* 022594 80021994 448E3000 */ mtc1 $t6, $f6 +/* 022598 80021998 00000000 */ nop +/* 02259C 8002199C 46803120 */ cvt.s.w $f4, $f6 +/* 0225A0 800219A0 E5240000 */ swc1 $f4, ($t1) +/* 0225A4 800219A4 8C4FFFFC */ lw $t7, -4($v0) +/* 0225A8 800219A8 00000000 */ nop +/* 0225AC 800219AC C5E80008 */ lwc1 $f8, 8($t7) +/* 0225B0 800219B0 100000C8 */ b .L80021CD4 +/* 0225B4 800219B4 E6280000 */ swc1 $f8, ($s1) +/* 0225B8 800219B8 0215082A */ slt $at, $s0, $s5 +.L800219BC: +/* 0225BC 800219BC 14200082 */ bnez $at, .L80021BC8 +/* 0225C0 800219C0 02173021 */ addu $a2, $s0, $s7 +/* 0225C4 800219C4 8FB80138 */ lw $t8, 0x138($sp) +/* 0225C8 800219C8 2401FFFF */ li $at, -1 +/* 0225CC 800219CC 1701004B */ bne $t8, $at, .L80021AFC +/* 0225D0 800219D0 02B71021 */ addu $v0, $s5, $s7 +/* 0225D4 800219D4 0002C880 */ sll $t9, $v0, 2 +/* 0225D8 800219D8 00F95821 */ addu $t3, $a3, $t9 +/* 0225DC 800219DC 8D6CFFFC */ lw $t4, -4($t3) +/* 0225E0 800219E0 00023080 */ sll $a2, $v0, 2 +/* 0225E4 800219E4 8D85003C */ lw $a1, 0x3c($t4) +/* 0225E8 800219E8 24010001 */ li $at, 1 +/* 0225EC 800219EC 80AD0022 */ lb $t5, 0x22($a1) +/* 0225F0 800219F0 26B0FFFF */ addiu $s0, $s5, -1 +/* 0225F4 800219F4 15A10010 */ bne $t5, $at, .L80021A38 +/* 0225F8 800219F8 24C6FFFC */ addiu $a2, $a2, -4 +/* 0225FC 800219FC 8FAE015C */ lw $t6, 0x15c($sp) +/* 022600 80021A00 00000000 */ nop +/* 022604 80021A04 81C40030 */ lb $a0, 0x30($t6) +/* 022608 80021A08 AFA9005C */ sw $t1, 0x5c($sp) +/* 02260C 80021A0C 0C01997A */ jal func_800665E8 +/* 022610 80021A10 AFA6004C */ sw $a2, 0x4c($sp) +/* 022614 80021A14 0C01A73F */ jal func_80069CFC +/* 022618 80021A18 00000000 */ nop +/* 02261C 80021A1C 3C078012 */ lui $a3, %hi(D_8011AE74) # $a3, 0x8012 +/* 022620 80021A20 8CE7AE74 */ lw $a3, %lo(D_8011AE74)($a3) +/* 022624 80021A24 8FA6004C */ lw $a2, 0x4c($sp) +/* 022628 80021A28 8FA9005C */ lw $t1, 0x5c($sp) +/* 02262C 80021A2C 00401825 */ move $v1, $v0 +/* 022630 80021A30 10000004 */ b .L80021A44 +/* 022634 80021A34 00E62021 */ addu $a0, $a3, $a2 +.L80021A38: +/* 022638 80021A38 00E62021 */ addu $a0, $a3, $a2 +/* 02263C 80021A3C 8C830000 */ lw $v1, ($a0) +/* 022640 80021A40 00000000 */ nop +.L80021A44: +/* 022644 80021A44 8C8FFFFC */ lw $t7, -4($a0) +/* 022648 80021A48 C460000C */ lwc1 $f0, 0xc($v1) +/* 02264C 80021A4C C5EA000C */ lwc1 $f10, 0xc($t7) +/* 022650 80021A50 00000000 */ nop +/* 022654 80021A54 460A0181 */ sub.s $f6, $f0, $f10 +/* 022658 80021A58 46003100 */ add.s $f4, $f6, $f0 +/* 02265C 80021A5C E6440000 */ swc1 $f4, ($s2) +/* 022660 80021A60 8C98FFFC */ lw $t8, -4($a0) +/* 022664 80021A64 C4620010 */ lwc1 $f2, 0x10($v1) +/* 022668 80021A68 C7080010 */ lwc1 $f8, 0x10($t8) +/* 02266C 80021A6C 00000000 */ nop +/* 022670 80021A70 46081281 */ sub.s $f10, $f2, $f8 +/* 022674 80021A74 46025180 */ add.s $f6, $f10, $f2 +/* 022678 80021A78 E6660000 */ swc1 $f6, ($s3) +/* 02267C 80021A7C 8C99FFFC */ lw $t9, -4($a0) +/* 022680 80021A80 C46C0014 */ lwc1 $f12, 0x14($v1) +/* 022684 80021A84 C7240014 */ lwc1 $f4, 0x14($t9) +/* 022688 80021A88 00000000 */ nop +/* 02268C 80021A8C 46046201 */ sub.s $f8, $f12, $f4 +/* 022690 80021A90 460C4280 */ add.s $f10, $f8, $f12 +/* 022694 80021A94 E68A0000 */ swc1 $f10, ($s4) +/* 022698 80021A98 846B0002 */ lh $t3, 2($v1) +/* 02269C 80021A9C 00000000 */ nop +/* 0226A0 80021AA0 448B3000 */ mtc1 $t3, $f6 +/* 0226A4 80021AA4 00000000 */ nop +/* 0226A8 80021AA8 46803120 */ cvt.s.w $f4, $f6 +/* 0226AC 80021AAC E6C40000 */ swc1 $f4, ($s6) +/* 0226B0 80021AB0 846C0004 */ lh $t4, 4($v1) +/* 0226B4 80021AB4 00000000 */ nop +/* 0226B8 80021AB8 448C4000 */ mtc1 $t4, $f8 +/* 0226BC 80021ABC 00000000 */ nop +/* 0226C0 80021AC0 468042A0 */ cvt.s.w $f10, $f8 +/* 0226C4 80021AC4 E52A0000 */ swc1 $f10, ($t1) +/* 0226C8 80021AC8 8C830000 */ lw $v1, ($a0) +/* 0226CC 80021ACC 00000000 */ nop +/* 0226D0 80021AD0 846D0000 */ lh $t5, ($v1) +/* 0226D4 80021AD4 00000000 */ nop +/* 0226D8 80021AD8 448D3000 */ mtc1 $t5, $f6 +/* 0226DC 80021ADC 00000000 */ nop +/* 0226E0 80021AE0 46803120 */ cvt.s.w $f4, $f6 +/* 0226E4 80021AE4 E7C40000 */ swc1 $f4, ($fp) +/* 0226E8 80021AE8 8C8E0000 */ lw $t6, ($a0) +/* 0226EC 80021AEC 00000000 */ nop +/* 0226F0 80021AF0 C5C80008 */ lwc1 $f8, 8($t6) +/* 0226F4 80021AF4 10000077 */ b .L80021CD4 +/* 0226F8 80021AF8 E6280000 */ swc1 $f8, ($s1) +.L80021AFC: +/* 0226FC 80021AFC 8FAF0138 */ lw $t7, 0x138($sp) +/* 022700 80021B00 00000000 */ nop +/* 022704 80021B04 02EFC021 */ addu $t8, $s7, $t7 +/* 022708 80021B08 0310C821 */ addu $t9, $t8, $s0 +/* 02270C 80021B0C 03355823 */ subu $t3, $t9, $s5 +/* 022710 80021B10 000B6080 */ sll $t4, $t3, 2 +/* 022714 80021B14 00EC1021 */ addu $v0, $a3, $t4 +/* 022718 80021B18 8C4D0000 */ lw $t5, ($v0) +/* 02271C 80021B1C 00000000 */ nop +/* 022720 80021B20 C5AA000C */ lwc1 $f10, 0xc($t5) +/* 022724 80021B24 00000000 */ nop +/* 022728 80021B28 E64A0000 */ swc1 $f10, ($s2) +/* 02272C 80021B2C 8C4E0000 */ lw $t6, ($v0) +/* 022730 80021B30 00000000 */ nop +/* 022734 80021B34 C5C60010 */ lwc1 $f6, 0x10($t6) +/* 022738 80021B38 00000000 */ nop +/* 02273C 80021B3C E6660000 */ swc1 $f6, ($s3) +/* 022740 80021B40 8C4F0000 */ lw $t7, ($v0) +/* 022744 80021B44 00000000 */ nop +/* 022748 80021B48 C5E40014 */ lwc1 $f4, 0x14($t7) +/* 02274C 80021B4C 00000000 */ nop +/* 022750 80021B50 E6840000 */ swc1 $f4, ($s4) +/* 022754 80021B54 8C580000 */ lw $t8, ($v0) +/* 022758 80021B58 00000000 */ nop +/* 02275C 80021B5C 87190000 */ lh $t9, ($t8) +/* 022760 80021B60 00000000 */ nop +/* 022764 80021B64 44994000 */ mtc1 $t9, $f8 +/* 022768 80021B68 00000000 */ nop +/* 02276C 80021B6C 468042A0 */ cvt.s.w $f10, $f8 +/* 022770 80021B70 E7CA0000 */ swc1 $f10, ($fp) +/* 022774 80021B74 8C4B0000 */ lw $t3, ($v0) +/* 022778 80021B78 00000000 */ nop +/* 02277C 80021B7C 856C0002 */ lh $t4, 2($t3) +/* 022780 80021B80 00000000 */ nop +/* 022784 80021B84 448C3000 */ mtc1 $t4, $f6 +/* 022788 80021B88 00000000 */ nop +/* 02278C 80021B8C 46803120 */ cvt.s.w $f4, $f6 +/* 022790 80021B90 E6C40000 */ swc1 $f4, ($s6) +/* 022794 80021B94 8C4D0000 */ lw $t5, ($v0) +/* 022798 80021B98 00000000 */ nop +/* 02279C 80021B9C 85AE0004 */ lh $t6, 4($t5) +/* 0227A0 80021BA0 00000000 */ nop +/* 0227A4 80021BA4 448E4000 */ mtc1 $t6, $f8 +/* 0227A8 80021BA8 00000000 */ nop +/* 0227AC 80021BAC 468042A0 */ cvt.s.w $f10, $f8 +/* 0227B0 80021BB0 E52A0000 */ swc1 $f10, ($t1) +/* 0227B4 80021BB4 8C4F0000 */ lw $t7, ($v0) +/* 0227B8 80021BB8 00000000 */ nop +/* 0227BC 80021BBC C5E60008 */ lwc1 $f6, 8($t7) +/* 0227C0 80021BC0 10000044 */ b .L80021CD4 +/* 0227C4 80021BC4 E6260000 */ swc1 $f6, ($s1) +.L80021BC8: +/* 0227C8 80021BC8 0006C080 */ sll $t8, $a2, 2 +/* 0227CC 80021BCC 00F82021 */ addu $a0, $a3, $t8 +/* 0227D0 80021BD0 8C820000 */ lw $v0, ($a0) +/* 0227D4 80021BD4 24010001 */ li $at, 1 +/* 0227D8 80021BD8 8C45003C */ lw $a1, 0x3c($v0) +/* 0227DC 80021BDC 8FAB015C */ lw $t3, 0x15c($sp) +/* 0227E0 80021BE0 80B90022 */ lb $t9, 0x22($a1) +/* 0227E4 80021BE4 00401825 */ move $v1, $v0 +/* 0227E8 80021BE8 17210010 */ bne $t9, $at, .L80021C2C +/* 0227EC 80021BEC 00000000 */ nop +/* 0227F0 80021BF0 81640030 */ lb $a0, 0x30($t3) +/* 0227F4 80021BF4 AFA9005C */ sw $t1, 0x5c($sp) +/* 0227F8 80021BF8 AFB80074 */ sw $t8, 0x74($sp) +/* 0227FC 80021BFC 0C01997A */ jal func_800665E8 +/* 022800 80021C00 AFA50150 */ sw $a1, 0x150($sp) +/* 022804 80021C04 0C01A73F */ jal func_80069CFC +/* 022808 80021C08 00000000 */ nop +/* 02280C 80021C0C 3C078012 */ lui $a3, %hi(D_8011AE74) # $a3, 0x8012 +/* 022810 80021C10 8CE7AE74 */ lw $a3, %lo(D_8011AE74)($a3) +/* 022814 80021C14 8FA60074 */ lw $a2, 0x74($sp) +/* 022818 80021C18 8FA50150 */ lw $a1, 0x150($sp) +/* 02281C 80021C1C 8FA9005C */ lw $t1, 0x5c($sp) +/* 022820 80021C20 00401825 */ move $v1, $v0 +/* 022824 80021C24 10000001 */ b .L80021C2C +/* 022828 80021C28 00E62021 */ addu $a0, $a3, $a2 +.L80021C2C: +/* 02282C 80021C2C C464000C */ lwc1 $f4, 0xc($v1) +/* 022830 80021C30 24010001 */ li $at, 1 +/* 022834 80021C34 E6440000 */ swc1 $f4, ($s2) +/* 022838 80021C38 C4680010 */ lwc1 $f8, 0x10($v1) +/* 02283C 80021C3C 00000000 */ nop +/* 022840 80021C40 E6680000 */ swc1 $f8, ($s3) +/* 022844 80021C44 C46A0014 */ lwc1 $f10, 0x14($v1) +/* 022848 80021C48 00000000 */ nop +/* 02284C 80021C4C E68A0000 */ swc1 $f10, ($s4) +/* 022850 80021C50 846C0002 */ lh $t4, 2($v1) +/* 022854 80021C54 00000000 */ nop +/* 022858 80021C58 448C3000 */ mtc1 $t4, $f6 +/* 02285C 80021C5C 00000000 */ nop +/* 022860 80021C60 46803120 */ cvt.s.w $f4, $f6 +/* 022864 80021C64 E6C40000 */ swc1 $f4, ($s6) +/* 022868 80021C68 846D0004 */ lh $t5, 4($v1) +/* 02286C 80021C6C 00000000 */ nop +/* 022870 80021C70 448D4000 */ mtc1 $t5, $f8 +/* 022874 80021C74 00000000 */ nop +/* 022878 80021C78 468042A0 */ cvt.s.w $f10, $f8 +/* 02287C 80021C7C E52A0000 */ swc1 $f10, ($t1) +/* 022880 80021C80 8C830000 */ lw $v1, ($a0) +/* 022884 80021C84 00000000 */ nop +/* 022888 80021C88 846E0000 */ lh $t6, ($v1) +/* 02288C 80021C8C 00000000 */ nop +/* 022890 80021C90 448E3000 */ mtc1 $t6, $f6 +/* 022894 80021C94 00000000 */ nop +/* 022898 80021C98 46803120 */ cvt.s.w $f4, $f6 +/* 02289C 80021C9C E7C40000 */ swc1 $f4, ($fp) +/* 0228A0 80021CA0 80AF0022 */ lb $t7, 0x22($a1) +/* 0228A4 80021CA4 00000000 */ nop +/* 0228A8 80021CA8 15E10005 */ bne $t7, $at, .L80021CC0 +/* 0228AC 80021CAC 00000000 */ nop +/* 0228B0 80021CB0 C6C80000 */ lwc1 $f8, ($s6) +/* 0228B4 80021CB4 00000000 */ nop +/* 0228B8 80021CB8 46004287 */ neg.s $f10, $f8 +/* 0228BC 80021CBC E6CA0000 */ swc1 $f10, ($s6) +.L80021CC0: +/* 0228C0 80021CC0 8C980000 */ lw $t8, ($a0) +/* 0228C4 80021CC4 00000000 */ nop +/* 0228C8 80021CC8 C7060008 */ lwc1 $f6, 8($t8) +/* 0228CC 80021CCC 00000000 */ nop +/* 0228D0 80021CD0 E6260000 */ swc1 $f6, ($s1) +.L80021CD4: +/* 0228D4 80021CD4 26310004 */ addiu $s1, $s1, 4 +/* 0228D8 80021CD8 27B900E4 */ addiu $t9, $sp, 0xe4 +/* 0228DC 80021CDC 0239082B */ sltu $at, $s1, $t9 +/* 0228E0 80021CE0 26520004 */ addiu $s2, $s2, 4 +/* 0228E4 80021CE4 26730004 */ addiu $s3, $s3, 4 +/* 0228E8 80021CE8 26940004 */ addiu $s4, $s4, 4 +/* 0228EC 80021CEC 27DE0004 */ addiu $fp, $fp, 4 +/* 0228F0 80021CF0 26D60004 */ addiu $s6, $s6, 4 +/* 0228F4 80021CF4 25290004 */ addiu $t1, $t1, 4 +/* 0228F8 80021CF8 1420FEC3 */ bnez $at, .L80021808 +/* 0228FC 80021CFC 26100001 */ addiu $s0, $s0, 1 +/* 022900 80021D00 8FAB015C */ lw $t3, 0x15c($sp) +/* 022904 80021D04 27B00124 */ addiu $s0, $sp, 0x124 +/* 022908 80021D08 816C003F */ lb $t4, 0x3f($t3) +/* 02290C 80021D0C C5600000 */ lwc1 $f0, ($t3) +/* 022910 80021D10 15800015 */ bnez $t4, .L80021D68 +/* 022914 80021D14 02002025 */ move $a0, $s0 +/* 022918 80021D18 27B00124 */ addiu $s0, $sp, 0x124 +/* 02291C 80021D1C 44060000 */ mfc1 $a2, $f0 +/* 022920 80021D20 02002025 */ move $a0, $s0 +/* 022924 80021D24 00002825 */ move $a1, $zero +/* 022928 80021D28 0C008950 */ jal func_80022540 +/* 02292C 80021D2C E7A000EC */ swc1 $f0, 0xec($sp) +/* 022930 80021D30 27B10110 */ addiu $s1, $sp, 0x110 +/* 022934 80021D34 8FA600EC */ lw $a2, 0xec($sp) +/* 022938 80021D38 02202025 */ move $a0, $s1 +/* 02293C 80021D3C 00002825 */ move $a1, $zero +/* 022940 80021D40 0C008950 */ jal func_80022540 +/* 022944 80021D44 E7A000F8 */ swc1 $f0, 0xf8($sp) +/* 022948 80021D48 27B200FC */ addiu $s2, $sp, 0xfc +/* 02294C 80021D4C 8FA600EC */ lw $a2, 0xec($sp) +/* 022950 80021D50 02402025 */ move $a0, $s2 +/* 022954 80021D54 00002825 */ move $a1, $zero +/* 022958 80021D58 0C008950 */ jal func_80022540 +/* 02295C 80021D5C E7A000F4 */ swc1 $f0, 0xf4($sp) +/* 022960 80021D60 10000012 */ b .L80021DAC +/* 022964 80021D64 E7A000F0 */ swc1 $f0, 0xf0($sp) +.L80021D68: +/* 022968 80021D68 44060000 */ mfc1 $a2, $f0 +/* 02296C 80021D6C 00002825 */ move $a1, $zero +/* 022970 80021D70 0C008A22 */ jal func_80022888 +/* 022974 80021D74 E7A000EC */ swc1 $f0, 0xec($sp) +/* 022978 80021D78 27B10110 */ addiu $s1, $sp, 0x110 +/* 02297C 80021D7C 8FA600EC */ lw $a2, 0xec($sp) +/* 022980 80021D80 02202025 */ move $a0, $s1 +/* 022984 80021D84 00002825 */ move $a1, $zero +/* 022988 80021D88 0C008A22 */ jal func_80022888 +/* 02298C 80021D8C E7A000F8 */ swc1 $f0, 0xf8($sp) +/* 022990 80021D90 27B200FC */ addiu $s2, $sp, 0xfc +/* 022994 80021D94 8FA600EC */ lw $a2, 0xec($sp) +/* 022998 80021D98 02402025 */ move $a0, $s2 +/* 02299C 80021D9C 00002825 */ move $a1, $zero +/* 0229A0 80021DA0 0C008A22 */ jal func_80022888 +/* 0229A4 80021DA4 E7A000F4 */ swc1 $f0, 0xf4($sp) +/* 0229A8 80021DA8 E7A000F0 */ swc1 $f0, 0xf0($sp) +.L80021DAC: +/* 0229AC 80021DAC 8FA40154 */ lw $a0, 0x154($sp) +/* 0229B0 80021DB0 C7A400F8 */ lwc1 $f4, 0xf8($sp) +/* 0229B4 80021DB4 C488000C */ lwc1 $f8, 0xc($a0) +/* 0229B8 80021DB8 C7A600F4 */ lwc1 $f6, 0xf4($sp) +/* 0229BC 80021DBC 46082281 */ sub.s $f10, $f4, $f8 +/* 0229C0 80021DC0 E7AA00F8 */ swc1 $f10, 0xf8($sp) +/* 0229C4 80021DC4 C4840010 */ lwc1 $f4, 0x10($a0) +/* 0229C8 80021DC8 44055000 */ mfc1 $a1, $f10 +/* 0229CC 80021DCC 46043201 */ sub.s $f8, $f6, $f4 +/* 0229D0 80021DD0 C7A600F0 */ lwc1 $f6, 0xf0($sp) +/* 0229D4 80021DD4 E7A800F4 */ swc1 $f8, 0xf4($sp) +/* 0229D8 80021DD8 C4840014 */ lwc1 $f4, 0x14($a0) +/* 0229DC 80021DDC 44064000 */ mfc1 $a2, $f8 +/* 0229E0 80021DE0 46043181 */ sub.s $f6, $f6, $f4 +/* 0229E4 80021DE4 44073000 */ mfc1 $a3, $f6 +/* 0229E8 80021DE8 0C00455C */ jal func_80011570 +/* 0229EC 80021DEC E7A600F0 */ swc1 $f6, 0xf0($sp) +/* 0229F0 80021DF0 8FA600EC */ lw $a2, 0xec($sp) +/* 0229F4 80021DF4 27A400D0 */ addiu $a0, $sp, 0xd0 +/* 0229F8 80021DF8 0C008950 */ jal func_80022540 +/* 0229FC 80021DFC 00002825 */ move $a1, $zero +/* 022A00 80021E00 C7A40090 */ lwc1 $f4, 0x90($sp) +/* 022A04 80021E04 8FAE0154 */ lw $t6, 0x154($sp) +/* 022A08 80021E08 46040282 */ mul.s $f10, $f0, $f4 +/* 022A0C 80021E0C 8DCF0040 */ lw $t7, 0x40($t6) +/* 022A10 80021E10 24010001 */ li $at, 1 +/* 022A14 80021E14 C5E8000C */ lwc1 $f8, 0xc($t7) +/* 022A18 80021E18 00000000 */ nop +/* 022A1C 80021E1C 46085182 */ mul.s $f6, $f10, $f8 +/* 022A20 80021E20 E5C60008 */ swc1 $f6, 8($t6) +/* 022A24 80021E24 8FB8015C */ lw $t8, 0x15c($sp) +/* 022A28 80021E28 00000000 */ nop +/* 022A2C 80021E2C 9302002E */ lbu $v0, 0x2e($t8) +/* 022A30 80021E30 00000000 */ nop +/* 022A34 80021E34 104101B3 */ beq $v0, $at, .L80022504 +/* 022A38 80021E38 24010002 */ li $at, 2 +/* 022A3C 80021E3C 10410005 */ beq $v0, $at, .L80021E54 +/* 022A40 80021E40 24010003 */ li $at, 3 +/* 022A44 80021E44 10410056 */ beq $v0, $at, .L80021FA0 +/* 022A48 80021E48 3C038012 */ lui $v1, %hi(D_8011AE78) # $v1, 0x8012 +/* 022A4C 80021E4C 100000A0 */ b .L800220D0 +/* 022A50 80021E50 24050001 */ li $a1, 1 +.L80021E54: +/* 022A54 80021E54 8FB9015C */ lw $t9, 0x15c($sp) +/* 022A58 80021E58 8FA600EC */ lw $a2, 0xec($sp) +/* 022A5C 80021E5C 832B003F */ lb $t3, 0x3f($t9) +/* 022A60 80021E60 02002025 */ move $a0, $s0 +/* 022A64 80021E64 15600012 */ bnez $t3, .L80021EB0 +/* 022A68 80021E68 00002825 */ move $a1, $zero +/* 022A6C 80021E6C 8FA600EC */ lw $a2, 0xec($sp) +/* 022A70 80021E70 02002025 */ move $a0, $s0 +/* 022A74 80021E74 00002825 */ move $a1, $zero +/* 022A78 80021E78 0C00898F */ jal func_8002263C +/* 022A7C 80021E7C 27A700F8 */ addiu $a3, $sp, 0xf8 +/* 022A80 80021E80 8FA600EC */ lw $a2, 0xec($sp) +/* 022A84 80021E84 02202025 */ move $a0, $s1 +/* 022A88 80021E88 00002825 */ move $a1, $zero +/* 022A8C 80021E8C 0C00898F */ jal func_8002263C +/* 022A90 80021E90 27A700F4 */ addiu $a3, $sp, 0xf4 +/* 022A94 80021E94 8FA600EC */ lw $a2, 0xec($sp) +/* 022A98 80021E98 02402025 */ move $a0, $s2 +/* 022A9C 80021E9C 00002825 */ move $a1, $zero +/* 022AA0 80021EA0 0C00898F */ jal func_8002263C +/* 022AA4 80021EA4 27A700F0 */ addiu $a3, $sp, 0xf0 +/* 022AA8 80021EA8 1000000E */ b .L80021EE4 +/* 022AAC 80021EAC C7B400F8 */ lwc1 $f20, 0xf8($sp) +.L80021EB0: +/* 022AB0 80021EB0 0C008A2C */ jal func_800228B0 +/* 022AB4 80021EB4 27A700F8 */ addiu $a3, $sp, 0xf8 +/* 022AB8 80021EB8 8FA600EC */ lw $a2, 0xec($sp) +/* 022ABC 80021EBC 02202025 */ move $a0, $s1 +/* 022AC0 80021EC0 00002825 */ move $a1, $zero +/* 022AC4 80021EC4 0C008A2C */ jal func_800228B0 +/* 022AC8 80021EC8 27A700F4 */ addiu $a3, $sp, 0xf4 +/* 022ACC 80021ECC 8FA600EC */ lw $a2, 0xec($sp) +/* 022AD0 80021ED0 02402025 */ move $a0, $s2 +/* 022AD4 80021ED4 00002825 */ move $a1, $zero +/* 022AD8 80021ED8 0C008A2C */ jal func_800228B0 +/* 022ADC 80021EDC 27A700F0 */ addiu $a3, $sp, 0xf0 +/* 022AE0 80021EE0 C7B400F8 */ lwc1 $f20, 0xf8($sp) +.L80021EE4: +/* 022AE4 80021EE4 C7A200F4 */ lwc1 $f2, 0xf4($sp) +/* 022AE8 80021EE8 4614A102 */ mul.s $f4, $f20, $f20 +/* 022AEC 80021EEC C7AE00F0 */ lwc1 $f14, 0xf0($sp) +/* 022AF0 80021EF0 46021282 */ mul.s $f10, $f2, $f2 +/* 022AF4 80021EF4 00000000 */ nop +/* 022AF8 80021EF8 460E7182 */ mul.s $f6, $f14, $f14 +/* 022AFC 80021EFC 460A2200 */ add.s $f8, $f4, $f10 +/* 022B00 80021F00 0C0326B4 */ jal sqrtf +/* 022B04 80021F04 46064300 */ add.s $f12, $f8, $f6 +/* 022B08 80021F08 44808000 */ mtc1 $zero, $f16 +/* 022B0C 80021F0C 3C014059 */ li $at, 0x40590000 # 3.390625 +/* 022B10 80021F10 46100032 */ c.eq.s $f0, $f16 +/* 022B14 80021F14 00000000 */ nop +/* 022B18 80021F18 45010011 */ bc1t .L80021F60 +/* 022B1C 80021F1C 00000000 */ nop +/* 022B20 80021F20 44812800 */ mtc1 $at, $f5 +/* 022B24 80021F24 44802000 */ mtc1 $zero, $f4 +/* 022B28 80021F28 460002A1 */ cvt.d.s $f10, $f0 +/* 022B2C 80021F2C 00000000 */ nop +/* 022B30 80021F30 462A2203 */ div.d $f8, $f4, $f10 +/* 022B34 80021F34 C7B400F8 */ lwc1 $f20, 0xf8($sp) +/* 022B38 80021F38 C7A200F4 */ lwc1 $f2, 0xf4($sp) +/* 022B3C 80021F3C C7AE00F0 */ lwc1 $f14, 0xf0($sp) +/* 022B40 80021F40 46204320 */ cvt.s.d $f12, $f8 +/* 022B44 80021F44 460CA502 */ mul.s $f20, $f20, $f12 +/* 022B48 80021F48 00000000 */ nop +/* 022B4C 80021F4C 460C1082 */ mul.s $f2, $f2, $f12 +/* 022B50 80021F50 E7B400F8 */ swc1 $f20, 0xf8($sp) +/* 022B54 80021F54 460C7382 */ mul.s $f14, $f14, $f12 +/* 022B58 80021F58 E7A200F4 */ swc1 $f2, 0xf4($sp) +/* 022B5C 80021F5C E7AE00F0 */ swc1 $f14, 0xf0($sp) +.L80021F60: +/* 022B60 80021F60 C7AE00F0 */ lwc1 $f14, 0xf0($sp) +/* 022B64 80021F64 C7AC00F8 */ lwc1 $f12, 0xf8($sp) +/* 022B68 80021F68 0C01C1D4 */ jal func_80070750 +/* 022B6C 80021F6C 00000000 */ nop +/* 022B70 80021F70 24018000 */ li $at, -32768 +/* 022B74 80021F74 8FAD0154 */ lw $t5, 0x154($sp) +/* 022B78 80021F78 00416021 */ addu $t4, $v0, $at +/* 022B7C 80021F7C 3C0142C8 */ li $at, 0x42C80000 # 100.000000 +/* 022B80 80021F80 A5AC0000 */ sh $t4, ($t5) +/* 022B84 80021F84 C7AC00F4 */ lwc1 $f12, 0xf4($sp) +/* 022B88 80021F88 44817000 */ mtc1 $at, $f14 +/* 022B8C 80021F8C 0C01C1D4 */ jal func_80070750 +/* 022B90 80021F90 00000000 */ nop +/* 022B94 80021F94 8FAF0154 */ lw $t7, 0x154($sp) +/* 022B98 80021F98 1000015A */ b .L80022504 +/* 022B9C 80021F9C A5E20002 */ sh $v0, 2($t7) +.L80021FA0: +/* 022BA0 80021FA0 8463AE78 */ lh $v1, %lo(D_8011AE78)($v1) +/* 022BA4 80021FA4 00002825 */ move $a1, $zero +/* 022BA8 80021FA8 18600014 */ blez $v1, .L80021FFC +/* 022BAC 80021FAC 3C078012 */ lui $a3, %hi(D_8011AE74) # $a3, 0x8012 +/* 022BB0 80021FB0 8CE7AE74 */ lw $a3, %lo(D_8011AE74)($a3) +/* 022BB4 80021FB4 8FAE015C */ lw $t6, 0x15c($sp) +/* 022BB8 80021FB8 8CF80000 */ lw $t8, ($a3) +/* 022BBC 80021FBC 81C2003E */ lb $v0, 0x3e($t6) +/* 022BC0 80021FC0 8F19007C */ lw $t9, 0x7c($t8) +/* 022BC4 80021FC4 00000000 */ nop +/* 022BC8 80021FC8 1059000C */ beq $v0, $t9, .L80021FFC +/* 022BCC 80021FCC 00000000 */ nop +.L80021FD0: +/* 022BD0 80021FD0 24A50001 */ addiu $a1, $a1, 1 +/* 022BD4 80021FD4 00A3082A */ slt $at, $a1, $v1 +/* 022BD8 80021FD8 10200008 */ beqz $at, .L80021FFC +/* 022BDC 80021FDC 00055880 */ sll $t3, $a1, 2 +/* 022BE0 80021FE0 00EB6021 */ addu $t4, $a3, $t3 +/* 022BE4 80021FE4 8D8D0000 */ lw $t5, ($t4) +/* 022BE8 80021FE8 00000000 */ nop +/* 022BEC 80021FEC 8DAF007C */ lw $t7, 0x7c($t5) +/* 022BF0 80021FF0 00000000 */ nop +/* 022BF4 80021FF4 144FFFF6 */ bne $v0, $t7, .L80021FD0 +/* 022BF8 80021FF8 00000000 */ nop +.L80021FFC: +/* 022BFC 80021FFC 10A30141 */ beq $a1, $v1, .L80022504 +/* 022C00 80022000 3C0E8012 */ lui $t6, %hi(D_8011AE74) # $t6, 0x8012 +/* 022C04 80022004 8DCEAE74 */ lw $t6, %lo(D_8011AE74)($t6) +/* 022C08 80022008 0005C080 */ sll $t8, $a1, 2 +/* 022C0C 8002200C 01D8C821 */ addu $t9, $t6, $t8 +/* 022C10 80022010 8F2B0000 */ lw $t3, ($t9) +/* 022C14 80022014 8FAC0154 */ lw $t4, 0x154($sp) +/* 022C18 80022018 8D630064 */ lw $v1, 0x64($t3) +/* 022C1C 8002201C 00000000 */ nop +/* 022C20 80022020 10600139 */ beqz $v1, .L80022508 +/* 022C24 80022024 00001025 */ move $v0, $zero +/* 022C28 80022028 C466000C */ lwc1 $f6, 0xc($v1) +/* 022C2C 8002202C C584000C */ lwc1 $f4, 0xc($t4) +/* 022C30 80022030 00000000 */ nop +/* 022C34 80022034 46043281 */ sub.s $f10, $f6, $f4 +/* 022C38 80022038 E7AA00F8 */ swc1 $f10, 0xf8($sp) +/* 022C3C 8002203C C5860010 */ lwc1 $f6, 0x10($t4) +/* 022C40 80022040 C4680010 */ lwc1 $f8, 0x10($v1) +/* 022C44 80022044 00000000 */ nop +/* 022C48 80022048 46064101 */ sub.s $f4, $f8, $f6 +/* 022C4C 8002204C E7A400F4 */ swc1 $f4, 0xf4($sp) +/* 022C50 80022050 C5880014 */ lwc1 $f8, 0x14($t4) +/* 022C54 80022054 C46A0014 */ lwc1 $f10, 0x14($v1) +/* 022C58 80022058 C7A400F8 */ lwc1 $f4, 0xf8($sp) +/* 022C5C 8002205C 46085181 */ sub.s $f6, $f10, $f8 +/* 022C60 80022060 C7A800F4 */ lwc1 $f8, 0xf4($sp) +/* 022C64 80022064 46042282 */ mul.s $f10, $f4, $f4 +/* 022C68 80022068 E7A600F0 */ swc1 $f6, 0xf0($sp) +/* 022C6C 8002206C 46084182 */ mul.s $f6, $f8, $f8 +/* 022C70 80022070 C7A800F0 */ lwc1 $f8, 0xf0($sp) +/* 022C74 80022074 46065100 */ add.s $f4, $f10, $f6 +/* 022C78 80022078 46084282 */ mul.s $f10, $f8, $f8 +/* 022C7C 8002207C 0C0326B4 */ jal sqrtf +/* 022C80 80022080 460A2300 */ add.s $f12, $f4, $f10 +/* 022C84 80022084 44808000 */ mtc1 $zero, $f16 +/* 022C88 80022088 C7AE00F0 */ lwc1 $f14, 0xf0($sp) +/* 022C8C 8002208C 4600803C */ c.lt.s $f16, $f0 +/* 022C90 80022090 C7AC00F8 */ lwc1 $f12, 0xf8($sp) +/* 022C94 80022094 4500011B */ bc1f .L80022504 +/* 022C98 80022098 E7A000EC */ swc1 $f0, 0xec($sp) +/* 022C9C 8002209C 0C01C1D4 */ jal func_80070750 +/* 022CA0 800220A0 00000000 */ nop +/* 022CA4 800220A4 8FAF0154 */ lw $t7, 0x154($sp) +/* 022CA8 800220A8 24018000 */ li $at, -32768 +/* 022CAC 800220AC 00416821 */ addu $t5, $v0, $at +/* 022CB0 800220B0 A5ED0000 */ sh $t5, ($t7) +/* 022CB4 800220B4 C7AE00EC */ lwc1 $f14, 0xec($sp) +/* 022CB8 800220B8 C7AC00F4 */ lwc1 $f12, 0xf4($sp) +/* 022CBC 800220BC 0C01C1D4 */ jal func_80070750 +/* 022CC0 800220C0 00000000 */ nop +/* 022CC4 800220C4 8FAE0154 */ lw $t6, 0x154($sp) +/* 022CC8 800220C8 1000010E */ b .L80022504 +/* 022CCC 800220CC A5C20002 */ sh $v0, 2($t6) +.L800220D0: +/* 022CD0 800220D0 3C01C0E0 */ li $at, 0xC0E00000 # -7.000000 +/* 022CD4 800220D4 4481A800 */ mtc1 $at, $f21 +/* 022CD8 800220D8 3C0140E0 */ li $at, 0x40E00000 # 7.000000 +/* 022CDC 800220DC 44819800 */ mtc1 $at, $f19 +/* 022CE0 800220E0 3C0140F0 */ li $at, 0x40F00000 # 7.500000 +/* 022CE4 800220E4 44817800 */ mtc1 $at, $f15 +/* 022CE8 800220E8 4480A000 */ mtc1 $zero, $f20 +/* 022CEC 800220EC 44809000 */ mtc1 $zero, $f18 +/* 022CF0 800220F0 44808000 */ mtc1 $zero, $f16 +/* 022CF4 800220F4 44807000 */ mtc1 $zero, $f14 +/* 022CF8 800220F8 27BE00C0 */ addiu $fp, $sp, 0xc0 +/* 022CFC 800220FC 27B600AC */ addiu $s6, $sp, 0xac +/* 022D00 80022100 27A90098 */ addiu $t1, $sp, 0x98 +/* 022D04 80022104 240A0005 */ li $t2, 5 +/* 022D08 80022108 27A800A8 */ addiu $t0, $sp, 0xa8 +/* 022D0C 8002210C 27A700BC */ addiu $a3, $sp, 0xbc +/* 022D10 80022110 27A600D0 */ addiu $a2, $sp, 0xd0 +.L80022114: +/* 022D14 80022114 C7C60000 */ lwc1 $f6, ($fp) +/* 022D18 80022118 C7C8FFFC */ lwc1 $f8, -4($fp) +/* 022D1C 8002211C 27DE0004 */ addiu $fp, $fp, 4 +/* 022D20 80022120 46083301 */ sub.s $f12, $f6, $f8 +/* 022D24 80022124 28A10005 */ slti $at, $a1, 5 +/* 022D28 80022128 460060A1 */ cvt.d.s $f2, $f12 +/* 022D2C 8002212C 4622903C */ c.lt.d $f18, $f2 +/* 022D30 80022130 46008006 */ mov.s $f0, $f16 +/* 022D34 80022134 45000005 */ bc1f .L8002214C +/* 022D38 80022138 01452023 */ subu $a0, $t2, $a1 +/* 022D3C 8002213C 46008121 */ cvt.d.s $f4, $f16 +/* 022D40 80022140 462E2281 */ sub.d $f10, $f4, $f14 +/* 022D44 80022144 10000008 */ b .L80022168 +/* 022D48 80022148 46205020 */ cvt.s.d $f0, $f10 +.L8002214C: +/* 022D4C 8002214C 4634103C */ c.lt.d $f2, $f20 +/* 022D50 80022150 00000000 */ nop +/* 022D54 80022154 45000004 */ bc1f .L80022168 +/* 022D58 80022158 00000000 */ nop +/* 022D5C 8002215C 460081A1 */ cvt.d.s $f6, $f16 +/* 022D60 80022160 462E3200 */ add.d $f8, $f6, $f14 +/* 022D64 80022164 46204020 */ cvt.s.d $f0, $f8 +.L80022168: +/* 022D68 80022168 10200020 */ beqz $at, .L800221EC +/* 022D6C 8002216C 00A08025 */ move $s0, $a1 +/* 022D70 80022170 30980003 */ andi $t8, $a0, 3 +/* 022D74 80022174 1300000B */ beqz $t8, .L800221A4 +/* 022D78 80022178 03051821 */ addu $v1, $t8, $a1 +/* 022D7C 8002217C 0010C880 */ sll $t9, $s0, 2 +/* 022D80 80022180 27AB00BC */ addiu $t3, $sp, 0xbc +/* 022D84 80022184 032B1021 */ addu $v0, $t9, $t3 +.L80022188: +/* 022D88 80022188 C4440000 */ lwc1 $f4, ($v0) +/* 022D8C 8002218C 26100001 */ addiu $s0, $s0, 1 +/* 022D90 80022190 46002280 */ add.s $f10, $f4, $f0 +/* 022D94 80022194 24420004 */ addiu $v0, $v0, 4 +/* 022D98 80022198 1470FFFB */ bne $v1, $s0, .L80022188 +/* 022D9C 8002219C E44AFFFC */ swc1 $f10, -4($v0) +/* 022DA0 800221A0 120A0011 */ beq $s0, $t2, .L800221E8 +.L800221A4: +/* 022DA4 800221A4 00106080 */ sll $t4, $s0, 2 +/* 022DA8 800221A8 27AD00BC */ addiu $t5, $sp, 0xbc +/* 022DAC 800221AC 018D1021 */ addu $v0, $t4, $t5 +.L800221B0: +/* 022DB0 800221B0 C4460000 */ lwc1 $f6, ($v0) +/* 022DB4 800221B4 C4440004 */ lwc1 $f4, 4($v0) +/* 022DB8 800221B8 46003200 */ add.s $f8, $f6, $f0 +/* 022DBC 800221BC C4460008 */ lwc1 $f6, 8($v0) +/* 022DC0 800221C0 46002280 */ add.s $f10, $f4, $f0 +/* 022DC4 800221C4 C444000C */ lwc1 $f4, 0xc($v0) +/* 022DC8 800221C8 E44A0004 */ swc1 $f10, 4($v0) +/* 022DCC 800221CC E4480000 */ swc1 $f8, ($v0) +/* 022DD0 800221D0 46003200 */ add.s $f8, $f6, $f0 +/* 022DD4 800221D4 24420010 */ addiu $v0, $v0, 0x10 +/* 022DD8 800221D8 46002280 */ add.s $f10, $f4, $f0 +/* 022DDC 800221DC E448FFF8 */ swc1 $f8, -8($v0) +/* 022DE0 800221E0 1446FFF3 */ bne $v0, $a2, .L800221B0 +/* 022DE4 800221E4 E44AFFFC */ swc1 $f10, -4($v0) +.L800221E8: +/* 022DE8 800221E8 00A08025 */ move $s0, $a1 +.L800221EC: +/* 022DEC 800221EC C6C60000 */ lwc1 $f6, ($s6) +/* 022DF0 800221F0 C6C8FFFC */ lwc1 $f8, -4($s6) +/* 022DF4 800221F4 26D60004 */ addiu $s6, $s6, 4 +/* 022DF8 800221F8 46083301 */ sub.s $f12, $f6, $f8 +/* 022DFC 800221FC 28A10005 */ slti $at, $a1, 5 +/* 022E00 80022200 460060A1 */ cvt.d.s $f2, $f12 +/* 022E04 80022204 4622903C */ c.lt.d $f18, $f2 +/* 022E08 80022208 46008006 */ mov.s $f0, $f16 +/* 022E0C 8002220C 45000005 */ bc1f .L80022224 +/* 022E10 80022210 240F0005 */ li $t7, 5 +/* 022E14 80022214 46008121 */ cvt.d.s $f4, $f16 +/* 022E18 80022218 462E2281 */ sub.d $f10, $f4, $f14 +/* 022E1C 8002221C 10000008 */ b .L80022240 +/* 022E20 80022220 46205020 */ cvt.s.d $f0, $f10 +.L80022224: +/* 022E24 80022224 4634103C */ c.lt.d $f2, $f20 +/* 022E28 80022228 00000000 */ nop +/* 022E2C 8002222C 45000004 */ bc1f .L80022240 +/* 022E30 80022230 00000000 */ nop +/* 022E34 80022234 460081A1 */ cvt.d.s $f6, $f16 +/* 022E38 80022238 462E3200 */ add.d $f8, $f6, $f14 +/* 022E3C 8002223C 46204020 */ cvt.s.d $f0, $f8 +.L80022240: +/* 022E40 80022240 10200020 */ beqz $at, .L800222C4 +/* 022E44 80022244 01E52023 */ subu $a0, $t7, $a1 +/* 022E48 80022248 308E0003 */ andi $t6, $a0, 3 +/* 022E4C 8002224C 11C0000B */ beqz $t6, .L8002227C +/* 022E50 80022250 01C51821 */ addu $v1, $t6, $a1 +/* 022E54 80022254 0010C080 */ sll $t8, $s0, 2 +/* 022E58 80022258 27B900A8 */ addiu $t9, $sp, 0xa8 +/* 022E5C 8002225C 03191021 */ addu $v0, $t8, $t9 +.L80022260: +/* 022E60 80022260 C4440000 */ lwc1 $f4, ($v0) +/* 022E64 80022264 26100001 */ addiu $s0, $s0, 1 +/* 022E68 80022268 46002280 */ add.s $f10, $f4, $f0 +/* 022E6C 8002226C 24420004 */ addiu $v0, $v0, 4 +/* 022E70 80022270 1470FFFB */ bne $v1, $s0, .L80022260 +/* 022E74 80022274 E44AFFFC */ swc1 $f10, -4($v0) +/* 022E78 80022278 120A0011 */ beq $s0, $t2, .L800222C0 +.L8002227C: +/* 022E7C 8002227C 00105880 */ sll $t3, $s0, 2 +/* 022E80 80022280 27AC00A8 */ addiu $t4, $sp, 0xa8 +/* 022E84 80022284 016C1021 */ addu $v0, $t3, $t4 +.L80022288: +/* 022E88 80022288 C4460000 */ lwc1 $f6, ($v0) +/* 022E8C 8002228C C4440004 */ lwc1 $f4, 4($v0) +/* 022E90 80022290 46003200 */ add.s $f8, $f6, $f0 +/* 022E94 80022294 C4460008 */ lwc1 $f6, 8($v0) +/* 022E98 80022298 46002280 */ add.s $f10, $f4, $f0 +/* 022E9C 8002229C C444000C */ lwc1 $f4, 0xc($v0) +/* 022EA0 800222A0 E44A0004 */ swc1 $f10, 4($v0) +/* 022EA4 800222A4 E4480000 */ swc1 $f8, ($v0) +/* 022EA8 800222A8 46003200 */ add.s $f8, $f6, $f0 +/* 022EAC 800222AC 24420010 */ addiu $v0, $v0, 0x10 +/* 022EB0 800222B0 46002280 */ add.s $f10, $f4, $f0 +/* 022EB4 800222B4 E448FFF8 */ swc1 $f8, -8($v0) +/* 022EB8 800222B8 1447FFF3 */ bne $v0, $a3, .L80022288 +/* 022EBC 800222BC E44AFFFC */ swc1 $f10, -4($v0) +.L800222C0: +/* 022EC0 800222C0 00A08025 */ move $s0, $a1 +.L800222C4: +/* 022EC4 800222C4 C5260000 */ lwc1 $f6, ($t1) +/* 022EC8 800222C8 C528FFFC */ lwc1 $f8, -4($t1) +/* 022ECC 800222CC 240D0005 */ li $t5, 5 +/* 022ED0 800222D0 46083301 */ sub.s $f12, $f6, $f8 +/* 022ED4 800222D4 01A52023 */ subu $a0, $t5, $a1 +/* 022ED8 800222D8 460060A1 */ cvt.d.s $f2, $f12 +/* 022EDC 800222DC 4622903C */ c.lt.d $f18, $f2 +/* 022EE0 800222E0 46008006 */ mov.s $f0, $f16 +/* 022EE4 800222E4 45000005 */ bc1f .L800222FC +/* 022EE8 800222E8 28A10005 */ slti $at, $a1, 5 +/* 022EEC 800222EC 46008121 */ cvt.d.s $f4, $f16 +/* 022EF0 800222F0 462E2281 */ sub.d $f10, $f4, $f14 +/* 022EF4 800222F4 10000008 */ b .L80022318 +/* 022EF8 800222F8 46205020 */ cvt.s.d $f0, $f10 +.L800222FC: +/* 022EFC 800222FC 4634103C */ c.lt.d $f2, $f20 +/* 022F00 80022300 00000000 */ nop +/* 022F04 80022304 45000004 */ bc1f .L80022318 +/* 022F08 80022308 00000000 */ nop +/* 022F0C 8002230C 460081A1 */ cvt.d.s $f6, $f16 +/* 022F10 80022310 462E3200 */ add.d $f8, $f6, $f14 +/* 022F14 80022314 46204020 */ cvt.s.d $f0, $f8 +.L80022318: +/* 022F18 80022318 1020001E */ beqz $at, .L80022394 +/* 022F1C 8002231C 308F0003 */ andi $t7, $a0, 3 +/* 022F20 80022320 11E0000B */ beqz $t7, .L80022350 +/* 022F24 80022324 01E51821 */ addu $v1, $t7, $a1 +/* 022F28 80022328 00107080 */ sll $t6, $s0, 2 +/* 022F2C 8002232C 27B80094 */ addiu $t8, $sp, 0x94 +/* 022F30 80022330 01D81021 */ addu $v0, $t6, $t8 +.L80022334: +/* 022F34 80022334 C4440000 */ lwc1 $f4, ($v0) +/* 022F38 80022338 26100001 */ addiu $s0, $s0, 1 +/* 022F3C 8002233C 46002280 */ add.s $f10, $f4, $f0 +/* 022F40 80022340 24420004 */ addiu $v0, $v0, 4 +/* 022F44 80022344 1470FFFB */ bne $v1, $s0, .L80022334 +/* 022F48 80022348 E44AFFFC */ swc1 $f10, -4($v0) +/* 022F4C 8002234C 120A0011 */ beq $s0, $t2, .L80022394 +.L80022350: +/* 022F50 80022350 0010C880 */ sll $t9, $s0, 2 +/* 022F54 80022354 27AB0094 */ addiu $t3, $sp, 0x94 +/* 022F58 80022358 032B1021 */ addu $v0, $t9, $t3 +.L8002235C: +/* 022F5C 8002235C C4460000 */ lwc1 $f6, ($v0) +/* 022F60 80022360 C4440004 */ lwc1 $f4, 4($v0) +/* 022F64 80022364 46003200 */ add.s $f8, $f6, $f0 +/* 022F68 80022368 C4460008 */ lwc1 $f6, 8($v0) +/* 022F6C 8002236C 46002280 */ add.s $f10, $f4, $f0 +/* 022F70 80022370 C444000C */ lwc1 $f4, 0xc($v0) +/* 022F74 80022374 E44A0004 */ swc1 $f10, 4($v0) +/* 022F78 80022378 E4480000 */ swc1 $f8, ($v0) +/* 022F7C 8002237C 46003200 */ add.s $f8, $f6, $f0 +/* 022F80 80022380 24420010 */ addiu $v0, $v0, 0x10 +/* 022F84 80022384 46002280 */ add.s $f10, $f4, $f0 +/* 022F88 80022388 E448FFF8 */ swc1 $f8, -8($v0) +/* 022F8C 8002238C 1448FFF3 */ bne $v0, $t0, .L8002235C +/* 022F90 80022390 E44AFFFC */ swc1 $f10, -4($v0) +.L80022394: +/* 022F94 80022394 24A50001 */ addiu $a1, $a1, 1 +/* 022F98 80022398 14AAFF5E */ bne $a1, $t2, .L80022114 +/* 022F9C 8002239C 25290004 */ addiu $t1, $t1, 4 +/* 022FA0 800223A0 8FAC015C */ lw $t4, 0x15c($sp) +/* 022FA4 800223A4 8FA600EC */ lw $a2, 0xec($sp) +/* 022FA8 800223A8 818D003F */ lb $t5, 0x3f($t4) +/* 022FAC 800223AC 00002825 */ move $a1, $zero +/* 022FB0 800223B0 15A0002B */ bnez $t5, .L80022460 +/* 022FB4 800223B4 27A400BC */ addiu $a0, $sp, 0xbc +/* 022FB8 800223B8 8FA600EC */ lw $a2, 0xec($sp) +/* 022FBC 800223BC 0C008950 */ jal func_80022540 +/* 022FC0 800223C0 27A400BC */ addiu $a0, $sp, 0xbc +/* 022FC4 800223C4 444FF800 */ cfc1 $t7, $31 +/* 022FC8 800223C8 8FB80154 */ lw $t8, 0x154($sp) +/* 022FCC 800223CC 35E10003 */ ori $at, $t7, 3 +/* 022FD0 800223D0 38210002 */ xori $at, $at, 2 +/* 022FD4 800223D4 44C1F800 */ ctc1 $at, $31 +/* 022FD8 800223D8 27A400A8 */ addiu $a0, $sp, 0xa8 +/* 022FDC 800223DC 460001A4 */ cvt.w.s $f6, $f0 +/* 022FE0 800223E0 00002825 */ move $a1, $zero +/* 022FE4 800223E4 440E3000 */ mfc1 $t6, $f6 +/* 022FE8 800223E8 44CFF800 */ ctc1 $t7, $31 +/* 022FEC 800223EC A70E0000 */ sh $t6, ($t8) +/* 022FF0 800223F0 8FA600EC */ lw $a2, 0xec($sp) +/* 022FF4 800223F4 0C008950 */ jal func_80022540 +/* 022FF8 800223F8 00000000 */ nop +/* 022FFC 800223FC 4459F800 */ cfc1 $t9, $31 +/* 023000 80022400 8FAC0154 */ lw $t4, 0x154($sp) +/* 023004 80022404 37210003 */ ori $at, $t9, 3 +/* 023008 80022408 38210002 */ xori $at, $at, 2 +/* 02300C 8002240C 44C1F800 */ ctc1 $at, $31 +/* 023010 80022410 27A40094 */ addiu $a0, $sp, 0x94 +/* 023014 80022414 46000224 */ cvt.w.s $f8, $f0 +/* 023018 80022418 00002825 */ move $a1, $zero +/* 02301C 8002241C 440B4000 */ mfc1 $t3, $f8 +/* 023020 80022420 44D9F800 */ ctc1 $t9, $31 +/* 023024 80022424 A58B0002 */ sh $t3, 2($t4) +/* 023028 80022428 8FA600EC */ lw $a2, 0xec($sp) +/* 02302C 8002242C 0C008950 */ jal func_80022540 +/* 023030 80022430 00000000 */ nop +/* 023034 80022434 444DF800 */ cfc1 $t5, $31 +/* 023038 80022438 8FAE0154 */ lw $t6, 0x154($sp) +/* 02303C 8002243C 35A10003 */ ori $at, $t5, 3 +/* 023040 80022440 38210002 */ xori $at, $at, 2 +/* 023044 80022444 44C1F800 */ ctc1 $at, $31 +/* 023048 80022448 00000000 */ nop +/* 02304C 8002244C 46000124 */ cvt.w.s $f4, $f0 +/* 023050 80022450 440F2000 */ mfc1 $t7, $f4 +/* 023054 80022454 44CDF800 */ ctc1 $t5, $31 +/* 023058 80022458 1000002A */ b .L80022504 +/* 02305C 8002245C A5CF0004 */ sh $t7, 4($t6) +.L80022460: +/* 023060 80022460 0C008A22 */ jal func_80022888 +/* 023064 80022464 00002825 */ move $a1, $zero +/* 023068 80022468 4458F800 */ cfc1 $t8, $31 +/* 02306C 8002246C 8FAB0154 */ lw $t3, 0x154($sp) +/* 023070 80022470 37010003 */ ori $at, $t8, 3 +/* 023074 80022474 38210002 */ xori $at, $at, 2 +/* 023078 80022478 44C1F800 */ ctc1 $at, $31 +/* 02307C 8002247C 27A400A8 */ addiu $a0, $sp, 0xa8 +/* 023080 80022480 460002A4 */ cvt.w.s $f10, $f0 +/* 023084 80022484 00002825 */ move $a1, $zero +/* 023088 80022488 44195000 */ mfc1 $t9, $f10 +/* 02308C 8002248C 44D8F800 */ ctc1 $t8, $31 +/* 023090 80022490 A5790000 */ sh $t9, ($t3) +/* 023094 80022494 8FA600EC */ lw $a2, 0xec($sp) +/* 023098 80022498 0C008A22 */ jal func_80022888 +/* 02309C 8002249C 00000000 */ nop +/* 0230A0 800224A0 444CF800 */ cfc1 $t4, $31 +/* 0230A4 800224A4 8FAF0154 */ lw $t7, 0x154($sp) +/* 0230A8 800224A8 35810003 */ ori $at, $t4, 3 +/* 0230AC 800224AC 38210002 */ xori $at, $at, 2 +/* 0230B0 800224B0 44C1F800 */ ctc1 $at, $31 +/* 0230B4 800224B4 27A40094 */ addiu $a0, $sp, 0x94 +/* 0230B8 800224B8 460001A4 */ cvt.w.s $f6, $f0 +/* 0230BC 800224BC 00002825 */ move $a1, $zero +/* 0230C0 800224C0 440D3000 */ mfc1 $t5, $f6 +/* 0230C4 800224C4 44CCF800 */ ctc1 $t4, $31 +/* 0230C8 800224C8 A5ED0002 */ sh $t5, 2($t7) +/* 0230CC 800224CC 8FA600EC */ lw $a2, 0xec($sp) +/* 0230D0 800224D0 0C008A22 */ jal func_80022888 +/* 0230D4 800224D4 00000000 */ nop +/* 0230D8 800224D8 444EF800 */ cfc1 $t6, $31 +/* 0230DC 800224DC 8FB90154 */ lw $t9, 0x154($sp) +/* 0230E0 800224E0 35C10003 */ ori $at, $t6, 3 +/* 0230E4 800224E4 38210002 */ xori $at, $at, 2 +/* 0230E8 800224E8 44C1F800 */ ctc1 $at, $31 +/* 0230EC 800224EC 00000000 */ nop +/* 0230F0 800224F0 46000224 */ cvt.w.s $f8, $f0 +/* 0230F4 800224F4 44184000 */ mfc1 $t8, $f8 +/* 0230F8 800224F8 44CEF800 */ ctc1 $t6, $31 +/* 0230FC 800224FC A7380004 */ sh $t8, 4($t9) +/* 023100 80022500 00000000 */ nop +.L80022504: +/* 023104 80022504 00001025 */ move $v0, $zero +.L80022508: +/* 023108 80022508 8FBF0044 */ lw $ra, 0x44($sp) +/* 02310C 8002250C C7B50018 */ lwc1 $f21, 0x18($sp) +/* 023110 80022510 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 023114 80022514 8FB00020 */ lw $s0, 0x20($sp) +/* 023118 80022518 8FB10024 */ lw $s1, 0x24($sp) +/* 02311C 8002251C 8FB20028 */ lw $s2, 0x28($sp) +/* 023120 80022520 8FB3002C */ lw $s3, 0x2c($sp) +/* 023124 80022524 8FB40030 */ lw $s4, 0x30($sp) +/* 023128 80022528 8FB50034 */ lw $s5, 0x34($sp) +/* 02312C 8002252C 8FB60038 */ lw $s6, 0x38($sp) +/* 023130 80022530 8FB7003C */ lw $s7, 0x3c($sp) +/* 023134 80022534 8FBE0040 */ lw $fp, 0x40($sp) +/* 023138 80022538 03E00008 */ jr $ra +/* 02313C 8002253C 27BD0160 */ addiu $sp, $sp, 0x160 + diff --git a/asm/non_matchings/unknown_005740/func_80022540.s b/asm/non_matchings/unknown_005740/func_80022540.s new file mode 100644 index 00000000..83526fda --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80022540.s @@ -0,0 +1,65 @@ +glabel func_80022540 +/* 023140 80022540 27BDFFF0 */ addiu $sp, $sp, -0x10 +/* 023144 80022544 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 023148 80022548 00057080 */ sll $t6, $a1, 2 +/* 02314C 8002254C 44819800 */ mtc1 $at, $f19 +/* 023150 80022550 AFA60018 */ sw $a2, 0x18($sp) +/* 023154 80022554 008E1021 */ addu $v0, $a0, $t6 +/* 023158 80022558 C4460000 */ lwc1 $f6, ($v0) +/* 02315C 8002255C 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 023160 80022560 44814800 */ mtc1 $at, $f9 +/* 023164 80022564 C444000C */ lwc1 $f4, 0xc($v0) +/* 023168 80022568 44804000 */ mtc1 $zero, $f8 +/* 02316C 8002256C 46003321 */ cvt.d.s $f12, $f6 +/* 023170 80022570 462C4382 */ mul.d $f14, $f8, $f12 +/* 023174 80022574 C44A0004 */ lwc1 $f10, 4($v0) +/* 023178 80022578 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 +/* 02317C 8002257C 460020A1 */ cvt.d.s $f2, $f4 +/* 023180 80022580 C4440008 */ lwc1 $f4, 8($v0) +/* 023184 80022584 44813800 */ mtc1 $at, $f7 +/* 023188 80022588 44803000 */ mtc1 $zero, $f6 +/* 02318C 8002258C 46005421 */ cvt.d.s $f16, $f10 +/* 023190 80022590 46303202 */ mul.d $f8, $f6, $f16 +/* 023194 80022594 3C01BFF8 */ li $at, 0xBFF80000 # -1.937500 +/* 023198 80022598 46002021 */ cvt.d.s $f0, $f4 +/* 02319C 8002259C 44802000 */ mtc1 $zero, $f4 +/* 0231A0 800225A0 44812800 */ mtc1 $at, $f5 +/* 0231A4 800225A4 44809000 */ mtc1 $zero, $f18 +/* 0231A8 800225A8 46202182 */ mul.d $f6, $f4, $f0 +/* 0231AC 800225AC 46287280 */ add.d $f10, $f14, $f8 +/* 0231B0 800225B0 3C01C004 */ li $at, 0xC0040000 # -2.062500 +/* 0231B4 800225B4 46321102 */ mul.d $f4, $f2, $f18 +/* 0231B8 800225B8 46265200 */ add.d $f8, $f10, $f6 +/* 0231BC 800225BC 46282280 */ add.d $f10, $f4, $f8 +/* 0231C0 800225C0 44802000 */ mtc1 $zero, $f4 +/* 0231C4 800225C4 44812800 */ mtc1 $at, $f5 +/* 0231C8 800225C8 462051A0 */ cvt.s.d $f6, $f10 +/* 0231CC 800225CC 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 0231D0 800225D0 46302202 */ mul.d $f8, $f4, $f16 +/* 0231D4 800225D4 46200100 */ add.d $f4, $f0, $f0 +/* 0231D8 800225D8 E7A60000 */ swc1 $f6, ($sp) +/* 0231DC 800225DC 46286280 */ add.d $f10, $f12, $f8 +/* 0231E0 800225E0 46245200 */ add.d $f8, $f10, $f4 +/* 0231E4 800225E4 44805000 */ mtc1 $zero, $f10 +/* 0231E8 800225E8 44815800 */ mtc1 $at, $f11 +/* 0231EC 800225EC 00000000 */ nop +/* 0231F0 800225F0 462A1102 */ mul.d $f4, $f2, $f10 +/* 0231F4 800225F4 462080A0 */ cvt.s.d $f2, $f16 +/* 0231F8 800225F8 46282280 */ add.d $f10, $f4, $f8 +/* 0231FC 800225FC 46320202 */ mul.d $f8, $f0, $f18 +/* 023200 80022600 46205120 */ cvt.s.d $f4, $f10 +/* 023204 80022604 E7A40004 */ swc1 $f4, 4($sp) +/* 023208 80022608 462E4280 */ add.d $f10, $f8, $f14 +/* 02320C 8002260C 46205220 */ cvt.s.d $f8, $f10 +/* 023210 80022610 C7AA0018 */ lwc1 $f10, 0x18($sp) +/* 023214 80022614 E7A80008 */ swc1 $f8, 8($sp) +/* 023218 80022618 460A3182 */ mul.s $f6, $f6, $f10 +/* 02321C 8002261C 27BD0010 */ addiu $sp, $sp, 0x10 +/* 023220 80022620 46043180 */ add.s $f6, $f6, $f4 +/* 023224 80022624 460A3102 */ mul.s $f4, $f6, $f10 +/* 023228 80022628 46082180 */ add.s $f6, $f4, $f8 +/* 02322C 8002262C 460A3102 */ mul.s $f4, $f6, $f10 +/* 023230 80022630 46022080 */ add.s $f2, $f4, $f2 +/* 023234 80022634 03E00008 */ jr $ra +/* 023238 80022638 46001006 */ mov.s $f0, $f2 + diff --git a/asm/non_matchings/unknown_005740/func_8002263C.s b/asm/non_matchings/unknown_005740/func_8002263C.s new file mode 100644 index 00000000..f4abd641 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8002263C.s @@ -0,0 +1,82 @@ +glabel func_8002263C +/* 02323C 8002263C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 023240 80022640 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 023244 80022644 00057080 */ sll $t6, $a1, 2 +/* 023248 80022648 44819800 */ mtc1 $at, $f19 +/* 02324C 8002264C E7B50008 */ swc1 $f21, 8($sp) +/* 023250 80022650 E7B4000C */ swc1 $f20, 0xc($sp) +/* 023254 80022654 008E1021 */ addu $v0, $a0, $t6 +/* 023258 80022658 C4460000 */ lwc1 $f6, ($v0) +/* 02325C 8002265C 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 023260 80022660 44814800 */ mtc1 $at, $f9 +/* 023264 80022664 C444000C */ lwc1 $f4, 0xc($v0) +/* 023268 80022668 44804000 */ mtc1 $zero, $f8 +/* 02326C 8002266C 46003321 */ cvt.d.s $f12, $f6 +/* 023270 80022670 462C4382 */ mul.d $f14, $f8, $f12 +/* 023274 80022674 C44A0004 */ lwc1 $f10, 4($v0) +/* 023278 80022678 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 +/* 02327C 8002267C 460020A1 */ cvt.d.s $f2, $f4 +/* 023280 80022680 C4440008 */ lwc1 $f4, 8($v0) +/* 023284 80022684 44813800 */ mtc1 $at, $f7 +/* 023288 80022688 44803000 */ mtc1 $zero, $f6 +/* 02328C 8002268C 46005421 */ cvt.d.s $f16, $f10 +/* 023290 80022690 46303202 */ mul.d $f8, $f6, $f16 +/* 023294 80022694 3C01BFF8 */ li $at, 0xBFF80000 # -1.937500 +/* 023298 80022698 46002021 */ cvt.d.s $f0, $f4 +/* 02329C 8002269C 44802000 */ mtc1 $zero, $f4 +/* 0232A0 800226A0 44812800 */ mtc1 $at, $f5 +/* 0232A4 800226A4 44809000 */ mtc1 $zero, $f18 +/* 0232A8 800226A8 46202182 */ mul.d $f6, $f4, $f0 +/* 0232AC 800226AC 46287280 */ add.d $f10, $f14, $f8 +/* 0232B0 800226B0 3C01C004 */ li $at, 0xC0040000 # -2.062500 +/* 0232B4 800226B4 4486A000 */ mtc1 $a2, $f20 +/* 0232B8 800226B8 46321102 */ mul.d $f4, $f2, $f18 +/* 0232BC 800226BC 46265200 */ add.d $f8, $f10, $f6 +/* 0232C0 800226C0 46282280 */ add.d $f10, $f4, $f8 +/* 0232C4 800226C4 44802000 */ mtc1 $zero, $f4 +/* 0232C8 800226C8 44812800 */ mtc1 $at, $f5 +/* 0232CC 800226CC 462051A0 */ cvt.s.d $f6, $f10 +/* 0232D0 800226D0 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 0232D4 800226D4 46302202 */ mul.d $f8, $f4, $f16 +/* 0232D8 800226D8 46200100 */ add.d $f4, $f0, $f0 +/* 0232DC 800226DC E7A60010 */ swc1 $f6, 0x10($sp) +/* 0232E0 800226E0 46286280 */ add.d $f10, $f12, $f8 +/* 0232E4 800226E4 46245200 */ add.d $f8, $f10, $f4 +/* 0232E8 800226E8 44805000 */ mtc1 $zero, $f10 +/* 0232EC 800226EC 44815800 */ mtc1 $at, $f11 +/* 0232F0 800226F0 3C014040 */ li $at, 0x40400000 # 3.000000 +/* 0232F4 800226F4 462A1102 */ mul.d $f4, $f2, $f10 +/* 0232F8 800226F8 46003306 */ mov.s $f12, $f6 +/* 0232FC 800226FC 462080A0 */ cvt.s.d $f2, $f16 +/* 023300 80022700 46282280 */ add.d $f10, $f4, $f8 +/* 023304 80022704 46320202 */ mul.d $f8, $f0, $f18 +/* 023308 80022708 46205120 */ cvt.s.d $f4, $f10 +/* 02330C 8002270C E7A40014 */ swc1 $f4, 0x14($sp) +/* 023310 80022710 462E4280 */ add.d $f10, $f8, $f14 +/* 023314 80022714 462054A0 */ cvt.s.d $f18, $f10 +/* 023318 80022718 44815000 */ mtc1 $at, $f10 +/* 02331C 8002271C 46002386 */ mov.s $f14, $f4 +/* 023320 80022720 460A3182 */ mul.s $f6, $f6, $f10 +/* 023324 80022724 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 023328 80022728 44814000 */ mtc1 $at, $f8 +/* 02332C 8002272C E7B20018 */ swc1 $f18, 0x18($sp) +/* 023330 80022730 46143102 */ mul.s $f4, $f6, $f20 +/* 023334 80022734 00000000 */ nop +/* 023338 80022738 460E4282 */ mul.s $f10, $f8, $f14 +/* 02333C 8002273C 460A2180 */ add.s $f6, $f4, $f10 +/* 023340 80022740 46143202 */ mul.s $f8, $f6, $f20 +/* 023344 80022744 00000000 */ nop +/* 023348 80022748 46146282 */ mul.s $f10, $f12, $f20 +/* 02334C 8002274C 46124100 */ add.s $f4, $f8, $f18 +/* 023350 80022750 E4E40000 */ swc1 $f4, ($a3) +/* 023354 80022754 460E5180 */ add.s $f6, $f10, $f14 +/* 023358 80022758 C7B50008 */ lwc1 $f21, 8($sp) +/* 02335C 8002275C 46143202 */ mul.s $f8, $f6, $f20 +/* 023360 80022760 46124100 */ add.s $f4, $f8, $f18 +/* 023364 80022764 46142282 */ mul.s $f10, $f4, $f20 +/* 023368 80022768 C7B4000C */ lwc1 $f20, 0xc($sp) +/* 02336C 8002276C 27BD0020 */ addiu $sp, $sp, 0x20 +/* 023370 80022770 46025080 */ add.s $f2, $f10, $f2 +/* 023374 80022774 03E00008 */ jr $ra +/* 023378 80022778 46001006 */ mov.s $f0, $f2 + diff --git a/asm/non_matchings/unknown_005740/func_8002277C.s b/asm/non_matchings/unknown_005740/func_8002277C.s new file mode 100644 index 00000000..1d957454 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8002277C.s @@ -0,0 +1,69 @@ +glabel func_8002277C +/* 02337C 8002277C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 023380 80022780 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 +/* 023384 80022784 00057880 */ sll $t7, $a1, 2 +/* 023388 80022788 44819800 */ mtc1 $at, $f19 +/* 02338C 8002278C AFA60020 */ sw $a2, 0x20($sp) +/* 023390 80022790 008F1021 */ addu $v0, $a0, $t7 +/* 023394 80022794 C44A0000 */ lwc1 $f10, ($v0) +/* 023398 80022798 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 02339C 8002279C 44813800 */ mtc1 $at, $f7 +/* 0233A0 800227A0 C444000C */ lwc1 $f4, 0xc($v0) +/* 0233A4 800227A4 44803000 */ mtc1 $zero, $f6 +/* 0233A8 800227A8 46005321 */ cvt.d.s $f12, $f10 +/* 0233AC 800227AC 462C3382 */ mul.d $f14, $f6, $f12 +/* 0233B0 800227B0 C4480004 */ lwc1 $f8, 4($v0) +/* 0233B4 800227B4 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 +/* 0233B8 800227B8 460020A1 */ cvt.d.s $f2, $f4 +/* 0233BC 800227BC C4440008 */ lwc1 $f4, 8($v0) +/* 0233C0 800227C0 44815800 */ mtc1 $at, $f11 +/* 0233C4 800227C4 44805000 */ mtc1 $zero, $f10 +/* 0233C8 800227C8 46004421 */ cvt.d.s $f16, $f8 +/* 0233CC 800227CC 46305182 */ mul.d $f6, $f10, $f16 +/* 0233D0 800227D0 3C01BFF8 */ li $at, 0xBFF80000 # -1.937500 +/* 0233D4 800227D4 46002021 */ cvt.d.s $f0, $f4 +/* 0233D8 800227D8 44802000 */ mtc1 $zero, $f4 +/* 0233DC 800227DC 44812800 */ mtc1 $at, $f5 +/* 0233E0 800227E0 44809000 */ mtc1 $zero, $f18 +/* 0233E4 800227E4 46202282 */ mul.d $f10, $f4, $f0 +/* 0233E8 800227E8 46267200 */ add.d $f8, $f14, $f6 +/* 0233EC 800227EC 3C01C004 */ li $at, 0xC0040000 # -2.062500 +/* 0233F0 800227F0 46321102 */ mul.d $f4, $f2, $f18 +/* 0233F4 800227F4 462A4180 */ add.d $f6, $f8, $f10 +/* 0233F8 800227F8 46262200 */ add.d $f8, $f4, $f6 +/* 0233FC 800227FC 44802000 */ mtc1 $zero, $f4 +/* 023400 80022800 44812800 */ mtc1 $at, $f5 +/* 023404 80022804 462042A0 */ cvt.s.d $f10, $f8 +/* 023408 80022808 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 +/* 02340C 8002280C 46302182 */ mul.d $f6, $f4, $f16 +/* 023410 80022810 46200100 */ add.d $f4, $f0, $f0 +/* 023414 80022814 E7AA0008 */ swc1 $f10, 8($sp) +/* 023418 80022818 46266200 */ add.d $f8, $f12, $f6 +/* 02341C 8002281C 46244180 */ add.d $f6, $f8, $f4 +/* 023420 80022820 44804000 */ mtc1 $zero, $f8 +/* 023424 80022824 44814800 */ mtc1 $at, $f9 +/* 023428 80022828 3C014040 */ li $at, 0x40400000 # 3.000000 +/* 02342C 8002282C 46281102 */ mul.d $f4, $f2, $f8 +/* 023430 80022830 46262200 */ add.d $f8, $f4, $f6 +/* 023434 80022834 46320182 */ mul.d $f6, $f0, $f18 +/* 023438 80022838 46204120 */ cvt.s.d $f4, $f8 +/* 02343C 8002283C E7A4000C */ swc1 $f4, 0xc($sp) +/* 023440 80022840 462E3200 */ add.d $f8, $f6, $f14 +/* 023444 80022844 462041A0 */ cvt.s.d $f6, $f8 +/* 023448 80022848 44814000 */ mtc1 $at, $f8 +/* 02344C 8002284C E7A60010 */ swc1 $f6, 0x10($sp) +/* 023450 80022850 46085282 */ mul.s $f10, $f10, $f8 +/* 023454 80022854 C7A80020 */ lwc1 $f8, 0x20($sp) +/* 023458 80022858 3C014000 */ li $at, 0x40000000 # 2.000000 +/* 02345C 8002285C E7A60000 */ swc1 $f6, ($sp) +/* 023460 80022860 46085282 */ mul.s $f10, $f10, $f8 +/* 023464 80022864 44813000 */ mtc1 $at, $f6 +/* 023468 80022868 00000000 */ nop +/* 02346C 8002286C 46043182 */ mul.s $f6, $f6, $f4 +/* 023470 80022870 46065100 */ add.s $f4, $f10, $f6 +/* 023474 80022874 C7A60000 */ lwc1 $f6, ($sp) +/* 023478 80022878 46082282 */ mul.s $f10, $f4, $f8 +/* 02347C 8002287C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 023480 80022880 03E00008 */ jr $ra +/* 023484 80022884 46065000 */ add.s $f0, $f10, $f6 + diff --git a/asm/non_matchings/unknown_005740/func_80022888.s b/asm/non_matchings/unknown_005740/func_80022888.s new file mode 100644 index 00000000..ada5bff5 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80022888.s @@ -0,0 +1,12 @@ +glabel func_80022888 +/* 023488 80022888 00057080 */ sll $t6, $a1, 2 +/* 02348C 8002288C 008E1021 */ addu $v0, $a0, $t6 +/* 023490 80022890 C44C0004 */ lwc1 $f12, 4($v0) +/* 023494 80022894 C4440008 */ lwc1 $f4, 8($v0) +/* 023498 80022898 44867000 */ mtc1 $a2, $f14 +/* 02349C 8002289C 460C2181 */ sub.s $f6, $f4, $f12 +/* 0234A0 800228A0 460E3202 */ mul.s $f8, $f6, $f14 +/* 0234A4 800228A4 460C4080 */ add.s $f2, $f8, $f12 +/* 0234A8 800228A8 03E00008 */ jr $ra +/* 0234AC 800228AC 46001006 */ mov.s $f0, $f2 + diff --git a/asm/non_matchings/unknown_005740/func_800228B0.s b/asm/non_matchings/unknown_005740/func_800228B0.s new file mode 100644 index 00000000..66557ada --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800228B0.s @@ -0,0 +1,18 @@ +glabel func_800228B0 +/* 0234B0 800228B0 00057080 */ sll $t6, $a1, 2 +/* 0234B4 800228B4 AFA60008 */ sw $a2, 8($sp) +/* 0234B8 800228B8 008E1021 */ addu $v0, $a0, $t6 +/* 0234BC 800228BC C44C0004 */ lwc1 $f12, 4($v0) +/* 0234C0 800228C0 C4440008 */ lwc1 $f4, 8($v0) +/* 0234C4 800228C4 C7A60008 */ lwc1 $f6, 8($sp) +/* 0234C8 800228C8 460C2081 */ sub.s $f2, $f4, $f12 +/* 0234CC 800228CC 46061202 */ mul.s $f8, $f2, $f6 +/* 0234D0 800228D0 E4E20000 */ swc1 $f2, ($a3) +/* 0234D4 800228D4 03E00008 */ jr $ra +/* 0234D8 800228D8 46086000 */ add.s $f0, $f12, $f8 + +/* 0234DC 800228DC AFA40000 */ sw $a0, ($sp) +/* 0234E0 800228E0 AFA50004 */ sw $a1, 4($sp) +/* 0234E4 800228E4 03E00008 */ jr $ra +/* 0234E8 800228E8 AFA60008 */ sw $a2, 8($sp) + diff --git a/asm/non_matchings/unknown_005740/func_800228EC.s b/asm/non_matchings/unknown_005740/func_800228EC.s new file mode 100644 index 00000000..7cba00a9 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800228EC.s @@ -0,0 +1,25 @@ +glabel func_800228EC +/* 0234EC 800228EC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0234F0 800228F0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0234F4 800228F4 AFA40018 */ sw $a0, 0x18($sp) +/* 0234F8 800228F8 240E0003 */ li $t6, 3 +/* 0234FC 800228FC 3C018012 */ lui $at, %hi(D_8011AEF7) # $at, 0x8012 +/* 023500 80022900 A02EAEF7 */ sb $t6, %lo(D_8011AEF7)($at) +/* 023504 80022904 0C006EB2 */ jal func_8001BAC8 +/* 023508 80022908 00002025 */ move $a0, $zero +/* 02350C 8002290C 8C430064 */ lw $v1, 0x64($v0) +/* 023510 80022910 00000000 */ nop +/* 023514 80022914 A4600190 */ sh $zero, 0x190($v1) +/* 023518 80022918 A0600192 */ sb $zero, 0x192($v1) +/* 02351C 8002291C A0600193 */ sb $zero, 0x193($v1) +/* 023520 80022920 A46001BA */ sh $zero, 0x1ba($v1) +/* 023524 80022924 8FA40018 */ lw $a0, 0x18($sp) +/* 023528 80022928 0C005F9D */ jal func_80017E74 +/* 02352C 8002292C 00000000 */ nop +/* 023530 80022930 0C01BCE2 */ jal func_8006F388 +/* 023534 80022934 2404000A */ li $a0, 10 +/* 023538 80022938 8FBF0014 */ lw $ra, 0x14($sp) +/* 02353C 8002293C 27BD0018 */ addiu $sp, $sp, 0x18 +/* 023540 80022940 03E00008 */ jr $ra +/* 023544 80022944 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80022948.s b/asm/non_matchings/unknown_005740/func_80022948.s new file mode 100644 index 00000000..ca1e9ee9 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80022948.s @@ -0,0 +1,246 @@ +glabel func_80022948 +/* 023548 80022948 3C028012 */ lui $v0, %hi(D_8011AEF7) # $v0, 0x8012 +/* 02354C 8002294C 2442AEF7 */ addiu $v0, %lo(D_8011AEF7) # addiu $v0, $v0, -0x5109 +/* 023550 80022950 804E0000 */ lb $t6, ($v0) +/* 023554 80022954 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 023558 80022958 25CFFFFF */ addiu $t7, $t6, -1 +/* 02355C 8002295C A04F0000 */ sb $t7, ($v0) +/* 023560 80022960 80580000 */ lb $t8, ($v0) +/* 023564 80022964 AFBF001C */ sw $ra, 0x1c($sp) +/* 023568 80022968 170000E0 */ bnez $t8, .L80022CEC +/* 02356C 8002296C AFB00018 */ sw $s0, 0x18($sp) +/* 023570 80022970 0C01AF6C */ jal func_8006BDB0 +/* 023574 80022974 00000000 */ nop +/* 023578 80022978 AFA20068 */ sw $v0, 0x68($sp) +/* 02357C 8002297C 90590052 */ lbu $t9, 0x52($v0) +/* 023580 80022980 3C018012 */ lui $at, %hi(D_8011AEF8) # $at, 0x8012 +/* 023584 80022984 A039AEF8 */ sb $t9, %lo(D_8011AEF8)($at) +/* 023588 80022988 94490054 */ lhu $t1, 0x54($v0) +/* 02358C 8002298C 3C018012 */ lui $at, %hi(D_8011AEFC) # $at, 0x8012 +/* 023590 80022990 240A001D */ li $t2, 29 +/* 023594 80022994 340BFFFF */ li $t3, 65535 +/* 023598 80022998 AC29AEFC */ sw $t1, %lo(D_8011AEFC)($at) +/* 02359C 8002299C A04A0052 */ sb $t2, 0x52($v0) +/* 0235A0 800229A0 A44B0054 */ sh $t3, 0x54($v0) +/* 0235A4 800229A4 0C006EB2 */ jal func_8001BAC8 +/* 0235A8 800229A8 00002025 */ move $a0, $zero +/* 0235AC 800229AC 8C500064 */ lw $s0, 0x64($v0) +/* 0235B0 800229B0 3C018012 */ lui $at, %hi(D_8011AEF6) # $at, 0x8012 +/* 0235B4 800229B4 820C01D6 */ lb $t4, 0x1d6($s0) +/* 0235B8 800229B8 00402025 */ move $a0, $v0 +/* 0235BC 800229BC 258D0001 */ addiu $t5, $t4, 1 +/* 0235C0 800229C0 A02DAEF6 */ sb $t5, %lo(D_8011AEF6)($at) +/* 0235C4 800229C4 0C008C34 */ jal func_800230D0 +/* 0235C8 800229C8 02002825 */ move $a1, $s0 +/* 0235CC 800229CC 860E01A0 */ lh $t6, 0x1a0($s0) +/* 0235D0 800229D0 340F8000 */ li $t7, 32768 +/* 0235D4 800229D4 01EEC023 */ subu $t8, $t7, $t6 +/* 0235D8 800229D8 A6180196 */ sh $t8, 0x196($s0) +/* 0235DC 800229DC A20001FC */ sb $zero, 0x1fc($s0) +/* 0235E0 800229E0 A20001F4 */ sb $zero, 0x1f4($s0) +/* 0235E4 800229E4 A6000190 */ sh $zero, 0x190($s0) +/* 0235E8 800229E8 A2000192 */ sb $zero, 0x192($s0) +/* 0235EC 800229EC A2000193 */ sb $zero, 0x193($s0) +/* 0235F0 800229F0 A2000194 */ sb $zero, 0x194($s0) +/* 0235F4 800229F4 AE000128 */ sw $zero, 0x128($s0) +/* 0235F8 800229F8 AE00012C */ sw $zero, 0x12c($s0) +/* 0235FC 800229FC AE000130 */ sw $zero, 0x130($s0) +/* 023600 80022A00 A60001BA */ sh $zero, 0x1ba($s0) +/* 023604 80022A04 0C01BAA4 */ jal func_8006EA90 +/* 023608 80022A08 AFA2007C */ sw $v0, 0x7c($sp) +/* 02360C 80022A0C 24190050 */ li $t9, 80 +/* 023610 80022A10 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012 +/* 023614 80022A14 AC39ADB0 */ sw $t9, %lo(D_8011ADB0)($at) +/* 023618 80022A18 3C018012 */ lui $at, %hi(D_8011ADB4) # $at, 0x8012 +/* 02361C 80022A1C 8FA30068 */ lw $v1, 0x68($sp) +/* 023620 80022A20 AC20ADB4 */ sw $zero, %lo(D_8011ADB4)($at) +/* 023624 80022A24 3C018012 */ lui $at, %hi(D_8011ADC0) # $at, 0x8012 +/* 023628 80022A28 24090001 */ li $t1, 1 +/* 02362C 80022A2C AFA20054 */ sw $v0, 0x54($sp) +/* 023630 80022A30 AC29ADC0 */ sw $t1, %lo(D_8011ADC0)($at) +/* 023634 80022A34 240A0003 */ li $t2, 3 +/* 023638 80022A38 A06A004B */ sb $t2, 0x4b($v1) +/* 02363C 80022A3C 0C027C0D */ jal func_8009F034 +/* 023640 80022A40 A060004C */ sb $zero, 0x4c($v1) +/* 023644 80022A44 8FA8007C */ lw $t0, 0x7c($sp) +/* 023648 80022A48 00001025 */ move $v0, $zero +/* 02364C 80022A4C 02001825 */ move $v1, $s0 +.L80022A50: +/* 023650 80022A50 24420001 */ addiu $v0, $v0, 1 +/* 023654 80022A54 28410005 */ slti $at, $v0, 5 +/* 023658 80022A58 AC600128 */ sw $zero, 0x128($v1) +/* 02365C 80022A5C 1420FFFC */ bnez $at, .L80022A50 +/* 023660 80022A60 24630004 */ addiu $v1, $v1, 4 +/* 023664 80022A64 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 023668 80022A68 44810000 */ mtc1 $at, $f0 +/* 02366C 80022A6C C5060008 */ lwc1 $f6, 8($t0) +/* 023670 80022A70 C5040010 */ lwc1 $f4, 0x10($t0) +/* 023674 80022A74 46003202 */ mul.s $f8, $f6, $f0 +/* 023678 80022A78 46082280 */ add.s $f10, $f4, $f8 +/* 02367C 80022A7C 444BF800 */ cfc1 $t3, $31 +/* 023680 80022A80 00000000 */ nop +/* 023684 80022A84 35610003 */ ori $at, $t3, 3 +/* 023688 80022A88 38210002 */ xori $at, $at, 2 +/* 02368C 80022A8C 44C1F800 */ ctc1 $at, $31 +/* 023690 80022A90 00000000 */ nop +/* 023694 80022A94 46005424 */ cvt.w.s $f16, $f10 +/* 023698 80022A98 440C8000 */ mfc1 $t4, $f16 +/* 02369C 80022A9C 44CBF800 */ ctc1 $t3, $31 +/* 0236A0 80022AA0 A7AC005A */ sh $t4, 0x5a($sp) +/* 0236A4 80022AA4 C5060000 */ lwc1 $f6, ($t0) +/* 0236A8 80022AA8 C5120018 */ lwc1 $f18, 0x18($t0) +/* 0236AC 80022AAC 46003102 */ mul.s $f4, $f6, $f0 +/* 0236B0 80022AB0 000C7400 */ sll $t6, $t4, 0x10 +/* 0236B4 80022AB4 000EC403 */ sra $t8, $t6, 0x10 +/* 0236B8 80022AB8 44988000 */ mtc1 $t8, $f16 +/* 0236BC 80022ABC 46049201 */ sub.s $f8, $f18, $f4 +/* 0236C0 80022AC0 444DF800 */ cfc1 $t5, $31 +/* 0236C4 80022AC4 00000000 */ nop +/* 0236C8 80022AC8 35A10003 */ ori $at, $t5, 3 +/* 0236CC 80022ACC 38210002 */ xori $at, $at, 2 +/* 0236D0 80022AD0 44C1F800 */ ctc1 $at, $31 +/* 0236D4 80022AD4 00000000 */ nop +/* 0236D8 80022AD8 460042A4 */ cvt.w.s $f10, $f8 +/* 0236DC 80022ADC 440F5000 */ mfc1 $t7, $f10 +/* 0236E0 80022AE0 44CDF800 */ ctc1 $t5, $31 +/* 0236E4 80022AE4 000FCC00 */ sll $t9, $t7, 0x10 +/* 0236E8 80022AE8 00194C03 */ sra $t1, $t9, 0x10 +/* 0236EC 80022AEC 44893000 */ mtc1 $t1, $f6 +/* 0236F0 80022AF0 A7AF005E */ sh $t7, 0x5e($sp) +/* 0236F4 80022AF4 468031A0 */ cvt.s.w $f6, $f6 +/* 0236F8 80022AF8 C50E0014 */ lwc1 $f14, 0x14($t0) +/* 0236FC 80022AFC AFA8007C */ sw $t0, 0x7c($sp) +/* 023700 80022B00 44063000 */ mfc1 $a2, $f6 +/* 023704 80022B04 0C00A7C6 */ jal func_80029F18 +/* 023708 80022B08 46808320 */ cvt.s.w $f12, $f16 +/* 02370C 80022B0C 87AA005A */ lh $t2, 0x5a($sp) +/* 023710 80022B10 87AB005E */ lh $t3, 0x5e($sp) +/* 023714 80022B14 448A9000 */ mtc1 $t2, $f18 +/* 023718 80022B18 448B2000 */ mtc1 $t3, $f4 +/* 02371C 80022B1C 468094A0 */ cvt.s.w $f18, $f18 +/* 023720 80022B20 00402025 */ move $a0, $v0 +/* 023724 80022B24 27A7002C */ addiu $a3, $sp, 0x2c +/* 023728 80022B28 46802120 */ cvt.s.w $f4, $f4 +/* 02372C 80022B2C 44059000 */ mfc1 $a1, $f18 +/* 023730 80022B30 44062000 */ mfc1 $a2, $f4 +/* 023734 80022B34 0C00AEAC */ jal func_8002BAB0 +/* 023738 80022B38 00000000 */ nop +/* 02373C 80022B3C 8FA8007C */ lw $t0, 0x7c($sp) +/* 023740 80022B40 1040000C */ beqz $v0, .L80022B74 +/* 023744 80022B44 240F0010 */ li $t7, 16 +/* 023748 80022B48 444DF800 */ cfc1 $t5, $31 +/* 02374C 80022B4C C7A8002C */ lwc1 $f8, 0x2c($sp) +/* 023750 80022B50 35A10003 */ ori $at, $t5, 3 +/* 023754 80022B54 38210002 */ xori $at, $at, 2 +/* 023758 80022B58 44C1F800 */ ctc1 $at, $31 +/* 02375C 80022B5C 00000000 */ nop +/* 023760 80022B60 460042A4 */ cvt.w.s $f10, $f8 +/* 023764 80022B64 440C5000 */ mfc1 $t4, $f10 +/* 023768 80022B68 44CDF800 */ ctc1 $t5, $31 +/* 02376C 80022B6C 1000000C */ b .L80022BA0 +/* 023770 80022B70 A7AC005C */ sh $t4, 0x5c($sp) +.L80022B74: +/* 023774 80022B74 444EF800 */ cfc1 $t6, $31 +/* 023778 80022B78 C5100014 */ lwc1 $f16, 0x14($t0) +/* 02377C 80022B7C 35C10003 */ ori $at, $t6, 3 +/* 023780 80022B80 38210002 */ xori $at, $at, 2 +/* 023784 80022B84 44C1F800 */ ctc1 $at, $31 +/* 023788 80022B88 00000000 */ nop +/* 02378C 80022B8C 460081A4 */ cvt.w.s $f6, $f16 +/* 023790 80022B90 44183000 */ mfc1 $t8, $f6 +/* 023794 80022B94 44CEF800 */ ctc1 $t6, $31 +/* 023798 80022B98 A7B8005C */ sh $t8, 0x5c($sp) +/* 02379C 80022B9C 00000000 */ nop +.L80022BA0: +/* 0237A0 80022BA0 A3AF0059 */ sb $t7, 0x59($sp) +/* 0237A4 80022BA4 861901A0 */ lh $t9, 0x1a0($s0) +/* 0237A8 80022BA8 24090004 */ li $t1, 4 +/* 0237AC 80022BAC 240A00DA */ li $t2, 218 +/* 0237B0 80022BB0 A7A00062 */ sh $zero, 0x62($sp) +/* 0237B4 80022BB4 A7A00060 */ sh $zero, 0x60($sp) +/* 0237B8 80022BB8 A7A90066 */ sh $t1, 0x66($sp) +/* 0237BC 80022BBC A3AA0058 */ sb $t2, 0x58($sp) +/* 0237C0 80022BC0 00002025 */ move $a0, $zero +/* 0237C4 80022BC4 0C01867D */ jal func_800619F4 +/* 0237C8 80022BC8 A7B90064 */ sh $t9, 0x64($sp) +/* 0237CC 80022BCC 27A40058 */ addiu $a0, $sp, 0x58 +/* 0237D0 80022BD0 0C003A95 */ jal func_8000EA54 +/* 0237D4 80022BD4 24050001 */ li $a1, 1 +/* 0237D8 80022BD8 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 +/* 0237DC 80022BDC 8D6BAEE4 */ lw $t3, %lo(D_8011AEE4)($t3) +/* 0237E0 80022BE0 3C0D8012 */ lui $t5, %hi(D_8011AEE8) # $t5, 0x8012 +/* 0237E4 80022BE4 AD620004 */ sw $v0, 4($t3) +/* 0237E8 80022BE8 8DADAEE8 */ lw $t5, %lo(D_8011AEE8)($t5) +/* 0237EC 80022BEC 3C0C8012 */ lui $t4, %hi(D_8011AEEC) # $t4, 0x8012 +/* 0237F0 80022BF0 ADA20004 */ sw $v0, 4($t5) +/* 0237F4 80022BF4 8D8CAEEC */ lw $t4, %lo(D_8011AEEC)($t4) +/* 0237F8 80022BF8 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 0237FC 80022BFC 44810000 */ mtc1 $at, $f0 +/* 023800 80022C00 AD820004 */ sw $v0, 4($t4) +/* 023804 80022C04 AC40003C */ sw $zero, 0x3c($v0) +/* 023808 80022C08 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 +/* 02380C 80022C0C 240E0002 */ li $t6, 2 +/* 023810 80022C10 AC2EAEF0 */ sw $t6, %lo(D_8011AEF0)($at) +/* 023814 80022C14 8C500064 */ lw $s0, 0x64($v0) +/* 023818 80022C18 2418000A */ li $t8, 10 +/* 02381C 80022C1C A21801D6 */ sb $t8, 0x1d6($s0) +/* 023820 80022C20 820F01D6 */ lb $t7, 0x1d6($s0) +/* 023824 80022C24 24190001 */ li $t9, 1 +/* 023828 80022C28 A2190002 */ sb $t9, 2($s0) +/* 02382C 80022C2C A20F01D7 */ sb $t7, 0x1d7($s0) +/* 023830 80022C30 8FA90054 */ lw $t1, 0x54($sp) +/* 023834 80022C34 240B00FF */ li $t3, 255 +/* 023838 80022C38 812A0059 */ lb $t2, 0x59($t1) +/* 02383C 80022C3C E6000090 */ swc1 $f0, 0x90($s0) +/* 023840 80022C40 E600008C */ swc1 $f0, 0x8c($s0) +/* 023844 80022C44 A20B01F7 */ sb $t3, 0x1f7($s0) +/* 023848 80022C48 AE000118 */ sw $zero, 0x118($s0) +/* 02384C 80022C4C A20A0003 */ sb $t2, 3($s0) +/* 023850 80022C50 8C4C004C */ lw $t4, 0x4c($v0) +/* 023854 80022C54 240D0002 */ li $t5, 2 +/* 023858 80022C58 A18D0012 */ sb $t5, 0x12($t4) +/* 02385C 80022C5C 3C048012 */ lui $a0, %hi(D_8011AE60) # $a0, 0x8012 +/* 023860 80022C60 3C058012 */ lui $a1, %hi(D_8011AE5C) # $a1, 0x8012 +/* 023864 80022C64 8CA5AE5C */ lw $a1, %lo(D_8011AE5C)($a1) +/* 023868 80022C68 8C84AE60 */ lw $a0, %lo(D_8011AE60)($a0) +/* 02386C 80022C6C 2407003E */ li $a3, 62 +/* 023870 80022C70 0085082A */ slt $at, $a0, $a1 +/* 023874 80022C74 10200018 */ beqz $at, .L80022CD8 +/* 023878 80022C78 00041880 */ sll $v1, $a0, 2 +/* 02387C 80022C7C 3C068012 */ lui $a2, %hi(D_8011AE58) # $a2, 0x8012 +/* 023880 80022C80 24C6AE58 */ addiu $a2, %lo(D_8011AE58) # addiu $a2, $a2, -0x51a8 +.L80022C84: +/* 023884 80022C84 8CCE0000 */ lw $t6, ($a2) +/* 023888 80022C88 24840001 */ addiu $a0, $a0, 1 +/* 02388C 80022C8C 01C3C021 */ addu $t8, $t6, $v1 +/* 023890 80022C90 8F020000 */ lw $v0, ($t8) +/* 023894 80022C94 00000000 */ nop +/* 023898 80022C98 844F0006 */ lh $t7, 6($v0) +/* 02389C 80022C9C 00000000 */ nop +/* 0238A0 80022CA0 31F98000 */ andi $t9, $t7, 0x8000 +/* 0238A4 80022CA4 1720000A */ bnez $t9, .L80022CD0 +/* 0238A8 80022CA8 0085082A */ slt $at, $a0, $a1 +/* 0238AC 80022CAC 84490048 */ lh $t1, 0x48($v0) +/* 0238B0 80022CB0 00000000 */ nop +/* 0238B4 80022CB4 14E90006 */ bne $a3, $t1, .L80022CD0 +/* 0238B8 80022CB8 0085082A */ slt $at, $a0, $a1 +/* 0238BC 80022CBC AE020154 */ sw $v0, 0x154($s0) +/* 0238C0 80022CC0 3C058012 */ lui $a1, %hi(D_8011AE5C) # $a1, 0x8012 +/* 0238C4 80022CC4 8CA5AE5C */ lw $a1, %lo(D_8011AE5C)($a1) +/* 0238C8 80022CC8 00000000 */ nop +/* 0238CC 80022CCC 0085082A */ slt $at, $a0, $a1 +.L80022CD0: +/* 0238D0 80022CD0 1420FFEC */ bnez $at, .L80022C84 +/* 0238D4 80022CD4 24630004 */ addiu $v1, $v1, 4 +.L80022CD8: +/* 0238D8 80022CD8 0C01BCE2 */ jal func_8006F388 +/* 0238DC 80022CDC 24040014 */ li $a0, 20 +/* 0238E0 80022CE0 3C04800E */ lui $a0, %hi(D_800DC6F0) # $a0, 0x800e +/* 0238E4 80022CE4 0C030076 */ jal func_800C01D8 +/* 0238E8 80022CE8 2484C6F0 */ addiu $a0, %lo(D_800DC6F0) # addiu $a0, $a0, -0x3910 +.L80022CEC: +/* 0238EC 80022CEC 8FBF001C */ lw $ra, 0x1c($sp) +/* 0238F0 80022CF0 8FB00018 */ lw $s0, 0x18($sp) +/* 0238F4 80022CF4 03E00008 */ jr $ra +/* 0238F8 80022CF8 27BD0080 */ addiu $sp, $sp, 0x80 + diff --git a/asm/non_matchings/unknown_005740/func_80022CFC.s b/asm/non_matchings/unknown_005740/func_80022CFC.s new file mode 100644 index 00000000..6cea4093 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80022CFC.s @@ -0,0 +1,77 @@ +glabel func_80022CFC +/* 0238FC 80022CFC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 023900 80022D00 44856000 */ mtc1 $a1, $f12 +/* 023904 80022D04 44867000 */ mtc1 $a2, $f14 +/* 023908 80022D08 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 02390C 80022D0C 4487A000 */ mtc1 $a3, $f20 +/* 023910 80022D10 AFBF0024 */ sw $ra, 0x24($sp) +/* 023914 80022D14 AFB00020 */ sw $s0, 0x20($sp) +/* 023918 80022D18 00808025 */ move $s0, $a0 +/* 02391C 80022D1C E7B50018 */ swc1 $f21, 0x18($sp) +/* 023920 80022D20 E7AC002C */ swc1 $f12, 0x2c($sp) +/* 023924 80022D24 0C01BAA4 */ jal func_8006EA90 +/* 023928 80022D28 E7AE0030 */ swc1 $f14, 0x30($sp) +/* 02392C 80022D2C 3C088012 */ lui $t0, %hi(D_8011AE5C) # $t0, 0x8012 +/* 023930 80022D30 8D08AE5C */ lw $t0, %lo(D_8011AE5C)($t0) +/* 023934 80022D34 C7AC002C */ lwc1 $f12, 0x2c($sp) +/* 023938 80022D38 C7AE0030 */ lwc1 $f14, 0x30($sp) +/* 02393C 80022D3C 19000030 */ blez $t0, .L80022E00 +/* 023940 80022D40 00003025 */ move $a2, $zero +/* 023944 80022D44 3C014024 */ li $at, 0x40240000 # 2.562500 +/* 023948 80022D48 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 +/* 02394C 80022D4C 44810800 */ mtc1 $at, $f1 +/* 023950 80022D50 44800000 */ mtc1 $zero, $f0 +/* 023954 80022D54 2529AE58 */ addiu $t1, %lo(D_8011AE58) # addiu $t1, $t1, -0x51a8 +/* 023958 80022D58 00003825 */ move $a3, $zero +/* 02395C 80022D5C 240A004D */ li $t2, 77 +.L80022D60: +/* 023960 80022D60 8D2E0000 */ lw $t6, ($t1) +/* 023964 80022D64 24C60001 */ addiu $a2, $a2, 1 +/* 023968 80022D68 01C77821 */ addu $t7, $t6, $a3 +/* 02396C 80022D6C 8DE30000 */ lw $v1, ($t7) +/* 023970 80022D70 00000000 */ nop +/* 023974 80022D74 84780048 */ lh $t8, 0x48($v1) +/* 023978 80022D78 00000000 */ nop +/* 02397C 80022D7C 1558001E */ bne $t2, $t8, .L80022DF8 +/* 023980 80022D80 00C8082A */ slt $at, $a2, $t0 +/* 023984 80022D84 8C64003C */ lw $a0, 0x3c($v1) +/* 023988 80022D88 00000000 */ nop +/* 02398C 80022D8C 1080001A */ beqz $a0, .L80022DF8 +/* 023990 80022D90 00C8082A */ slt $at, $a2, $t0 +/* 023994 80022D94 8085000A */ lb $a1, 0xa($a0) +/* 023998 80022D98 00000000 */ nop +/* 02399C 80022D9C 18A00016 */ blez $a1, .L80022DF8 +/* 0239A0 80022DA0 00C8082A */ slt $at, $a2, $t0 +/* 0239A4 80022DA4 94440014 */ lhu $a0, 0x14($v0) +/* 0239A8 80022DA8 24B90002 */ addiu $t9, $a1, 2 +/* 0239AC 80022DAC 10800011 */ beqz $a0, .L80022DF4 +/* 0239B0 80022DB0 240B0001 */ li $t3, 1 +/* 0239B4 80022DB4 032B6004 */ sllv $t4, $t3, $t9 +/* 0239B8 80022DB8 008C6824 */ and $t5, $a0, $t4 +/* 0239BC 80022DBC 11A0000E */ beqz $t5, .L80022DF8 +/* 0239C0 80022DC0 00C8082A */ slt $at, $a2, $t0 +/* 0239C4 80022DC4 46007121 */ cvt.d.s $f4, $f14 +/* 0239C8 80022DC8 46202180 */ add.d $f6, $f4, $f0 +/* 0239CC 80022DCC E46C000C */ swc1 $f12, 0xc($v1) +/* 0239D0 80022DD0 46203220 */ cvt.s.d $f8, $f6 +/* 0239D4 80022DD4 E4740014 */ swc1 $f20, 0x14($v1) +/* 0239D8 80022DD8 E4680010 */ swc1 $f8, 0x10($v1) +/* 0239DC 80022DDC A470002E */ sh $s0, 0x2e($v1) +/* 0239E0 80022DE0 AC600078 */ sw $zero, 0x78($v1) +/* 0239E4 80022DE4 A0600039 */ sb $zero, 0x39($v1) +/* 0239E8 80022DE8 3C088012 */ lui $t0, %hi(D_8011AE5C) # $t0, 0x8012 +/* 0239EC 80022DEC 8D08AE5C */ lw $t0, %lo(D_8011AE5C)($t0) +/* 0239F0 80022DF0 00000000 */ nop +.L80022DF4: +/* 0239F4 80022DF4 00C8082A */ slt $at, $a2, $t0 +.L80022DF8: +/* 0239F8 80022DF8 1420FFD9 */ bnez $at, .L80022D60 +/* 0239FC 80022DFC 24E70004 */ addiu $a3, $a3, 4 +.L80022E00: +/* 023A00 80022E00 8FBF0024 */ lw $ra, 0x24($sp) +/* 023A04 80022E04 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 023A08 80022E08 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 023A0C 80022E0C 8FB00020 */ lw $s0, 0x20($sp) +/* 023A10 80022E10 03E00008 */ jr $ra +/* 023A14 80022E14 27BD0028 */ addiu $sp, $sp, 0x28 + diff --git a/asm/non_matchings/unknown_005740/func_80022E18.s b/asm/non_matchings/unknown_005740/func_80022E18.s new file mode 100644 index 00000000..5b04445d --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80022E18.s @@ -0,0 +1,187 @@ +glabel func_80022E18 +/* 023A18 80022E18 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 023A1C 80022E1C AFBF0014 */ sw $ra, 0x14($sp) +/* 023A20 80022E20 0C01AF6C */ jal func_8006BDB0 +/* 023A24 80022E24 AFA40030 */ sw $a0, 0x30($sp) +/* 023A28 80022E28 240E0005 */ li $t6, 5 +/* 023A2C 80022E2C A04E004C */ sb $t6, 0x4c($v0) +/* 023A30 80022E30 3C0F8012 */ lui $t7, %hi(D_8011AEF8) # $t7, 0x8012 +/* 023A34 80022E34 81EFAEF8 */ lb $t7, %lo(D_8011AEF8)($t7) +/* 023A38 80022E38 3C188012 */ lui $t8, %hi(D_8011AEFC) # $t8, 0x8012 +/* 023A3C 80022E3C A04F0052 */ sb $t7, 0x52($v0) +/* 023A40 80022E40 8F18AEFC */ lw $t8, %lo(D_8011AEFC)($t8) +/* 023A44 80022E44 24040001 */ li $a0, 1 +/* 023A48 80022E48 0C02AC6B */ jal func_800AB1AC +/* 023A4C 80022E4C A4580054 */ sh $t8, 0x54($v0) +/* 023A50 80022E50 3C078012 */ lui $a3, %hi(D_8011AEE4) # $a3, 0x8012 +/* 023A54 80022E54 3C068012 */ lui $a2, %hi(D_8011AEF0) # $a2, 0x8012 +/* 023A58 80022E58 00002825 */ move $a1, $zero +/* 023A5C 80022E5C 24C6AEF0 */ addiu $a2, %lo(D_8011AEF0) # addiu $a2, $a2, -0x5110 +/* 023A60 80022E60 24E7AEE4 */ addiu $a3, %lo(D_8011AEE4) # addiu $a3, $a3, -0x511c +/* 023A64 80022E64 00001025 */ move $v0, $zero +.L80022E68: +/* 023A68 80022E68 8CF90000 */ lw $t9, ($a3) +/* 023A6C 80022E6C 24A50001 */ addiu $a1, $a1, 1 +/* 023A70 80022E70 03224021 */ addu $t0, $t9, $v0 +/* 023A74 80022E74 8D090000 */ lw $t1, ($t0) +/* 023A78 80022E78 24420004 */ addiu $v0, $v0, 4 +/* 023A7C 80022E7C 8D230064 */ lw $v1, 0x64($t1) +/* 023A80 80022E80 00000000 */ nop +/* 023A84 80022E84 A06001D8 */ sb $zero, 0x1d8($v1) +/* 023A88 80022E88 A0600193 */ sb $zero, 0x193($v1) +/* 023A8C 80022E8C A0600192 */ sb $zero, 0x192($v1) +/* 023A90 80022E90 A4600190 */ sh $zero, 0x190($v1) +/* 023A94 80022E94 8CCA0000 */ lw $t2, ($a2) +/* 023A98 80022E98 00000000 */ nop +/* 023A9C 80022E9C 00AA082A */ slt $at, $a1, $t2 +/* 023AA0 80022EA0 1420FFF1 */ bnez $at, .L80022E68 +/* 023AA4 80022EA4 00000000 */ nop +/* 023AA8 80022EA8 8CEB0000 */ lw $t3, ($a3) +/* 023AAC 80022EAC 00000000 */ nop +/* 023AB0 80022EB0 8D640004 */ lw $a0, 4($t3) +/* 023AB4 80022EB4 0C003FEE */ jal func_8000FFB8 +/* 023AB8 80022EB8 00000000 */ nop +/* 023ABC 80022EBC 3C078012 */ lui $a3, %hi(D_8011AEE4) # $a3, 0x8012 +/* 023AC0 80022EC0 24E7AEE4 */ addiu $a3, %lo(D_8011AEE4) # addiu $a3, $a3, -0x511c +/* 023AC4 80022EC4 8CEC0000 */ lw $t4, ($a3) +/* 023AC8 80022EC8 3C0E8012 */ lui $t6, %hi(D_8011AEE8) # $t6, 0x8012 +/* 023ACC 80022ECC 8DCEAEE8 */ lw $t6, %lo(D_8011AEE8)($t6) +/* 023AD0 80022ED0 8D8D0000 */ lw $t5, ($t4) +/* 023AD4 80022ED4 3C068012 */ lui $a2, %hi(D_8011AEF0) # $a2, 0x8012 +/* 023AD8 80022ED8 24C6AEF0 */ addiu $a2, %lo(D_8011AEF0) # addiu $a2, $a2, -0x5110 +/* 023ADC 80022EDC 240F0001 */ li $t7, 1 +/* 023AE0 80022EE0 ADCD0000 */ sw $t5, ($t6) +/* 023AE4 80022EE4 ACCF0000 */ sw $t7, ($a2) +/* 023AE8 80022EE8 3C058012 */ lui $a1, %hi(D_8011AE60) # $a1, 0x8012 +/* 023AEC 80022EEC 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 +/* 023AF0 80022EF0 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) +/* 023AF4 80022EF4 8CA5AE60 */ lw $a1, %lo(D_8011AE60)($a1) +/* 023AF8 80022EF8 3C188012 */ lui $t8, %hi(D_8011AE58) # $t8, 0x8012 +/* 023AFC 80022EFC 00A3082A */ slt $at, $a1, $v1 +/* 023B00 80022F00 10200013 */ beqz $at, .L80022F50 +/* 023B04 80022F04 00051080 */ sll $v0, $a1, 2 +/* 023B08 80022F08 8F18AE58 */ lw $t8, %lo(D_8011AE58)($t8) +/* 023B0C 80022F0C 00033080 */ sll $a2, $v1, 2 +/* 023B10 80022F10 2405003E */ li $a1, 62 +/* 023B14 80022F14 03022021 */ addu $a0, $t8, $v0 +.L80022F18: +/* 023B18 80022F18 8C830000 */ lw $v1, ($a0) +/* 023B1C 80022F1C 24420004 */ addiu $v0, $v0, 4 +/* 023B20 80022F20 84790006 */ lh $t9, 6($v1) +/* 023B24 80022F24 0046082A */ slt $at, $v0, $a2 +/* 023B28 80022F28 33288000 */ andi $t0, $t9, 0x8000 +/* 023B2C 80022F2C 15000006 */ bnez $t0, .L80022F48 +/* 023B30 80022F30 00000000 */ nop +/* 023B34 80022F34 84690048 */ lh $t1, 0x48($v1) +/* 023B38 80022F38 00000000 */ nop +/* 023B3C 80022F3C 14A90002 */ bne $a1, $t1, .L80022F48 +/* 023B40 80022F40 00000000 */ nop +/* 023B44 80022F44 AFA3001C */ sw $v1, 0x1c($sp) +.L80022F48: +/* 023B48 80022F48 1420FFF3 */ bnez $at, .L80022F18 +/* 023B4C 80022F4C 24840004 */ addiu $a0, $a0, 4 +.L80022F50: +/* 023B50 80022F50 8CEA0000 */ lw $t2, ($a3) +/* 023B54 80022F54 00000000 */ nop +/* 023B58 80022F58 8D4B0000 */ lw $t3, ($t2) +/* 023B5C 80022F5C 00000000 */ nop +/* 023B60 80022F60 8D630064 */ lw $v1, 0x64($t3) +/* 023B64 80022F64 00000000 */ nop +/* 023B68 80022F68 8C64015C */ lw $a0, 0x15c($v1) +/* 023B6C 80022F6C 00000000 */ nop +/* 023B70 80022F70 10800007 */ beqz $a0, .L80022F90 +/* 023B74 80022F74 8FAC0030 */ lw $t4, 0x30($sp) +/* 023B78 80022F78 0C003FEE */ jal func_8000FFB8 +/* 023B7C 80022F7C AFA30024 */ sw $v1, 0x24($sp) +/* 023B80 80022F80 8FA30024 */ lw $v1, 0x24($sp) +/* 023B84 80022F84 00000000 */ nop +/* 023B88 80022F88 AC60015C */ sw $zero, 0x15c($v1) +/* 023B8C 80022F8C 8FAC0030 */ lw $t4, 0x30($sp) +.L80022F90: +/* 023B90 80022F90 00000000 */ nop +/* 023B94 80022F94 1580002C */ bnez $t4, .L80023048 +/* 023B98 80022F98 00000000 */ nop +/* 023B9C 80022F9C 846D01AC */ lh $t5, 0x1ac($v1) +/* 023BA0 80022FA0 24010001 */ li $at, 1 +/* 023BA4 80022FA4 15A1001F */ bne $t5, $at, .L80023024 +/* 023BA8 80022FA8 00000000 */ nop +/* 023BAC 80022FAC 0C01BAA4 */ jal func_8006EA90 +/* 023BB0 80022FB0 AFA30024 */ sw $v1, 0x24($sp) +/* 023BB4 80022FB4 8FA30024 */ lw $v1, 0x24($sp) +/* 023BB8 80022FB8 94580014 */ lhu $t8, 0x14($v0) +/* 023BBC 80022FBC 806701D6 */ lb $a3, 0x1d6($v1) +/* 023BC0 80022FC0 240F0001 */ li $t7, 1 +/* 023BC4 80022FC4 24EE0003 */ addiu $t6, $a3, 3 +/* 023BC8 80022FC8 01CF2804 */ sllv $a1, $t7, $t6 +/* 023BCC 80022FCC 0305C824 */ and $t9, $t8, $a1 +/* 023BD0 80022FD0 13200005 */ beqz $t9, .L80022FE8 +/* 023BD4 80022FD4 00403025 */ move $a2, $v0 +/* 023BD8 80022FD8 0C0274CC */ jal func_8009D330 +/* 023BDC 80022FDC 24040005 */ li $a0, 5 +/* 023BE0 80022FE0 10000013 */ b .L80023030 +/* 023BE4 80022FE4 8FAB001C */ lw $t3, 0x1c($sp) +.L80022FE8: +/* 023BE8 80022FE8 24E40006 */ addiu $a0, $a3, 6 +/* 023BEC 80022FEC AFA5002C */ sw $a1, 0x2c($sp) +/* 023BF0 80022FF0 0C0274CC */ jal func_8009D330 +/* 023BF4 80022FF4 AFA60020 */ sw $a2, 0x20($sp) +/* 023BF8 80022FF8 8FA60020 */ lw $a2, 0x20($sp) +/* 023BFC 80022FFC 8FA5002C */ lw $a1, 0x2c($sp) +/* 023C00 80023000 94C80014 */ lhu $t0, 0x14($a2) +/* 023C04 80023004 00000000 */ nop +/* 023C08 80023008 01054825 */ or $t1, $t0, $a1 +/* 023C0C 8002300C 0C027068 */ jal func_8009C1A0 +/* 023C10 80023010 A4C90014 */ sh $t1, 0x14($a2) +/* 023C14 80023014 0C01BB12 */ jal func_8006EC48 +/* 023C18 80023018 00402025 */ move $a0, $v0 +/* 023C1C 8002301C 10000004 */ b .L80023030 +/* 023C20 80023020 8FAB001C */ lw $t3, 0x1c($sp) +.L80023024: +/* 023C24 80023024 0C0274CC */ jal func_8009D330 +/* 023C28 80023028 24040004 */ li $a0, 4 +/* 023C2C 8002302C 8FAB001C */ lw $t3, 0x1c($sp) +.L80023030: +/* 023C30 80023030 240A001F */ li $t2, 31 +/* 023C34 80023034 24040002 */ li $a0, 2 +/* 023C38 80023038 0C01486E */ jal func_800521B8 +/* 023C3C 8002303C AD6A0078 */ sw $t2, 0x78($t3) +/* 023C40 80023040 10000016 */ b .L8002309C +/* 023C44 80023044 00000000 */ nop +.L80023048: +/* 023C48 80023048 0C0002CA */ jal func_80000B28 +/* 023C4C 8002304C 00000000 */ nop +/* 023C50 80023050 0C000611 */ jal func_80001844 +/* 023C54 80023054 00000000 */ nop +/* 023C58 80023058 0C0274CC */ jal func_8009D330 +/* 023C5C 8002305C 00002025 */ move $a0, $zero +/* 023C60 80023060 0C00205A */ jal func_80008168 +/* 023C64 80023064 00000000 */ nop +/* 023C68 80023068 8FAC0030 */ lw $t4, 0x30($sp) +/* 023C6C 8002306C 24010002 */ li $at, 2 +/* 023C70 80023070 15810003 */ bne $t4, $at, .L80023080 +/* 023C74 80023074 00000000 */ nop +/* 023C78 80023078 0C030C7B */ jal func_800C31EC +/* 023C7C 8002307C 00002025 */ move $a0, $zero +.L80023080: +/* 023C80 80023080 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012 +/* 023C84 80023084 AC20ADB0 */ sw $zero, %lo(D_8011ADB0)($at) +/* 023C88 80023088 8FAF001C */ lw $t7, 0x1c($sp) +/* 023C8C 8002308C 3C018012 */ lui $at, %hi(D_8011ADB8) # $at, 0x8012 +/* 023C90 80023090 AC20ADB8 */ sw $zero, %lo(D_8011ADB8)($at) +/* 023C94 80023094 240D0014 */ li $t5, 20 +/* 023C98 80023098 ADED0078 */ sw $t5, 0x78($t7) +.L8002309C: +/* 023C9C 8002309C 0C0002CA */ jal func_80000B28 +/* 023CA0 800230A0 00000000 */ nop +/* 023CA4 800230A4 0C0282DD */ jal func_800A0B74 +/* 023CA8 800230A8 00000000 */ nop +/* 023CAC 800230AC 3C013F80 */ li $at, 0x3F800000 # 1.000000 +/* 023CB0 800230B0 44816000 */ mtc1 $at, $f12 +/* 023CB4 800230B4 0C01AF44 */ jal func_8006BD10 +/* 023CB8 800230B8 00000000 */ nop +/* 023CBC 800230BC 8FBF0014 */ lw $ra, 0x14($sp) +/* 023CC0 800230C0 3C018012 */ lui $at, %hi(D_8011AEF6) # $at, 0x8012 +/* 023CC4 800230C4 A020AEF6 */ sb $zero, %lo(D_8011AEF6)($at) +/* 023CC8 800230C8 03E00008 */ jr $ra +/* 023CCC 800230CC 27BD0030 */ addiu $sp, $sp, 0x30 + diff --git a/asm/non_matchings/unknown_005740/func_800230D0.s b/asm/non_matchings/unknown_005740/func_800230D0.s new file mode 100644 index 00000000..9cdd6ddb --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800230D0.s @@ -0,0 +1,223 @@ +glabel func_800230D0 +/* 023CD0 800230D0 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 023CD4 800230D4 3C028012 */ lui $v0, %hi(D_8011AED0) # $v0, 0x8012 +/* 023CD8 800230D8 8C42AED0 */ lw $v0, %lo(D_8011AED0)($v0) +/* 023CDC 800230DC AFB10018 */ sw $s1, 0x18($sp) +/* 023CE0 800230E0 AFB00014 */ sw $s0, 0x14($sp) +/* 023CE4 800230E4 00808025 */ move $s0, $a0 +/* 023CE8 800230E8 00A08825 */ move $s1, $a1 +/* 023CEC 800230EC 14400032 */ bnez $v0, .L800231B8 +/* 023CF0 800230F0 AFBF001C */ sw $ra, 0x1c($sp) +/* 023CF4 800230F4 3C078012 */ lui $a3, %hi(D_8011AE5C) # $a3, 0x8012 +/* 023CF8 800230F8 24E7AE5C */ addiu $a3, %lo(D_8011AE5C) # addiu $a3, $a3, -0x51a4 +/* 023CFC 800230FC 8CE40000 */ lw $a0, ($a3) +/* 023D00 80023100 00004025 */ move $t0, $zero +/* 023D04 80023104 1880002A */ blez $a0, .L800231B0 +/* 023D08 80023108 00001025 */ move $v0, $zero +/* 023D0C 8002310C 3C058012 */ lui $a1, %hi(D_8011AE58) # $a1, 0x8012 +/* 023D10 80023110 24A5AE58 */ addiu $a1, %lo(D_8011AE58) # addiu $a1, $a1, -0x51a8 +/* 023D14 80023114 2406000B */ li $a2, 11 +.L80023118: +/* 023D18 80023118 8CAE0000 */ lw $t6, ($a1) +/* 023D1C 8002311C 00027880 */ sll $t7, $v0, 2 +/* 023D20 80023120 01CFC021 */ addu $t8, $t6, $t7 +/* 023D24 80023124 8F030000 */ lw $v1, ($t8) +/* 023D28 80023128 00000000 */ nop +/* 023D2C 8002312C 84790006 */ lh $t9, 6($v1) +/* 023D30 80023130 00000000 */ nop +/* 023D34 80023134 33298000 */ andi $t1, $t9, 0x8000 +/* 023D38 80023138 15200018 */ bnez $t1, .L8002319C +/* 023D3C 8002313C 00000000 */ nop +/* 023D40 80023140 846A0048 */ lh $t2, 0x48($v1) +/* 023D44 80023144 00000000 */ nop +/* 023D48 80023148 14CA0014 */ bne $a2, $t2, .L8002319C +/* 023D4C 8002314C 00000000 */ nop +/* 023D50 80023150 8C6B0078 */ lw $t3, 0x78($v1) +/* 023D54 80023154 00000000 */ nop +/* 023D58 80023158 15600011 */ bnez $t3, .L800231A0 +/* 023D5C 8002315C 24420001 */ addiu $v0, $v0, 1 +/* 023D60 80023160 C464000C */ lwc1 $f4, 0xc($v1) +/* 023D64 80023164 00000000 */ nop +/* 023D68 80023168 E604000C */ swc1 $f4, 0xc($s0) +/* 023D6C 8002316C C4660010 */ lwc1 $f6, 0x10($v1) +/* 023D70 80023170 00000000 */ nop +/* 023D74 80023174 E6060010 */ swc1 $f6, 0x10($s0) +/* 023D78 80023178 C4680014 */ lwc1 $f8, 0x14($v1) +/* 023D7C 8002317C 00000000 */ nop +/* 023D80 80023180 E6080014 */ swc1 $f8, 0x14($s0) +/* 023D84 80023184 846C002E */ lh $t4, 0x2e($v1) +/* 023D88 80023188 00000000 */ nop +/* 023D8C 8002318C A60C002E */ sh $t4, 0x2e($s0) +/* 023D90 80023190 8CE40000 */ lw $a0, ($a3) +/* 023D94 80023194 00000000 */ nop +/* 023D98 80023198 00801025 */ move $v0, $a0 +.L8002319C: +/* 023D9C 8002319C 24420001 */ addiu $v0, $v0, 1 +.L800231A0: +/* 023DA0 800231A0 0044082A */ slt $at, $v0, $a0 +/* 023DA4 800231A4 1420FFDC */ bnez $at, .L80023118 +/* 023DA8 800231A8 00000000 */ nop +/* 023DAC 800231AC AFA3002C */ sw $v1, 0x2c($sp) +.L800231B0: +/* 023DB0 800231B0 1000001E */ b .L8002322C +/* 023DB4 800231B4 8604002E */ lh $a0, 0x2e($s0) +.L800231B8: +/* 023DB8 800231B8 00026900 */ sll $t5, $v0, 4 +/* 023DBC 800231BC 3C0E8012 */ lui $t6, %hi(D_8011AECC) # $t6, 0x8012 +/* 023DC0 800231C0 8DCEAECC */ lw $t6, %lo(D_8011AECC)($t6) +/* 023DC4 800231C4 01A26823 */ subu $t5, $t5, $v0 +/* 023DC8 800231C8 000D6880 */ sll $t5, $t5, 2 +/* 023DCC 800231CC 3C01420C */ li $at, 0x420C0000 # 35.000000 +/* 023DD0 800231D0 01AE4021 */ addu $t0, $t5, $t6 +/* 023DD4 800231D4 44810000 */ mtc1 $at, $f0 +/* 023DD8 800231D8 C510FFCC */ lwc1 $f16, -0x34($t0) +/* 023DDC 800231DC C50AFFD4 */ lwc1 $f10, -0x2c($t0) +/* 023DE0 800231E0 46008482 */ mul.s $f18, $f16, $f0 +/* 023DE4 800231E4 2508FFC4 */ addiu $t0, $t0, -0x3c +/* 023DE8 800231E8 46125101 */ sub.s $f4, $f10, $f18 +/* 023DEC 800231EC E604000C */ swc1 $f4, 0xc($s0) +/* 023DF0 800231F0 C5060014 */ lwc1 $f6, 0x14($t0) +/* 023DF4 800231F4 C60C000C */ lwc1 $f12, 0xc($s0) +/* 023DF8 800231F8 E6060010 */ swc1 $f6, 0x10($s0) +/* 023DFC 800231FC C5100000 */ lwc1 $f16, ($t0) +/* 023E00 80023200 C5080018 */ lwc1 $f8, 0x18($t0) +/* 023E04 80023204 46008282 */ mul.s $f10, $f16, $f0 +/* 023E08 80023208 C60E0010 */ lwc1 $f14, 0x10($s0) +/* 023E0C 8002320C 460A4480 */ add.s $f18, $f8, $f10 +/* 023E10 80023210 E6120014 */ swc1 $f18, 0x14($s0) +/* 023E14 80023214 8E060014 */ lw $a2, 0x14($s0) +/* 023E18 80023218 0C00A7C6 */ jal func_80029F18 +/* 023E1C 8002321C AFA8005C */ sw $t0, 0x5c($sp) +/* 023E20 80023220 8FA8005C */ lw $t0, 0x5c($sp) +/* 023E24 80023224 A602002E */ sh $v0, 0x2e($s0) +/* 023E28 80023228 8604002E */ lh $a0, 0x2e($s0) +.L8002322C: +/* 023E2C 8002322C 8E05000C */ lw $a1, 0xc($s0) +/* 023E30 80023230 8E060014 */ lw $a2, 0x14($s0) +/* 023E34 80023234 AFA8005C */ sw $t0, 0x5c($sp) +/* 023E38 80023238 0C00AEAC */ jal func_8002BAB0 +/* 023E3C 8002323C 27A70030 */ addiu $a3, $sp, 0x30 +/* 023E40 80023240 8FA3002C */ lw $v1, 0x2c($sp) +/* 023E44 80023244 8FA8005C */ lw $t0, 0x5c($sp) +/* 023E48 80023248 10400005 */ beqz $v0, .L80023260 +/* 023E4C 8002324C 00027880 */ sll $t7, $v0, 2 +/* 023E50 80023250 03AFC021 */ addu $t8, $sp, $t7 +/* 023E54 80023254 C704002C */ lwc1 $f4, 0x2c($t8) +/* 023E58 80023258 00000000 */ nop +/* 023E5C 8002325C E6040010 */ swc1 $f4, 0x10($s0) +.L80023260: +/* 023E60 80023260 C606000C */ lwc1 $f6, 0xc($s0) +/* 023E64 80023264 00000000 */ nop +/* 023E68 80023268 E626005C */ swc1 $f6, 0x5c($s1) +/* 023E6C 8002326C C6100010 */ lwc1 $f16, 0x10($s0) +/* 023E70 80023270 00000000 */ nop +/* 023E74 80023274 E6300060 */ swc1 $f16, 0x60($s1) +/* 023E78 80023278 C6080014 */ lwc1 $f8, 0x14($s0) +/* 023E7C 8002327C 11000008 */ beqz $t0, .L800232A0 +/* 023E80 80023280 E6280064 */ swc1 $f8, 0x64($s1) +/* 023E84 80023284 C50C0000 */ lwc1 $f12, ($t0) +/* 023E88 80023288 C50E0008 */ lwc1 $f14, 8($t0) +/* 023E8C 8002328C 0C01C1D4 */ jal func_80070750 +/* 023E90 80023290 AFA8005C */ sw $t0, 0x5c($sp) +/* 023E94 80023294 8FA8005C */ lw $t0, 0x5c($sp) +/* 023E98 80023298 10000004 */ b .L800232AC +/* 023E9C 8002329C A62201A0 */ sh $v0, 0x1a0($s1) +.L800232A0: +/* 023EA0 800232A0 84790000 */ lh $t9, ($v1) +/* 023EA4 800232A4 00000000 */ nop +/* 023EA8 800232A8 A63901A0 */ sh $t9, 0x1a0($s1) +.L800232AC: +/* 023EAC 800232AC A2200192 */ sb $zero, 0x192($s1) +/* 023EB0 800232B0 3C0A8012 */ lui $t2, %hi(D_8011AED0) # $t2, 0x8012 +/* 023EB4 800232B4 8D4AAED0 */ lw $t2, %lo(D_8011AED0)($t2) +/* 023EB8 800232B8 82290193 */ lb $t1, 0x193($s1) +/* 023EBC 800232BC 862C01A0 */ lh $t4, 0x1a0($s1) +/* 023EC0 800232C0 012A0019 */ multu $t1, $t2 +/* 023EC4 800232C4 3C014170 */ li $at, 0x41700000 # 15.000000 +/* 023EC8 800232C8 44810000 */ mtc1 $at, $f0 +/* 023ECC 800232CC 2401FFFF */ li $at, -1 +/* 023ED0 800232D0 00005812 */ mflo $t3 +/* 023ED4 800232D4 A62B0190 */ sh $t3, 0x190($s1) +/* 023ED8 800232D8 C60A000C */ lwc1 $f10, 0xc($s0) +/* 023EDC 800232DC A60C0000 */ sh $t4, ($s0) +/* 023EE0 800232E0 E62A00D8 */ swc1 $f10, 0xd8($s1) +/* 023EE4 800232E4 C6120010 */ lwc1 $f18, 0x10($s0) +/* 023EE8 800232E8 00000000 */ nop +/* 023EEC 800232EC 46009100 */ add.s $f4, $f18, $f0 +/* 023EF0 800232F0 E62400DC */ swc1 $f4, 0xdc($s1) +/* 023EF4 800232F4 C6060014 */ lwc1 $f6, 0x14($s0) +/* 023EF8 800232F8 00000000 */ nop +/* 023EFC 800232FC E62600E0 */ swc1 $f6, 0xe0($s1) +/* 023F00 80023300 C610000C */ lwc1 $f16, 0xc($s0) +/* 023F04 80023304 00000000 */ nop +/* 023F08 80023308 E63000E4 */ swc1 $f16, 0xe4($s1) +/* 023F0C 8002330C C6080010 */ lwc1 $f8, 0x10($s0) +/* 023F10 80023310 00000000 */ nop +/* 023F14 80023314 46004280 */ add.s $f10, $f8, $f0 +/* 023F18 80023318 E62A00E8 */ swc1 $f10, 0xe8($s1) +/* 023F1C 8002331C C6120014 */ lwc1 $f18, 0x14($s0) +/* 023F20 80023320 00000000 */ nop +/* 023F24 80023324 E63200EC */ swc1 $f18, 0xec($s1) +/* 023F28 80023328 C604000C */ lwc1 $f4, 0xc($s0) +/* 023F2C 8002332C 00000000 */ nop +/* 023F30 80023330 E62400F0 */ swc1 $f4, 0xf0($s1) +/* 023F34 80023334 C6060010 */ lwc1 $f6, 0x10($s0) +/* 023F38 80023338 00000000 */ nop +/* 023F3C 8002333C 46003400 */ add.s $f16, $f6, $f0 +/* 023F40 80023340 E63000F4 */ swc1 $f16, 0xf4($s1) +/* 023F44 80023344 C6080014 */ lwc1 $f8, 0x14($s0) +/* 023F48 80023348 00000000 */ nop +/* 023F4C 8002334C E62800F8 */ swc1 $f8, 0xf8($s1) +/* 023F50 80023350 C60A000C */ lwc1 $f10, 0xc($s0) +/* 023F54 80023354 00000000 */ nop +/* 023F58 80023358 E62A00FC */ swc1 $f10, 0xfc($s1) +/* 023F5C 8002335C C6120010 */ lwc1 $f18, 0x10($s0) +/* 023F60 80023360 00000000 */ nop +/* 023F64 80023364 46009100 */ add.s $f4, $f18, $f0 +/* 023F68 80023368 44800000 */ mtc1 $zero, $f0 +/* 023F6C 8002336C E6240100 */ swc1 $f4, 0x100($s1) +/* 023F70 80023370 C6060014 */ lwc1 $f6, 0x14($s0) +/* 023F74 80023374 00000000 */ nop +/* 023F78 80023378 E6260104 */ swc1 $f6, 0x104($s1) +/* 023F7C 8002337C 8E0D004C */ lw $t5, 0x4c($s0) +/* 023F80 80023380 C610000C */ lwc1 $f16, 0xc($s0) +/* 023F84 80023384 00000000 */ nop +/* 023F88 80023388 E5B00004 */ swc1 $f16, 4($t5) +/* 023F8C 8002338C 8E0E004C */ lw $t6, 0x4c($s0) +/* 023F90 80023390 C6080010 */ lwc1 $f8, 0x10($s0) +/* 023F94 80023394 00000000 */ nop +/* 023F98 80023398 E5C80008 */ swc1 $f8, 8($t6) +/* 023F9C 8002339C 8E0F004C */ lw $t7, 0x4c($s0) +/* 023FA0 800233A0 C60A0014 */ lwc1 $f10, 0x14($s0) +/* 023FA4 800233A4 00000000 */ nop +/* 023FA8 800233A8 E5EA000C */ swc1 $f10, 0xc($t7) +/* 023FAC 800233AC E620002C */ swc1 $f0, 0x2c($s1) +/* 023FB0 800233B0 E6200030 */ swc1 $f0, 0x30($s1) +/* 023FB4 800233B4 E600001C */ swc1 $f0, 0x1c($s0) +/* 023FB8 800233B8 E6000024 */ swc1 $f0, 0x24($s0) +/* 023FBC 800233BC 823801D7 */ lb $t8, 0x1d7($s1) +/* 023FC0 800233C0 86240000 */ lh $a0, ($s1) +/* 023FC4 800233C4 A23801D6 */ sb $t8, 0x1d6($s1) +/* 023FC8 800233C8 1081000F */ beq $a0, $at, .L80023408 +/* 023FCC 800233CC 8FBF001C */ lw $ra, 0x1c($sp) +/* 023FD0 800233D0 0C01997A */ jal func_800665E8 +/* 023FD4 800233D4 AFA8005C */ sw $t0, 0x5c($sp) +/* 023FD8 800233D8 0C01A73F */ jal func_80069CFC +/* 023FDC 800233DC 00000000 */ nop +/* 023FE0 800233E0 C612000C */ lwc1 $f18, 0xc($s0) +/* 023FE4 800233E4 8FA8005C */ lw $t0, 0x5c($sp) +/* 023FE8 800233E8 E452000C */ swc1 $f18, 0xc($v0) +/* 023FEC 800233EC C6040010 */ lwc1 $f4, 0x10($s0) +/* 023FF0 800233F0 00000000 */ nop +/* 023FF4 800233F4 E4440010 */ swc1 $f4, 0x10($v0) +/* 023FF8 800233F8 C6060014 */ lwc1 $f6, 0x14($s0) +/* 023FFC 800233FC 00000000 */ nop +/* 024000 80023400 E4460014 */ swc1 $f6, 0x14($v0) +/* 024004 80023404 8FBF001C */ lw $ra, 0x1c($sp) +.L80023408: +/* 024008 80023408 8FB00014 */ lw $s0, 0x14($sp) +/* 02400C 8002340C 8FB10018 */ lw $s1, 0x18($sp) +/* 024010 80023410 27BD0060 */ addiu $sp, $sp, 0x60 +/* 024014 80023414 03E00008 */ jr $ra +/* 024018 80023418 01001025 */ move $v0, $t0 + diff --git a/asm/non_matchings/unknown_005740/func_8002341C.s b/asm/non_matchings/unknown_005740/func_8002341C.s new file mode 100644 index 00000000..c6f4218b --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8002341C.s @@ -0,0 +1,6 @@ +glabel func_8002341C +/* 02401C 8002341C 3C028012 */ lui $v0, %hi(D_8011AEF6) # $v0, 0x8012 +/* 024020 80023420 8042AEF6 */ lb $v0, %lo(D_8011AEF6)($v0) +/* 024024 80023424 03E00008 */ jr $ra +/* 024028 80023428 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_8002342C.s b/asm/non_matchings/unknown_005740/func_8002342C.s new file mode 100644 index 00000000..73fac14c --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_8002342C.s @@ -0,0 +1,84 @@ +glabel func_8002342C +/* 02402C 8002342C 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 024030 80023430 AFB3003C */ sw $s3, 0x3c($sp) +/* 024034 80023434 3C138012 */ lui $s3, %hi(D_8011AE5C) # $s3, 0x8012 +/* 024038 80023438 2673AE5C */ addiu $s3, %lo(D_8011AE5C) # addiu $s3, $s3, -0x51a4 +/* 02403C 8002343C 8E6E0000 */ lw $t6, ($s3) +/* 024040 80023440 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 024044 80023444 AFB60048 */ sw $s6, 0x48($sp) +/* 024048 80023448 AFB10034 */ sw $s1, 0x34($sp) +/* 02404C 8002344C E7B90028 */ swc1 $f25, 0x28($sp) +/* 024050 80023450 E7B8002C */ swc1 $f24, 0x2c($sp) +/* 024054 80023454 E7B70020 */ swc1 $f23, 0x20($sp) +/* 024058 80023458 E7B60024 */ swc1 $f22, 0x24($sp) +/* 02405C 8002345C 4480A000 */ mtc1 $zero, $f20 +/* 024060 80023460 46006586 */ mov.s $f22, $f12 +/* 024064 80023464 46007606 */ mov.s $f24, $f14 +/* 024068 80023468 AFBF004C */ sw $ra, 0x4c($sp) +/* 02406C 8002346C AFB50044 */ sw $s5, 0x44($sp) +/* 024070 80023470 AFB40040 */ sw $s4, 0x40($sp) +/* 024074 80023474 AFB20038 */ sw $s2, 0x38($sp) +/* 024078 80023478 AFB00030 */ sw $s0, 0x30($sp) +/* 02407C 8002347C E7B50018 */ swc1 $f21, 0x18($sp) +/* 024080 80023480 00008825 */ move $s1, $zero +/* 024084 80023484 19C00027 */ blez $t6, .L80023524 +/* 024088 80023488 0000B025 */ move $s6, $zero +/* 02408C 8002348C 3C148012 */ lui $s4, %hi(D_8011AE58) # $s4, 0x8012 +/* 024090 80023490 2694AE58 */ addiu $s4, %lo(D_8011AE58) # addiu $s4, $s4, -0x51a8 +/* 024094 80023494 00009025 */ move $s2, $zero +/* 024098 80023498 24150057 */ li $s5, 87 +.L8002349C: +/* 02409C 8002349C 8E8F0000 */ lw $t7, ($s4) +/* 0240A0 800234A0 00000000 */ nop +/* 0240A4 800234A4 01F2C021 */ addu $t8, $t7, $s2 +/* 0240A8 800234A8 8F020000 */ lw $v0, ($t8) +/* 0240AC 800234AC 00000000 */ nop +/* 0240B0 800234B0 84590006 */ lh $t9, 6($v0) +/* 0240B4 800234B4 00000000 */ nop +/* 0240B8 800234B8 33288000 */ andi $t0, $t9, 0x8000 +/* 0240BC 800234BC 15000014 */ bnez $t0, .L80023510 +/* 0240C0 800234C0 00000000 */ nop +/* 0240C4 800234C4 84490048 */ lh $t1, 0x48($v0) +/* 0240C8 800234C8 00000000 */ nop +/* 0240CC 800234CC 16A90010 */ bne $s5, $t1, .L80023510 +/* 0240D0 800234D0 00000000 */ nop +/* 0240D4 800234D4 C444000C */ lwc1 $f4, 0xc($v0) +/* 0240D8 800234D8 C4460014 */ lwc1 $f6, 0x14($v0) +/* 0240DC 800234DC 46162001 */ sub.s $f0, $f4, $f22 +/* 0240E0 800234E0 00408025 */ move $s0, $v0 +/* 0240E4 800234E4 46000202 */ mul.s $f8, $f0, $f0 +/* 0240E8 800234E8 46183081 */ sub.s $f2, $f6, $f24 +/* 0240EC 800234EC 46021282 */ mul.s $f10, $f2, $f2 +/* 0240F0 800234F0 0C0326B4 */ jal sqrtf +/* 0240F4 800234F4 460A4300 */ add.s $f12, $f8, $f10 +/* 0240F8 800234F8 4600A03C */ c.lt.s $f20, $f0 +/* 0240FC 800234FC 00000000 */ nop +/* 024100 80023500 45000003 */ bc1f .L80023510 +/* 024104 80023504 00000000 */ nop +/* 024108 80023508 46000506 */ mov.s $f20, $f0 +/* 02410C 8002350C 0200B025 */ move $s6, $s0 +.L80023510: +/* 024110 80023510 8E6A0000 */ lw $t2, ($s3) +/* 024114 80023514 26310001 */ addiu $s1, $s1, 1 +/* 024118 80023518 022A082A */ slt $at, $s1, $t2 +/* 02411C 8002351C 1420FFDF */ bnez $at, .L8002349C +/* 024120 80023520 26520004 */ addiu $s2, $s2, 4 +.L80023524: +/* 024124 80023524 8FBF004C */ lw $ra, 0x4c($sp) +/* 024128 80023528 02C01025 */ move $v0, $s6 +/* 02412C 8002352C 8FB60048 */ lw $s6, 0x48($sp) +/* 024130 80023530 C7B50018 */ lwc1 $f21, 0x18($sp) +/* 024134 80023534 C7B4001C */ lwc1 $f20, 0x1c($sp) +/* 024138 80023538 C7B70020 */ lwc1 $f23, 0x20($sp) +/* 02413C 8002353C C7B60024 */ lwc1 $f22, 0x24($sp) +/* 024140 80023540 C7B90028 */ lwc1 $f25, 0x28($sp) +/* 024144 80023544 C7B8002C */ lwc1 $f24, 0x2c($sp) +/* 024148 80023548 8FB00030 */ lw $s0, 0x30($sp) +/* 02414C 8002354C 8FB10034 */ lw $s1, 0x34($sp) +/* 024150 80023550 8FB20038 */ lw $s2, 0x38($sp) +/* 024154 80023554 8FB3003C */ lw $s3, 0x3c($sp) +/* 024158 80023558 8FB40040 */ lw $s4, 0x40($sp) +/* 02415C 8002355C 8FB50044 */ lw $s5, 0x44($sp) +/* 024160 80023560 03E00008 */ jr $ra +/* 024164 80023564 27BD0050 */ addiu $sp, $sp, 0x50 + diff --git a/asm/non_matchings/unknown_005740/func_80023568.s b/asm/non_matchings/unknown_005740/func_80023568.s new file mode 100644 index 00000000..7309694e --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80023568.s @@ -0,0 +1,27 @@ +glabel func_80023568 +/* 024168 80023568 3C0E8012 */ lui $t6, %hi(D_8011AD3C) # $t6, 0x8012 +/* 02416C 8002356C 81CEAD3C */ lb $t6, %lo(D_8011AD3C)($t6) +/* 024170 80023570 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 024174 80023574 11C00005 */ beqz $t6, .L8002358C +/* 024178 80023578 AFBF0014 */ sw $ra, 0x14($sp) +/* 02417C 8002357C 3C028012 */ lui $v0, %hi(D_80120001) # $v0, 0x8012 +/* 024180 80023580 8042AD25 */ lb $v0, %lo(D_8011AD25)($v0) +/* 024184 80023584 1000000A */ b .L800235B0 +/* 024188 80023588 24420001 */ addiu $v0, %lo(D_80120001) # addiu $v0, $v0, 1 +.L8002358C: +/* 02418C 8002358C 0C01AF66 */ jal func_8006BD98 +/* 024190 80023590 00000000 */ nop +/* 024194 80023594 24010008 */ li $at, 8 +/* 024198 80023598 14410004 */ bne $v0, $at, .L800235AC +/* 02419C 8002359C 3C028012 */ lui $v0, %hi(D_80120001) # $v0, 0x8012 +/* 0241A0 800235A0 8042AD25 */ lb $v0, %lo(D_8011AD25)($v0) +/* 0241A4 800235A4 10000002 */ b .L800235B0 +/* 0241A8 800235A8 24420001 */ addiu $v0, %lo(D_80120001) # addiu $v0, $v0, 1 +.L800235AC: +/* 0241AC 800235AC 00001025 */ move $v0, $zero +.L800235B0: +/* 0241B0 800235B0 8FBF0014 */ lw $ra, 0x14($sp) +/* 0241B4 800235B4 27BD0018 */ addiu $sp, $sp, 0x18 +/* 0241B8 800235B8 03E00008 */ jr $ra +/* 0241BC 800235BC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800235C0.s b/asm/non_matchings/unknown_005740/func_800235C0.s new file mode 100644 index 00000000..cc8421ea --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800235C0.s @@ -0,0 +1,6 @@ +glabel func_800235C0 +/* 0241C0 800235C0 3C028012 */ lui $v0, %hi(D_8011ADD5) # $v0, 0x8012 +/* 0241C4 800235C4 8042ADD5 */ lb $v0, %lo(D_8011ADD5)($v0) +/* 0241C8 800235C8 03E00008 */ jr $ra +/* 0241CC 800235CC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800235D0.s b/asm/non_matchings/unknown_005740/func_800235D0.s new file mode 100644 index 00000000..776ffcf6 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800235D0.s @@ -0,0 +1,5 @@ +glabel func_800235D0 +/* 0241D0 800235D0 3C018012 */ lui $at, 0x8012 +/* 0241D4 800235D4 03E00008 */ jr $ra +/* 0241D8 800235D8 A024ADD5 */ sb $a0, -0x522b($at) + diff --git a/asm/non_matchings/unknown_005740/func_800235DC.s b/asm/non_matchings/unknown_005740/func_800235DC.s new file mode 100644 index 00000000..979f9925 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800235DC.s @@ -0,0 +1,217 @@ +glabel func_800235DC +/* 0241DC 800235DC 8C8E0040 */ lw $t6, 0x40($a0) +/* 0241E0 800235E0 AC850064 */ sw $a1, 0x64($a0) +/* 0241E4 800235E4 81CF0054 */ lb $t7, 0x54($t6) +/* 0241E8 800235E8 00001825 */ move $v1, $zero +/* 0241EC 800235EC 25F8FFFF */ addiu $t8, $t7, -1 +/* 0241F0 800235F0 2F010077 */ sltiu $at, $t8, 0x77 +/* 0241F4 800235F4 102000AC */ beqz $at, .L800238A8 +/* 0241F8 800235F8 0018C080 */ sll $t8, $t8, 2 +/* 0241FC 800235FC 3C01800E */ lui $at, 0x800e +/* 024200 80023600 00380821 */ addu $at, $at, $t8 +/* 024204 80023604 8C385688 */ lw $t8, 0x5688($at) +/* 024208 80023608 00000000 */ nop +/* 02420C 8002360C 03000008 */ jr $t8 +/* 024210 80023610 00000000 */ nop +/* 024214 80023614 24030224 */ li $v1, 548 +/* 024218 80023618 2401FFFC */ li $at, -4 +/* 02421C 8002361C 00611024 */ and $v0, $v1, $at +/* 024220 80023620 03E00008 */ jr $ra +/* 024224 80023624 24420004 */ addiu $v0, $v0, 4 + +/* 024228 80023628 24030018 */ li $v1, 24 +/* 02422C 8002362C 2401FFFC */ li $at, -4 +/* 024230 80023630 00611024 */ and $v0, $v1, $at +/* 024234 80023634 03E00008 */ jr $ra +/* 024238 80023638 24420004 */ addiu $v0, $v0, 4 + +/* 02423C 8002363C 24030018 */ li $v1, 24 +/* 024240 80023640 2401FFFC */ li $at, -4 +/* 024244 80023644 00611024 */ and $v0, $v1, $at +/* 024248 80023648 03E00008 */ jr $ra +/* 02424C 8002364C 24420004 */ addiu $v0, $v0, 4 + +/* 024250 80023650 2403000C */ li $v1, 12 +/* 024254 80023654 2401FFFC */ li $at, -4 +/* 024258 80023658 00611024 */ and $v0, $v1, $at +/* 02425C 8002365C 03E00008 */ jr $ra +/* 024260 80023660 24420004 */ addiu $v0, $v0, 4 + +/* 024264 80023664 24030010 */ li $v1, 16 +/* 024268 80023668 2401FFFC */ li $at, -4 +/* 02426C 8002366C 00611024 */ and $v0, $v1, $at +/* 024270 80023670 03E00008 */ jr $ra +/* 024274 80023674 24420004 */ addiu $v0, $v0, 4 + +/* 024278 80023678 24030014 */ li $v1, 20 +/* 02427C 8002367C 2401FFFC */ li $at, -4 +/* 024280 80023680 00611024 */ and $v0, $v1, $at +/* 024284 80023684 03E00008 */ jr $ra +/* 024288 80023688 24420004 */ addiu $v0, $v0, 4 + +/* 02428C 8002368C 2403001C */ li $v1, 28 +/* 024290 80023690 2401FFFC */ li $at, -4 +/* 024294 80023694 00611024 */ and $v0, $v1, $at +/* 024298 80023698 03E00008 */ jr $ra +/* 02429C 8002369C 24420004 */ addiu $v0, $v0, 4 + +/* 0242A0 800236A0 24030018 */ li $v1, 24 +/* 0242A4 800236A4 2401FFFC */ li $at, -4 +/* 0242A8 800236A8 00611024 */ and $v0, $v1, $at +/* 0242AC 800236AC 03E00008 */ jr $ra +/* 0242B0 800236B0 24420004 */ addiu $v0, $v0, 4 + +/* 0242B4 800236B4 24030006 */ li $v1, 6 +/* 0242B8 800236B8 2401FFFC */ li $at, -4 +/* 0242BC 800236BC 00611024 */ and $v0, $v1, $at +/* 0242C0 800236C0 03E00008 */ jr $ra +/* 0242C4 800236C4 24420004 */ addiu $v0, $v0, 4 + +/* 0242C8 800236C8 2403000C */ li $v1, 12 +/* 0242CC 800236CC 2401FFFC */ li $at, -4 +/* 0242D0 800236D0 00611024 */ and $v0, $v1, $at +/* 0242D4 800236D4 03E00008 */ jr $ra +/* 0242D8 800236D8 24420004 */ addiu $v0, $v0, 4 + +/* 0242DC 800236DC 24030020 */ li $v1, 32 +/* 0242E0 800236E0 2401FFFC */ li $at, -4 +/* 0242E4 800236E4 00611024 */ and $v0, $v1, $at +/* 0242E8 800236E8 03E00008 */ jr $ra +/* 0242EC 800236EC 24420004 */ addiu $v0, $v0, 4 + +/* 0242F0 800236F0 24030008 */ li $v1, 8 +/* 0242F4 800236F4 2401FFFC */ li $at, -4 +/* 0242F8 800236F8 00611024 */ and $v0, $v1, $at +/* 0242FC 800236FC 03E00008 */ jr $ra +/* 024300 80023700 24420004 */ addiu $v0, $v0, 4 + +/* 024304 80023704 2403000C */ li $v1, 12 +/* 024308 80023708 2401FFFC */ li $at, -4 +/* 02430C 8002370C 00611024 */ and $v0, $v1, $at +/* 024310 80023710 03E00008 */ jr $ra +/* 024314 80023714 24420004 */ addiu $v0, $v0, 4 + +/* 024318 80023718 24030008 */ li $v1, 8 +/* 02431C 8002371C 2401FFFC */ li $at, -4 +/* 024320 80023720 00611024 */ and $v0, $v1, $at +/* 024324 80023724 03E00008 */ jr $ra +/* 024328 80023728 24420004 */ addiu $v0, $v0, 4 + +/* 02432C 8002372C 24030018 */ li $v1, 24 +/* 024330 80023730 2401FFFC */ li $at, -4 +/* 024334 80023734 00611024 */ and $v0, $v1, $at +/* 024338 80023738 03E00008 */ jr $ra +/* 02433C 8002373C 24420004 */ addiu $v0, $v0, 4 + +/* 024340 80023740 2403000C */ li $v1, 12 +/* 024344 80023744 2401FFFC */ li $at, -4 +/* 024348 80023748 00611024 */ and $v0, $v1, $at +/* 02434C 8002374C 03E00008 */ jr $ra +/* 024350 80023750 24420004 */ addiu $v0, $v0, 4 + +/* 024354 80023754 24030038 */ li $v1, 56 +/* 024358 80023758 2401FFFC */ li $at, -4 +/* 02435C 8002375C 00611024 */ and $v0, $v1, $at +/* 024360 80023760 03E00008 */ jr $ra +/* 024364 80023764 24420004 */ addiu $v0, $v0, 4 + +/* 024368 80023768 24030014 */ li $v1, 20 +/* 02436C 8002376C 2401FFFC */ li $at, -4 +/* 024370 80023770 00611024 */ and $v0, $v1, $at +/* 024374 80023774 03E00008 */ jr $ra +/* 024378 80023778 24420004 */ addiu $v0, $v0, 4 + +/* 02437C 8002377C 24030010 */ li $v1, 16 +/* 024380 80023780 2401FFFC */ li $at, -4 +/* 024384 80023784 00611024 */ and $v0, $v1, $at +/* 024388 80023788 03E00008 */ jr $ra +/* 02438C 8002378C 24420004 */ addiu $v0, $v0, 4 + +/* 024390 80023790 24030048 */ li $v1, 72 +/* 024394 80023794 2401FFFC */ li $at, -4 +/* 024398 80023798 00611024 */ and $v0, $v1, $at +/* 02439C 8002379C 03E00008 */ jr $ra +/* 0243A0 800237A0 24420004 */ addiu $v0, $v0, 4 + +/* 0243A4 800237A4 24030044 */ li $v1, 68 +/* 0243A8 800237A8 2401FFFC */ li $at, -4 +/* 0243AC 800237AC 00611024 */ and $v0, $v1, $at +/* 0243B0 800237B0 03E00008 */ jr $ra +/* 0243B4 800237B4 24420004 */ addiu $v0, $v0, 4 + +/* 0243B8 800237B8 24030020 */ li $v1, 32 +/* 0243BC 800237BC 2401FFFC */ li $at, -4 +/* 0243C0 800237C0 00611024 */ and $v0, $v1, $at +/* 0243C4 800237C4 03E00008 */ jr $ra +/* 0243C8 800237C8 24420004 */ addiu $v0, $v0, 4 + +/* 0243CC 800237CC 24030004 */ li $v1, 4 +/* 0243D0 800237D0 2401FFFC */ li $at, -4 +/* 0243D4 800237D4 00611024 */ and $v0, $v1, $at +/* 0243D8 800237D8 03E00008 */ jr $ra +/* 0243DC 800237DC 24420004 */ addiu $v0, $v0, 4 + +/* 0243E0 800237E0 30B9000F */ andi $t9, $a1, 0xf +/* 0243E4 800237E4 24080010 */ li $t0, 16 +/* 0243E8 800237E8 01191023 */ subu $v0, $t0, $t9 +/* 0243EC 800237EC 00A24821 */ addu $t1, $a1, $v0 +/* 0243F0 800237F0 24430110 */ addiu $v1, $v0, 0x110 +/* 0243F4 800237F4 2401FFFC */ li $at, -4 +/* 0243F8 800237F8 00611024 */ and $v0, $v1, $at +/* 0243FC 800237FC AC890064 */ sw $t1, 0x64($a0) +/* 024400 80023800 03E00008 */ jr $ra +/* 024404 80023804 24420004 */ addiu $v0, $v0, 4 + +/* 024408 80023808 30AA000F */ andi $t2, $a1, 0xf +/* 02440C 8002380C 240B0010 */ li $t3, 16 +/* 024410 80023810 016A1023 */ subu $v0, $t3, $t2 +/* 024414 80023814 00A26021 */ addu $t4, $a1, $v0 +/* 024418 80023818 24430120 */ addiu $v1, $v0, 0x120 +/* 02441C 8002381C 2401FFFC */ li $at, -4 +/* 024420 80023820 00611024 */ and $v0, $v1, $at +/* 024424 80023824 AC8C0064 */ sw $t4, 0x64($a0) +/* 024428 80023828 03E00008 */ jr $ra +/* 02442C 8002382C 24420004 */ addiu $v0, $v0, 4 + +/* 024430 80023830 30AD000F */ andi $t5, $a1, 0xf +/* 024434 80023834 240E0010 */ li $t6, 16 +/* 024438 80023838 01CD1023 */ subu $v0, $t6, $t5 +/* 02443C 8002383C 00A27821 */ addu $t7, $a1, $v0 +/* 024440 80023840 24430028 */ addiu $v1, $v0, 0x28 +/* 024444 80023844 2401FFFC */ li $at, -4 +/* 024448 80023848 00611024 */ and $v0, $v1, $at +/* 02444C 8002384C AC8F0064 */ sw $t7, 0x64($a0) +/* 024450 80023850 03E00008 */ jr $ra +/* 024454 80023854 24420004 */ addiu $v0, $v0, 4 + +/* 024458 80023858 24030060 */ li $v1, 96 +/* 02445C 8002385C 2401FFFC */ li $at, -4 +/* 024460 80023860 00611024 */ and $v0, $v1, $at +/* 024464 80023864 03E00008 */ jr $ra +/* 024468 80023868 24420004 */ addiu $v0, $v0, 4 + +/* 02446C 8002386C 24030008 */ li $v1, 8 +/* 024470 80023870 2401FFFC */ li $at, -4 +/* 024474 80023874 00611024 */ and $v0, $v1, $at +/* 024478 80023878 03E00008 */ jr $ra +/* 02447C 8002387C 24420004 */ addiu $v0, $v0, 4 + +/* 024480 80023880 24030034 */ li $v1, 52 +/* 024484 80023884 2401FFFC */ li $at, -4 +/* 024488 80023888 00611024 */ and $v0, $v1, $at +/* 02448C 8002388C 03E00008 */ jr $ra +/* 024490 80023890 24420004 */ addiu $v0, $v0, 4 + +/* 024494 80023894 24030020 */ li $v1, 32 +/* 024498 80023898 2401FFFC */ li $at, -4 +/* 02449C 8002389C 00611024 */ and $v0, $v1, $at +/* 0244A0 800238A0 03E00008 */ jr $ra +/* 0244A4 800238A4 24420004 */ addiu $v0, $v0, 4 + +.L800238A8: +/* 0244A8 800238A8 AC800064 */ sw $zero, 0x64($a0) +/* 0244AC 800238AC 2401FFFC */ li $at, -4 +/* 0244B0 800238B0 00611024 */ and $v0, $v1, $at +/* 0244B4 800238B4 03E00008 */ jr $ra +/* 0244B8 800238B8 24420004 */ addiu $v0, $v0, 4 + diff --git a/asm/non_matchings/unknown_005740/func_800238BC.s b/asm/non_matchings/unknown_005740/func_800238BC.s new file mode 100644 index 00000000..9a0bed91 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800238BC.s @@ -0,0 +1,353 @@ +glabel func_800238BC +/* 0244BC 800238BC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 0244C0 800238C0 AFBF0014 */ sw $ra, 0x14($sp) +/* 0244C4 800238C4 8C8E0040 */ lw $t6, 0x40($a0) +/* 0244C8 800238C8 00000000 */ nop +/* 0244CC 800238CC 81CF0054 */ lb $t7, 0x54($t6) +/* 0244D0 800238D0 00000000 */ nop +/* 0244D4 800238D4 A48F0048 */ sh $t7, 0x48($a0) +/* 0244D8 800238D8 84980048 */ lh $t8, 0x48($a0) +/* 0244DC 800238DC 00000000 */ nop +/* 0244E0 800238E0 2719FFFF */ addiu $t9, $t8, -1 +/* 0244E4 800238E4 2F210076 */ sltiu $at, $t9, 0x76 +/* 0244E8 800238E8 1020014D */ beqz $at, .L80023E20 +/* 0244EC 800238EC 0019C880 */ sll $t9, $t9, 2 +/* 0244F0 800238F0 3C01800E */ lui $at, 0x800e +/* 0244F4 800238F4 00390821 */ addu $at, $at, $t9 +/* 0244F8 800238F8 8C395864 */ lw $t9, 0x5864($at) +/* 0244FC 800238FC 00000000 */ nop +/* 024500 80023900 03200008 */ jr $t9 +/* 024504 80023904 00000000 */ nop +/* 024508 80023908 0C0136AC */ jal func_8004DAB0 +/* 02450C 8002390C 00000000 */ nop +/* 024510 80023910 10000144 */ b .L80023E24 +/* 024514 80023914 8FBF0014 */ lw $ra, 0x14($sp) +/* 024518 80023918 0C00CF30 */ jal func_80033CC0 +/* 02451C 8002391C 00000000 */ nop +/* 024520 80023920 10000140 */ b .L80023E24 +/* 024524 80023924 8FBF0014 */ lw $ra, 0x14($sp) +/* 024528 80023928 0C00DB0C */ jal func_80036C30 +/* 02452C 8002392C 00000000 */ nop +/* 024530 80023930 1000013C */ b .L80023E24 +/* 024534 80023934 8FBF0014 */ lw $ra, 0x14($sp) +/* 024538 80023938 0C00DDB8 */ jal func_800376E0 +/* 02453C 8002393C 00000000 */ nop +/* 024540 80023940 10000138 */ b .L80023E24 +/* 024544 80023944 8FBF0014 */ lw $ra, 0x14($sp) +/* 024548 80023948 0C00E26B */ jal func_800389AC +/* 02454C 8002394C 00000000 */ nop +/* 024550 80023950 10000134 */ b .L80023E24 +/* 024554 80023954 8FBF0014 */ lw $ra, 0x14($sp) +/* 024558 80023958 0C00E29B */ jal func_80038A6C +/* 02455C 8002395C 00000000 */ nop +/* 024560 80023960 10000130 */ b .L80023E24 +/* 024564 80023964 8FBF0014 */ lw $ra, 0x14($sp) +/* 024568 80023968 0C00E2DD */ jal func_80038B74 +/* 02456C 8002396C 00000000 */ nop +/* 024570 80023970 1000012C */ b .L80023E24 +/* 024574 80023974 8FBF0014 */ lw $ra, 0x14($sp) +/* 024578 80023978 0C00E38F */ jal func_80038E3C +/* 02457C 8002397C 00000000 */ nop +/* 024580 80023980 10000128 */ b .L80023E24 +/* 024584 80023984 8FBF0014 */ lw $ra, 0x14($sp) +/* 024588 80023988 0C00FF5A */ jal func_8003FD68 +/* 02458C 8002398C 00000000 */ nop +/* 024590 80023990 10000124 */ b .L80023E24 +/* 024594 80023994 8FBF0014 */ lw $ra, 0x14($sp) +/* 024598 80023998 0C00FFBD */ jal func_8003FEF4 +/* 02459C 8002399C 00000000 */ nop +/* 0245A0 800239A0 10000120 */ b .L80023E24 +/* 0245A4 800239A4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0245A8 800239A8 0C010007 */ jal func_8004001C +/* 0245AC 800239AC 00000000 */ nop +/* 0245B0 800239B0 1000011C */ b .L80023E24 +/* 0245B4 800239B4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0245B8 800239B8 0C00E458 */ jal func_80039160 +/* 0245BC 800239BC 00000000 */ nop +/* 0245C0 800239C0 10000118 */ b .L80023E24 +/* 0245C4 800239C4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0245C8 800239C8 0C00E464 */ jal func_80039190 +/* 0245CC 800239CC 00000000 */ nop +/* 0245D0 800239D0 10000114 */ b .L80023E24 +/* 0245D4 800239D4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0245D8 800239D8 0C00E472 */ jal func_800391C8 +/* 0245DC 800239DC 00000000 */ nop +/* 0245E0 800239E0 10000110 */ b .L80023E24 +/* 0245E4 800239E4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0245E8 800239E8 0C00EB2F */ jal func_8003ACBC +/* 0245EC 800239EC 00000000 */ nop +/* 0245F0 800239F0 1000010C */ b .L80023E24 +/* 0245F4 800239F4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0245F8 800239F8 0C00EB4D */ jal func_8003AD34 +/* 0245FC 800239FC 00000000 */ nop +/* 024600 80023A00 10000108 */ b .L80023E24 +/* 024604 80023A04 8FBF0014 */ lw $ra, 0x14($sp) +/* 024608 80023A08 0C00EC16 */ jal func_8003B058 +/* 02460C 80023A0C 00000000 */ nop +/* 024610 80023A10 10000104 */ b .L80023E24 +/* 024614 80023A14 8FBF0014 */ lw $ra, 0x14($sp) +/* 024618 80023A18 0C00EDF3 */ jal func_8003B7CC +/* 02461C 80023A1C 00000000 */ nop +/* 024620 80023A20 10000100 */ b .L80023E24 +/* 024624 80023A24 8FBF0014 */ lw $ra, 0x14($sp) +/* 024628 80023A28 0C00F078 */ jal func_8003C1E0 +/* 02462C 80023A2C 00000000 */ nop +/* 024630 80023A30 100000FC */ b .L80023E24 +/* 024634 80023A34 8FBF0014 */ lw $ra, 0x14($sp) +/* 024638 80023A38 0C00F3C6 */ jal func_8003CF18 +/* 02463C 80023A3C 00000000 */ nop +/* 024640 80023A40 100000F8 */ b .L80023E24 +/* 024644 80023A44 8FBF0014 */ lw $ra, 0x14($sp) +/* 024648 80023A48 0C00F3F8 */ jal func_8003CFE0 +/* 02464C 80023A4C 00000000 */ nop +/* 024650 80023A50 100000F4 */ b .L80023E24 +/* 024654 80023A54 8FBF0014 */ lw $ra, 0x14($sp) +/* 024658 80023A58 0C00F7F3 */ jal func_8003DFCC +/* 02465C 80023A5C 00000000 */ nop +/* 024660 80023A60 100000F0 */ b .L80023E24 +/* 024664 80023A64 8FBF0014 */ lw $ra, 0x14($sp) +/* 024668 80023A68 0C00F96C */ jal func_8003E5B0 +/* 02466C 80023A6C 00000000 */ nop +/* 024670 80023A70 100000EC */ b .L80023E24 +/* 024674 80023A74 8FBF0014 */ lw $ra, 0x14($sp) +/* 024678 80023A78 0C00F972 */ jal func_8003E5C8 +/* 02467C 80023A7C 00000000 */ nop +/* 024680 80023A80 100000E8 */ b .L80023E24 +/* 024684 80023A84 8FBF0014 */ lw $ra, 0x14($sp) +/* 024688 80023A88 0C00F3D6 */ jal func_8003CF58 +/* 02468C 80023A8C 00000000 */ nop +/* 024690 80023A90 100000E4 */ b .L80023E24 +/* 024694 80023A94 8FBF0014 */ lw $ra, 0x14($sp) +/* 024698 80023A98 0C00D2BC */ jal func_80034AF0 +/* 02469C 80023A9C 00000000 */ nop +/* 0246A0 80023AA0 100000E0 */ b .L80023E24 +/* 0246A4 80023AA4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0246A8 80023AA8 0C010029 */ jal func_800400A4 +/* 0246AC 80023AAC 00000000 */ nop +/* 0246B0 80023AB0 100000DC */ b .L80023E24 +/* 0246B4 80023AB4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0246B8 80023AB8 0C00D865 */ jal func_80036194 +/* 0246BC 80023ABC 00000000 */ nop +/* 0246C0 80023AC0 100000D8 */ b .L80023E24 +/* 0246C4 80023AC4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0246C8 80023AC8 0C00F54D */ jal func_8003D534 +/* 0246CC 80023ACC 00000000 */ nop +/* 0246D0 80023AD0 100000D4 */ b .L80023E24 +/* 0246D4 80023AD4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0246D8 80023AD8 0C0100EA */ jal func_800403A8 +/* 0246DC 80023ADC 00000000 */ nop +/* 0246E0 80023AE0 100000D0 */ b .L80023E24 +/* 0246E4 80023AE4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0246E8 80023AE8 0C0100F6 */ jal func_800403D8 +/* 0246EC 80023AEC 00000000 */ nop +/* 0246F0 80023AF0 100000CC */ b .L80023E24 +/* 0246F4 80023AF4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0246F8 80023AF8 0C010127 */ jal func_8004049C +/* 0246FC 80023AFC 00000000 */ nop +/* 024700 80023B00 100000C8 */ b .L80023E24 +/* 024704 80023B04 8FBF0014 */ lw $ra, 0x14($sp) +/* 024708 80023B08 0C010200 */ jal func_80040800 +/* 02470C 80023B0C 00000000 */ nop +/* 024710 80023B10 100000C4 */ b .L80023E24 +/* 024714 80023B14 8FBF0014 */ lw $ra, 0x14($sp) +/* 024718 80023B18 0C00F27B */ jal func_8003C9EC +/* 02471C 80023B1C 00000000 */ nop +/* 024720 80023B20 100000C0 */ b .L80023E24 +/* 024724 80023B24 8FBF0014 */ lw $ra, 0x14($sp) +/* 024728 80023B28 0C00F399 */ jal func_8003CE64 +/* 02472C 80023B2C 00000000 */ nop +/* 024730 80023B30 100000BC */ b .L80023E24 +/* 024734 80023B34 8FBF0014 */ lw $ra, 0x14($sp) +/* 024738 80023B38 0C00F3C0 */ jal func_8003CF00 +/* 02473C 80023B3C 00000000 */ nop +/* 024740 80023B40 100000B8 */ b .L80023E24 +/* 024744 80023B44 8FBF0014 */ lw $ra, 0x14($sp) +/* 024748 80023B48 0C01024B */ jal func_8004092C +/* 02474C 80023B4C 00000000 */ nop +/* 024750 80023B50 100000B4 */ b .L80023E24 +/* 024754 80023B54 8FBF0014 */ lw $ra, 0x14($sp) +/* 024758 80023B58 0C010253 */ jal func_8004094C +/* 02475C 80023B5C 00000000 */ nop +/* 024760 80023B60 100000B0 */ b .L80023E24 +/* 024764 80023B64 8FBF0014 */ lw $ra, 0x14($sp) +/* 024768 80023B68 0C00D48B */ jal func_8003522C +/* 02476C 80023B6C 00000000 */ nop +/* 024770 80023B70 100000AC */ b .L80023E24 +/* 024774 80023B74 8FBF0014 */ lw $ra, 0x14($sp) +/* 024778 80023B78 0C00D590 */ jal func_80035640 +/* 02477C 80023B7C 00000000 */ nop +/* 024780 80023B80 100000A8 */ b .L80023E24 +/* 024784 80023B84 8FBF0014 */ lw $ra, 0x14($sp) +/* 024788 80023B88 0C00D7BE */ jal func_80035EF8 +/* 02478C 80023B8C 00000000 */ nop +/* 024790 80023B90 100000A4 */ b .L80023E24 +/* 024794 80023B94 8FBF0014 */ lw $ra, 0x14($sp) +/* 024798 80023B98 0C00DE86 */ jal func_80037A18 +/* 02479C 80023B9C 00000000 */ nop +/* 0247A0 80023BA0 100000A0 */ b .L80023E24 +/* 0247A4 80023BA4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0247A8 80023BA8 0C00E215 */ jal func_80038854 +/* 0247AC 80023BAC 00000000 */ nop +/* 0247B0 80023BB0 1000009C */ b .L80023E24 +/* 0247B4 80023BB4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0247B8 80023BB8 0C00F191 */ jal func_8003C644 +/* 0247BC 80023BBC 00000000 */ nop +/* 0247C0 80023BC0 10000098 */ b .L80023E24 +/* 0247C4 80023BC4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0247C8 80023BC8 0C00D623 */ jal func_8003588C +/* 0247CC 80023BCC 00000000 */ nop +/* 0247D0 80023BD0 10000094 */ b .L80023E24 +/* 0247D4 80023BD4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0247D8 80023BD8 0C00D788 */ jal func_80035E20 +/* 0247DC 80023BDC 00000000 */ nop +/* 0247E0 80023BE0 10000090 */ b .L80023E24 +/* 0247E4 80023BE4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0247E8 80023BE8 0C010269 */ jal func_800409A4 +/* 0247EC 80023BEC 00000000 */ nop +/* 0247F0 80023BF0 1000008C */ b .L80023E24 +/* 0247F4 80023BF4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0247F8 80023BF8 0C010272 */ jal func_800409C8 +/* 0247FC 80023BFC 00000000 */ nop +/* 024800 80023C00 10000088 */ b .L80023E24 +/* 024804 80023C04 8FBF0014 */ lw $ra, 0x14($sp) +/* 024808 80023C08 0C00E4AE */ jal func_800392B8 +/* 02480C 80023C0C 00000000 */ nop +/* 024810 80023C10 10000084 */ b .L80023E24 +/* 024814 80023C14 8FBF0014 */ lw $ra, 0x14($sp) +/* 024818 80023C18 0C00F79D */ jal func_8003DE74 +/* 02481C 80023C1C 00000000 */ nop +/* 024820 80023C20 10000080 */ b .L80023E24 +/* 024824 80023C24 8FBF0014 */ lw $ra, 0x14($sp) +/* 024828 80023C28 0C00F4FB */ jal func_8003D3EC +/* 02482C 80023C2C 00000000 */ nop +/* 024830 80023C30 1000007C */ b .L80023E24 +/* 024834 80023C34 8FBF0014 */ lw $ra, 0x14($sp) +/* 024838 80023C38 0C00F40E */ jal func_8003D038 +/* 02483C 80023C3C 00000000 */ nop +/* 024840 80023C40 10000078 */ b .L80023E24 +/* 024844 80023C44 8FBF0014 */ lw $ra, 0x14($sp) +/* 024848 80023C48 0C00DD5E */ jal func_80037578 +/* 02484C 80023C4C 00000000 */ nop +/* 024850 80023C50 10000074 */ b .L80023E24 +/* 024854 80023C54 8FBF0014 */ lw $ra, 0x14($sp) +/* 024858 80023C58 0C00DD89 */ jal func_80037624 +/* 02485C 80023C5C 00000000 */ nop +/* 024860 80023C60 10000070 */ b .L80023E24 +/* 024864 80023C64 8FBF0014 */ lw $ra, 0x14($sp) +/* 024868 80023C68 0C00E063 */ jal func_8003818C +/* 02486C 80023C6C 00000000 */ nop +/* 024870 80023C70 1000006C */ b .L80023E24 +/* 024874 80023C74 8FBF0014 */ lw $ra, 0x14($sp) +/* 024878 80023C78 0C00E078 */ jal func_800381E0 +/* 02487C 80023C7C 00000000 */ nop +/* 024880 80023C80 10000068 */ b .L80023E24 +/* 024884 80023C84 8FBF0014 */ lw $ra, 0x14($sp) +/* 024888 80023C88 0C00E085 */ jal func_80038214 +/* 02488C 80023C8C 00000000 */ nop +/* 024890 80023C90 10000064 */ b .L80023E24 +/* 024894 80023C94 8FBF0014 */ lw $ra, 0x14($sp) +/* 024898 80023C98 0C00E092 */ jal func_80038248 +/* 02489C 80023C9C 00000000 */ nop +/* 0248A0 80023CA0 10000060 */ b .L80023E24 +/* 0248A4 80023CA4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0248A8 80023CA8 0C0106A4 */ jal func_80041A90 +/* 0248AC 80023CAC 00000000 */ nop +/* 0248B0 80023CB0 1000005C */ b .L80023E24 +/* 0248B4 80023CB4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0248B8 80023CB8 0C0107A0 */ jal func_80041E80 +/* 0248BC 80023CBC 00000000 */ nop +/* 0248C0 80023CC0 10000058 */ b .L80023E24 +/* 0248C4 80023CC4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0248C8 80023CC8 0C010805 */ jal func_80042014 +/* 0248CC 80023CCC 00000000 */ nop +/* 0248D0 80023CD0 10000054 */ b .L80023E24 +/* 0248D4 80023CD4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0248D8 80023CD8 0C00D2DA */ jal func_80034B68 +/* 0248DC 80023CDC 00000000 */ nop +/* 0248E0 80023CE0 10000050 */ b .L80023E24 +/* 0248E4 80023CE4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0248E8 80023CE8 0C00D39C */ jal func_80034E70 +/* 0248EC 80023CEC 00000000 */ nop +/* 0248F0 80023CF0 1000004C */ b .L80023E24 +/* 0248F4 80023CF4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0248F8 80023CF8 0C01080F */ jal func_8004203C +/* 0248FC 80023CFC 00000000 */ nop +/* 024900 80023D00 10000048 */ b .L80023E24 +/* 024904 80023D04 8FBF0014 */ lw $ra, 0x14($sp) +/* 024908 80023D08 0C00F4AB */ jal func_8003D2AC +/* 02490C 80023D0C 00000000 */ nop +/* 024910 80023D10 10000044 */ b .L80023E24 +/* 024914 80023D14 8FBF0014 */ lw $ra, 0x14($sp) +/* 024918 80023D18 0C00ECDA */ jal func_8003B368 +/* 02491C 80023D1C 00000000 */ nop +/* 024920 80023D20 10000040 */ b .L80023E24 +/* 024924 80023D24 8FBF0014 */ lw $ra, 0x14($sp) +/* 024928 80023D28 0C00D211 */ jal func_80034844 +/* 02492C 80023D2C 00000000 */ nop +/* 024930 80023D30 1000003C */ b .L80023E24 +/* 024934 80023D34 8FBF0014 */ lw $ra, 0x14($sp) +/* 024938 80023D38 0C00D14C */ jal func_80034530 +/* 02493C 80023D3C 00000000 */ nop +/* 024940 80023D40 10000038 */ b .L80023E24 +/* 024944 80023D44 8FBF0014 */ lw $ra, 0x14($sp) +/* 024948 80023D48 0C00D6BA */ jal func_80035AE8 +/* 02494C 80023D4C 00000000 */ nop +/* 024950 80023D50 10000034 */ b .L80023E24 +/* 024954 80023D54 8FBF0014 */ lw $ra, 0x14($sp) +/* 024958 80023D58 0C00DF55 */ jal func_80037D54 +/* 02495C 80023D5C 00000000 */ nop +/* 024960 80023D60 10000030 */ b .L80023E24 +/* 024964 80023D64 8FBF0014 */ lw $ra, 0x14($sp) +/* 024968 80023D68 0C00DF5B */ jal func_80037D6C +/* 02496C 80023D6C 00000000 */ nop +/* 024970 80023D70 1000002C */ b .L80023E24 +/* 024974 80023D74 8FBF0014 */ lw $ra, 0x14($sp) +/* 024978 80023D78 0C010843 */ jal func_8004210C +/* 02497C 80023D7C 00000000 */ nop +/* 024980 80023D80 10000028 */ b .L80023E24 +/* 024984 80023D84 8FBF0014 */ lw $ra, 0x14($sp) +/* 024988 80023D88 0C00F717 */ jal func_8003DC5C +/* 02498C 80023D8C 00000000 */ nop +/* 024990 80023D90 10000024 */ b .L80023E24 +/* 024994 80023D94 8FBF0014 */ lw $ra, 0x14($sp) +/* 024998 80023D98 0C00E2B2 */ jal func_80038AC8 +/* 02499C 80023D9C 00000000 */ nop +/* 0249A0 80023DA0 10000020 */ b .L80023E24 +/* 0249A4 80023DA4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0249A8 80023DA8 0C010854 */ jal func_80042150 +/* 0249AC 80023DAC 00000000 */ nop +/* 0249B0 80023DB0 1000001C */ b .L80023E24 +/* 0249B4 80023DB4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0249B8 80023DB8 0C00E356 */ jal func_80038D58 +/* 0249BC 80023DBC 00000000 */ nop +/* 0249C0 80023DC0 10000018 */ b .L80023E24 +/* 0249C4 80023DC4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0249C8 80023DC8 0C00D5CB */ jal func_8003572C +/* 0249CC 80023DCC 00000000 */ nop +/* 0249D0 80023DD0 10000014 */ b .L80023E24 +/* 0249D4 80023DD4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0249D8 80023DD8 0C01085B */ jal func_8004216C +/* 0249DC 80023DDC 00000000 */ nop +/* 0249E0 80023DE0 10000010 */ b .L80023E24 +/* 0249E4 80023DE4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0249E8 80023DE8 0C00CFD1 */ jal func_80033F44 +/* 0249EC 80023DEC 00000000 */ nop +/* 0249F0 80023DF0 1000000C */ b .L80023E24 +/* 0249F4 80023DF4 8FBF0014 */ lw $ra, 0x14($sp) +/* 0249F8 80023DF8 0C010884 */ jal func_80042210 +/* 0249FC 80023DFC 00000000 */ nop +/* 024A00 80023E00 10000008 */ b .L80023E24 +/* 024A04 80023E04 8FBF0014 */ lw $ra, 0x14($sp) +/* 024A08 80023E08 0C00F6E8 */ jal func_8003DBA0 +/* 024A0C 80023E0C 00000000 */ nop +/* 024A10 80023E10 10000004 */ b .L80023E24 +/* 024A14 80023E14 8FBF0014 */ lw $ra, 0x14($sp) +/* 024A18 80023E18 0C010A87 */ jal func_80042A1C +/* 024A1C 80023E1C 00000000 */ nop +.L80023E20: +/* 024A20 80023E20 8FBF0014 */ lw $ra, 0x14($sp) +.L80023E24: +/* 024A24 80023E24 27BD0018 */ addiu $sp, $sp, 0x18 +/* 024A28 80023E28 03E00008 */ jr $ra +/* 024A2C 80023E2C 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80023E30.s b/asm/non_matchings/unknown_005740/func_80023E30.s new file mode 100644 index 00000000..0e454833 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80023E30.s @@ -0,0 +1,101 @@ +glabel func_80023E30 +/* 024A30 80023E30 248EFFFF */ addiu $t6, $a0, -1 +/* 024A34 80023E34 2DC10074 */ sltiu $at, $t6, 0x74 +/* 024A38 80023E38 10200041 */ beqz $at, .L80023F40 +/* 024A3C 80023E3C 00001825 */ move $v1, $zero +/* 024A40 80023E40 000E7080 */ sll $t6, $t6, 2 +/* 024A44 80023E44 3C01800E */ lui $at, 0x800e +/* 024A48 80023E48 002E0821 */ addu $at, $at, $t6 +/* 024A4C 80023E4C 8C2E5A3C */ lw $t6, 0x5a3c($at) +/* 024A50 80023E50 00000000 */ nop +/* 024A54 80023E54 01C00008 */ jr $t6 +/* 024A58 80023E58 00000000 */ nop +/* 024A5C 80023E5C 03E00008 */ jr $ra +/* 024A60 80023E60 2402001F */ li $v0, 31 + +/* 024A64 80023E64 03E00008 */ jr $ra +/* 024A68 80023E68 24020013 */ li $v0, 19 + +/* 024A6C 80023E6C 03E00008 */ jr $ra +/* 024A70 80023E70 24020016 */ li $v0, 22 + +/* 024A74 80023E74 03E00008 */ jr $ra +/* 024A78 80023E78 2402001B */ li $v0, 27 + +/* 024A7C 80023E7C 03E00008 */ jr $ra +/* 024A80 80023E80 24020030 */ li $v0, 48 + +/* 024A84 80023E84 03E00008 */ jr $ra +/* 024A88 80023E88 24020012 */ li $v0, 18 + +/* 024A8C 80023E8C 03E00008 */ jr $ra +/* 024A90 80023E90 2402003B */ li $v0, 59 + +/* 024A94 80023E94 03E00008 */ jr $ra +/* 024A98 80023E98 2402003A */ li $v0, 58 + +/* 024A9C 80023E9C 03E00008 */ jr $ra +/* 024AA0 80023EA0 24020004 */ li $v0, 4 + +/* 024AA4 80023EA4 03E00008 */ jr $ra +/* 024AA8 80023EA8 2402001B */ li $v0, 27 + +/* 024AAC 80023EAC 03E00008 */ jr $ra +/* 024AB0 80023EB0 24020012 */ li $v0, 18 + +/* 024AB4 80023EB4 03E00008 */ jr $ra +/* 024AB8 80023EB8 24020030 */ li $v0, 48 + +/* 024ABC 80023EBC 03E00008 */ jr $ra +/* 024AC0 80023EC0 24020039 */ li $v0, 57 + +/* 024AC4 80023EC4 03E00008 */ jr $ra +/* 024AC8 80023EC8 24020012 */ li $v0, 18 + +/* 024ACC 80023ECC 03E00008 */ jr $ra +/* 024AD0 80023ED0 24020009 */ li $v0, 9 + +/* 024AD4 80023ED4 03E00008 */ jr $ra +/* 024AD8 80023ED8 24020012 */ li $v0, 18 + +/* 024ADC 80023EDC 03E00008 */ jr $ra +/* 024AE0 80023EE0 24020009 */ li $v0, 9 + +/* 024AE4 80023EE4 03E00008 */ jr $ra +/* 024AE8 80023EE8 24020009 */ li $v0, 9 + +/* 024AEC 80023EEC 03E00008 */ jr $ra +/* 024AF0 80023EF0 2402000B */ li $v0, 11 + +/* 024AF4 80023EF4 03E00008 */ jr $ra +/* 024AF8 80023EF8 2402000B */ li $v0, 11 + +/* 024AFC 80023EFC 03E00008 */ jr $ra +/* 024B00 80023F00 24020031 */ li $v0, 49 + +/* 024B04 80023F04 03E00008 */ jr $ra +/* 024B08 80023F08 24020001 */ li $v0, 1 + +/* 024B0C 80023F0C 03E00008 */ jr $ra +/* 024B10 80023F10 2402000A */ li $v0, 10 + +/* 024B14 80023F14 03E00008 */ jr $ra +/* 024B18 80023F18 24020010 */ li $v0, 16 + +/* 024B1C 80023F1C 03E00008 */ jr $ra +/* 024B20 80023F20 24020012 */ li $v0, 18 + +/* 024B24 80023F24 03E00008 */ jr $ra +/* 024B28 80023F28 24020002 */ li $v0, 2 + +/* 024B2C 80023F2C 03E00008 */ jr $ra +/* 024B30 80023F30 2402001B */ li $v0, 27 + +/* 024B34 80023F34 03E00008 */ jr $ra +/* 024B38 80023F38 2402000B */ li $v0, 11 + +/* 024B3C 80023F3C 24030001 */ li $v1, 1 +.L80023F40: +/* 024B40 80023F40 03E00008 */ jr $ra +/* 024B44 80023F44 00601025 */ move $v0, $v1 + diff --git a/asm/non_matchings/unknown_005740/func_80023F48.s b/asm/non_matchings/unknown_005740/func_80023F48.s new file mode 100644 index 00000000..b9dd7585 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80023F48.s @@ -0,0 +1,408 @@ +glabel func_80023F48 +/* 024B48 80023F48 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 024B4C 80023F4C AFBF0014 */ sw $ra, 0x14($sp) +/* 024B50 80023F50 00803025 */ move $a2, $a0 +/* 024B54 80023F54 00A03825 */ move $a3, $a1 +/* 024B58 80023F58 84C5004A */ lh $a1, 0x4a($a2) +/* 024B5C 80023F5C AFA7001C */ sw $a3, 0x1c($sp) +/* 024B60 80023F60 AFA60018 */ sw $a2, 0x18($sp) +/* 024B64 80023F64 0C02DDAE */ jal func_800B76B8 +/* 024B68 80023F68 24040001 */ li $a0, 1 +/* 024B6C 80023F6C 8FA60018 */ lw $a2, 0x18($sp) +/* 024B70 80023F70 8FA7001C */ lw $a3, 0x1c($sp) +/* 024B74 80023F74 84CE0048 */ lh $t6, 0x48($a2) +/* 024B78 80023F78 00000000 */ nop +/* 024B7C 80023F7C 25CFFFFE */ addiu $t7, $t6, -2 +/* 024B80 80023F80 2DE10076 */ sltiu $at, $t7, 0x76 +/* 024B84 80023F84 1020017A */ beqz $at, .L80024570 +/* 024B88 80023F88 000F7880 */ sll $t7, $t7, 2 +/* 024B8C 80023F8C 3C01800E */ lui $at, 0x800e +/* 024B90 80023F90 002F0821 */ addu $at, $at, $t7 +/* 024B94 80023F94 8C2F5C0C */ lw $t7, 0x5c0c($at) +/* 024B98 80023F98 00000000 */ nop +/* 024B9C 80023F9C 01E00008 */ jr $t7 +/* 024BA0 80023FA0 00000000 */ nop +/* 024BA4 80023FA4 00C02025 */ move $a0, $a2 +/* 024BA8 80023FA8 0C00CF74 */ jal func_80033DD0 +/* 024BAC 80023FAC 00E02825 */ move $a1, $a3 +/* 024BB0 80023FB0 10000170 */ b .L80024574 +/* 024BB4 80023FB4 24040001 */ li $a0, 1 +/* 024BB8 80023FB8 00C02025 */ move $a0, $a2 +/* 024BBC 80023FBC 0C00DC35 */ jal func_800370D4 +/* 024BC0 80023FC0 00E02825 */ move $a1, $a3 +/* 024BC4 80023FC4 1000016B */ b .L80024574 +/* 024BC8 80023FC8 24040001 */ li $a0, 1 +/* 024BCC 80023FCC 00C02025 */ move $a0, $a2 +/* 024BD0 80023FD0 0C00DDF9 */ jal func_800377E4 +/* 024BD4 80023FD4 00E02825 */ move $a1, $a3 +/* 024BD8 80023FD8 10000166 */ b .L80024574 +/* 024BDC 80023FDC 24040001 */ li $a0, 1 +/* 024BE0 80023FE0 00C02025 */ move $a0, $a2 +/* 024BE4 80023FE4 0C00E26E */ jal func_800389B8 +/* 024BE8 80023FE8 00E02825 */ move $a1, $a3 +/* 024BEC 80023FEC 10000161 */ b .L80024574 +/* 024BF0 80023FF0 24040001 */ li $a0, 1 +/* 024BF4 80023FF4 00C02025 */ move $a0, $a2 +/* 024BF8 80023FF8 0C00E29E */ jal func_80038A78 +/* 024BFC 80023FFC 00E02825 */ move $a1, $a3 +/* 024C00 80024000 1000015C */ b .L80024574 +/* 024C04 80024004 24040001 */ li $a0, 1 +/* 024C08 80024008 00C02025 */ move $a0, $a2 +/* 024C0C 8002400C 0C00E2FD */ jal func_80038BF4 +/* 024C10 80024010 00E02825 */ move $a1, $a3 +/* 024C14 80024014 10000157 */ b .L80024574 +/* 024C18 80024018 24040001 */ li $a0, 1 +/* 024C1C 8002401C 00C02025 */ move $a0, $a2 +/* 024C20 80024020 0C00E3D6 */ jal func_80038F58 +/* 024C24 80024024 00E02825 */ move $a1, $a3 +/* 024C28 80024028 10000152 */ b .L80024574 +/* 024C2C 8002402C 24040001 */ li $a0, 1 +/* 024C30 80024030 00C02025 */ move $a0, $a2 +/* 024C34 80024034 0C00E461 */ jal func_80039184 +/* 024C38 80024038 00E02825 */ move $a1, $a3 +/* 024C3C 8002403C 1000014D */ b .L80024574 +/* 024C40 80024040 24040001 */ li $a0, 1 +/* 024C44 80024044 00C02025 */ move $a0, $a2 +/* 024C48 80024048 0C00E46F */ jal func_800391BC +/* 024C4C 8002404C 00E02825 */ move $a1, $a3 +/* 024C50 80024050 10000148 */ b .L80024574 +/* 024C54 80024054 24040001 */ li $a0, 1 +/* 024C58 80024058 00C02025 */ move $a0, $a2 +/* 024C5C 8002405C 0C00E47F */ jal func_800391FC +/* 024C60 80024060 00E02825 */ move $a1, $a3 +/* 024C64 80024064 10000143 */ b .L80024574 +/* 024C68 80024068 24040001 */ li $a0, 1 +/* 024C6C 8002406C 00C02025 */ move $a0, $a2 +/* 024C70 80024070 0C00EB4A */ jal func_8003AD28 +/* 024C74 80024074 00E02825 */ move $a1, $a3 +/* 024C78 80024078 1000013E */ b .L80024574 +/* 024C7C 8002407C 24040001 */ li $a0, 1 +/* 024C80 80024080 00C02025 */ move $a0, $a2 +/* 024C84 80024084 0C00EB94 */ jal func_8003AE50 +/* 024C88 80024088 00E02825 */ move $a1, $a3 +/* 024C8C 8002408C 10000139 */ b .L80024574 +/* 024C90 80024090 24040001 */ li $a0, 1 +/* 024C94 80024094 00C02025 */ move $a0, $a2 +/* 024C98 80024098 0C00EC5D */ jal func_8003B174 +/* 024C9C 8002409C 00E02825 */ move $a1, $a3 +/* 024CA0 800240A0 10000134 */ b .L80024574 +/* 024CA4 800240A4 24040001 */ li $a0, 1 +/* 024CA8 800240A8 00C02025 */ move $a0, $a2 +/* 024CAC 800240AC 0C00EE62 */ jal func_8003B988 +/* 024CB0 800240B0 00E02825 */ move $a1, $a3 +/* 024CB4 800240B4 1000012F */ b .L80024574 +/* 024CB8 800240B8 24040001 */ li $a0, 1 +/* 024CBC 800240BC 0C00C29D */ jal func_80030A74 +/* 024CC0 800240C0 00C02025 */ move $a0, $a2 +/* 024CC4 800240C4 1000012B */ b .L80024574 +/* 024CC8 800240C8 24040001 */ li $a0, 1 +/* 024CCC 800240CC 00C02025 */ move $a0, $a2 +/* 024CD0 800240D0 0C00F40B */ jal func_8003D02C +/* 024CD4 800240D4 00E02825 */ move $a1, $a3 +/* 024CD8 800240D8 10000126 */ b .L80024574 +/* 024CDC 800240DC 24040001 */ li $a0, 1 +/* 024CE0 800240E0 00C02025 */ move $a0, $a2 +/* 024CE4 800240E4 0C00F850 */ jal func_8003E140 +/* 024CE8 800240E8 00E02825 */ move $a1, $a3 +/* 024CEC 800240EC 10000121 */ b .L80024574 +/* 024CF0 800240F0 24040001 */ li $a0, 1 +/* 024CF4 800240F4 00C02025 */ move $a0, $a2 +/* 024CF8 800240F8 0C00F96F */ jal func_8003E5BC +/* 024CFC 800240FC 00E02825 */ move $a1, $a3 +/* 024D00 80024100 1000011C */ b .L80024574 +/* 024D04 80024104 24040001 */ li $a0, 1 +/* 024D08 80024108 00C02025 */ move $a0, $a2 +/* 024D0C 8002410C 0C00F98C */ jal func_8003E630 +/* 024D10 80024110 00E02825 */ move $a1, $a3 +/* 024D14 80024114 10000117 */ b .L80024574 +/* 024D18 80024118 24040001 */ li $a0, 1 +/* 024D1C 8002411C 00C02025 */ move $a0, $a2 +/* 024D20 80024120 0C00F3E6 */ jal func_8003CF98 +/* 024D24 80024124 00E02825 */ move $a1, $a3 +/* 024D28 80024128 10000112 */ b .L80024574 +/* 024D2C 8002412C 24040001 */ li $a0, 1 +/* 024D30 80024130 00C02025 */ move $a0, $a2 +/* 024D34 80024134 0C00D2D3 */ jal func_80034B4C +/* 024D38 80024138 00E02825 */ move $a1, $a3 +/* 024D3C 8002413C 1000010D */ b .L80024574 +/* 024D40 80024140 24040001 */ li $a0, 1 +/* 024D44 80024144 00C02025 */ move $a0, $a2 +/* 024D48 80024148 0C010052 */ jal func_80040148 +/* 024D4C 8002414C 00E02825 */ move $a1, $a3 +/* 024D50 80024150 10000108 */ b .L80024574 +/* 024D54 80024154 24040001 */ li $a0, 1 +/* 024D58 80024158 00C02025 */ move $a0, $a2 +/* 024D5C 8002415C 0C00D878 */ jal func_800361E0 +/* 024D60 80024160 00E02825 */ move $a1, $a3 +/* 024D64 80024164 10000103 */ b .L80024574 +/* 024D68 80024168 24040001 */ li $a0, 1 +/* 024D6C 8002416C 00C02025 */ move $a0, $a2 +/* 024D70 80024170 0C00F568 */ jal func_8003D5A0 +/* 024D74 80024174 00E02825 */ move $a1, $a3 +/* 024D78 80024178 100000FE */ b .L80024574 +/* 024D7C 8002417C 24040001 */ li $a0, 1 +/* 024D80 80024180 00C02025 */ move $a0, $a2 +/* 024D84 80024184 0C010112 */ jal func_80040448 +/* 024D88 80024188 00E02825 */ move $a1, $a3 +/* 024D8C 8002418C 100000F9 */ b .L80024574 +/* 024D90 80024190 24040001 */ li $a0, 1 +/* 024D94 80024194 00C02025 */ move $a0, $a2 +/* 024D98 80024198 0C01015C */ jal func_80040570 +/* 024D9C 8002419C 00E02825 */ move $a1, $a3 +/* 024DA0 800241A0 100000F4 */ b .L80024574 +/* 024DA4 800241A4 24040001 */ li $a0, 1 +/* 024DA8 800241A8 00C02025 */ move $a0, $a2 +/* 024DAC 800241AC 0C010208 */ jal func_80040820 +/* 024DB0 800241B0 00E02825 */ move $a1, $a3 +/* 024DB4 800241B4 100000EF */ b .L80024574 +/* 024DB8 800241B8 24040001 */ li $a0, 1 +/* 024DBC 800241BC 00C02025 */ move $a0, $a2 +/* 024DC0 800241C0 0C00F29A */ jal func_8003CA68 +/* 024DC4 800241C4 00E02825 */ move $a1, $a3 +/* 024DC8 800241C8 100000EA */ b .L80024574 +/* 024DCC 800241CC 24040001 */ li $a0, 1 +/* 024DD0 800241D0 00C02025 */ move $a0, $a2 +/* 024DD4 800241D4 0C00F3A8 */ jal func_8003CEA0 +/* 024DD8 800241D8 00E02825 */ move $a1, $a3 +/* 024DDC 800241DC 100000E5 */ b .L80024574 +/* 024DE0 800241E0 24040001 */ li $a0, 1 +/* 024DE4 800241E4 00C02025 */ move $a0, $a2 +/* 024DE8 800241E8 0C00F3C3 */ jal func_8003CF0C +/* 024DEC 800241EC 00E02825 */ move $a1, $a3 +/* 024DF0 800241F0 100000E0 */ b .L80024574 +/* 024DF4 800241F4 24040001 */ li $a0, 1 +/* 024DF8 800241F8 00C02025 */ move $a0, $a2 +/* 024DFC 800241FC 0C00D498 */ jal func_80035260 +/* 024E00 80024200 00E02825 */ move $a1, $a3 +/* 024E04 80024204 100000DB */ b .L80024574 +/* 024E08 80024208 24040001 */ li $a0, 1 +/* 024E0C 8002420C 00C02025 */ move $a0, $a2 +/* 024E10 80024210 0C00D593 */ jal func_8003564C +/* 024E14 80024214 00E02825 */ move $a1, $a3 +/* 024E18 80024218 100000D6 */ b .L80024574 +/* 024E1C 8002421C 24040001 */ li $a0, 1 +/* 024E20 80024220 00C02025 */ move $a0, $a2 +/* 024E24 80024224 0C00D7DB */ jal func_80035F6C +/* 024E28 80024228 00E02825 */ move $a1, $a3 +/* 024E2C 8002422C 100000D1 */ b .L80024574 +/* 024E30 80024230 24040001 */ li $a0, 1 +/* 024E34 80024234 00C02025 */ move $a0, $a2 +/* 024E38 80024238 0C00DF3A */ jal func_80037CE8 +/* 024E3C 8002423C 00E02825 */ move $a1, $a3 +/* 024E40 80024240 100000CC */ b .L80024574 +/* 024E44 80024244 24040001 */ li $a0, 1 +/* 024E48 80024248 00C02025 */ move $a0, $a2 +/* 024E4C 8002424C 0C010B34 */ jal func_80042CD0 +/* 024E50 80024250 00E02825 */ move $a1, $a3 +/* 024E54 80024254 100000C7 */ b .L80024574 +/* 024E58 80024258 24040001 */ li $a0, 1 +/* 024E5C 8002425C 00C02025 */ move $a0, $a2 +/* 024E60 80024260 0C00E1C4 */ jal func_80038710 +/* 024E64 80024264 00E02825 */ move $a1, $a3 +/* 024E68 80024268 100000C2 */ b .L80024574 +/* 024E6C 8002426C 24040001 */ li $a0, 1 +/* 024E70 80024270 00C02025 */ move $a0, $a2 +/* 024E74 80024274 0C00E235 */ jal func_800388D4 +/* 024E78 80024278 00E02825 */ move $a1, $a3 +/* 024E7C 8002427C 100000BD */ b .L80024574 +/* 024E80 80024280 24040001 */ li $a0, 1 +/* 024E84 80024284 00C02025 */ move $a0, $a2 +/* 024E88 80024288 0C00E1F3 */ jal func_800387CC +/* 024E8C 8002428C 00E02825 */ move $a1, $a3 +/* 024E90 80024290 100000B8 */ b .L80024574 +/* 024E94 80024294 24040001 */ li $a0, 1 +/* 024E98 80024298 00C02025 */ move $a0, $a2 +/* 024E9C 8002429C 0C00E0CF */ jal func_8003833C +/* 024EA0 800242A0 00E02825 */ move $a1, $a3 +/* 024EA4 800242A4 100000B3 */ b .L80024574 +/* 024EA8 800242A8 24040001 */ li $a0, 1 +/* 024EAC 800242AC 00C02025 */ move $a0, $a2 +/* 024EB0 800242B0 0C00F1E9 */ jal func_8003C7A4 +/* 024EB4 800242B4 00E02825 */ move $a1, $a3 +/* 024EB8 800242B8 100000AE */ b .L80024574 +/* 024EBC 800242BC 24040001 */ li $a0, 1 +/* 024EC0 800242C0 00C02025 */ move $a0, $a2 +/* 024EC4 800242C4 0C00E03E */ jal func_800380F8 +/* 024EC8 800242C8 00E02825 */ move $a1, $a3 +/* 024ECC 800242CC 100000A9 */ b .L80024574 +/* 024ED0 800242D0 24040001 */ li $a0, 1 +/* 024ED4 800242D4 00C02025 */ move $a0, $a2 +/* 024ED8 800242D8 0C00D65B */ jal func_8003596C +/* 024EDC 800242DC 00E02825 */ move $a1, $a3 +/* 024EE0 800242E0 100000A4 */ b .L80024574 +/* 024EE4 800242E4 24040001 */ li $a0, 1 +/* 024EE8 800242E8 00C02025 */ move $a0, $a2 +/* 024EEC 800242EC 0C00D78D */ jal func_80035E34 +/* 024EF0 800242F0 00E02825 */ move $a1, $a3 +/* 024EF4 800242F4 1000009F */ b .L80024574 +/* 024EF8 800242F8 24040001 */ li $a0, 1 +/* 024EFC 800242FC 0C02FFF7 */ jal func_800BFFDC +/* 024F00 80024300 00C02025 */ move $a0, $a2 +/* 024F04 80024304 1000009B */ b .L80024574 +/* 024F08 80024308 24040001 */ li $a0, 1 +/* 024F0C 8002430C 00C02025 */ move $a0, $a2 +/* 024F10 80024310 0C010315 */ jal func_80040C54 +/* 024F14 80024314 00E02825 */ move $a1, $a3 +/* 024F18 80024318 10000096 */ b .L80024574 +/* 024F1C 8002431C 24040001 */ li $a0, 1 +/* 024F20 80024320 00C02025 */ move $a0, $a2 +/* 024F24 80024324 0C00E4CC */ jal func_80039330 +/* 024F28 80024328 00E02825 */ move $a1, $a3 +/* 024F2C 8002432C 10000091 */ b .L80024574 +/* 024F30 80024330 24040001 */ li $a0, 1 +/* 024F34 80024334 00C02025 */ move $a0, $a2 +/* 024F38 80024338 0C00F7C2 */ jal func_8003DF08 +/* 024F3C 8002433C 00E02825 */ move $a1, $a3 +/* 024F40 80024340 1000008C */ b .L80024574 +/* 024F44 80024344 24040001 */ li $a0, 1 +/* 024F48 80024348 00C02025 */ move $a0, $a2 +/* 024F4C 8002434C 0C00F4FF */ jal func_8003D3FC +/* 024F50 80024350 00E02825 */ move $a1, $a3 +/* 024F54 80024354 10000087 */ b .L80024574 +/* 024F58 80024358 24040001 */ li $a0, 1 +/* 024F5C 8002435C 00C02025 */ move $a0, $a2 +/* 024F60 80024360 0C00F416 */ jal func_8003D058 +/* 024F64 80024364 00E02825 */ move $a1, $a3 +/* 024F68 80024368 10000082 */ b .L80024574 +/* 024F6C 8002436C 24040001 */ li $a0, 1 +/* 024F70 80024370 00C02025 */ move $a0, $a2 +/* 024F74 80024374 0C00DD65 */ jal func_80037594 +/* 024F78 80024378 00E02825 */ move $a1, $a3 +/* 024F7C 8002437C 1000007D */ b .L80024574 +/* 024F80 80024380 24040001 */ li $a0, 1 +/* 024F84 80024384 00C02025 */ move $a0, $a2 +/* 024F88 80024388 0C00DD8F */ jal func_8003763C +/* 024F8C 8002438C 00E02825 */ move $a1, $a3 +/* 024F90 80024390 10000078 */ b .L80024574 +/* 024F94 80024394 24040001 */ li $a0, 1 +/* 024F98 80024398 00C02025 */ move $a0, $a2 +/* 024F9C 8002439C 0C00E070 */ jal func_800381C0 +/* 024FA0 800243A0 00E02825 */ move $a1, $a3 +/* 024FA4 800243A4 10000073 */ b .L80024574 +/* 024FA8 800243A8 24040001 */ li $a0, 1 +/* 024FAC 800243AC 00C02025 */ move $a0, $a2 +/* 024FB0 800243B0 0C00E09F */ jal func_8003827C +/* 024FB4 800243B4 00E02825 */ move $a1, $a3 +/* 024FB8 800243B8 1000006E */ b .L80024574 +/* 024FBC 800243BC 24040001 */ li $a0, 1 +/* 024FC0 800243C0 00C02025 */ move $a0, $a2 +/* 024FC4 800243C4 0C00D2DD */ jal func_80034B74 +/* 024FC8 800243C8 00E02825 */ move $a1, $a3 +/* 024FCC 800243CC 10000069 */ b .L80024574 +/* 024FD0 800243D0 24040001 */ li $a0, 1 +/* 024FD4 800243D4 00C02025 */ move $a0, $a2 +/* 024FD8 800243D8 0C00D3A7 */ jal func_80034E9C +/* 024FDC 800243DC 00E02825 */ move $a1, $a3 +/* 024FE0 800243E0 10000064 */ b .L80024574 +/* 024FE4 800243E4 24040001 */ li $a0, 1 +/* 024FE8 800243E8 00C02025 */ move $a0, $a2 +/* 024FEC 800243EC 0C010824 */ jal func_80042090 +/* 024FF0 800243F0 00E02825 */ move $a1, $a3 +/* 024FF4 800243F4 1000005F */ b .L80024574 +/* 024FF8 800243F8 24040001 */ li $a0, 1 +/* 024FFC 800243FC 00C02025 */ move $a0, $a2 +/* 025000 80024400 0C00F4AE */ jal func_8003D2B8 +/* 025004 80024404 00E02825 */ move $a1, $a3 +/* 025008 80024408 1000005A */ b .L80024574 +/* 02500C 8002440C 24040001 */ li $a0, 1 +/* 025010 80024410 00C02025 */ move $a0, $a2 +/* 025014 80024414 0C00ED2F */ jal func_8003B4BC +/* 025018 80024418 00E02825 */ move $a1, $a3 +/* 02501C 8002441C 10000055 */ b .L80024574 +/* 025020 80024420 24040001 */ li $a0, 1 +/* 025024 80024424 00C02025 */ move $a0, $a2 +/* 025028 80024428 0C00D218 */ jal func_80034860 +/* 02502C 8002442C 00E02825 */ move $a1, $a3 +/* 025030 80024430 10000050 */ b .L80024574 +/* 025034 80024434 24040001 */ li $a0, 1 +/* 025038 80024438 00C02025 */ move $a0, $a2 +/* 02503C 8002443C 0C00D168 */ jal func_800345A0 +/* 025040 80024440 00E02825 */ move $a1, $a3 +/* 025044 80024444 1000004B */ b .L80024574 +/* 025048 80024448 24040001 */ li $a0, 1 +/* 02504C 8002444C 00C02025 */ move $a0, $a2 +/* 025050 80024450 0C00EB28 */ jal func_8003ACA0 +/* 025054 80024454 00E02825 */ move $a1, $a3 +/* 025058 80024458 10000046 */ b .L80024574 +/* 02505C 8002445C 24040001 */ li $a0, 1 +/* 025060 80024460 00C02025 */ move $a0, $a2 +/* 025064 80024464 0C00D714 */ jal func_80035C50 +/* 025068 80024468 00E02825 */ move $a1, $a3 +/* 02506C 8002446C 10000041 */ b .L80024574 +/* 025070 80024470 24040001 */ li $a0, 1 +/* 025074 80024474 00C02025 */ move $a0, $a2 +/* 025078 80024478 0C00DF5E */ jal func_80037D78 +/* 02507C 8002447C 00E02825 */ move $a1, $a3 +/* 025080 80024480 1000003C */ b .L80024574 +/* 025084 80024484 24040001 */ li $a0, 1 +/* 025088 80024488 00C02025 */ move $a0, $a2 +/* 02508C 8002448C 0C00F745 */ jal func_8003DD14 +/* 025090 80024490 00E02825 */ move $a1, $a3 +/* 025094 80024494 10000037 */ b .L80024574 +/* 025098 80024498 24040001 */ li $a0, 1 +/* 02509C 8002449C 00C02025 */ move $a0, $a2 +/* 0250A0 800244A0 0C00E2B5 */ jal func_80038AD4 +/* 0250A4 800244A4 00E02825 */ move $a1, $a3 +/* 0250A8 800244A8 10000032 */ b .L80024574 +/* 0250AC 800244AC 24040001 */ li $a0, 1 +/* 0250B0 800244B0 00C02025 */ move $a0, $a2 +/* 0250B4 800244B4 0C010858 */ jal func_80042160 +/* 0250B8 800244B8 00E02825 */ move $a1, $a3 +/* 0250BC 800244BC 1000002D */ b .L80024574 +/* 0250C0 800244C0 24040001 */ li $a0, 1 +/* 0250C4 800244C4 00C02025 */ move $a0, $a2 +/* 0250C8 800244C8 0C00E371 */ jal func_80038DC4 +/* 0250CC 800244CC 00E02825 */ move $a1, $a3 +/* 0250D0 800244D0 10000028 */ b .L80024574 +/* 0250D4 800244D4 24040001 */ li $a0, 1 +/* 0250D8 800244D8 00C02025 */ move $a0, $a2 +/* 0250DC 800244DC 0C01085E */ jal func_80042178 +/* 0250E0 800244E0 00E02825 */ move $a1, $a3 +/* 0250E4 800244E4 10000023 */ b .L80024574 +/* 0250E8 800244E8 24040001 */ li $a0, 1 +/* 0250EC 800244EC 00C02025 */ move $a0, $a2 +/* 0250F0 800244F0 0C00D5F5 */ jal func_800357D4 +/* 0250F4 800244F4 00E02825 */ move $a1, $a3 +/* 0250F8 800244F8 1000001E */ b .L80024574 +/* 0250FC 800244FC 24040001 */ li $a0, 1 +/* 025100 80024500 00C02025 */ move $a0, $a2 +/* 025104 80024504 0C00CFD8 */ jal func_80033F60 +/* 025108 80024508 00E02825 */ move $a1, $a3 +/* 02510C 8002450C 10000019 */ b .L80024574 +/* 025110 80024510 24040001 */ li $a0, 1 +/* 025114 80024514 00C02025 */ move $a0, $a2 +/* 025118 80024518 0C0108BC */ jal func_800422F0 +/* 02511C 8002451C 00E02825 */ move $a1, $a3 +/* 025120 80024520 10000014 */ b .L80024574 +/* 025124 80024524 24040001 */ li $a0, 1 +/* 025128 80024528 00C02025 */ move $a0, $a2 +/* 02512C 8002452C 0C00F0B9 */ jal func_8003C2E4 +/* 025130 80024530 00E02825 */ move $a1, $a3 +/* 025134 80024534 1000000F */ b .L80024574 +/* 025138 80024538 24040001 */ li $a0, 1 +/* 02513C 8002453C 00C02025 */ move $a0, $a2 +/* 025140 80024540 0C00DF42 */ jal func_80037D08 +/* 025144 80024544 00E02825 */ move $a1, $a3 +/* 025148 80024548 1000000A */ b .L80024574 +/* 02514C 8002454C 24040001 */ li $a0, 1 +/* 025150 80024550 00C02025 */ move $a0, $a2 +/* 025154 80024554 0C010A66 */ jal func_80042998 +/* 025158 80024558 00E02825 */ move $a1, $a3 +/* 02515C 8002455C 10000005 */ b .L80024574 +/* 025160 80024560 24040001 */ li $a0, 1 +/* 025164 80024564 00C02025 */ move $a0, $a2 +/* 025168 80024568 0C010AA4 */ jal func_80042A90 +/* 02516C 8002456C 00E02825 */ move $a1, $a3 +.L80024570: +/* 025170 80024570 24040001 */ li $a0, 1 +.L80024574: +/* 025174 80024574 0C02DDAE */ jal func_800B76B8 +/* 025178 80024578 2405FFFF */ li $a1, -1 +/* 02517C 8002457C 8FBF0014 */ lw $ra, 0x14($sp) +/* 025180 80024580 27BD0018 */ addiu $sp, $sp, 0x18 +/* 025184 80024584 03E00008 */ jr $ra +/* 025188 80024588 00000000 */ nop + +/* 02518C 8002458C 03E00008 */ jr $ra +/* 025190 80024590 AFA40000 */ sw $a0, ($sp) + diff --git a/asm/non_matchings/unknown_005740/func_80024594.s b/asm/non_matchings/unknown_005740/func_80024594.s new file mode 100644 index 00000000..6643e1be --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80024594.s @@ -0,0 +1,10 @@ +glabel func_80024594 +/* 025194 80024594 3C0E800E */ lui $t6, %hi(D_800DC700) # $t6, 0x800e +/* 025198 80024598 8DCEC700 */ lw $t6, %lo(D_800DC700)($t6) +/* 02519C 8002459C 240F0080 */ li $t7, 128 +/* 0251A0 800245A0 3C028012 */ lui $v0, 0x8012 +/* 0251A4 800245A4 AC8E0000 */ sw $t6, ($a0) +/* 0251A8 800245A8 ACAF0000 */ sw $t7, ($a1) +/* 0251AC 800245AC 03E00008 */ jr $ra +/* 0251B0 800245B0 2442AC20 */ addiu $v0, $v0, -0x53e0 + diff --git a/asm/non_matchings/unknown_005740/func_800245B4.s b/asm/non_matchings/unknown_005740/func_800245B4.s new file mode 100644 index 00000000..e2b805c2 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800245B4.s @@ -0,0 +1,18 @@ +glabel func_800245B4 +/* 0251B4 800245B4 3C03800E */ lui $v1, %hi(D_800DC700) # $v1, 0x800e +/* 0251B8 800245B8 2463C700 */ addiu $v1, %lo(D_800DC700) # addiu $v1, $v1, -0x3900 +/* 0251BC 800245BC 8C620000 */ lw $v0, ($v1) +/* 0251C0 800245C0 3C018012 */ lui $at, 0x8012 +/* 0251C4 800245C4 0002C040 */ sll $t8, $v0, 1 +/* 0251C8 800245C8 00380821 */ addu $at, $at, $t8 +/* 0251CC 800245CC A424AC20 */ sh $a0, -0x53e0($at) +/* 0251D0 800245D0 24590001 */ addiu $t9, $v0, 1 +/* 0251D4 800245D4 2B210080 */ slti $at, $t9, 0x80 +/* 0251D8 800245D8 AFA40000 */ sw $a0, ($sp) +/* 0251DC 800245DC 14200002 */ bnez $at, .L800245E8 +/* 0251E0 800245E0 AC790000 */ sw $t9, ($v1) +/* 0251E4 800245E4 AC600000 */ sw $zero, ($v1) +.L800245E8: +/* 0251E8 800245E8 03E00008 */ jr $ra +/* 0251EC 800245EC 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_800245F0.s b/asm/non_matchings/unknown_005740/func_800245F0.s new file mode 100644 index 00000000..c54d79d0 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_800245F0.s @@ -0,0 +1,94 @@ +glabel func_800245F0 +/* 0251F0 800245F0 8CA70054 */ lw $a3, 0x54($a1) +/* 0251F4 800245F4 10E00051 */ beqz $a3, .L8002473C +/* 0251F8 800245F8 00000000 */ nop +/* 0251FC 800245FC 8CE20000 */ lw $v0, ($a3) +/* 025200 80024600 44863000 */ mtc1 $a2, $f6 +/* 025204 80024604 3C014320 */ li $at, 0x43200000 # 160.000000 +/* 025208 80024608 44822000 */ mtc1 $v0, $f4 +/* 02520C 8002460C 44814000 */ mtc1 $at, $f8 +/* 025210 80024610 84880028 */ lh $t0, 0x28($a0) +/* 025214 80024614 46062102 */ mul.s $f4, $f4, $f6 +/* 025218 80024618 8C8D0038 */ lw $t5, 0x38($a0) +/* 02521C 8002461C 84F8001C */ lh $t8, 0x1c($a3) +/* 025220 80024620 84EF001E */ lh $t7, 0x1e($a3) +/* 025224 80024624 84EE0020 */ lh $t6, 0x20($a3) +/* 025228 80024628 8C870040 */ lw $a3, 0x40($a0) +/* 02522C 8002462C 8CA50044 */ lw $a1, 0x44($a1) +/* 025230 80024630 46082102 */ mul.s $f4, $f4, $f8 +/* 025234 80024634 4442F800 */ cfc1 $v0, $31 +/* 025238 80024638 00000000 */ nop +/* 02523C 8002463C 34430003 */ ori $v1, $v0, 3 +/* 025240 80024640 38630002 */ xori $v1, $v1, 2 +/* 025244 80024644 44C3F800 */ ctc1 $v1, $31 +/* 025248 80024648 00081880 */ sll $v1, $t0, 2 +/* 02524C 8002464C 46002124 */ cvt.w.s $f4, $f4 +/* 025250 80024650 44C2F800 */ ctc1 $v0, $31 +/* 025254 80024654 000810C0 */ sll $v0, $t0, 3 +/* 025258 80024658 00432020 */ add $a0, $v0, $v1 +/* 02525C 8002465C 44062000 */ mfc1 $a2, $f4 +/* 025260 80024660 008D2020 */ add $a0, $a0, $t5 +/* 025264 80024664 91A80006 */ lbu $t0, 6($t5) +.L80024668: +/* 025268 80024668 85A20002 */ lh $v0, 2($t5) +/* 02526C 8002466C 85A3000E */ lh $v1, 0xe($t5) +/* 025270 80024670 240100FF */ li $at, 255 +/* 025274 80024674 1501000C */ bne $t0, $at, .L800246A8 +/* 025278 80024678 00626022 */ sub $t4, $v1, $v0 +/* 02527C 8002467C 8DA90008 */ lw $t1, 8($t5) +/* 025280 80024680 000C10C0 */ sll $v0, $t4, 3 +/* 025284 80024684 000C1840 */ sll $v1, $t4, 1 +/* 025288 80024688 00431020 */ add $v0, $v0, $v1 +/* 02528C 8002468C 31298000 */ andi $t1, $t1, 0x8000 +/* 025290 80024690 11200026 */ beqz $t1, .L8002472C +/* 025294 80024694 00A22820 */ add $a1, $a1, $v0 +/* 025298 80024698 000C1080 */ sll $v0, $t4, 2 +/* 02529C 8002469C 00431020 */ add $v0, $v0, $v1 +/* 0252A0 800246A0 10000022 */ b .L8002472C +/* 0252A4 800246A4 00E23820 */ add $a3, $a3, $v0 +.L800246A8: +/* 0252A8 800246A8 84E80000 */ lh $t0, ($a3) +/* 0252AC 800246AC 01180018 */ mult $t0, $t8 +/* 0252B0 800246B0 0000C812 */ mflo $t9 +/* 0252B4 800246B4 84E90002 */ lh $t1, 2($a3) +/* 0252B8 800246B8 258CFFFF */ addiu $t4, $t4, -1 +/* 0252BC 800246BC 012F0018 */ mult $t1, $t7 +/* 0252C0 800246C0 00001012 */ mflo $v0 +/* 0252C4 800246C4 84EA0004 */ lh $t2, 4($a3) +/* 0252C8 800246C8 0322C820 */ add $t9, $t9, $v0 +/* 0252CC 800246CC 014E0018 */ mult $t2, $t6 +/* 0252D0 800246D0 00001012 */ mflo $v0 +/* 0252D4 800246D4 24E70006 */ addiu $a3, $a3, 6 +/* 0252D8 800246D8 0322C820 */ add $t9, $t9, $v0 +/* 0252DC 800246DC 0019CAC3 */ sra $t9, $t9, 0xb +/* 0252E0 800246E0 1F200003 */ bgtz $t9, .L800246F0 +/* 0252E4 800246E4 00000000 */ nop +/* 0252E8 800246E8 10000009 */ b .L80024710 +/* 0252EC 800246EC 00C0C825 */ move $t9, $a2 +.L800246F0: +/* 0252F0 800246F0 03260018 */ mult $t9, $a2 +/* 0252F4 800246F4 0000C812 */ mflo $t9 +/* 0252F8 800246F8 0019CC02 */ srl $t9, $t9, 0x10 +/* 0252FC 800246FC 0326C820 */ add $t9, $t9, $a2 +/* 025300 80024700 2B210100 */ slti $at, $t9, 0x100 +/* 025304 80024704 54200003 */ bnezl $at, .L80024714 +/* 025308 80024708 00191200 */ sll $v0, $t9, 8 +/* 02530C 8002470C 241900FF */ li $t9, 255 +.L80024710: +/* 025310 80024710 00191200 */ sll $v0, $t9, 8 +.L80024714: +/* 025314 80024714 0322C825 */ or $t9, $t9, $v0 +/* 025318 80024718 A4B90006 */ sh $t9, 6($a1) +/* 02531C 8002471C 373900FF */ ori $t9, $t9, 0xff +/* 025320 80024720 A4B90008 */ sh $t9, 8($a1) +/* 025324 80024724 1580FFE0 */ bnez $t4, .L800246A8 +/* 025328 80024728 24A5000A */ addiu $a1, $a1, 0xa +.L8002472C: +/* 02532C 8002472C 25AD000C */ addiu $t5, $t5, 0xc +/* 025330 80024730 01A4082A */ slt $at, $t5, $a0 +/* 025334 80024734 5420FFCC */ bnezl $at, .L80024668 +/* 025338 80024738 91A80006 */ lbu $t0, 6($t5) +.L8002473C: +/* 02533C 8002473C 03E00008 */ jr $ra +/* 025340 80024740 00000000 */ nop + diff --git a/asm/non_matchings/unknown_005740/func_80024744.s b/asm/non_matchings/unknown_005740/func_80024744.s new file mode 100644 index 00000000..b7461d65 --- /dev/null +++ b/asm/non_matchings/unknown_005740/func_80024744.s @@ -0,0 +1,178 @@ +glabel func_80024744 +/* 025344 80024744 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 025348 80024748 AFB00080 */ sw $s0, 0x80($sp) +/* 02534C 8002474C AFBF0078 */ sw $ra, 0x78($sp) +/* 025350 80024750 AFB10084 */ sw $s1, 0x84($sp) +/* 025354 80024754 AFB20088 */ sw $s2, 0x88($sp) +/* 025358 80024758 AFB3008C */ sw $s3, 0x8c($sp) +/* 02535C 8002475C 00808025 */ move $s0, $a0 +/* 025360 80024760 8E190054 */ lw $t9, 0x54($s0) +/* 025364 80024764 00A08825 */ move $s1, $a1 +/* 025368 80024768 00C09025 */ move $s2, $a2 +/* 02536C 8002476C 13200093 */ beqz $t9, .L800249BC +/* 025370 80024770 00E09825 */ move $s3, $a3 +/* 025374 80024774 8728001C */ lh $t0, 0x1c($t9) +/* 025378 80024778 8729001E */ lh $t1, 0x1e($t9) +/* 02537C 8002477C 872A0020 */ lh $t2, 0x20($t9) +/* 025380 80024780 00084080 */ sll $t0, $t0, 2 +/* 025384 80024784 00094880 */ sll $t1, $t1, 2 +/* 025388 80024788 000A5080 */ sll $t2, $t2, 2 +/* 02538C 8002478C 44882000 */ mtc1 $t0, $f4 +/* 025390 80024790 44893000 */ mtc1 $t1, $f6 +/* 025394 80024794 448A4000 */ mtc1 $t2, $f8 +/* 025398 80024798 46802120 */ cvt.s.w $f4, $f4 +/* 02539C 8002479C 27B80010 */ addiu $t8, $sp, 0x10 +/* 0253A0 800247A0 468031A0 */ cvt.s.w $f6, $f6 +/* 0253A4 800247A4 E7040000 */ swc1 $f4, ($t8) +/* 0253A8 800247A8 46804220 */ cvt.s.w $f8, $f8 +/* 0253AC 800247AC E7060004 */ swc1 $f6, 4($t8) +/* 0253B0 800247B0 10C00007 */ beqz $a2, .L800247D0 +/* 0253B4 800247B4 E7080008 */ swc1 $f8, 8($t8) +/* 0253B8 800247B8 0C01A769 */ jal func_80069DA4 +/* 0253BC 800247BC 00000000 */ nop +/* 0253C0 800247C0 27A50010 */ addiu $a1, $sp, 0x10 +/* 0253C4 800247C4 00402025 */ move $a0, $v0 +/* 0253C8 800247C8 0C01BDBB */ jal func_8006F6EC +/* 0253CC 800247CC 00A03025 */ move $a2, $a1 +.L800247D0: +/* 0253D0 800247D0 86080000 */ lh $t0, ($s0) +/* 0253D4 800247D4 27B8001C */ addiu $t8, $sp, 0x1c +/* 0253D8 800247D8 24030000 */ li $v1, 0 +/* 0253DC 800247DC 00084022 */ neg $t0, $t0 +/* 0253E0 800247E0 A7080000 */ sh $t0, ($t8) +/* 0253E4 800247E4 86090002 */ lh $t1, 2($s0) +/* 0253E8 800247E8 3C023F80 */ lui $v0, 0x3f80 +/* 0253EC 800247EC 27A40034 */ addiu $a0, $sp, 0x34 +/* 0253F0 800247F0 00094822 */ neg $t1, $t1 +/* 0253F4 800247F4 A7090002 */ sh $t1, 2($t8) +/* 0253F8 800247F8 860A0004 */ lh $t2, 4($s0) +/* 0253FC 800247FC AF020008 */ sw $v0, 8($t8) +/* 025400 80024800 AF03000C */ sw $v1, 0xc($t8) +/* 025404 80024804 000A5022 */ neg $t2, $t2 +/* 025408 80024808 A70A0004 */ sh $t2, 4($t8) +/* 02540C 8002480C AF030010 */ sw $v1, 0x10($t8) +/* 025410 80024810 AF030014 */ sw $v1, 0x14($t8) +/* 025414 80024814 0C01BF9D */ jal func_8006FE74 +/* 025418 80024818 03002825 */ move $a1, $t8 +/* 02541C 8002481C 27A50010 */ addiu $a1, $sp, 0x10 +/* 025420 80024820 27A40034 */ addiu $a0, $sp, 0x34 +/* 025424 80024824 0C01BDBB */ jal func_8006F6EC +/* 025428 80024828 00A03025 */ move $a2, $a1 +/* 02542C 8002482C 8E190054 */ lw $t9, 0x54($s0) +/* 025430 80024830 44933000 */ mtc1 $s3, $f6 +/* 025434 80024834 3C01437F */ li $at, 0x437F0000 # 255.000000 +/* 025438 80024838 8F220000 */ lw $v0, ($t9) +/* 02543C 8002483C 44814000 */ mtc1 $at, $f8 +/* 025440 80024840 8F23002C */ lw $v1, 0x2c($t9) +/* 025444 80024844 44822000 */ mtc1 $v0, $f4 +/* 025448 80024848 8F220028 */ lw $v0, 0x28($t9) +/* 02544C 8002484C 27A80010 */ addiu $t0, $sp, 0x10 +/* 025450 80024850 46062102 */ mul.s $f4, $f4, $f6 +/* 025454 80024854 44823000 */ mtc1 $v0, $f6 +/* 025458 80024858 8D060000 */ lw $a2, ($t0) +/* 02545C 8002485C 8D070004 */ lw $a3, 4($t0) +/* 025460 80024860 8D0E0008 */ lw $t6, 8($t0) +/* 025464 80024864 86280028 */ lh $t0, 0x28($s1) +/* 025468 80024868 8E2D0038 */ lw $t5, 0x38($s1) +/* 02546C 8002486C 46082102 */ mul.s $f4, $f4, $f8 +/* 025470 80024870 44834000 */ mtc1 $v1, $f8 +/* 025474 80024874 8E130044 */ lw $s3, 0x44($s0) +/* 025478 80024878 8E240040 */ lw $a0, 0x40($s1) +/* 02547C 8002487C 46043182 */ mul.s $f6, $f6, $f4 +/* 025480 80024880 00000000 */ nop +/* 025484 80024884 46044202 */ mul.s $f8, $f8, $f4 +/* 025488 80024888 44862000 */ mtc1 $a2, $f4 +/* 02548C 8002488C 4442F800 */ cfc1 $v0, $31 +/* 025490 80024890 00000000 */ nop +/* 025494 80024894 34430003 */ ori $v1, $v0, 3 +/* 025498 80024898 38630002 */ xori $v1, $v1, 2 +/* 02549C 8002489C 44C3F800 */ ctc1 $v1, $31 +/* 0254A0 800248A0 00081880 */ sll $v1, $t0, 2 +/* 0254A4 800248A4 460031A4 */ cvt.w.s $f6, $f6 +/* 0254A8 800248A8 46004224 */ cvt.w.s $f8, $f8 +/* 0254AC 800248AC 44183000 */ mfc1 $t8, $f6 +/* 0254B0 800248B0 44873000 */ mtc1 $a3, $f6 +/* 0254B4 800248B4 46002124 */ cvt.w.s $f4, $f4 +/* 0254B8 800248B8 440F4000 */ mfc1 $t7, $f8 +/* 0254BC 800248BC 448E4000 */ mtc1 $t6, $f8 +/* 0254C0 800248C0 460031A4 */ cvt.w.s $f6, $f6 +/* 0254C4 800248C4 44062000 */ mfc1 $a2, $f4 +/* 0254C8 800248C8 46004224 */ cvt.w.s $f8, $f8 +/* 0254CC 800248CC 44073000 */ mfc1 $a3, $f6 +/* 0254D0 800248D0 44C2F800 */ ctc1 $v0, $31 +/* 0254D4 800248D4 000810C0 */ sll $v0, $t0, 3 +/* 0254D8 800248D8 00439020 */ add $s2, $v0, $v1 +/* 0254DC 800248DC 440E4000 */ mfc1 $t6, $f8 +/* 0254E0 800248E0 024D9020 */ add $s2, $s2, $t5 +/* 0254E4 800248E4 91A80006 */ lbu $t0, 6($t5) +.L800248E8: +/* 0254E8 800248E8 85A20002 */ lh $v0, 2($t5) +/* 0254EC 800248EC 85A3000E */ lh $v1, 0xe($t5) +/* 0254F0 800248F0 240100FF */ li $at, 255 +/* 0254F4 800248F4 1501000C */ bne $t0, $at, .L80024928 +/* 0254F8 800248F8 00626022 */ sub $t4, $v1, $v0 +/* 0254FC 800248FC 8DA90008 */ lw $t1, 8($t5) +/* 025500 80024900 000C10C0 */ sll $v0, $t4, 3 +/* 025504 80024904 000C1840 */ sll $v1, $t4, 1 +/* 025508 80024908 00431020 */ add $v0, $v0, $v1 +/* 02550C 8002490C 31298000 */ andi $t1, $t1, 0x8000 +/* 025510 80024910 11200026 */ beqz $t1, .L800249AC +/* 025514 80024914 02629820 */ add $s3, $s3, $v0 +/* 025518 80024918 000C1080 */ sll $v0, $t4, 2 +/* 02551C 8002491C 00431020 */ add $v0, $v0, $v1 +/* 025520 80024920 10000022 */ b .L800249AC +/* 025524 80024924 00822020 */ add $a0, $a0, $v0 +.L80024928: +/* 025528 80024928 84880000 */ lh $t0, ($a0) +/* 02552C 8002492C 01060018 */ mult $t0, $a2 +/* 025530 80024930 00002812 */ mflo $a1 +/* 025534 80024934 84890002 */ lh $t1, 2($a0) +/* 025538 80024938 258CFFFF */ addiu $t4, $t4, -1 +/* 02553C 8002493C 01270018 */ mult $t1, $a3 +/* 025540 80024940 00001012 */ mflo $v0 +/* 025544 80024944 848A0004 */ lh $t2, 4($a0) +/* 025548 80024948 00A22820 */ add $a1, $a1, $v0 +/* 02554C 8002494C 014E0018 */ mult $t2, $t6 +/* 025550 80024950 00001012 */ mflo $v0 +/* 025554 80024954 24840006 */ addiu $a0, $a0, 6 +/* 025558 80024958 00A22820 */ add $a1, $a1, $v0 +/* 02555C 8002495C 000529C3 */ sra $a1, $a1, 7 +/* 025560 80024960 1CA00003 */ bgtz $a1, .L80024970 +/* 025564 80024964 00000000 */ nop +/* 025568 80024968 10000009 */ b .L80024990 +/* 02556C 8002496C 03002825 */ move $a1, $t8 +.L80024970: +/* 025570 80024970 00AF0018 */ mult $a1, $t7 +/* 025574 80024974 00002812 */ mflo $a1 +/* 025578 80024978 00052D42 */ srl $a1, $a1, 0x15 +/* 02557C 8002497C 00B82820 */ add $a1, $a1, $t8 +/* 025580 80024980 28A10100 */ slti $at, $a1, 0x100 +/* 025584 80024984 54200003 */ bnezl $at, .L80024994 +/* 025588 80024988 00051200 */ sll $v0, $a1, 8 +/* 02558C 8002498C 240500FF */ li $a1, 255 +.L80024990: +/* 025590 80024990 00051200 */ sll $v0, $a1, 8 +.L80024994: +/* 025594 80024994 00A22825 */ or $a1, $a1, $v0 +/* 025598 80024998 A6650006 */ sh $a1, 6($s3) +/* 02559C 8002499C 34A500FF */ ori $a1, $a1, 0xff +/* 0255A0 800249A0 A6650008 */ sh $a1, 8($s3) +/* 0255A4 800249A4 1580FFE0 */ bnez $t4, .L80024928 +/* 0255A8 800249A8 2673000A */ addiu $s3, $s3, 0xa +.L800249AC: +/* 0255AC 800249AC 25AD000C */ addiu $t5, $t5, 0xc +/* 0255B0 800249B0 01B2082A */ slt $at, $t5, $s2 +/* 0255B4 800249B4 5420FFCC */ bnezl $at, .L800248E8 +/* 0255B8 800249B8 91A80006 */ lbu $t0, 6($t5) +.L800249BC: +/* 0255BC 800249BC 8FBF0078 */ lw $ra, 0x78($sp) +/* 0255C0 800249C0 8FB00080 */ lw $s0, 0x80($sp) +/* 0255C4 800249C4 8FB10084 */ lw $s1, 0x84($sp) +/* 0255C8 800249C8 8FB20088 */ lw $s2, 0x88($sp) +/* 0255CC 800249CC 8FB3008C */ lw $s3, 0x8c($sp) +/* 0255D0 800249D0 03E00008 */ jr $ra +/* 0255D4 800249D4 27BD0080 */ addiu $sp, $sp, 0x80 + +/* 0255D8 800249D8 00000000 */ nop +/* 0255DC 800249DC 00000000 */ nop + diff --git a/asm/unknown_005740.s b/asm/unknown_005740.s deleted file mode 100755 index d8f1e962..00000000 --- a/asm/unknown_005740.s +++ /dev/null @@ -1,35463 +0,0 @@ -.include "globals.inc" -.include "macros.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # dont insert nops after branches -.set gp=64 # 64-bit instructions are used - -glabel func_80004B40 -/* 005740 80004B40 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 005744 80004B44 AFB30024 */ sw $s3, 0x24($sp) -/* 005748 80004B48 AFB00018 */ sw $s0, 0x18($sp) -/* 00574C 80004B4C 2881000B */ slti $at, $a0, 0xb -/* 005750 80004B50 00808025 */ move $s0, $a0 -/* 005754 80004B54 00A09825 */ move $s3, $a1 -/* 005758 80004B58 AFBF0034 */ sw $ra, 0x34($sp) -/* 00575C 80004B5C AFB60030 */ sw $s6, 0x30($sp) -/* 005760 80004B60 AFB5002C */ sw $s5, 0x2c($sp) -/* 005764 80004B64 AFB40028 */ sw $s4, 0x28($sp) -/* 005768 80004B68 AFB20020 */ sw $s2, 0x20($sp) -/* 00576C 80004B6C 14200002 */ bnez $at, .L80004B78 -/* 005770 80004B70 AFB1001C */ sw $s1, 0x1c($sp) -/* 005774 80004B74 2410000B */ li $s0, 11 -.L80004B78: -/* 005778 80004B78 3C0E800E */ lui $t6, %hi(D_800DC6D8) # $t6, 0x800e -/* 00577C 80004B7C 8DCEC6D8 */ lw $t6, %lo(D_800DC6D8)($t6) -/* 005780 80004B80 00000000 */ nop -/* 005784 80004B84 11C00009 */ beqz $t6, .L80004BAC -/* 005788 80004B88 3C028012 */ lui $v0, %hi(D_80119C30) # $v0, 0x8012 -/* 00578C 80004B8C 3C038012 */ lui $v1, %hi(D_80119C38) # $v1, 0x8012 -/* 005790 80004B90 24639C38 */ addiu $v1, %lo(D_80119C38) # addiu $v1, $v1, -0x63c8 -/* 005794 80004B94 24429C30 */ addiu $v0, %lo(D_80119C30) # addiu $v0, $v0, -0x63d0 -.L80004B98: -/* 005798 80004B98 24420004 */ addiu $v0, $v0, 4 -/* 00579C 80004B9C 1443FFFE */ bne $v0, $v1, .L80004B98 -/* 0057A0 80004BA0 AC40FFFC */ sw $zero, -4($v0) -/* 0057A4 80004BA4 3C01800E */ lui $at, %hi(D_800DC6D8) # $at, 0x800e -/* 0057A8 80004BA8 AC20C6D8 */ sw $zero, %lo(D_800DC6D8)($at) -.L80004BAC: -/* 0057AC 80004BAC 0C01DB16 */ jal func_80076C58 -/* 0057B0 80004BB0 24040026 */ li $a0, 38 -/* 0057B4 80004BB4 0013B080 */ sll $s6, $s3, 2 -/* 0057B8 80004BB8 02D3B021 */ addu $s6, $s6, $s3 -/* 0057BC 80004BBC 0016B040 */ sll $s6, $s6, 1 -/* 0057C0 80004BC0 02D0C021 */ addu $t8, $s6, $s0 -/* 0057C4 80004BC4 0018C880 */ sll $t9, $t8, 2 -/* 0057C8 80004BC8 0338C821 */ addu $t9, $t9, $t8 -/* 0057CC 80004BCC AFA2003C */ sw $v0, 0x3c($sp) -/* 0057D0 80004BD0 0019C880 */ sll $t9, $t9, 2 -/* 0057D4 80004BD4 8C4F001C */ lw $t7, 0x1c($v0) -/* 0057D8 80004BD8 3C1200FF */ lui $s2, %hi(D_00FF0018) # $s2, 0xff -/* 0057DC 80004BDC 0338C823 */ subu $t9, $t9, $t8 -/* 0057E0 80004BE0 3652FFFF */ ori $s2, (0x00FFFFFF & 0xFFFF) # ori $s2, $s2, 0xffff -/* 0057E4 80004BE4 0019C880 */ sll $t9, $t9, 2 -/* 0057E8 80004BE8 02402825 */ move $a1, $s2 -/* 0057EC 80004BEC 2404004C */ li $a0, 76 -/* 0057F0 80004BF0 0C01C327 */ jal func_80070C9C -/* 0057F4 80004BF4 01F98821 */ addu $s1, $t7, $t9 -/* 0057F8 80004BF8 0040A825 */ move $s5, $v0 -/* 0057FC 80004BFC 24040027 */ li $a0, 39 -/* 005800 80004C00 00402825 */ move $a1, $v0 -/* 005804 80004C04 02203025 */ move $a2, $s1 -/* 005808 80004C08 0C01DB9A */ jal func_80076E68 -/* 00580C 80004C0C 2407004C */ li $a3, 76 -/* 005810 80004C10 240400E0 */ li $a0, 224 -/* 005814 80004C14 0C01C327 */ jal func_80070C9C -/* 005818 80004C18 02402825 */ move $a1, $s2 -/* 00581C 80004C1C AFA20044 */ sw $v0, 0x44($sp) -/* 005820 80004C20 00401825 */ move $v1, $v0 -/* 005824 80004C24 00003825 */ move $a3, $zero -/* 005828 80004C28 240400E0 */ li $a0, 224 -.L80004C2C: -/* 00582C 80004C2C 24E70004 */ addiu $a3, $a3, 4 -/* 005830 80004C30 A0600001 */ sb $zero, 1($v1) -/* 005834 80004C34 A0600002 */ sb $zero, 2($v1) -/* 005838 80004C38 A0600003 */ sb $zero, 3($v1) -/* 00583C 80004C3C 24630004 */ addiu $v1, $v1, 4 -/* 005840 80004C40 14E4FFFA */ bne $a3, $a0, .L80004C2C -/* 005844 80004C44 A060FFFC */ sb $zero, -4($v1) -/* 005848 80004C48 92AE0036 */ lbu $t6, 0x36($s5) -/* 00584C 80004C4C 3C01800E */ lui $at, %hi(D_800E4BF0) # $at, 0x800e -/* 005850 80004C50 C4224BF0 */ lwc1 $f2, %lo(D_800E4BF0)($at) -/* 005854 80004C54 A04E0036 */ sb $t6, 0x36($v0) -/* 005858 80004C58 92B80037 */ lbu $t8, 0x37($s5) -/* 00585C 80004C5C 00008025 */ move $s0, $zero -/* 005860 80004C60 A0580037 */ sb $t8, 0x37($v0) -/* 005864 80004C64 92AF0038 */ lbu $t7, 0x38($s5) -/* 005868 80004C68 02A08825 */ move $s1, $s5 -/* 00586C 80004C6C A04F0038 */ sb $t7, 0x38($v0) -/* 005870 80004C70 92B90039 */ lbu $t9, 0x39($s5) -/* 005874 80004C74 02A05825 */ move $t3, $s5 -/* 005878 80004C78 A0590039 */ sb $t9, 0x39($v0) -/* 00587C 80004C7C 92AE003A */ lbu $t6, 0x3a($s5) -/* 005880 80004C80 02A06025 */ move $t4, $s5 -/* 005884 80004C84 A04E0064 */ sb $t6, 0x64($v0) -/* 005888 80004C88 86B80046 */ lh $t8, 0x46($s5) -/* 00588C 80004C8C 00406825 */ move $t5, $v0 -/* 005890 80004C90 44982000 */ mtc1 $t8, $f4 -/* 005894 80004C94 0040F825 */ move $ra, $v0 -/* 005898 80004C98 468021A0 */ cvt.s.w $f6, $f4 -/* 00589C 80004C9C 00404825 */ move $t1, $v0 -/* 0058A0 80004CA0 02A05025 */ move $t2, $s5 -/* 0058A4 80004CA4 46023203 */ div.s $f8, $f6, $f2 -/* 0058A8 80004CA8 00409025 */ move $s2, $v0 -/* 0058AC 80004CAC 02A09825 */ move $s3, $s5 -/* 0058B0 80004CB0 0040A025 */ move $s4, $v0 -/* 0058B4 80004CB4 24080005 */ li $t0, 5 -/* 0058B8 80004CB8 E44800C8 */ swc1 $f8, 0xc8($v0) -/* 0058BC 80004CBC 86AF003E */ lh $t7, 0x3e($s5) -/* 0058C0 80004CC0 00000000 */ nop -/* 0058C4 80004CC4 448F5000 */ mtc1 $t7, $f10 -/* 0058C8 80004CC8 00000000 */ nop -/* 0058CC 80004CCC 46805420 */ cvt.s.w $f16, $f10 -/* 0058D0 80004CD0 00000000 */ nop -/* 0058D4 80004CD4 46028483 */ div.s $f18, $f16, $f2 -/* 0058D8 80004CD8 E45200B0 */ swc1 $f18, 0xb0($v0) -/* 0058DC 80004CDC 86B90040 */ lh $t9, 0x40($s5) -/* 0058E0 80004CE0 00000000 */ nop -/* 0058E4 80004CE4 44992000 */ mtc1 $t9, $f4 -/* 0058E8 80004CE8 00000000 */ nop -/* 0058EC 80004CEC 468021A0 */ cvt.s.w $f6, $f4 -/* 0058F0 80004CF0 00000000 */ nop -/* 0058F4 80004CF4 46023203 */ div.s $f8, $f6, $f2 -/* 0058F8 80004CF8 E44800B4 */ swc1 $f8, 0xb4($v0) -/* 0058FC 80004CFC 86AE0042 */ lh $t6, 0x42($s5) -/* 005900 80004D00 00000000 */ nop -/* 005904 80004D04 448E5000 */ mtc1 $t6, $f10 -/* 005908 80004D08 00000000 */ nop -/* 00590C 80004D0C 46805420 */ cvt.s.w $f16, $f10 -/* 005910 80004D10 00000000 */ nop -/* 005914 80004D14 46028483 */ div.s $f18, $f16, $f2 -/* 005918 80004D18 E45200C0 */ swc1 $f18, 0xc0($v0) -/* 00591C 80004D1C 86B80044 */ lh $t8, 0x44($s5) -/* 005920 80004D20 00000000 */ nop -/* 005924 80004D24 44982000 */ mtc1 $t8, $f4 -/* 005928 80004D28 00000000 */ nop -/* 00592C 80004D2C 468021A0 */ cvt.s.w $f6, $f4 -/* 005930 80004D30 00000000 */ nop -/* 005934 80004D34 46023203 */ div.s $f8, $f6, $f2 -/* 005938 80004D38 E44800C4 */ swc1 $f8, 0xc4($v0) -/* 00593C 80004D3C 86AF003C */ lh $t7, 0x3c($s5) -/* 005940 80004D40 00000000 */ nop -/* 005944 80004D44 448F5000 */ mtc1 $t7, $f10 -/* 005948 80004D48 00000000 */ nop -/* 00594C 80004D4C 46805420 */ cvt.s.w $f16, $f10 -/* 005950 80004D50 44805000 */ mtc1 $zero, $f10 -/* 005954 80004D54 46028483 */ div.s $f18, $f16, $f2 -/* 005958 80004D58 E45200BC */ swc1 $f18, 0xbc($v0) -/* 00595C 80004D5C 92B9003B */ lbu $t9, 0x3b($s5) -/* 005960 80004D60 00000000 */ nop -/* 005964 80004D64 A05900B8 */ sb $t9, 0xb8($v0) -/* 005968 80004D68 86AE0048 */ lh $t6, 0x48($s5) -/* 00596C 80004D6C A04000D8 */ sb $zero, 0xd8($v0) -/* 005970 80004D70 448E2000 */ mtc1 $t6, $f4 -/* 005974 80004D74 00000000 */ nop -/* 005978 80004D78 468021A0 */ cvt.s.w $f6, $f4 -/* 00597C 80004D7C 00000000 */ nop -/* 005980 80004D80 46023203 */ div.s $f8, $f6, $f2 -/* 005984 80004D84 E44800CC */ swc1 $f8, 0xcc($v0) -.L80004D88: -/* 005988 80004D88 96380000 */ lhu $t8, ($s1) -/* 00598C 80004D8C 24070001 */ li $a3, 1 -/* 005990 80004D90 A6980000 */ sh $t8, ($s4) -/* 005994 80004D94 914F0004 */ lbu $t7, 4($t2) -/* 005998 80004D98 25630001 */ addiu $v1, $t3, 1 -/* 00599C 80004D9C A12F0004 */ sb $t7, 4($t1) -/* 0059A0 80004DA0 96790018 */ lhu $t9, 0x18($s3) -/* 0059A4 80004DA4 25850002 */ addiu $a1, $t4, 2 -/* 0059A8 80004DA8 A6590018 */ sh $t9, %lo(D_00FF0018)($s2) -/* 0059AC 80004DAC 914E000E */ lbu $t6, 0xe($t2) -/* 0059B0 80004DB0 25A40001 */ addiu $a0, $t5, 1 -/* 0059B4 80004DB4 A12E000E */ sb $t6, 0xe($t1) -/* 0059B8 80004DB8 9158002C */ lbu $t8, 0x2c($t2) -/* 0059BC 80004DBC 27E60002 */ addiu $a2, $ra, 2 -/* 0059C0 80004DC0 A138002C */ sb $t8, 0x2c($t1) -.L80004DC4: -/* 0059C4 80004DC4 906F0004 */ lbu $t7, 4($v1) -/* 0059C8 80004DC8 24E70002 */ addiu $a3, $a3, 2 -/* 0059CC 80004DCC A08F0004 */ sb $t7, 4($a0) -/* 0059D0 80004DD0 94B90018 */ lhu $t9, 0x18($a1) -/* 0059D4 80004DD4 24630002 */ addiu $v1, $v1, 2 -/* 0059D8 80004DD8 A4D90018 */ sh $t9, 0x18($a2) -/* 0059DC 80004DDC 906E000C */ lbu $t6, 0xc($v1) -/* 0059E0 80004DE0 24A50004 */ addiu $a1, $a1, 4 -/* 0059E4 80004DE4 A08E000E */ sb $t6, 0xe($a0) -/* 0059E8 80004DE8 9078002A */ lbu $t8, 0x2a($v1) -/* 0059EC 80004DEC 24840002 */ addiu $a0, $a0, 2 -/* 0059F0 80004DF0 A098002A */ sb $t8, 0x2a($a0) -/* 0059F4 80004DF4 906F0003 */ lbu $t7, 3($v1) -/* 0059F8 80004DF8 24C60004 */ addiu $a2, $a2, 4 -/* 0059FC 80004DFC A08F0003 */ sb $t7, 3($a0) -/* 005A00 80004E00 94B90016 */ lhu $t9, 0x16($a1) -/* 005A04 80004E04 00000000 */ nop -/* 005A08 80004E08 A4D90016 */ sh $t9, 0x16($a2) -/* 005A0C 80004E0C 906E000D */ lbu $t6, 0xd($v1) -/* 005A10 80004E10 00000000 */ nop -/* 005A14 80004E14 A08E000D */ sb $t6, 0xd($a0) -/* 005A18 80004E18 9078002B */ lbu $t8, 0x2b($v1) -/* 005A1C 80004E1C 14E8FFE9 */ bne $a3, $t0, .L80004DC4 -/* 005A20 80004E20 A098002B */ sb $t8, 0x2b($a0) -/* 005A24 80004E24 26100002 */ addiu $s0, $s0, 2 -/* 005A28 80004E28 2A010004 */ slti $at, $s0, 4 -/* 005A2C 80004E2C 26310002 */ addiu $s1, $s1, 2 -/* 005A30 80004E30 256B0005 */ addiu $t3, $t3, 5 -/* 005A34 80004E34 258C000A */ addiu $t4, $t4, 0xa -/* 005A38 80004E38 25AD0005 */ addiu $t5, $t5, 5 -/* 005A3C 80004E3C 27FF000A */ addiu $ra, $ra, 0xa -/* 005A40 80004E40 25290005 */ addiu $t1, $t1, 5 -/* 005A44 80004E44 254A0005 */ addiu $t2, $t2, 5 -/* 005A48 80004E48 2652000A */ addiu $s2, $s2, 0xa -/* 005A4C 80004E4C 2673000A */ addiu $s3, $s3, 0xa -/* 005A50 80004E50 1420FFCD */ bnez $at, .L80004D88 -/* 005A54 80004E54 26940002 */ addiu $s4, $s4, 2 -/* 005A58 80004E58 A0400074 */ sb $zero, 0x74($v0) -/* 005A5C 80004E5C E44A006C */ swc1 $f10, 0x6c($v0) -/* 005A60 80004E60 92AF004A */ lbu $t7, 0x4a($s5) -/* 005A64 80004E64 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 005A68 80004E68 448F8000 */ mtc1 $t7, $f16 -/* 005A6C 80004E6C 05E10004 */ bgez $t7, .L80004E80 -/* 005A70 80004E70 468084A0 */ cvt.s.w $f18, $f16 -/* 005A74 80004E74 44812000 */ mtc1 $at, $f4 -/* 005A78 80004E78 00000000 */ nop -/* 005A7C 80004E7C 46049480 */ add.s $f18, $f18, $f4 -.L80004E80: -/* 005A80 80004E80 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 005A84 80004E84 44813000 */ mtc1 $at, $f6 -/* 005A88 80004E88 00000000 */ nop -/* 005A8C 80004E8C 46069203 */ div.s $f8, $f18, $f6 -/* 005A90 80004E90 16C0002B */ bnez $s6, .L80004F40 -/* 005A94 80004E94 E44800D4 */ swc1 $f8, 0xd4($v0) -/* 005A98 80004E98 9059002C */ lbu $t9, 0x2c($v0) -/* 005A9C 80004E9C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 005AA0 80004EA0 44995000 */ mtc1 $t9, $f10 -/* 005AA4 80004EA4 07210004 */ bgez $t9, .L80004EB8 -/* 005AA8 80004EA8 46805420 */ cvt.s.w $f16, $f10 -/* 005AAC 80004EAC 44812000 */ mtc1 $at, $f4 -/* 005AB0 80004EB0 00000000 */ nop -/* 005AB4 80004EB4 46048400 */ add.s $f16, $f16, $f4 -.L80004EB8: -/* 005AB8 80004EB8 944E0018 */ lhu $t6, 0x18($v0) -/* 005ABC 80004EBC E4500054 */ swc1 $f16, 0x54($v0) -/* 005AC0 80004EC0 448E9000 */ mtc1 $t6, $f18 -/* 005AC4 80004EC4 05C10005 */ bgez $t6, .L80004EDC -/* 005AC8 80004EC8 468091A0 */ cvt.s.w $f6, $f18 -/* 005ACC 80004ECC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 005AD0 80004ED0 44814000 */ mtc1 $at, $f8 -/* 005AD4 80004ED4 00000000 */ nop -/* 005AD8 80004ED8 46083180 */ add.s $f6, $f6, $f8 -.L80004EDC: -/* 005ADC 80004EDC 00000000 */ nop -/* 005AE0 80004EE0 46023283 */ div.s $f10, $f6, $f2 -/* 005AE4 80004EE4 90580031 */ lbu $t8, 0x31($v0) -/* 005AE8 80004EE8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 005AEC 80004EEC 44982000 */ mtc1 $t8, $f4 -/* 005AF0 80004EF0 00000000 */ nop -/* 005AF4 80004EF4 46802420 */ cvt.s.w $f16, $f4 -/* 005AF8 80004EF8 07010004 */ bgez $t8, .L80004F0C -/* 005AFC 80004EFC E44A005C */ swc1 $f10, 0x5c($v0) -/* 005B00 80004F00 44819000 */ mtc1 $at, $f18 -/* 005B04 80004F04 00000000 */ nop -/* 005B08 80004F08 46128400 */ add.s $f16, $f16, $f18 -.L80004F0C: -/* 005B0C 80004F0C 944F0022 */ lhu $t7, 0x22($v0) -/* 005B10 80004F10 E4500058 */ swc1 $f16, 0x58($v0) -/* 005B14 80004F14 448F4000 */ mtc1 $t7, $f8 -/* 005B18 80004F18 05E10005 */ bgez $t7, .L80004F30 -/* 005B1C 80004F1C 468041A0 */ cvt.s.w $f6, $f8 -/* 005B20 80004F20 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 005B24 80004F24 44815000 */ mtc1 $at, $f10 -/* 005B28 80004F28 00000000 */ nop -/* 005B2C 80004F2C 460A3180 */ add.s $f6, $f6, $f10 -.L80004F30: -/* 005B30 80004F30 00000000 */ nop -/* 005B34 80004F34 46023103 */ div.s $f4, $f6, $f2 -/* 005B38 80004F38 10000055 */ b .L80005090 -/* 005B3C 80004F3C E4440060 */ swc1 $f4, 0x60($v0) -.L80004F40: -/* 005B40 80004F40 C44000D4 */ lwc1 $f0, 0xd4($v0) -/* 005B44 80004F44 24030001 */ li $v1, 1 -/* 005B48 80004F48 46020482 */ mul.s $f18, $f0, $f2 -/* 005B4C 80004F4C 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 005B50 80004F50 E440005C */ swc1 $f0, 0x5c($v0) -/* 005B54 80004F54 4459F800 */ cfc1 $t9, $31 -/* 005B58 80004F58 44C3F800 */ ctc1 $v1, $31 -/* 005B5C 80004F5C 00000000 */ nop -/* 005B60 80004F60 46009424 */ cvt.w.s $f16, $f18 -/* 005B64 80004F64 4443F800 */ cfc1 $v1, $31 -/* 005B68 80004F68 00000000 */ nop -/* 005B6C 80004F6C 30630078 */ andi $v1, $v1, 0x78 -/* 005B70 80004F70 10600012 */ beqz $v1, .L80004FBC -/* 005B74 80004F74 00000000 */ nop -/* 005B78 80004F78 44818000 */ mtc1 $at, $f16 -/* 005B7C 80004F7C 24030001 */ li $v1, 1 -/* 005B80 80004F80 46109401 */ sub.s $f16, $f18, $f16 -/* 005B84 80004F84 3C018000 */ lui $at, 0x8000 -/* 005B88 80004F88 44C3F800 */ ctc1 $v1, $31 -/* 005B8C 80004F8C 00000000 */ nop -/* 005B90 80004F90 46008424 */ cvt.w.s $f16, $f16 -/* 005B94 80004F94 4443F800 */ cfc1 $v1, $31 -/* 005B98 80004F98 00000000 */ nop -/* 005B9C 80004F9C 30630078 */ andi $v1, $v1, 0x78 -/* 005BA0 80004FA0 14600004 */ bnez $v1, .L80004FB4 -/* 005BA4 80004FA4 00000000 */ nop -/* 005BA8 80004FA8 44038000 */ mfc1 $v1, $f16 -/* 005BAC 80004FAC 10000007 */ b .L80004FCC -/* 005BB0 80004FB0 00611825 */ or $v1, $v1, $at -.L80004FB4: -/* 005BB4 80004FB4 10000005 */ b .L80004FCC -/* 005BB8 80004FB8 2403FFFF */ li $v1, -1 -.L80004FBC: -/* 005BBC 80004FBC 44038000 */ mfc1 $v1, $f16 -/* 005BC0 80004FC0 00000000 */ nop -/* 005BC4 80004FC4 0460FFFB */ bltz $v1, .L80004FB4 -/* 005BC8 80004FC8 00000000 */ nop -.L80004FCC: -/* 005BCC 80004FCC 94580018 */ lhu $t8, 0x18($v0) -/* 005BD0 80004FD0 3065FFFF */ andi $a1, $v1, 0xffff -/* 005BD4 80004FD4 44D9F800 */ ctc1 $t9, $31 -/* 005BD8 80004FD8 00B8082A */ slt $at, $a1, $t8 -/* 005BDC 80004FDC 1420000C */ bnez $at, .L80005010 -/* 005BE0 80004FE0 00002025 */ move $a0, $zero -.L80004FE4: -/* 005BE4 80004FE4 24840001 */ addiu $a0, $a0, 1 -/* 005BE8 80004FE8 308FFFFF */ andi $t7, $a0, 0xffff -/* 005BEC 80004FEC 000FC840 */ sll $t9, $t7, 1 -/* 005BF0 80004FF0 00597021 */ addu $t6, $v0, $t9 -/* 005BF4 80004FF4 95D80018 */ lhu $t8, 0x18($t6) -/* 005BF8 80004FF8 01E02025 */ move $a0, $t7 -/* 005BFC 80004FFC 00B8082A */ slt $at, $a1, $t8 -/* 005C00 80005000 14200003 */ bnez $at, .L80005010 -/* 005C04 80005004 29E10004 */ slti $at, $t7, 4 -/* 005C08 80005008 1420FFF6 */ bnez $at, .L80004FE4 -/* 005C0C 8000500C 00000000 */ nop -.L80005010: -/* 005C10 80005010 2484FFFF */ addiu $a0, $a0, -1 -/* 005C14 80005014 3083FFFF */ andi $v1, $a0, 0xffff -/* 005C18 80005018 0003C840 */ sll $t9, $v1, 1 -/* 005C1C 8000501C 00597021 */ addu $t6, $v0, $t9 -/* 005C20 80005020 95C60018 */ lhu $a2, 0x18($t6) -/* 005C24 80005024 00037840 */ sll $t7, $v1, 1 -/* 005C28 80005028 004FC821 */ addu $t9, $v0, $t7 -/* 005C2C 8000502C 972E001A */ lhu $t6, 0x1a($t9) -/* 005C30 80005030 00A6C023 */ subu $t8, $a1, $a2 -/* 005C34 80005034 44984000 */ mtc1 $t8, $f8 -/* 005C38 80005038 01C6C023 */ subu $t8, $t6, $a2 -/* 005C3C 8000503C 44983000 */ mtc1 $t8, $f6 -/* 005C40 80005040 468042A0 */ cvt.s.w $f10, $f8 -/* 005C44 80005044 0043C821 */ addu $t9, $v0, $v1 -/* 005C48 80005048 00437821 */ addu $t7, $v0, $v1 -/* 005C4C 8000504C 46803120 */ cvt.s.w $f4, $f6 -/* 005C50 80005050 91E7002C */ lbu $a3, 0x2c($t7) -/* 005C54 80005054 932E002D */ lbu $t6, 0x2d($t9) -/* 005C58 80005058 46045003 */ div.s $f0, $f10, $f4 -/* 005C5C 8000505C 01C7C023 */ subu $t8, $t6, $a3 -/* 005C60 80005060 44989000 */ mtc1 $t8, $f18 -/* 005C64 80005064 44873000 */ mtc1 $a3, $f6 -/* 005C68 80005068 46809420 */ cvt.s.w $f16, $f18 -/* 005C6C 8000506C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 005C70 80005070 46008202 */ mul.s $f8, $f16, $f0 -/* 005C74 80005074 04E10004 */ bgez $a3, .L80005088 -/* 005C78 80005078 468032A0 */ cvt.s.w $f10, $f6 -/* 005C7C 8000507C 44812000 */ mtc1 $at, $f4 -/* 005C80 80005080 00000000 */ nop -/* 005C84 80005084 46045280 */ add.s $f10, $f10, $f4 -.L80005088: -/* 005C88 80005088 460A4480 */ add.s $f18, $f8, $f10 -/* 005C8C 8000508C E4520054 */ swc1 $f18, 0x54($v0) -.L80005090: -/* 005C90 80005090 8FA4003C */ lw $a0, 0x3c($sp) -/* 005C94 80005094 0C01C450 */ jal func_80071140 -/* 005C98 80005098 00000000 */ nop -/* 005C9C 8000509C 0C01C450 */ jal func_80071140 -/* 005CA0 800050A0 02A02025 */ move $a0, $s5 -/* 005CA4 800050A4 8FBF0034 */ lw $ra, 0x34($sp) -/* 005CA8 800050A8 8FA20044 */ lw $v0, 0x44($sp) -/* 005CAC 800050AC 8FB00018 */ lw $s0, 0x18($sp) -/* 005CB0 800050B0 8FB1001C */ lw $s1, 0x1c($sp) -/* 005CB4 800050B4 8FB20020 */ lw $s2, 0x20($sp) -/* 005CB8 800050B8 8FB30024 */ lw $s3, 0x24($sp) -/* 005CBC 800050BC 8FB40028 */ lw $s4, 0x28($sp) -/* 005CC0 800050C0 8FB5002C */ lw $s5, 0x2c($sp) -/* 005CC4 800050C4 8FB60030 */ lw $s6, 0x30($sp) -/* 005CC8 800050C8 03E00008 */ jr $ra -/* 005CCC 800050CC 27BD0058 */ addiu $sp, $sp, 0x58 - -glabel func_800050D0 -/* 005CD0 800050D0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 005CD4 800050D4 3C0E800E */ lui $t6, %hi(D_800DC6D0) # $t6, 0x800e -/* 005CD8 800050D8 91CEC6D0 */ lbu $t6, %lo(D_800DC6D0)($t6) -/* 005CDC 800050DC AFB00018 */ sw $s0, 0x18($sp) -/* 005CE0 800050E0 00808025 */ move $s0, $a0 -/* 005CE4 800050E4 AFBF001C */ sw $ra, 0x1c($sp) -/* 005CE8 800050E8 AFA50024 */ sw $a1, 0x24($sp) -/* 005CEC 800050EC 11C00055 */ beqz $t6, .L80005244 -/* 005CF0 800050F0 AFA7002C */ sw $a3, 0x2c($sp) -/* 005CF4 800050F4 8C8F0064 */ lw $t7, 0x64($a0) -/* 005CF8 800050F8 3C028012 */ lui $v0, %hi(D_80119C3C) # $v0, 0x8012 -/* 005CFC 800050FC 24429C3C */ addiu $v0, %lo(D_80119C3C) # addiu $v0, $v0, -0x63c4 -/* 005D00 80005100 AC4F0000 */ sw $t7, ($v0) -/* 005D04 80005104 8DF90118 */ lw $t9, 0x118($t7) -/* 005D08 80005108 3C058012 */ lui $a1, %hi(D_80119C38) # $a1, 0x8012 -/* 005D0C 8000510C 24A59C38 */ addiu $a1, %lo(D_80119C38) # addiu $a1, $a1, -0x63c8 -/* 005D10 80005110 1320004C */ beqz $t9, .L80005244 -/* 005D14 80005114 ACB90000 */ sw $t9, ($a1) -/* 005D18 80005118 0C0044E7 */ jal func_8001139C -/* 005D1C 8000511C AFA60028 */ sw $a2, 0x28($sp) -/* 005D20 80005120 3C058012 */ lui $a1, %hi(D_80119C38) # $a1, 0x8012 -/* 005D24 80005124 8FA60028 */ lw $a2, 0x28($sp) -/* 005D28 80005128 10400014 */ beqz $v0, .L8000517C -/* 005D2C 8000512C 24A59C38 */ addiu $a1, %lo(D_80119C38) # addiu $a1, $a1, -0x63c8 -/* 005D30 80005130 3C098012 */ lui $t1, %hi(D_80119C3C) # $t1, 0x8012 -/* 005D34 80005134 8D299C3C */ lw $t1, %lo(D_80119C3C)($t1) -/* 005D38 80005138 2401FFFF */ li $at, -1 -/* 005D3C 8000513C 85240000 */ lh $a0, ($t1) -/* 005D40 80005140 00000000 */ nop -/* 005D44 80005144 1081000D */ beq $a0, $at, .L8000517C -/* 005D48 80005148 00000000 */ nop -/* 005D4C 8000514C 0C01A94A */ jal func_8006A528 -/* 005D50 80005150 00000000 */ nop -/* 005D54 80005154 3C0A8012 */ lui $t2, %hi(D_80119C3C) # $t2, 0x8012 -/* 005D58 80005158 8D4A9C3C */ lw $t2, %lo(D_80119C3C)($t2) -/* 005D5C 8000515C 00000000 */ nop -/* 005D60 80005160 85440000 */ lh $a0, ($t2) -/* 005D64 80005164 0C01A955 */ jal func_8006A554 -/* 005D68 80005168 AFA20028 */ sw $v0, 0x28($sp) -/* 005D6C 8000516C 3C058012 */ lui $a1, %hi(D_80119C38) # $a1, 0x8012 -/* 005D70 80005170 8FA60028 */ lw $a2, 0x28($sp) -/* 005D74 80005174 24A59C38 */ addiu $a1, %lo(D_80119C38) # addiu $a1, $a1, -0x63c8 -/* 005D78 80005178 AFA20024 */ sw $v0, 0x24($sp) -.L8000517C: -/* 005D7C 8000517C 8CA20000 */ lw $v0, ($a1) -/* 005D80 80005180 3C01C6FA */ li $at, 0xC6FA0000 # -32000.000000 -/* 005D84 80005184 944B0000 */ lhu $t3, ($v0) -/* 005D88 80005188 00000000 */ nop -/* 005D8C 8000518C 1560000A */ bnez $t3, .L800051B8 -/* 005D90 80005190 00000000 */ nop -/* 005D94 80005194 44810000 */ mtc1 $at, $f0 -/* 005D98 80005198 00000000 */ nop -/* 005D9C 8000519C E4400078 */ swc1 $f0, 0x78($v0) -/* 005DA0 800051A0 8CAC0000 */ lw $t4, ($a1) -/* 005DA4 800051A4 00000000 */ nop -/* 005DA8 800051A8 E580007C */ swc1 $f0, 0x7c($t4) -/* 005DAC 800051AC 8CAD0000 */ lw $t5, ($a1) -/* 005DB0 800051B0 10000024 */ b .L80005244 -/* 005DB4 800051B4 E5A00080 */ swc1 $f0, 0x80($t5) -.L800051B8: -/* 005DB8 800051B8 C604000C */ lwc1 $f4, 0xc($s0) -/* 005DBC 800051BC 3C188012 */ lui $t8, %hi(D_80119C3C) # $t8, 0x8012 -/* 005DC0 800051C0 E4440078 */ swc1 $f4, 0x78($v0) -/* 005DC4 800051C4 8CAE0000 */ lw $t6, ($a1) -/* 005DC8 800051C8 C6060010 */ lwc1 $f6, 0x10($s0) -/* 005DCC 800051CC 24010001 */ li $at, 1 -/* 005DD0 800051D0 E5C6007C */ swc1 $f6, 0x7c($t6) -/* 005DD4 800051D4 8CAF0000 */ lw $t7, ($a1) -/* 005DD8 800051D8 C6080014 */ lwc1 $f8, 0x14($s0) -/* 005DDC 800051DC 00000000 */ nop -/* 005DE0 800051E0 E5E80080 */ swc1 $f8, 0x80($t7) -/* 005DE4 800051E4 8F189C3C */ lw $t8, %lo(D_80119C3C)($t8) -/* 005DE8 800051E8 8FA7002C */ lw $a3, 0x2c($sp) -/* 005DEC 800051EC 830301D7 */ lb $v1, 0x1d7($t8) -/* 005DF0 800051F0 8FA50024 */ lw $a1, 0x24($sp) -/* 005DF4 800051F4 10610005 */ beq $v1, $at, .L8000520C -/* 005DF8 800051F8 24010002 */ li $at, 2 -/* 005DFC 800051FC 10610008 */ beq $v1, $at, .L80005220 -/* 005E00 80005200 8FA50024 */ lw $a1, 0x24($sp) -/* 005E04 80005204 1000000C */ b .L80005238 -/* 005E08 80005208 8FA50024 */ lw $a1, 0x24($sp) -.L8000520C: -/* 005E0C 8000520C 0C001742 */ jal func_80005D08 -/* 005E10 80005210 02002025 */ move $a0, $s0 -/* 005E14 80005214 1000000C */ b .L80005248 -/* 005E18 80005218 8FBF001C */ lw $ra, 0x1c($sp) -/* 005E1C 8000521C 8FA50024 */ lw $a1, 0x24($sp) -.L80005220: -/* 005E20 80005220 8FA7002C */ lw $a3, 0x2c($sp) -/* 005E24 80005224 0C0018FB */ jal func_800063EC -/* 005E28 80005228 02002025 */ move $a0, $s0 -/* 005E2C 8000522C 10000006 */ b .L80005248 -/* 005E30 80005230 8FBF001C */ lw $ra, 0x1c($sp) -/* 005E34 80005234 8FA50024 */ lw $a1, 0x24($sp) -.L80005238: -/* 005E38 80005238 8FA7002C */ lw $a3, 0x2c($sp) -/* 005E3C 8000523C 0C001495 */ jal func_80005254 -/* 005E40 80005240 02002025 */ move $a0, $s0 -.L80005244: -/* 005E44 80005244 8FBF001C */ lw $ra, 0x1c($sp) -.L80005248: -/* 005E48 80005248 8FB00018 */ lw $s0, 0x18($sp) -/* 005E4C 8000524C 03E00008 */ jr $ra -/* 005E50 80005250 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_80005254 -/* 005E54 80005254 27BDFF60 */ addiu $sp, $sp, -0xa0 -/* 005E58 80005258 3C088012 */ lui $t0, %hi(D_80119C3C) # $t0, 0x8012 -/* 005E5C 8000525C 8D089C3C */ lw $t0, %lo(D_80119C3C)($t0) -/* 005E60 80005260 AFBF0034 */ sw $ra, 0x34($sp) -/* 005E64 80005264 AFB20030 */ sw $s2, 0x30($sp) -/* 005E68 80005268 AFB1002C */ sw $s1, 0x2c($sp) -/* 005E6C 8000526C AFB00028 */ sw $s0, 0x28($sp) -/* 005E70 80005270 E7B70020 */ swc1 $f23, 0x20($sp) -/* 005E74 80005274 E7B60024 */ swc1 $f22, 0x24($sp) -/* 005E78 80005278 E7B50018 */ swc1 $f21, 0x18($sp) -/* 005E7C 8000527C E7B4001C */ swc1 $f20, 0x1c($sp) -/* 005E80 80005280 AFA400A0 */ sw $a0, 0xa0($sp) -/* 005E84 80005284 AFA500A4 */ sw $a1, 0xa4($sp) -/* 005E88 80005288 AFA600A8 */ sw $a2, 0xa8($sp) -/* 005E8C 8000528C AFA700AC */ sw $a3, 0xac($sp) -/* 005E90 80005290 810E01FB */ lb $t6, 0x1fb($t0) -/* 005E94 80005294 4480B000 */ mtc1 $zero, $f22 -/* 005E98 80005298 11C00005 */ beqz $t6, .L800052B0 -/* 005E9C 8000529C 00004825 */ move $t1, $zero -/* 005EA0 800052A0 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 005EA4 800052A4 44810000 */ mtc1 $at, $f0 -/* 005EA8 800052A8 10000004 */ b .L800052BC -/* 005EAC 800052AC 4616003C */ c.lt.s $f0, $f22 -.L800052B0: -/* 005EB0 800052B0 C500002C */ lwc1 $f0, 0x2c($t0) -/* 005EB4 800052B4 00000000 */ nop -/* 005EB8 800052B8 4616003C */ c.lt.s $f0, $f22 -.L800052BC: -/* 005EBC 800052BC 3C014180 */ li $at, 0x41800000 # 16.000000 -/* 005EC0 800052C0 44812000 */ mtc1 $at, $f4 -/* 005EC4 800052C4 45000002 */ bc1f .L800052D0 -/* 005EC8 800052C8 3C078012 */ lui $a3, %hi(D_80119C38) # $a3, 0x8012 -/* 005ECC 800052CC 46000007 */ neg.s $f0, $f0 -.L800052D0: -/* 005ED0 800052D0 00000000 */ nop -/* 005ED4 800052D4 46040183 */ div.s $f6, $f0, $f4 -/* 005ED8 800052D8 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 005EDC 800052DC 44814000 */ mtc1 $at, $f8 -/* 005EE0 800052E0 8FB200A8 */ lw $s2, 0xa8($sp) -/* 005EE4 800052E4 00006025 */ move $t4, $zero -/* 005EE8 800052E8 32588000 */ andi $t8, $s2, 0x8000 -/* 005EEC 800052EC 03009025 */ move $s2, $t8 -/* 005EF0 800052F0 3C118012 */ lui $s1, %hi(D_80119C38) # $s1, 0x8012 -/* 005EF4 800052F4 46083282 */ mul.s $f10, $f6, $f8 -/* 005EF8 800052F8 444FF800 */ cfc1 $t7, $31 -/* 005EFC 800052FC 00000000 */ nop -/* 005F00 80005300 35E10003 */ ori $at, $t7, 3 -/* 005F04 80005304 38210002 */ xori $at, $at, 2 -/* 005F08 80005308 44C1F800 */ ctc1 $at, $31 -/* 005F0C 8000530C 00000000 */ nop -/* 005F10 80005310 46005124 */ cvt.w.s $f4, $f10 -/* 005F14 80005314 44022000 */ mfc1 $v0, $f4 -/* 005F18 80005318 44CFF800 */ ctc1 $t7, $31 -/* 005F1C 8000531C 24500005 */ addiu $s0, $v0, 5 -/* 005F20 80005320 2A010065 */ slti $at, $s0, 0x65 -/* 005F24 80005324 14200002 */ bnez $at, .L80005330 -/* 005F28 80005328 00000000 */ nop -/* 005F2C 8000532C 24100064 */ li $s0, 100 -.L80005330: -/* 005F30 80005330 3C01800E */ lui $at, %hi(D_800E4BFC) # $at, 0x800e -/* 005F34 80005334 C4354BF8 */ lwc1 $f21, %lo(D_800E4BF8)($at) -/* 005F38 80005338 C4344BFC */ lwc1 $f20, %lo(D_800E4BFC)($at) -/* 005F3C 8000533C 8CE79C38 */ lw $a3, %lo(D_80119C38)($a3) -/* 005F40 80005340 26319C38 */ addiu $s1, %lo(D_80119C38) # addiu $s1, $s1, -0x63c8 -.L80005344: -/* 005F44 80005344 00ECC821 */ addu $t9, $a3, $t4 -/* 005F48 80005348 972D0000 */ lhu $t5, ($t9) -/* 005F4C 8000534C 00097080 */ sll $t6, $t1, 2 -/* 005F50 80005350 11A001AE */ beqz $t5, .L80005A0C -/* 005F54 80005354 01C97021 */ addu $t6, $t6, $t1 -/* 005F58 80005358 00EE4021 */ addu $t0, $a3, $t6 -/* 005F5C 8000535C 910F000E */ lbu $t7, 0xe($t0) -/* 005F60 80005360 00001825 */ move $v1, $zero -/* 005F64 80005364 020F082A */ slt $at, $s0, $t7 -/* 005F68 80005368 14200008 */ bnez $at, .L8000538C -/* 005F6C 8000536C 00095080 */ sll $t2, $t1, 2 -/* 005F70 80005370 0009C080 */ sll $t8, $t1, 2 -/* 005F74 80005374 0309C021 */ addu $t8, $t8, $t1 -/* 005F78 80005378 00F83021 */ addu $a2, $a3, $t8 -/* 005F7C 8000537C 90D9000F */ lbu $t9, 0xf($a2) -/* 005F80 80005380 00000000 */ nop -/* 005F84 80005384 0330082A */ slt $at, $t9, $s0 -/* 005F88 80005388 10200010 */ beqz $at, .L800053CC -.L8000538C: -/* 005F8C 8000538C 00096880 */ sll $t5, $t1, 2 -/* 005F90 80005390 01A96821 */ addu $t5, $t5, $t1 -/* 005F94 80005394 00ED3021 */ addu $a2, $a3, $t5 -/* 005F98 80005398 00C31021 */ addu $v0, $a2, $v1 -.L8000539C: -/* 005F9C 8000539C 904E000F */ lbu $t6, 0xf($v0) -/* 005FA0 800053A0 24630001 */ addiu $v1, $v1, 1 -/* 005FA4 800053A4 020E082A */ slt $at, $s0, $t6 -/* 005FA8 800053A8 14200005 */ bnez $at, .L800053C0 -/* 005FAC 800053AC 24420001 */ addiu $v0, $v0, 1 -/* 005FB0 800053B0 904F000F */ lbu $t7, 0xf($v0) -/* 005FB4 800053B4 00000000 */ nop -/* 005FB8 800053B8 01F0082A */ slt $at, $t7, $s0 -/* 005FBC 800053BC 10200003 */ beqz $at, .L800053CC -.L800053C0: -/* 005FC0 800053C0 28610004 */ slti $at, $v1, 4 -/* 005FC4 800053C4 1420FFF5 */ bnez $at, .L8000539C -/* 005FC8 800053C8 00000000 */ nop -.L800053CC: -/* 005FCC 800053CC 01031021 */ addu $v0, $t0, $v1 -/* 005FD0 800053D0 9044000E */ lbu $a0, 0xe($v0) -/* 005FD4 800053D4 9059000F */ lbu $t9, 0xf($v0) -/* 005FD8 800053D8 0204C023 */ subu $t8, $s0, $a0 -/* 005FDC 800053DC 03246823 */ subu $t5, $t9, $a0 -/* 005FE0 800053E0 448D5000 */ mtc1 $t5, $f10 -/* 005FE4 800053E4 44983000 */ mtc1 $t8, $f6 -/* 005FE8 800053E8 46805120 */ cvt.s.w $f4, $f10 -/* 005FEC 800053EC 9045002C */ lbu $a1, 0x2c($v0) -/* 005FF0 800053F0 904E002D */ lbu $t6, 0x2d($v0) -/* 005FF4 800053F4 46803220 */ cvt.s.w $f8, $f6 -/* 005FF8 800053F8 01C57823 */ subu $t7, $t6, $a1 -/* 005FFC 800053FC 448F3000 */ mtc1 $t7, $f6 -/* 006000 80005400 46044383 */ div.s $f14, $f8, $f4 -/* 006004 80005404 468032A0 */ cvt.s.w $f10, $f6 -/* 006008 80005408 44852000 */ mtc1 $a1, $f4 -/* 00600C 8000540C 00001825 */ move $v1, $zero -/* 006010 80005410 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 006014 80005414 00C31021 */ addu $v0, $a2, $v1 -/* 006018 80005418 468021A0 */ cvt.s.w $f6, $f4 -/* 00601C 8000541C 460E5202 */ mul.s $f8, $f10, $f14 -/* 006020 80005420 04A10004 */ bgez $a1, .L80005434 -/* 006024 80005424 00000000 */ nop -/* 006028 80005428 44815000 */ mtc1 $at, $f10 -/* 00602C 8000542C 00000000 */ nop -/* 006030 80005430 460A3180 */ add.s $f6, $f6, $f10 -.L80005434: -/* 006034 80005434 46064100 */ add.s $f4, $f8, $f6 -/* 006038 80005438 240B0001 */ li $t3, 1 -/* 00603C 8000543C 4458F800 */ cfc1 $t8, $31 -/* 006040 80005440 44CBF800 */ ctc1 $t3, $31 -/* 006044 80005444 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 006048 80005448 460022A4 */ cvt.w.s $f10, $f4 -/* 00604C 8000544C 444BF800 */ cfc1 $t3, $31 -/* 006050 80005450 00000000 */ nop -/* 006054 80005454 316B0078 */ andi $t3, $t3, 0x78 -/* 006058 80005458 11600012 */ beqz $t3, .L800054A4 -/* 00605C 8000545C 00000000 */ nop -/* 006060 80005460 44815000 */ mtc1 $at, $f10 -/* 006064 80005464 240B0001 */ li $t3, 1 -/* 006068 80005468 460A2281 */ sub.s $f10, $f4, $f10 -/* 00606C 8000546C 3C018000 */ lui $at, 0x8000 -/* 006070 80005470 44CBF800 */ ctc1 $t3, $31 -/* 006074 80005474 00000000 */ nop -/* 006078 80005478 460052A4 */ cvt.w.s $f10, $f10 -/* 00607C 8000547C 444BF800 */ cfc1 $t3, $31 -/* 006080 80005480 00000000 */ nop -/* 006084 80005484 316B0078 */ andi $t3, $t3, 0x78 -/* 006088 80005488 15600004 */ bnez $t3, .L8000549C -/* 00608C 8000548C 00000000 */ nop -/* 006090 80005490 440B5000 */ mfc1 $t3, $f10 -/* 006094 80005494 10000007 */ b .L800054B4 -/* 006098 80005498 01615825 */ or $t3, $t3, $at -.L8000549C: -/* 00609C 8000549C 10000005 */ b .L800054B4 -/* 0060A0 800054A0 240BFFFF */ li $t3, -1 -.L800054A4: -/* 0060A4 800054A4 440B5000 */ mfc1 $t3, $f10 -/* 0060A8 800054A8 00000000 */ nop -/* 0060AC 800054AC 0560FFFB */ bltz $t3, .L8000549C -/* 0060B0 800054B0 00000000 */ nop -.L800054B4: -/* 0060B4 800054B4 910D0004 */ lbu $t5, 4($t0) -/* 0060B8 800054B8 44D8F800 */ ctc1 $t8, $31 -/* 0060BC 800054BC 317900FF */ andi $t9, $t3, 0xff -/* 0060C0 800054C0 020D082A */ slt $at, $s0, $t5 -/* 0060C4 800054C4 14200006 */ bnez $at, .L800054E0 -/* 0060C8 800054C8 03205825 */ move $t3, $t9 -/* 0060CC 800054CC 90CE0005 */ lbu $t6, 5($a2) -/* 0060D0 800054D0 00000000 */ nop -/* 0060D4 800054D4 01D0082A */ slt $at, $t6, $s0 -/* 0060D8 800054D8 1020000D */ beqz $at, .L80005510 -/* 0060DC 800054DC 00000000 */ nop -.L800054E0: -/* 0060E0 800054E0 904F0005 */ lbu $t7, 5($v0) -/* 0060E4 800054E4 24630001 */ addiu $v1, $v1, 1 -/* 0060E8 800054E8 020F082A */ slt $at, $s0, $t7 -/* 0060EC 800054EC 14200005 */ bnez $at, .L80005504 -/* 0060F0 800054F0 24420001 */ addiu $v0, $v0, 1 -/* 0060F4 800054F4 90580005 */ lbu $t8, 5($v0) -/* 0060F8 800054F8 00000000 */ nop -/* 0060FC 800054FC 0310082A */ slt $at, $t8, $s0 -/* 006100 80005500 10200003 */ beqz $at, .L80005510 -.L80005504: -/* 006104 80005504 28610004 */ slti $at, $v1, 4 -/* 006108 80005508 1420FFF5 */ bnez $at, .L800054E0 -/* 00610C 8000550C 00000000 */ nop -.L80005510: -/* 006110 80005510 00C31021 */ addu $v0, $a2, $v1 -/* 006114 80005514 90440004 */ lbu $a0, 4($v0) -/* 006118 80005518 00097880 */ sll $t7, $t1, 2 -/* 00611C 8000551C 904D0005 */ lbu $t5, 5($v0) -/* 006120 80005520 01E97821 */ addu $t7, $t7, $t1 -/* 006124 80005524 0204C823 */ subu $t9, $s0, $a0 -/* 006128 80005528 44994000 */ mtc1 $t9, $f8 -/* 00612C 8000552C 000F7840 */ sll $t7, $t7, 1 -/* 006130 80005530 00EFC021 */ addu $t8, $a3, $t7 -/* 006134 80005534 0003C840 */ sll $t9, $v1, 1 -/* 006138 80005538 01A47023 */ subu $t6, $t5, $a0 -/* 00613C 8000553C 03192821 */ addu $a1, $t8, $t9 -/* 006140 80005540 448E2000 */ mtc1 $t6, $f4 -/* 006144 80005544 94AD0018 */ lhu $t5, 0x18($a1) -/* 006148 80005548 468041A0 */ cvt.s.w $f6, $f8 -/* 00614C 8000554C 448D4000 */ mtc1 $t5, $f8 -/* 006150 80005550 3C01800E */ lui $at, %hi(D_800E4C00) # $at, 0x800e -/* 006154 80005554 468022A0 */ cvt.s.w $f10, $f4 -/* 006158 80005558 C4204C00 */ lwc1 $f0, %lo(D_800E4C00)($at) -/* 00615C 8000555C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 006160 80005560 460A3383 */ div.s $f14, $f6, $f10 -/* 006164 80005564 05A10004 */ bgez $t5, .L80005578 -/* 006168 80005568 46804120 */ cvt.s.w $f4, $f8 -/* 00616C 8000556C 44813000 */ mtc1 $at, $f6 -/* 006170 80005570 00000000 */ nop -/* 006174 80005574 46062100 */ add.s $f4, $f4, $f6 -.L80005578: -/* 006178 80005578 94AE001A */ lhu $t6, 0x1a($a1) -/* 00617C 8000557C 46002403 */ div.s $f16, $f4, $f0 -/* 006180 80005580 448E5000 */ mtc1 $t6, $f10 -/* 006184 80005584 05C10005 */ bgez $t6, .L8000559C -/* 006188 80005588 46805220 */ cvt.s.w $f8, $f10 -/* 00618C 8000558C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 006190 80005590 44813000 */ mtc1 $at, $f6 -/* 006194 80005594 00000000 */ nop -/* 006198 80005598 46064200 */ add.s $f8, $f8, $f6 -.L8000559C: -/* 00619C 8000559C 2A010033 */ slti $at, $s0, 0x33 -/* 0061A0 800055A0 14200036 */ bnez $at, .L8000567C -/* 0061A4 800055A4 46004483 */ div.s $f18, $f8, $f0 -/* 0061A8 800055A8 3C088012 */ lui $t0, %hi(D_80119C3C) # $t0, 0x8012 -/* 0061AC 800055AC 8D089C3C */ lw $t0, %lo(D_80119C3C)($t0) -/* 0061B0 800055B0 00000000 */ nop -/* 0061B4 800055B4 81020185 */ lb $v0, 0x185($t0) -/* 0061B8 800055B8 00000000 */ nop -/* 0061BC 800055BC 1040002F */ beqz $v0, .L8000567C -/* 0061C0 800055C0 2841000B */ slti $at, $v0, 0xb -/* 0061C4 800055C4 10200003 */ beqz $at, .L800055D4 -/* 0061C8 800055C8 2403000A */ li $v1, 10 -/* 0061CC 800055CC 10000001 */ b .L800055D4 -/* 0061D0 800055D0 00401825 */ move $v1, $v0 -.L800055D4: -/* 0061D4 800055D4 44835000 */ mtc1 $v1, $f10 -/* 0061D8 800055D8 3C01800E */ lui $at, %hi(D_800E4C0C) # $at, 0x800e -/* 0061DC 800055DC 468051A1 */ cvt.d.w $f6, $f10 -/* 0061E0 800055E0 C4254C08 */ lwc1 $f5, %lo(D_800E4C08)($at) -/* 0061E4 800055E4 C4244C0C */ lwc1 $f4, %lo(D_800E4C0C)($at) -/* 0061E8 800055E8 C4EC003C */ lwc1 $f12, 0x3c($a3) -/* 0061EC 800055EC 46262002 */ mul.d $f0, $f4, $f6 -/* 0061F0 800055F0 460060A1 */ cvt.d.s $f2, $f12 -/* 0061F4 800055F4 00037980 */ sll $t7, $v1, 6 -/* 0061F8 800055F8 4620103C */ c.lt.d $f2, $f0 -/* 0061FC 800055FC 00000000 */ nop -/* 006200 80005600 4500000E */ bc1f .L8000563C -/* 006204 80005604 00000000 */ nop -/* 006208 80005608 448F4000 */ mtc1 $t7, $f8 -/* 00620C 8000560C 3C088012 */ lui $t0, %hi(D_80119C3C) # $t0, 0x8012 -/* 006210 80005610 468042A1 */ cvt.d.w $f10, $f8 -/* 006214 80005614 00000000 */ nop -/* 006218 80005618 462A0103 */ div.d $f4, $f0, $f10 -/* 00621C 8000561C 46241180 */ add.d $f6, $f2, $f4 -/* 006220 80005620 46203220 */ cvt.s.d $f8, $f6 -/* 006224 80005624 E4E8003C */ swc1 $f8, 0x3c($a3) -/* 006228 80005628 8E270000 */ lw $a3, ($s1) -/* 00622C 8000562C 8D089C3C */ lw $t0, %lo(D_80119C3C)($t0) -/* 006230 80005630 C4EC003C */ lwc1 $f12, 0x3c($a3) -/* 006234 80005634 1000000D */ b .L8000566C -/* 006238 80005638 46109101 */ sub.s $f4, $f18, $f16 -.L8000563C: -/* 00623C 8000563C 4622003C */ c.lt.d $f0, $f2 -/* 006240 80005640 00000000 */ nop -/* 006244 80005644 45000008 */ bc1f .L80005668 -/* 006248 80005648 00000000 */ nop -/* 00624C 8000564C 462002A0 */ cvt.s.d $f10, $f0 -/* 006250 80005650 3C088012 */ lui $t0, %hi(D_80119C3C) # $t0, 0x8012 -/* 006254 80005654 E4EA003C */ swc1 $f10, 0x3c($a3) -/* 006258 80005658 8E270000 */ lw $a3, ($s1) -/* 00625C 8000565C 8D089C3C */ lw $t0, %lo(D_80119C3C)($t0) -/* 006260 80005660 C4EC003C */ lwc1 $f12, 0x3c($a3) -/* 006264 80005664 00000000 */ nop -.L80005668: -/* 006268 80005668 46109101 */ sub.s $f4, $f18, $f16 -.L8000566C: -/* 00626C 8000566C 460E2182 */ mul.s $f6, $f4, $f14 -/* 006270 80005670 46103200 */ add.s $f8, $f6, $f16 -/* 006274 80005674 10000012 */ b .L800056C0 -/* 006278 80005678 460C4080 */ add.s $f2, $f8, $f12 -.L8000567C: -/* 00627C 8000567C 3C01800E */ lui $at, %hi(D_800E4C14) # $at, 0x800e -/* 006280 80005680 C4EA003C */ lwc1 $f10, 0x3c($a3) -/* 006284 80005684 C4274C10 */ lwc1 $f7, %lo(D_800E4C10)($at) -/* 006288 80005688 C4264C14 */ lwc1 $f6, %lo(D_800E4C14)($at) -/* 00628C 8000568C 46005121 */ cvt.d.s $f4, $f10 -/* 006290 80005690 46262202 */ mul.d $f8, $f4, $f6 -/* 006294 80005694 46109101 */ sub.s $f4, $f18, $f16 -/* 006298 80005698 3C088012 */ lui $t0, %hi(D_80119C3C) # $t0, 0x8012 -/* 00629C 8000569C 462042A0 */ cvt.s.d $f10, $f8 -/* 0062A0 800056A0 460E2182 */ mul.s $f6, $f4, $f14 -/* 0062A4 800056A4 E4EA003C */ swc1 $f10, 0x3c($a3) -/* 0062A8 800056A8 8E270000 */ lw $a3, ($s1) -/* 0062AC 800056AC 8D089C3C */ lw $t0, %lo(D_80119C3C)($t0) -/* 0062B0 800056B0 46103200 */ add.s $f8, $f6, $f16 -/* 0062B4 800056B4 C4EA003C */ lwc1 $f10, 0x3c($a3) -/* 0062B8 800056B8 00000000 */ nop -/* 0062BC 800056BC 460A4080 */ add.s $f2, $f8, $f10 -.L800056C0: -/* 0062C0 800056C0 811801E6 */ lb $t8, 0x1e6($t0) -/* 0062C4 800056C4 3C014080 */ lui $at, 0x4080 -/* 0062C8 800056C8 13000010 */ beqz $t8, .L8000570C -/* 0062CC 800056CC 3C088012 */ lui $t0, %hi(D_80119C3C) # $t0, 0x8012 -/* 0062D0 800056D0 3C01800E */ li $at, 0x800E0000 # -0.000000 -/* 0062D4 800056D4 C4274C18 */ lwc1 $f7, %lo(D_800E4C18)($at) -/* 0062D8 800056D8 C4264C1C */ lwc1 $f6, %lo(D_800E4C1C)($at) -/* 0062DC 800056DC C4E40040 */ lwc1 $f4, 0x40($a3) -/* 0062E0 800056E0 3C014020 */ li $at, 0x40200000 # 2.500000 -/* 0062E4 800056E4 46002021 */ cvt.d.s $f0, $f4 -/* 0062E8 800056E8 44815800 */ mtc1 $at, $f11 -/* 0062EC 800056EC 44805000 */ mtc1 $zero, $f10 -/* 0062F0 800056F0 46203201 */ sub.d $f8, $f6, $f0 -/* 0062F4 800056F4 00000000 */ nop -/* 0062F8 800056F8 462A4103 */ div.d $f4, $f8, $f10 -/* 0062FC 800056FC 46240180 */ add.d $f6, $f0, $f4 -/* 006300 80005700 46203220 */ cvt.s.d $f8, $f6 -/* 006304 80005704 10000006 */ b .L80005720 -/* 006308 80005708 E4E80040 */ swc1 $f8, 0x40($a3) -.L8000570C: -/* 00630C 8000570C C4EA0040 */ lwc1 $f10, 0x40($a3) -/* 006310 80005710 44812000 */ mtc1 $at, $f4 -/* 006314 80005714 00000000 */ nop -/* 006318 80005718 46045183 */ div.s $f6, $f10, $f4 -/* 00631C 8000571C E4E60040 */ swc1 $f6, 0x40($a3) -.L80005720: -/* 006320 80005720 8E270000 */ lw $a3, ($s1) -/* 006324 80005724 8D089C3C */ lw $t0, %lo(D_80119C3C)($t0) -/* 006328 80005728 C4E80040 */ lwc1 $f8, 0x40($a3) -/* 00632C 8000572C 811901E2 */ lb $t9, 0x1e2($t0) -/* 006330 80005730 00EA1021 */ addu $v0, $a3, $t2 -/* 006334 80005734 1720000A */ bnez $t9, .L80005760 -/* 006338 80005738 46081080 */ add.s $f2, $f2, $f8 -/* 00633C 8000573C 850D0000 */ lh $t5, ($t0) -/* 006340 80005740 2401FFFF */ li $at, -1 -/* 006344 80005744 11A10006 */ beq $t5, $at, .L80005760 -/* 006348 80005748 3C01800E */ lui $at, %hi(D_800E4C24) # $at, 0x800e -/* 00634C 8000574C C4254C20 */ lwc1 $f5, %lo(D_800E4C20)($at) -/* 006350 80005750 C4244C24 */ lwc1 $f4, %lo(D_800E4C24)($at) -/* 006354 80005754 460012A1 */ cvt.d.s $f10, $f2 -/* 006358 80005758 46245180 */ add.d $f6, $f10, $f4 -/* 00635C 8000575C 462030A0 */ cvt.s.d $f2, $f6 -.L80005760: -/* 006360 80005760 C448005C */ lwc1 $f8, 0x5c($v0) -/* 006364 80005764 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 006368 80005768 44812000 */ mtc1 $at, $f4 -/* 00636C 8000576C 448B3000 */ mtc1 $t3, $f6 -/* 006370 80005770 46081281 */ sub.s $f10, $f2, $f8 -/* 006374 80005774 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 006378 80005778 46045303 */ div.s $f12, $f10, $f4 -/* 00637C 8000577C 05610004 */ bgez $t3, .L80005790 -/* 006380 80005780 46803220 */ cvt.s.w $f8, $f6 -/* 006384 80005784 44815000 */ mtc1 $at, $f10 -/* 006388 80005788 00000000 */ nop -/* 00638C 8000578C 460A4200 */ add.s $f8, $f8, $f10 -.L80005790: -/* 006390 80005790 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 006394 80005794 44815000 */ mtc1 $at, $f10 -/* 006398 80005798 C4440054 */ lwc1 $f4, 0x54($v0) -/* 00639C 8000579C 850E0000 */ lh $t6, ($t0) -/* 0063A0 800057A0 46044181 */ sub.s $f6, $f8, $f4 -/* 0063A4 800057A4 2401FFFF */ li $at, -1 -/* 0063A8 800057A8 11C10042 */ beq $t6, $at, .L800058B4 -/* 0063AC 800057AC 460A3383 */ div.s $f14, $f6, $f10 -/* 0063B0 800057B0 00002025 */ move $a0, $zero -/* 0063B4 800057B4 2405000A */ li $a1, 10 -/* 0063B8 800057B8 AFA9007C */ sw $t1, 0x7c($sp) -/* 0063BC 800057BC AFAA003C */ sw $t2, 0x3c($sp) -/* 0063C0 800057C0 AFAC005C */ sw $t4, 0x5c($sp) -/* 0063C4 800057C4 E7AC0074 */ swc1 $f12, 0x74($sp) -/* 0063C8 800057C8 0C01BE53 */ jal func_8006F94C -/* 0063CC 800057CC E7AE0078 */ swc1 $f14, 0x78($sp) -/* 0063D0 800057D0 8FA9007C */ lw $t1, 0x7c($sp) -/* 0063D4 800057D4 8FAA003C */ lw $t2, 0x3c($sp) -/* 0063D8 800057D8 8FAC005C */ lw $t4, 0x5c($sp) -/* 0063DC 800057DC C7AC0074 */ lwc1 $f12, 0x74($sp) -/* 0063E0 800057E0 C7AE0078 */ lwc1 $f14, 0x78($sp) -/* 0063E4 800057E4 28410007 */ slti $at, $v0, 7 -/* 0063E8 800057E8 1020001F */ beqz $at, .L80005868 -/* 0063EC 800057EC 00002025 */ move $a0, $zero -/* 0063F0 800057F0 2405000A */ li $a1, 10 -/* 0063F4 800057F4 AFA9007C */ sw $t1, 0x7c($sp) -/* 0063F8 800057F8 AFAA003C */ sw $t2, 0x3c($sp) -/* 0063FC 800057FC AFAC005C */ sw $t4, 0x5c($sp) -/* 006400 80005800 E7AC0074 */ swc1 $f12, 0x74($sp) -/* 006404 80005804 0C01BE53 */ jal func_8006F94C -/* 006408 80005808 E7AE0078 */ swc1 $f14, 0x78($sp) -/* 00640C 8000580C 8E270000 */ lw $a3, ($s1) -/* 006410 80005810 8FA9007C */ lw $t1, 0x7c($sp) -/* 006414 80005814 80EF0090 */ lb $t7, 0x90($a3) -/* 006418 80005818 8FAA003C */ lw $t2, 0x3c($sp) -/* 00641C 8000581C 01E2C021 */ addu $t8, $t7, $v0 -/* 006420 80005820 2719FFFB */ addiu $t9, $t8, -5 -/* 006424 80005824 8FAC005C */ lw $t4, 0x5c($sp) -/* 006428 80005828 C7AC0074 */ lwc1 $f12, 0x74($sp) -/* 00642C 8000582C C7AE0078 */ lwc1 $f14, 0x78($sp) -/* 006430 80005830 A0F90090 */ sb $t9, 0x90($a3) -/* 006434 80005834 8E270000 */ lw $a3, ($s1) -/* 006438 80005838 240D0005 */ li $t5, 5 -/* 00643C 8000583C 80E30090 */ lb $v1, 0x90($a3) -/* 006440 80005840 00000000 */ nop -/* 006444 80005844 28610006 */ slti $at, $v1, 6 -/* 006448 80005848 14200004 */ bnez $at, .L8000585C -/* 00644C 8000584C 2861FFFB */ slti $at, $v1, -5 -/* 006450 80005850 10000005 */ b .L80005868 -/* 006454 80005854 A0ED0090 */ sb $t5, 0x90($a3) -/* 006458 80005858 2861FFFB */ slti $at, $v1, -5 -.L8000585C: -/* 00645C 8000585C 10200002 */ beqz $at, .L80005868 -/* 006460 80005860 240EFFFB */ li $t6, -5 -/* 006464 80005864 A0EE0090 */ sb $t6, 0x90($a3) -.L80005868: -/* 006468 80005868 8E270000 */ lw $a3, ($s1) -/* 00646C 8000586C 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 006470 80005870 80EF0090 */ lb $t7, 0x90($a3) -/* 006474 80005874 44813000 */ mtc1 $at, $f6 -/* 006478 80005878 448F4000 */ mtc1 $t7, $f8 -/* 00647C 8000587C 3C01800E */ lui $at, %hi(D_800E4C2C) # $at, 0x800e -/* 006480 80005880 46804120 */ cvt.s.w $f4, $f8 -/* 006484 80005884 C42B4C28 */ lwc1 $f11, %lo(D_800E4C28)($at) -/* 006488 80005888 C42A4C2C */ lwc1 $f10, %lo(D_800E4C2C)($at) -/* 00648C 8000588C 46062003 */ div.s $f0, $f4, $f6 -/* 006490 80005890 3C0140A0 */ li $at, 0x40A00000 # 5.000000 -/* 006494 80005894 460061A1 */ cvt.d.s $f6, $f12 -/* 006498 80005898 46000221 */ cvt.d.s $f8, $f0 -/* 00649C 8000589C 46285102 */ mul.d $f4, $f10, $f8 -/* 0064A0 800058A0 44814000 */ mtc1 $at, $f8 -/* 0064A4 800058A4 46243280 */ add.d $f10, $f6, $f4 -/* 0064A8 800058A8 46004182 */ mul.s $f6, $f8, $f0 -/* 0064AC 800058AC 46205320 */ cvt.s.d $f12, $f10 -/* 0064B0 800058B0 46067380 */ add.s $f14, $f14, $f6 -.L800058B4: -/* 0064B4 800058B4 12400021 */ beqz $s2, .L8000593C -/* 0064B8 800058B8 00000000 */ nop -/* 0064BC 800058BC C4E40094 */ lwc1 $f4, 0x94($a3) -/* 0064C0 800058C0 8FB800AC */ lw $t8, 0xac($sp) -/* 0064C4 800058C4 46002021 */ cvt.d.s $f0, $f4 -/* 0064C8 800058C8 4634003C */ c.lt.d $f0, $f20 -/* 0064CC 800058CC 00000000 */ nop -/* 0064D0 800058D0 4500001A */ bc1f .L8000593C -/* 0064D4 800058D4 00000000 */ nop -/* 0064D8 800058D8 44985000 */ mtc1 $t8, $f10 -/* 0064DC 800058DC 3C01800E */ lui $at, %hi(D_800E4C34) # $at, 0x800e -/* 0064E0 800058E0 46805220 */ cvt.s.w $f8, $f10 -/* 0064E4 800058E4 C4254C30 */ lwc1 $f5, %lo(D_800E4C30)($at) -/* 0064E8 800058E8 C4244C34 */ lwc1 $f4, %lo(D_800E4C34)($at) -/* 0064EC 800058EC 460041A1 */ cvt.d.s $f6, $f8 -/* 0064F0 800058F0 46243282 */ mul.d $f10, $f6, $f4 -/* 0064F4 800058F4 3C01800E */ lui $at, %hi(D_800E4C38) # $at, 0x800e -/* 0064F8 800058F8 462A0200 */ add.d $f8, $f0, $f10 -/* 0064FC 800058FC 462041A0 */ cvt.s.d $f6, $f8 -/* 006500 80005900 E4E60094 */ swc1 $f6, 0x94($a3) -/* 006504 80005904 8E270000 */ lw $a3, ($s1) -/* 006508 80005908 00000000 */ nop -/* 00650C 8000590C C4E40094 */ lwc1 $f4, 0x94($a3) -/* 006510 80005910 00000000 */ nop -/* 006514 80005914 460022A1 */ cvt.d.s $f10, $f4 -/* 006518 80005918 462AA03C */ c.lt.d $f20, $f10 -/* 00651C 8000591C 00000000 */ nop -/* 006520 80005920 45000006 */ bc1f .L8000593C -/* 006524 80005924 00000000 */ nop -/* 006528 80005928 C4284C38 */ lwc1 $f8, %lo(D_800E4C38)($at) -/* 00652C 8000592C 00000000 */ nop -/* 006530 80005930 E4E80094 */ swc1 $f8, 0x94($a3) -/* 006534 80005934 8E270000 */ lw $a3, ($s1) -/* 006538 80005938 00000000 */ nop -.L8000593C: -/* 00653C 8000593C 1640001E */ bnez $s2, .L800059B8 -/* 006540 80005940 00EA1021 */ addu $v0, $a3, $t2 -/* 006544 80005944 C4E00094 */ lwc1 $f0, 0x94($a3) -/* 006548 80005948 8FB900AC */ lw $t9, 0xac($sp) -/* 00654C 8000594C 4600B03C */ c.lt.s $f22, $f0 -/* 006550 80005950 00000000 */ nop -/* 006554 80005954 45000018 */ bc1f .L800059B8 -/* 006558 80005958 00EA1021 */ addu $v0, $a3, $t2 -/* 00655C 8000595C 44993000 */ mtc1 $t9, $f6 -/* 006560 80005960 3C01800E */ lui $at, %hi(D_800E4C44) # $at, 0x800e -/* 006564 80005964 46803120 */ cvt.s.w $f4, $f6 -/* 006568 80005968 C4294C40 */ lwc1 $f9, %lo(D_800E4C40)($at) -/* 00656C 8000596C C4284C44 */ lwc1 $f8, %lo(D_800E4C44)($at) -/* 006570 80005970 460022A1 */ cvt.d.s $f10, $f4 -/* 006574 80005974 46285182 */ mul.d $f6, $f10, $f8 -/* 006578 80005978 46000121 */ cvt.d.s $f4, $f0 -/* 00657C 8000597C 46262281 */ sub.d $f10, $f4, $f6 -/* 006580 80005980 46205220 */ cvt.s.d $f8, $f10 -/* 006584 80005984 E4E80094 */ swc1 $f8, 0x94($a3) -/* 006588 80005988 8E270000 */ lw $a3, ($s1) -/* 00658C 8000598C 00000000 */ nop -/* 006590 80005990 C4E40094 */ lwc1 $f4, 0x94($a3) -/* 006594 80005994 00000000 */ nop -/* 006598 80005998 4616203C */ c.lt.s $f4, $f22 -/* 00659C 8000599C 00000000 */ nop -/* 0065A0 800059A0 45000005 */ bc1f .L800059B8 -/* 0065A4 800059A4 00EA1021 */ addu $v0, $a3, $t2 -/* 0065A8 800059A8 E4F60094 */ swc1 $f22, 0x94($a3) -/* 0065AC 800059AC 8E270000 */ lw $a3, ($s1) -/* 0065B0 800059B0 00000000 */ nop -/* 0065B4 800059B4 00EA1021 */ addu $v0, $a3, $t2 -.L800059B8: -/* 0065B8 800059B8 C446005C */ lwc1 $f6, 0x5c($v0) -/* 0065BC 800059BC 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 0065C0 800059C0 460C3280 */ add.s $f10, $f6, $f12 -/* 0065C4 800059C4 1240000B */ beqz $s2, .L800059F4 -/* 0065C8 800059C8 E44A005C */ swc1 $f10, 0x5c($v0) -/* 0065CC 800059CC 8E2D0000 */ lw $t5, ($s1) -/* 0065D0 800059D0 00000000 */ nop -/* 0065D4 800059D4 01AA1021 */ addu $v0, $t5, $t2 -/* 0065D8 800059D8 C4480054 */ lwc1 $f8, 0x54($v0) -/* 0065DC 800059DC 00000000 */ nop -/* 0065E0 800059E0 460E4100 */ add.s $f4, $f8, $f14 -/* 0065E4 800059E4 E4440054 */ swc1 $f4, 0x54($v0) -/* 0065E8 800059E8 8E270000 */ lw $a3, ($s1) -/* 0065EC 800059EC 10000008 */ b .L80005A10 -/* 0065F0 800059F0 25290001 */ addiu $t1, $t1, 1 -.L800059F4: -/* 0065F4 800059F4 8E2E0000 */ lw $t6, ($s1) -/* 0065F8 800059F8 44813000 */ mtc1 $at, $f6 -/* 0065FC 800059FC 01CA7821 */ addu $t7, $t6, $t2 -/* 006600 80005A00 E5E60054 */ swc1 $f6, 0x54($t7) -/* 006604 80005A04 8E270000 */ lw $a3, ($s1) -/* 006608 80005A08 00000000 */ nop -.L80005A0C: -/* 00660C 80005A0C 25290001 */ addiu $t1, $t1, 1 -.L80005A10: -/* 006610 80005A10 24010001 */ li $at, 1 -/* 006614 80005A14 1521FE4B */ bne $t1, $at, .L80005344 -/* 006618 80005A18 258C0002 */ addiu $t4, $t4, 2 -/* 00661C 80005A1C 3C088012 */ lui $t0, %hi(D_80119C3C) # $t0, 0x8012 -/* 006620 80005A20 8D089C3C */ lw $t0, %lo(D_80119C3C)($t0) -/* 006624 80005A24 00000000 */ nop -/* 006628 80005A28 8D180010 */ lw $t8, 0x10($t0) -/* 00662C 80005A2C 00000000 */ nop -/* 006630 80005A30 17000013 */ bnez $t8, .L80005A80 -/* 006634 80005A34 00000000 */ nop -/* 006638 80005A38 8D190014 */ lw $t9, 0x14($t0) -/* 00663C 80005A3C 8FAD00A8 */ lw $t5, 0xa8($sp) -/* 006640 80005A40 1720000F */ bnez $t9, .L80005A80 -/* 006644 80005A44 31AE4000 */ andi $t6, $t5, 0x4000 -/* 006648 80005A48 11C0000D */ beqz $t6, .L80005A80 -/* 00664C 80005A4C 3C01800E */ lui $at, %hi(D_800E4C4C) # $at, 0x800e -/* 006650 80005A50 C508002C */ lwc1 $f8, 0x2c($t0) -/* 006654 80005A54 C42B4C48 */ lwc1 $f11, %lo(D_800E4C48)($at) -/* 006658 80005A58 C42A4C4C */ lwc1 $f10, %lo(D_800E4C4C)($at) -/* 00665C 80005A5C 46004121 */ cvt.d.s $f4, $f8 -/* 006660 80005A60 4624503C */ c.lt.d $f10, $f4 -/* 006664 80005A64 00000000 */ nop -/* 006668 80005A68 45010005 */ bc1t .L80005A80 -/* 00666C 80005A6C 00000000 */ nop -/* 006670 80005A70 810F01D6 */ lb $t7, 0x1d6($t0) -/* 006674 80005A74 24010004 */ li $at, 4 -/* 006678 80005A78 15E10010 */ bne $t7, $at, .L80005ABC -/* 00667C 80005A7C 8FB900A4 */ lw $t9, 0xa4($sp) -.L80005A80: -/* 006680 80005A80 8CE400A8 */ lw $a0, 0xa8($a3) -/* 006684 80005A84 00000000 */ nop -/* 006688 80005A88 1080000C */ beqz $a0, .L80005ABC -/* 00668C 80005A8C 8FB900A4 */ lw $t9, 0xa4($sp) -/* 006690 80005A90 0C001223 */ jal func_8000488C -/* 006694 80005A94 00000000 */ nop -/* 006698 80005A98 8E380000 */ lw $t8, ($s1) -/* 00669C 80005A9C 00000000 */ nop -/* 0066A0 80005AA0 AF0000A8 */ sw $zero, 0xa8($t8) -/* 0066A4 80005AA4 8E270000 */ lw $a3, ($s1) -/* 0066A8 80005AA8 00000000 */ nop -/* 0066AC 80005AAC 8CE400A8 */ lw $a0, 0xa8($a3) -/* 0066B0 80005AB0 1000003B */ b .L80005BA0 -/* 0066B4 80005AB4 00000000 */ nop -/* 0066B8 80005AB8 8FB900A4 */ lw $t9, 0xa4($sp) -.L80005ABC: -/* 0066BC 80005ABC 8CE400A8 */ lw $a0, 0xa8($a3) -/* 0066C0 80005AC0 332D4000 */ andi $t5, $t9, 0x4000 -/* 0066C4 80005AC4 11A00036 */ beqz $t5, .L80005BA0 -/* 0066C8 80005AC8 00000000 */ nop -/* 0066CC 80005ACC 14800034 */ bnez $a0, .L80005BA0 -/* 0066D0 80005AD0 00000000 */ nop -/* 0066D4 80005AD4 850E0000 */ lh $t6, ($t0) -/* 0066D8 80005AD8 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 0066DC 80005ADC 05C00030 */ bltz $t6, .L80005BA0 -/* 0066E0 80005AE0 24E500A8 */ addiu $a1, $a3, 0xa8 -/* 0066E4 80005AE4 C500002C */ lwc1 $f0, 0x2c($t0) -/* 0066E8 80005AE8 44813000 */ mtc1 $at, $f6 -/* 0066EC 80005AEC 4616003C */ c.lt.s $f0, $f22 -/* 0066F0 80005AF0 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 0066F4 80005AF4 45000003 */ bc1f .L80005B04 -/* 0066F8 80005AF8 00000000 */ nop -/* 0066FC 80005AFC 10000002 */ b .L80005B08 -/* 006700 80005B00 46000507 */ neg.s $f20, $f0 -.L80005B04: -/* 006704 80005B04 46000506 */ mov.s $f20, $f0 -.L80005B08: -/* 006708 80005B08 4614303C */ c.lt.s $f6, $f20 -/* 00670C 80005B0C 00000000 */ nop -/* 006710 80005B10 45000003 */ bc1f .L80005B20 -/* 006714 80005B14 00000000 */ nop -/* 006718 80005B18 4481A000 */ mtc1 $at, $f20 -/* 00671C 80005B1C 00000000 */ nop -.L80005B20: -/* 006720 80005B20 0C0007C5 */ jal func_80001F14 -/* 006724 80005B24 24040019 */ li $a0, 25 -/* 006728 80005B28 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 00672C 80005B2C 44810800 */ mtc1 $at, $f1 -/* 006730 80005B30 44800000 */ mtc1 $zero, $f0 -/* 006734 80005B34 4600A221 */ cvt.d.s $f8, $f20 -/* 006738 80005B38 46204282 */ mul.d $f10, $f8, $f0 -/* 00673C 80005B3C 3C014028 */ li $at, 0x40280000 # 2.625000 -/* 006740 80005B40 44812800 */ mtc1 $at, $f5 -/* 006744 80005B44 44802000 */ mtc1 $zero, $f4 -/* 006748 80005B48 8E270000 */ lw $a3, ($s1) -/* 00674C 80005B4C 46245183 */ div.d $f6, $f10, $f4 -/* 006750 80005B50 46203200 */ add.d $f8, $f6, $f0 -/* 006754 80005B54 462042A0 */ cvt.s.d $f10, $f8 -/* 006758 80005B58 E7AA006C */ swc1 $f10, 0x6c($sp) -/* 00675C 80005B5C 8CE400A8 */ lw $a0, 0xa8($a3) -/* 006760 80005B60 8FA6006C */ lw $a2, 0x6c($sp) -/* 006764 80005B64 10800006 */ beqz $a0, .L80005B80 -/* 006768 80005B68 240F006E */ li $t7, 110 -/* 00676C 80005B6C 0C00127E */ jal func_800049F8 -/* 006770 80005B70 24050010 */ li $a1, 16 -/* 006774 80005B74 8E270000 */ lw $a3, ($s1) -/* 006778 80005B78 00000000 */ nop -/* 00677C 80005B7C 240F006E */ li $t7, 110 -.L80005B80: -/* 006780 80005B80 A4EF00AC */ sh $t7, 0xac($a3) -/* 006784 80005B84 8E380000 */ lw $t8, ($s1) -/* 006788 80005B88 00000000 */ nop -/* 00678C 80005B8C A30000D0 */ sb $zero, 0xd0($t8) -/* 006790 80005B90 8E270000 */ lw $a3, ($s1) -/* 006794 80005B94 00000000 */ nop -/* 006798 80005B98 8CE400A8 */ lw $a0, 0xa8($a3) -/* 00679C 80005B9C 00000000 */ nop -.L80005BA0: -/* 0067A0 80005BA0 10800029 */ beqz $a0, .L80005C48 -/* 0067A4 80005BA4 3C198012 */ lui $t9, %hi(D_80119C3C) # $t9, 0x8012 -/* 0067A8 80005BA8 8F399C3C */ lw $t9, %lo(D_80119C3C)($t9) -/* 0067AC 80005BAC 8FAF00AC */ lw $t7, 0xac($sp) -/* 0067B0 80005BB0 832D01E2 */ lb $t5, 0x1e2($t9) -/* 0067B4 80005BB4 00003025 */ move $a2, $zero -/* 0067B8 80005BB8 15A00006 */ bnez $t5, .L80005BD4 -/* 0067BC 80005BBC 24050008 */ li $a1, 8 -/* 0067C0 80005BC0 90EE00D0 */ lbu $t6, 0xd0($a3) -/* 0067C4 80005BC4 00000000 */ nop -/* 0067C8 80005BC8 01CFC021 */ addu $t8, $t6, $t7 -/* 0067CC 80005BCC 10000002 */ b .L80005BD8 -/* 0067D0 80005BD0 A0F800D0 */ sb $t8, 0xd0($a3) -.L80005BD4: -/* 0067D4 80005BD4 A0E000D0 */ sb $zero, 0xd0($a3) -.L80005BD8: -/* 0067D8 80005BD8 8E270000 */ lw $a3, ($s1) -/* 0067DC 80005BDC 00000000 */ nop -/* 0067E0 80005BE0 90F900D0 */ lbu $t9, 0xd0($a3) -/* 0067E4 80005BE4 00000000 */ nop -/* 0067E8 80005BE8 2B21000A */ slti $at, $t9, 0xa -/* 0067EC 80005BEC 14200007 */ bnez $at, .L80005C0C -/* 0067F0 80005BF0 00000000 */ nop -/* 0067F4 80005BF4 8CE400A8 */ lw $a0, 0xa8($a3) -/* 0067F8 80005BF8 0C00127E */ jal func_800049F8 -/* 0067FC 80005BFC 24050008 */ li $a1, 8 -/* 006800 80005C00 8E270000 */ lw $a3, ($s1) -/* 006804 80005C04 10000010 */ b .L80005C48 -/* 006808 80005C08 00000000 */ nop -.L80005C0C: -/* 00680C 80005C0C 94E600AC */ lhu $a2, 0xac($a3) -/* 006810 80005C10 8CE400A8 */ lw $a0, 0xa8($a3) -/* 006814 80005C14 00066A00 */ sll $t5, $a2, 8 -/* 006818 80005C18 0C00127E */ jal func_800049F8 -/* 00681C 80005C1C 01A03025 */ move $a2, $t5 -/* 006820 80005C20 8FAF00A0 */ lw $t7, 0xa0($sp) -/* 006824 80005C24 8E2E0000 */ lw $t6, ($s1) -/* 006828 80005C28 8DE5000C */ lw $a1, 0xc($t7) -/* 00682C 80005C2C 8DE60010 */ lw $a2, 0x10($t7) -/* 006830 80005C30 8DE70014 */ lw $a3, 0x14($t7) -/* 006834 80005C34 8DC400A8 */ lw $a0, 0xa8($t6) -/* 006838 80005C38 0C0026DF */ jal func_80009B7C -/* 00683C 80005C3C 00000000 */ nop -/* 006840 80005C40 8E270000 */ lw $a3, ($s1) -/* 006844 80005C44 00000000 */ nop -.L80005C48: -/* 006848 80005C48 12400025 */ beqz $s2, .L80005CE0 -/* 00684C 80005C4C A0F000A0 */ sb $s0, 0xa0($a3) -/* 006850 80005C50 8E270000 */ lw $a3, ($s1) -/* 006854 80005C54 4458F800 */ cfc1 $t8, $31 -/* 006858 80005C58 24190001 */ li $t9, 1 -/* 00685C 80005C5C 44D9F800 */ ctc1 $t9, $31 -/* 006860 80005C60 C4E40054 */ lwc1 $f4, 0x54($a3) -/* 006864 80005C64 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 006868 80005C68 460021A4 */ cvt.w.s $f6, $f4 -/* 00686C 80005C6C 4459F800 */ cfc1 $t9, $31 -/* 006870 80005C70 00000000 */ nop -/* 006874 80005C74 33390078 */ andi $t9, $t9, 0x78 -/* 006878 80005C78 13200012 */ beqz $t9, .L80005CC4 -/* 00687C 80005C7C 00000000 */ nop -/* 006880 80005C80 44813000 */ mtc1 $at, $f6 -/* 006884 80005C84 24190001 */ li $t9, 1 -/* 006888 80005C88 46062181 */ sub.s $f6, $f4, $f6 -/* 00688C 80005C8C 3C018000 */ lui $at, 0x8000 -/* 006890 80005C90 44D9F800 */ ctc1 $t9, $31 -/* 006894 80005C94 00000000 */ nop -/* 006898 80005C98 460031A4 */ cvt.w.s $f6, $f6 -/* 00689C 80005C9C 4459F800 */ cfc1 $t9, $31 -/* 0068A0 80005CA0 00000000 */ nop -/* 0068A4 80005CA4 33390078 */ andi $t9, $t9, 0x78 -/* 0068A8 80005CA8 17200004 */ bnez $t9, .L80005CBC -/* 0068AC 80005CAC 00000000 */ nop -/* 0068B0 80005CB0 44193000 */ mfc1 $t9, $f6 -/* 0068B4 80005CB4 10000007 */ b .L80005CD4 -/* 0068B8 80005CB8 0321C825 */ or $t9, $t9, $at -.L80005CBC: -/* 0068BC 80005CBC 10000005 */ b .L80005CD4 -/* 0068C0 80005CC0 2419FFFF */ li $t9, -1 -.L80005CC4: -/* 0068C4 80005CC4 44193000 */ mfc1 $t9, $f6 -/* 0068C8 80005CC8 00000000 */ nop -/* 0068CC 80005CCC 0720FFFB */ bltz $t9, .L80005CBC -/* 0068D0 80005CD0 00000000 */ nop -.L80005CD4: -/* 0068D4 80005CD4 44D8F800 */ ctc1 $t8, $31 -/* 0068D8 80005CD8 A0F90098 */ sb $t9, 0x98($a3) -/* 0068DC 80005CDC 00000000 */ nop -.L80005CE0: -/* 0068E0 80005CE0 8FBF0034 */ lw $ra, 0x34($sp) -/* 0068E4 80005CE4 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0068E8 80005CE8 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0068EC 80005CEC C7B70020 */ lwc1 $f23, 0x20($sp) -/* 0068F0 80005CF0 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 0068F4 80005CF4 8FB00028 */ lw $s0, 0x28($sp) -/* 0068F8 80005CF8 8FB1002C */ lw $s1, 0x2c($sp) -/* 0068FC 80005CFC 8FB20030 */ lw $s2, 0x30($sp) -/* 006900 80005D00 03E00008 */ jr $ra -/* 006904 80005D04 27BD00A0 */ addiu $sp, $sp, 0xa0 - -glabel func_80005D08 -/* 006908 80005D08 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 00690C 80005D0C AFBF0014 */ sw $ra, 0x14($sp) -/* 006910 80005D10 AFA40038 */ sw $a0, 0x38($sp) -/* 006914 80005D14 AFA5003C */ sw $a1, 0x3c($sp) -/* 006918 80005D18 AFA60040 */ sw $a2, 0x40($sp) -/* 00691C 80005D1C 0C0044E7 */ jal func_8001139C -/* 006920 80005D20 AFA70044 */ sw $a3, 0x44($sp) -/* 006924 80005D24 8FA30038 */ lw $v1, 0x38($sp) -/* 006928 80005D28 1440000A */ bnez $v0, .L80005D54 -/* 00692C 80005D2C 00000000 */ nop -/* 006930 80005D30 C460001C */ lwc1 $f0, 0x1c($v1) -/* 006934 80005D34 C4620024 */ lwc1 $f2, 0x24($v1) -/* 006938 80005D38 46000102 */ mul.s $f4, $f0, $f0 -/* 00693C 80005D3C 00000000 */ nop -/* 006940 80005D40 46021182 */ mul.s $f6, $f2, $f2 -/* 006944 80005D44 0C0326B4 */ jal sqrtf -/* 006948 80005D48 46062300 */ add.s $f12, $f4, $f6 -/* 00694C 80005D4C 10000003 */ b .L80005D5C -/* 006950 80005D50 46000406 */ mov.s $f16, $f0 -.L80005D54: -/* 006954 80005D54 44808000 */ mtc1 $zero, $f16 -/* 006958 80005D58 00000000 */ nop -.L80005D5C: -/* 00695C 80005D5C 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 -/* 006960 80005D60 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 -/* 006964 80005D64 8D230000 */ lw $v1, ($t1) -/* 006968 80005D68 8FAE0040 */ lw $t6, 0x40($sp) -/* 00696C 80005D6C C46E00D4 */ lwc1 $f14, 0xd4($v1) -/* 006970 80005D70 31CF8000 */ andi $t7, $t6, 0x8000 -/* 006974 80005D74 11E00019 */ beqz $t7, .L80005DDC -/* 006978 80005D78 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012 -/* 00697C 80005D7C 8FB80044 */ lw $t8, 0x44($sp) -/* 006980 80005D80 C46800B0 */ lwc1 $f8, 0xb0($v1) -/* 006984 80005D84 44985000 */ mtc1 $t8, $f10 -/* 006988 80005D88 00000000 */ nop -/* 00698C 80005D8C 46805120 */ cvt.s.w $f4, $f10 -/* 006990 80005D90 C46A00A4 */ lwc1 $f10, 0xa4($v1) -/* 006994 80005D94 46044182 */ mul.s $f6, $f8, $f4 -/* 006998 80005D98 46065200 */ add.s $f8, $f10, $f6 -/* 00699C 80005D9C E46800A4 */ swc1 $f8, 0xa4($v1) -/* 0069A0 80005DA0 8D230000 */ lw $v1, ($t1) -/* 0069A4 80005DA4 00000000 */ nop -/* 0069A8 80005DA8 C46200C8 */ lwc1 $f2, 0xc8($v1) -/* 0069AC 80005DAC C46000A4 */ lwc1 $f0, 0xa4($v1) -/* 0069B0 80005DB0 00000000 */ nop -/* 0069B4 80005DB4 4600103C */ c.lt.s $f2, $f0 -/* 0069B8 80005DB8 00000000 */ nop -/* 0069BC 80005DBC 45000014 */ bc1f .L80005E10 -/* 0069C0 80005DC0 00000000 */ nop -/* 0069C4 80005DC4 E46200A4 */ swc1 $f2, 0xa4($v1) -/* 0069C8 80005DC8 8D230000 */ lw $v1, ($t1) -/* 0069CC 80005DCC 00000000 */ nop -/* 0069D0 80005DD0 C46000A4 */ lwc1 $f0, 0xa4($v1) -/* 0069D4 80005DD4 1000000F */ b .L80005E14 -/* 0069D8 80005DD8 44801000 */ mtc1 $zero, $f2 -.L80005DDC: -/* 0069DC 80005DDC 8FB90044 */ lw $t9, 0x44($sp) -/* 0069E0 80005DE0 C46400B4 */ lwc1 $f4, 0xb4($v1) -/* 0069E4 80005DE4 44995000 */ mtc1 $t9, $f10 -/* 0069E8 80005DE8 00000000 */ nop -/* 0069EC 80005DEC 468051A0 */ cvt.s.w $f6, $f10 -/* 0069F0 80005DF0 C46A00A4 */ lwc1 $f10, 0xa4($v1) -/* 0069F4 80005DF4 46062202 */ mul.s $f8, $f4, $f6 -/* 0069F8 80005DF8 46085101 */ sub.s $f4, $f10, $f8 -/* 0069FC 80005DFC E46400A4 */ swc1 $f4, 0xa4($v1) -/* 006A00 80005E00 8D230000 */ lw $v1, ($t1) -/* 006A04 80005E04 00000000 */ nop -/* 006A08 80005E08 C46000A4 */ lwc1 $f0, 0xa4($v1) -/* 006A0C 80005E0C 00000000 */ nop -.L80005E10: -/* 006A10 80005E10 44801000 */ mtc1 $zero, $f2 -.L80005E14: -/* 006A14 80005E14 00000000 */ nop -/* 006A18 80005E18 4602003C */ c.lt.s $f0, $f2 -/* 006A1C 80005E1C 00000000 */ nop -/* 006A20 80005E20 45000002 */ bc1f .L80005E2C -/* 006A24 80005E24 00000000 */ nop -/* 006A28 80005E28 E46200A4 */ swc1 $f2, 0xa4($v1) -.L80005E2C: -/* 006A2C 80005E2C 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0) -/* 006A30 80005E30 34018000 */ li $at, 32768 -/* 006A34 80005E34 848A0196 */ lh $t2, 0x196($a0) -/* 006A38 80005E38 848C01A0 */ lh $t4, 0x1a0($a0) -/* 006A3C 80005E3C 000A5823 */ negu $t3, $t2 -/* 006A40 80005E40 318DFFFF */ andi $t5, $t4, 0xffff -/* 006A44 80005E44 016D1023 */ subu $v0, $t3, $t5 -/* 006A48 80005E48 00411021 */ addu $v0, $v0, $at -/* 006A4C 80005E4C 34018001 */ li $at, 32769 -/* 006A50 80005E50 0041082A */ slt $at, $v0, $at -/* 006A54 80005E54 14200003 */ bnez $at, .L80005E64 -/* 006A58 80005E58 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 006A5C 80005E5C 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 006A60 80005E60 00411021 */ addu $v0, $v0, $at -.L80005E64: -/* 006A64 80005E64 28418000 */ slti $at, $v0, -0x8000 -/* 006A68 80005E68 10200002 */ beqz $at, .L80005E74 -/* 006A6C 80005E6C 3401FFFF */ li $at, 65535 -/* 006A70 80005E70 00411021 */ addu $v0, $v0, $at -.L80005E74: -/* 006A74 80005E74 00022400 */ sll $a0, $v0, 0x10 -/* 006A78 80005E78 00047403 */ sra $t6, $a0, 0x10 -/* 006A7C 80005E7C 01C02025 */ move $a0, $t6 -/* 006A80 80005E80 E7AE001C */ swc1 $f14, 0x1c($sp) -/* 006A84 80005E84 0C01C1F1 */ jal func_800707C4 -/* 006A88 80005E88 E7B00030 */ swc1 $f16, 0x30($sp) -/* 006A8C 80005E8C 44803000 */ mtc1 $zero, $f6 -/* 006A90 80005E90 C7AE001C */ lwc1 $f14, 0x1c($sp) -/* 006A94 80005E94 4606003C */ c.lt.s $f0, $f6 -/* 006A98 80005E98 C7B00030 */ lwc1 $f16, 0x30($sp) -/* 006A9C 80005E9C 45000002 */ bc1f .L80005EA8 -/* 006AA0 80005EA0 46000086 */ mov.s $f2, $f0 -/* 006AA4 80005EA4 46000087 */ neg.s $f2, $f0 -.L80005EA8: -/* 006AA8 80005EA8 E7A20024 */ swc1 $f2, 0x24($sp) -/* 006AAC 80005EAC E7AE001C */ swc1 $f14, 0x1c($sp) -/* 006AB0 80005EB0 0C019944 */ jal func_80066510 -/* 006AB4 80005EB4 E7B00030 */ swc1 $f16, 0x30($sp) -/* 006AB8 80005EB8 C7A20024 */ lwc1 $f2, 0x24($sp) -/* 006ABC 80005EBC C7AE001C */ lwc1 $f14, 0x1c($sp) -/* 006AC0 80005EC0 C7B00030 */ lwc1 $f16, 0x30($sp) -/* 006AC4 80005EC4 14400017 */ bnez $v0, .L80005F24 -/* 006AC8 80005EC8 00000000 */ nop -/* 006ACC 80005ECC E7A20024 */ swc1 $f2, 0x24($sp) -/* 006AD0 80005ED0 E7AE001C */ swc1 $f14, 0x1c($sp) -/* 006AD4 80005ED4 0C0044E7 */ jal func_8001139C -/* 006AD8 80005ED8 E7B00030 */ swc1 $f16, 0x30($sp) -/* 006ADC 80005EDC 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 -/* 006AE0 80005EE0 C7A20024 */ lwc1 $f2, 0x24($sp) -/* 006AE4 80005EE4 C7AE001C */ lwc1 $f14, 0x1c($sp) -/* 006AE8 80005EE8 C7B00030 */ lwc1 $f16, 0x30($sp) -/* 006AEC 80005EEC 1440000D */ bnez $v0, .L80005F24 -/* 006AF0 80005EF0 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 -/* 006AF4 80005EF4 8D2F0000 */ lw $t7, ($t1) -/* 006AF8 80005EF8 3C01402E */ li $at, 0x402E0000 # 2.718750 -/* 006AFC 80005EFC C5EA00BC */ lwc1 $f10, 0xbc($t7) -/* 006B00 80005F00 44815800 */ mtc1 $at, $f11 -/* 006B04 80005F04 46025202 */ mul.s $f8, $f10, $f2 -/* 006B08 80005F08 44805000 */ mtc1 $zero, $f10 -/* 006B0C 80005F0C 46104102 */ mul.s $f4, $f8, $f16 -/* 006B10 80005F10 460021A1 */ cvt.d.s $f6, $f4 -/* 006B14 80005F14 00000000 */ nop -/* 006B18 80005F18 462A3203 */ div.d $f8, $f6, $f10 -/* 006B1C 80005F1C 10000003 */ b .L80005F2C -/* 006B20 80005F20 462044A0 */ cvt.s.d $f18, $f8 -.L80005F24: -/* 006B24 80005F24 44809000 */ mtc1 $zero, $f18 -/* 006B28 80005F28 00000000 */ nop -.L80005F2C: -/* 006B2C 80005F2C E7AE001C */ swc1 $f14, 0x1c($sp) -/* 006B30 80005F30 E7B00030 */ swc1 $f16, 0x30($sp) -/* 006B34 80005F34 0C028064 */ jal func_800A0190 -/* 006B38 80005F38 E7B20020 */ swc1 $f18, 0x20($sp) -/* 006B3C 80005F3C 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 -/* 006B40 80005F40 C7AE001C */ lwc1 $f14, 0x1c($sp) -/* 006B44 80005F44 C7B00030 */ lwc1 $f16, 0x30($sp) -/* 006B48 80005F48 C7B20020 */ lwc1 $f18, 0x20($sp) -/* 006B4C 80005F4C 14400005 */ bnez $v0, .L80005F64 -/* 006B50 80005F50 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 -/* 006B54 80005F54 44802000 */ mtc1 $zero, $f4 -/* 006B58 80005F58 8D380000 */ lw $t8, ($t1) -/* 006B5C 80005F5C 00000000 */ nop -/* 006B60 80005F60 E70400A4 */ swc1 $f4, 0xa4($t8) -.L80005F64: -/* 006B64 80005F64 3C014024 */ li $at, 0x40240000 # 2.562500 -/* 006B68 80005F68 44811800 */ mtc1 $at, $f3 -/* 006B6C 80005F6C 44801000 */ mtc1 $zero, $f2 -/* 006B70 80005F70 46008021 */ cvt.d.s $f0, $f16 -/* 006B74 80005F74 4620103C */ c.lt.d $f2, $f0 -/* 006B78 80005F78 44805800 */ mtc1 $zero, $f11 -/* 006B7C 80005F7C 45000004 */ bc1f .L80005F90 -/* 006B80 80005F80 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012 -/* 006B84 80005F84 46220181 */ sub.d $f6, $f0, $f2 -/* 006B88 80005F88 10000003 */ b .L80005F98 -/* 006B8C 80005F8C 46203420 */ cvt.s.d $f16, $f6 -.L80005F90: -/* 006B90 80005F90 44808000 */ mtc1 $zero, $f16 -/* 006B94 80005F94 00000000 */ nop -.L80005F98: -/* 006B98 80005F98 44805000 */ mtc1 $zero, $f10 -/* 006B9C 80005F9C 46008221 */ cvt.d.s $f8, $f16 -/* 006BA0 80005FA0 46285032 */ c.eq.d $f10, $f8 -/* 006BA4 80005FA4 3C01800E */ lui $at, 0x800e -/* 006BA8 80005FA8 45010034 */ bc1t .L8000607C -/* 006BAC 80005FAC 00000000 */ nop -/* 006BB0 80005FB0 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0) -/* 006BB4 80005FB4 00000000 */ nop -/* 006BB8 80005FB8 80820185 */ lb $v0, 0x185($a0) -/* 006BBC 80005FBC 00000000 */ nop -/* 006BC0 80005FC0 1040002E */ beqz $v0, .L8000607C -/* 006BC4 80005FC4 00000000 */ nop -/* 006BC8 80005FC8 2841000B */ slti $at, $v0, 0xb -/* 006BCC 80005FCC 10200003 */ beqz $at, .L80005FDC -/* 006BD0 80005FD0 2405000A */ li $a1, 10 -/* 006BD4 80005FD4 10000001 */ b .L80005FDC -/* 006BD8 80005FD8 00402825 */ move $a1, $v0 -.L80005FDC: -/* 006BDC 80005FDC 44853000 */ mtc1 $a1, $f6 -/* 006BE0 80005FE0 3C01800E */ lui $at, %hi(D_800E4C5C) # $at, 0x800e -/* 006BE4 80005FE4 468032A1 */ cvt.d.w $f10, $f6 -/* 006BE8 80005FE8 C4254C50 */ lwc1 $f5, %lo(D_800E4C50)($at) -/* 006BEC 80005FEC C4244C54 */ lwc1 $f4, %lo(D_800E4C54)($at) -/* 006BF0 80005FF0 8D230000 */ lw $v1, ($t1) -/* 006BF4 80005FF4 462A2002 */ mul.d $f0, $f4, $f10 -/* 006BF8 80005FF8 C46C003C */ lwc1 $f12, 0x3c($v1) -/* 006BFC 80005FFC 0005C980 */ sll $t9, $a1, 6 -/* 006C00 80006000 460060A1 */ cvt.d.s $f2, $f12 -/* 006C04 80006004 4620103C */ c.lt.d $f2, $f0 -/* 006C08 80006008 00000000 */ nop -/* 006C0C 8000600C 4500000E */ bc1f .L80006048 -/* 006C10 80006010 00000000 */ nop -/* 006C14 80006014 44994000 */ mtc1 $t9, $f8 -/* 006C18 80006018 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012 -/* 006C1C 8000601C 468041A1 */ cvt.d.w $f6, $f8 -/* 006C20 80006020 00000000 */ nop -/* 006C24 80006024 46260103 */ div.d $f4, $f0, $f6 -/* 006C28 80006028 46241280 */ add.d $f10, $f2, $f4 -/* 006C2C 8000602C 46205220 */ cvt.s.d $f8, $f10 -/* 006C30 80006030 E468003C */ swc1 $f8, 0x3c($v1) -/* 006C34 80006034 8D230000 */ lw $v1, ($t1) -/* 006C38 80006038 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0) -/* 006C3C 8000603C C46C003C */ lwc1 $f12, 0x3c($v1) -/* 006C40 80006040 1000001C */ b .L800060B4 -/* 006C44 80006044 460C7380 */ add.s $f14, $f14, $f12 -.L80006048: -/* 006C48 80006048 4622003C */ c.lt.d $f0, $f2 -/* 006C4C 8000604C 00000000 */ nop -/* 006C50 80006050 45000008 */ bc1f .L80006074 -/* 006C54 80006054 00000000 */ nop -/* 006C58 80006058 462001A0 */ cvt.s.d $f6, $f0 -/* 006C5C 8000605C 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012 -/* 006C60 80006060 E466003C */ swc1 $f6, 0x3c($v1) -/* 006C64 80006064 8D230000 */ lw $v1, ($t1) -/* 006C68 80006068 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0) -/* 006C6C 8000606C C46C003C */ lwc1 $f12, 0x3c($v1) -/* 006C70 80006070 00000000 */ nop -.L80006074: -/* 006C74 80006074 1000000F */ b .L800060B4 -/* 006C78 80006078 460C7380 */ add.s $f14, $f14, $f12 -.L8000607C: -/* 006C7C 8000607C 8D230000 */ lw $v1, ($t1) -/* 006C80 80006080 C4294C58 */ lwc1 $f9, %lo(D_800E4C58)($at) -/* 006C84 80006084 C464003C */ lwc1 $f4, 0x3c($v1) -/* 006C88 80006088 C4284C5C */ lwc1 $f8, %lo(D_800E4C5C)($at) -/* 006C8C 8000608C 460022A1 */ cvt.d.s $f10, $f4 -/* 006C90 80006090 46285182 */ mul.d $f6, $f10, $f8 -/* 006C94 80006094 3C048012 */ lui $a0, %hi(D_80119C3C) # $a0, 0x8012 -/* 006C98 80006098 46203120 */ cvt.s.d $f4, $f6 -/* 006C9C 8000609C E464003C */ swc1 $f4, 0x3c($v1) -/* 006CA0 800060A0 8D230000 */ lw $v1, ($t1) -/* 006CA4 800060A4 8C849C3C */ lw $a0, %lo(D_80119C3C)($a0) -/* 006CA8 800060A8 C46A003C */ lwc1 $f10, 0x3c($v1) -/* 006CAC 800060AC 00000000 */ nop -/* 006CB0 800060B0 460A7380 */ add.s $f14, $f14, $f10 -.L800060B4: -/* 006CB4 800060B4 C46800CC */ lwc1 $f8, 0xcc($v1) -/* 006CB8 800060B8 C46A00A4 */ lwc1 $f10, 0xa4($v1) -/* 006CBC 800060BC 46088182 */ mul.s $f6, $f16, $f8 -/* 006CC0 800060C0 848A0000 */ lh $t2, ($a0) -/* 006CC4 800060C4 2401FFFF */ li $at, -1 -/* 006CC8 800060C8 46123100 */ add.s $f4, $f6, $f18 -/* 006CCC 800060CC 460A2200 */ add.s $f8, $f4, $f10 -/* 006CD0 800060D0 11410016 */ beq $t2, $at, .L8000612C -/* 006CD4 800060D4 46087380 */ add.s $f14, $f14, $f8 -/* 006CD8 800060D8 808C01E2 */ lb $t4, 0x1e2($a0) -/* 006CDC 800060DC 00000000 */ nop -/* 006CE0 800060E0 15800012 */ bnez $t4, .L8000612C -/* 006CE4 800060E4 00000000 */ nop -/* 006CE8 800060E8 808B01E5 */ lb $t3, 0x1e5($a0) -/* 006CEC 800060EC 00000000 */ nop -/* 006CF0 800060F0 29610004 */ slti $at, $t3, 4 -/* 006CF4 800060F4 1020000D */ beqz $at, .L8000612C -/* 006CF8 800060F8 00000000 */ nop -/* 006CFC 800060FC 0C0044E7 */ jal func_8001139C -/* 006D00 80006100 E7AE001C */ swc1 $f14, 0x1c($sp) -/* 006D04 80006104 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 -/* 006D08 80006108 C7AE001C */ lwc1 $f14, 0x1c($sp) -/* 006D0C 8000610C 14400007 */ bnez $v0, .L8000612C -/* 006D10 80006110 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 -/* 006D14 80006114 3C01800E */ lui $at, %hi(D_800E4C64) # $at, 0x800e -/* 006D18 80006118 C4254C60 */ lwc1 $f5, %lo(D_800E4C60)($at) -/* 006D1C 8000611C C4244C64 */ lwc1 $f4, %lo(D_800E4C64)($at) -/* 006D20 80006120 460071A1 */ cvt.d.s $f6, $f14 -/* 006D24 80006124 46243280 */ add.d $f10, $f6, $f4 -/* 006D28 80006128 462053A0 */ cvt.s.d $f14, $f10 -.L8000612C: -/* 006D2C 8000612C 8D230000 */ lw $v1, ($t1) -/* 006D30 80006130 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 006D34 80006134 C460005C */ lwc1 $f0, 0x5c($v1) -/* 006D38 80006138 44811000 */ mtc1 $at, $f2 -/* 006D3C 8000613C 46007201 */ sub.s $f8, $f14, $f0 -/* 006D40 80006140 3C01800E */ lui $at, %hi(D_800E4C68) # $at, 0x800e -/* 006D44 80006144 46024183 */ div.s $f6, $f8, $f2 -/* 006D48 80006148 46060100 */ add.s $f4, $f0, $f6 -/* 006D4C 8000614C E464005C */ swc1 $f4, 0x5c($v1) -/* 006D50 80006150 8D230000 */ lw $v1, ($t1) -/* 006D54 80006154 C42A4C6C */ lwc1 $f10, %lo(D_800E4C6C)($at) -/* 006D58 80006158 C460005C */ lwc1 $f0, 0x5c($v1) -/* 006D5C 8000615C C42B4C68 */ lwc1 $f11, %lo(D_800E4C68)($at) -/* 006D60 80006160 46000221 */ cvt.d.s $f8, $f0 -/* 006D64 80006164 4628503C */ c.lt.d $f10, $f8 -/* 006D68 80006168 3C01800E */ lui $at, %hi(D_800E4C70) # $at, 0x800e -/* 006D6C 8000616C 45000008 */ bc1f .L80006190 -/* 006D70 80006170 00000000 */ nop -/* 006D74 80006174 C4264C70 */ lwc1 $f6, %lo(D_800E4C70)($at) -/* 006D78 80006178 00000000 */ nop -/* 006D7C 8000617C E466005C */ swc1 $f6, 0x5c($v1) -/* 006D80 80006180 8D230000 */ lw $v1, ($t1) -/* 006D84 80006184 00000000 */ nop -/* 006D88 80006188 C460005C */ lwc1 $f0, 0x5c($v1) -/* 006D8C 8000618C 00000000 */ nop -.L80006190: -/* 006D90 80006190 3C01800E */ lui $at, %hi(D_800E4C74) # $at, 0x800e -/* 006D94 80006194 C4244C74 */ lwc1 $f4, %lo(D_800E4C74)($at) -/* 006D98 80006198 24050001 */ li $a1, 1 -/* 006D9C 8000619C 46040282 */ mul.s $f10, $f0, $f4 -/* 006DA0 800061A0 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 006DA4 800061A4 444DF800 */ cfc1 $t5, $31 -/* 006DA8 800061A8 44C5F800 */ ctc1 $a1, $31 -/* 006DAC 800061AC 00000000 */ nop -/* 006DB0 800061B0 46005224 */ cvt.w.s $f8, $f10 -/* 006DB4 800061B4 4445F800 */ cfc1 $a1, $31 -/* 006DB8 800061B8 00000000 */ nop -/* 006DBC 800061BC 30A50078 */ andi $a1, $a1, 0x78 -/* 006DC0 800061C0 10A00012 */ beqz $a1, .L8000620C -/* 006DC4 800061C4 00000000 */ nop -/* 006DC8 800061C8 44814000 */ mtc1 $at, $f8 -/* 006DCC 800061CC 24050001 */ li $a1, 1 -/* 006DD0 800061D0 46085201 */ sub.s $f8, $f10, $f8 -/* 006DD4 800061D4 3C018000 */ lui $at, 0x8000 -/* 006DD8 800061D8 44C5F800 */ ctc1 $a1, $31 -/* 006DDC 800061DC 00000000 */ nop -/* 006DE0 800061E0 46004224 */ cvt.w.s $f8, $f8 -/* 006DE4 800061E4 4445F800 */ cfc1 $a1, $31 -/* 006DE8 800061E8 00000000 */ nop -/* 006DEC 800061EC 30A50078 */ andi $a1, $a1, 0x78 -/* 006DF0 800061F0 14A00004 */ bnez $a1, .L80006204 -/* 006DF4 800061F4 00000000 */ nop -/* 006DF8 800061F8 44054000 */ mfc1 $a1, $f8 -/* 006DFC 800061FC 10000007 */ b .L8000621C -/* 006E00 80006200 00A12825 */ or $a1, $a1, $at -.L80006204: -/* 006E04 80006204 10000005 */ b .L8000621C -/* 006E08 80006208 2405FFFF */ li $a1, -1 -.L8000620C: -/* 006E0C 8000620C 44054000 */ mfc1 $a1, $f8 -/* 006E10 80006210 00000000 */ nop -/* 006E14 80006214 04A0FFFB */ bltz $a1, .L80006204 -/* 006E18 80006218 00000000 */ nop -.L8000621C: -/* 006E1C 8000621C 946F0018 */ lhu $t7, 0x18($v1) -/* 006E20 80006220 30A4FFFF */ andi $a0, $a1, 0xffff -/* 006E24 80006224 44CDF800 */ ctc1 $t5, $31 -/* 006E28 80006228 008F082A */ slt $at, $a0, $t7 -/* 006E2C 8000622C 1420000C */ bnez $at, .L80006260 -/* 006E30 80006230 00001025 */ move $v0, $zero -.L80006234: -/* 006E34 80006234 24420001 */ addiu $v0, $v0, 1 -/* 006E38 80006238 305800FF */ andi $t8, $v0, 0xff -/* 006E3C 8000623C 0018C840 */ sll $t9, $t8, 1 -/* 006E40 80006240 00795021 */ addu $t2, $v1, $t9 -/* 006E44 80006244 954C0018 */ lhu $t4, 0x18($t2) -/* 006E48 80006248 03001025 */ move $v0, $t8 -/* 006E4C 8000624C 008C082A */ slt $at, $a0, $t4 -/* 006E50 80006250 14200003 */ bnez $at, .L80006260 -/* 006E54 80006254 2B010004 */ slti $at, $t8, 4 -/* 006E58 80006258 1420FFF6 */ bnez $at, .L80006234 -/* 006E5C 8000625C 00000000 */ nop -.L80006260: -/* 006E60 80006260 24010004 */ li $at, 4 -/* 006E64 80006264 14410005 */ bne $v0, $at, .L8000627C -/* 006E68 80006268 00402825 */ move $a1, $v0 -/* 006E6C 8000626C 00625821 */ addu $t3, $v1, $v0 -/* 006E70 80006270 9168002C */ lbu $t0, 0x2c($t3) -/* 006E74 80006274 10000045 */ b .L8000638C -/* 006E78 80006278 44882000 */ mtc1 $t0, $f4 -.L8000627C: -/* 006E7C 8000627C 10A00004 */ beqz $a1, .L80006290 -/* 006E80 80006280 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 006E84 80006284 2442FFFF */ addiu $v0, $v0, -1 -/* 006E88 80006288 304500FF */ andi $a1, $v0, 0xff -/* 006E8C 8000628C 00A01025 */ move $v0, $a1 -.L80006290: -/* 006E90 80006290 00027040 */ sll $t6, $v0, 1 -/* 006E94 80006294 006E7821 */ addu $t7, $v1, $t6 -/* 006E98 80006298 0005C840 */ sll $t9, $a1, 1 -/* 006E9C 8000629C 95E60018 */ lhu $a2, 0x18($t7) -/* 006EA0 800062A0 00795021 */ addu $t2, $v1, $t9 -/* 006EA4 800062A4 954C001A */ lhu $t4, 0x1a($t2) -/* 006EA8 800062A8 0086C023 */ subu $t8, $a0, $a2 -/* 006EAC 800062AC 01865823 */ subu $t3, $t4, $a2 -/* 006EB0 800062B0 448B5000 */ mtc1 $t3, $f10 -/* 006EB4 800062B4 44983000 */ mtc1 $t8, $f6 -/* 006EB8 800062B8 46805220 */ cvt.s.w $f8, $f10 -/* 006EBC 800062BC 00657021 */ addu $t6, $v1, $a1 -/* 006EC0 800062C0 00626821 */ addu $t5, $v1, $v0 -/* 006EC4 800062C4 46803120 */ cvt.s.w $f4, $f6 -/* 006EC8 800062C8 91A7002C */ lbu $a3, 0x2c($t5) -/* 006ECC 800062CC 91CF002D */ lbu $t7, 0x2d($t6) -/* 006ED0 800062D0 46082003 */ div.s $f0, $f4, $f8 -/* 006ED4 800062D4 01E7C023 */ subu $t8, $t7, $a3 -/* 006ED8 800062D8 44983000 */ mtc1 $t8, $f6 -/* 006EDC 800062DC 44874000 */ mtc1 $a3, $f8 -/* 006EE0 800062E0 468032A0 */ cvt.s.w $f10, $f6 -/* 006EE4 800062E4 46005102 */ mul.s $f4, $f10, $f0 -/* 006EE8 800062E8 04E10004 */ bgez $a3, .L800062FC -/* 006EEC 800062EC 468041A0 */ cvt.s.w $f6, $f8 -/* 006EF0 800062F0 44815000 */ mtc1 $at, $f10 -/* 006EF4 800062F4 00000000 */ nop -/* 006EF8 800062F8 460A3180 */ add.s $f6, $f6, $f10 -.L800062FC: -/* 006EFC 800062FC 46062200 */ add.s $f8, $f4, $f6 -/* 006F00 80006300 24080001 */ li $t0, 1 -/* 006F04 80006304 4459F800 */ cfc1 $t9, $31 -/* 006F08 80006308 44C8F800 */ ctc1 $t0, $31 -/* 006F0C 8000630C 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 006F10 80006310 460042A4 */ cvt.w.s $f10, $f8 -/* 006F14 80006314 4448F800 */ cfc1 $t0, $31 -/* 006F18 80006318 00000000 */ nop -/* 006F1C 8000631C 31080078 */ andi $t0, $t0, 0x78 -/* 006F20 80006320 11000012 */ beqz $t0, .L8000636C -/* 006F24 80006324 00000000 */ nop -/* 006F28 80006328 44815000 */ mtc1 $at, $f10 -/* 006F2C 8000632C 24080001 */ li $t0, 1 -/* 006F30 80006330 460A4281 */ sub.s $f10, $f8, $f10 -/* 006F34 80006334 3C018000 */ lui $at, 0x8000 -/* 006F38 80006338 44C8F800 */ ctc1 $t0, $31 -/* 006F3C 8000633C 00000000 */ nop -/* 006F40 80006340 460052A4 */ cvt.w.s $f10, $f10 -/* 006F44 80006344 4448F800 */ cfc1 $t0, $31 -/* 006F48 80006348 00000000 */ nop -/* 006F4C 8000634C 31080078 */ andi $t0, $t0, 0x78 -/* 006F50 80006350 15000004 */ bnez $t0, .L80006364 -/* 006F54 80006354 00000000 */ nop -/* 006F58 80006358 44085000 */ mfc1 $t0, $f10 -/* 006F5C 8000635C 10000007 */ b .L8000637C -/* 006F60 80006360 01014025 */ or $t0, $t0, $at -.L80006364: -/* 006F64 80006364 10000005 */ b .L8000637C -/* 006F68 80006368 2408FFFF */ li $t0, -1 -.L8000636C: -/* 006F6C 8000636C 44085000 */ mfc1 $t0, $f10 -/* 006F70 80006370 00000000 */ nop -/* 006F74 80006374 0500FFFB */ bltz $t0, .L80006364 -/* 006F78 80006378 00000000 */ nop -.L8000637C: -/* 006F7C 8000637C 44D9F800 */ ctc1 $t9, $31 -/* 006F80 80006380 310A00FF */ andi $t2, $t0, 0xff -/* 006F84 80006384 01404025 */ move $t0, $t2 -/* 006F88 80006388 44882000 */ mtc1 $t0, $f4 -.L8000638C: -/* 006F8C 8000638C C4600054 */ lwc1 $f0, 0x54($v1) -/* 006F90 80006390 05010005 */ bgez $t0, .L800063A8 -/* 006F94 80006394 468021A0 */ cvt.s.w $f6, $f4 -/* 006F98 80006398 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 006F9C 8000639C 44814000 */ mtc1 $at, $f8 -/* 006FA0 800063A0 00000000 */ nop -/* 006FA4 800063A4 46083180 */ add.s $f6, $f6, $f8 -.L800063A8: -/* 006FA8 800063A8 46003281 */ sub.s $f10, $f6, $f0 -/* 006FAC 800063AC 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 006FB0 800063B0 46025103 */ div.s $f4, $f10, $f2 -/* 006FB4 800063B4 44813000 */ mtc1 $at, $f6 -/* 006FB8 800063B8 44805000 */ mtc1 $zero, $f10 -/* 006FBC 800063BC 46040200 */ add.s $f8, $f0, $f4 -/* 006FC0 800063C0 E4680054 */ swc1 $f8, 0x54($v1) -/* 006FC4 800063C4 8D2C0000 */ lw $t4, ($t1) -/* 006FC8 800063C8 00000000 */ nop -/* 006FCC 800063CC E5860060 */ swc1 $f6, 0x60($t4) -/* 006FD0 800063D0 8D2B0000 */ lw $t3, ($t1) -/* 006FD4 800063D4 00000000 */ nop -/* 006FD8 800063D8 E56A0058 */ swc1 $f10, 0x58($t3) -/* 006FDC 800063DC 8FBF0014 */ lw $ra, 0x14($sp) -/* 006FE0 800063E0 27BD0038 */ addiu $sp, $sp, 0x38 -/* 006FE4 800063E4 03E00008 */ jr $ra -/* 006FE8 800063E8 00000000 */ nop - -glabel func_800063EC -/* 006FEC 800063EC 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 006FF0 800063F0 AFBF0014 */ sw $ra, 0x14($sp) -/* 006FF4 800063F4 AFA40030 */ sw $a0, 0x30($sp) -/* 006FF8 800063F8 AFA50034 */ sw $a1, 0x34($sp) -/* 006FFC 800063FC AFA60038 */ sw $a2, 0x38($sp) -/* 007000 80006400 0C0044E7 */ jal func_8001139C -/* 007004 80006404 AFA7003C */ sw $a3, 0x3c($sp) -/* 007008 80006408 1440000F */ bnez $v0, .L80006448 -/* 00700C 8000640C 00000000 */ nop -/* 007010 80006410 8FA20030 */ lw $v0, 0x30($sp) -/* 007014 80006414 00000000 */ nop -/* 007018 80006418 C440001C */ lwc1 $f0, 0x1c($v0) -/* 00701C 8000641C C4420024 */ lwc1 $f2, 0x24($v0) -/* 007020 80006420 46000102 */ mul.s $f4, $f0, $f0 -/* 007024 80006424 C44E0020 */ lwc1 $f14, 0x20($v0) -/* 007028 80006428 46021182 */ mul.s $f6, $f2, $f2 -/* 00702C 8000642C 00000000 */ nop -/* 007030 80006430 460E7282 */ mul.s $f10, $f14, $f14 -/* 007034 80006434 46062200 */ add.s $f8, $f4, $f6 -/* 007038 80006438 0C0326B4 */ jal sqrtf -/* 00703C 8000643C 460A4300 */ add.s $f12, $f8, $f10 -/* 007040 80006440 10000003 */ b .L80006450 -/* 007044 80006444 46000486 */ mov.s $f18, $f0 -.L80006448: -/* 007048 80006448 44809000 */ mtc1 $zero, $f18 -/* 00704C 8000644C 00000000 */ nop -.L80006450: -/* 007050 80006450 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 007054 80006454 44812000 */ mtc1 $at, $f4 -/* 007058 80006458 00000000 */ nop -/* 00705C 8000645C 4604903C */ c.lt.s $f18, $f4 -/* 007060 80006460 00000000 */ nop -/* 007064 80006464 45000014 */ bc1f .L800064B8 -/* 007068 80006468 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 -/* 00706C 8000646C 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 -/* 007070 80006470 8D230000 */ lw $v1, ($t1) -/* 007074 80006474 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 007078 80006478 906E0037 */ lbu $t6, 0x37($v1) -/* 00707C 8000647C C4600054 */ lwc1 $f0, 0x54($v1) -/* 007080 80006480 448E3000 */ mtc1 $t6, $f6 -/* 007084 80006484 05C10004 */ bgez $t6, .L80006498 -/* 007088 80006488 46803220 */ cvt.s.w $f8, $f6 -/* 00708C 8000648C 44815000 */ mtc1 $at, $f10 -/* 007090 80006490 00000000 */ nop -/* 007094 80006494 460A4200 */ add.s $f8, $f8, $f10 -.L80006498: -/* 007098 80006498 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 00709C 8000649C 44813000 */ mtc1 $at, $f6 -/* 0070A0 800064A0 46004101 */ sub.s $f4, $f8, $f0 -/* 0070A4 800064A4 00000000 */ nop -/* 0070A8 800064A8 46062283 */ div.s $f10, $f4, $f6 -/* 0070AC 800064AC 460A0200 */ add.s $f8, $f0, $f10 -/* 0070B0 800064B0 10000092 */ b .L800066FC -/* 0070B4 800064B4 E4680054 */ swc1 $f8, 0x54($v1) -.L800064B8: -/* 0070B8 800064B8 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 -/* 0070BC 800064BC 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 -/* 0070C0 800064C0 8D230000 */ lw $v1, ($t1) -/* 0070C4 800064C4 3C01800E */ lui $at, %hi(D_800E4C78) # $at, 0x800e -/* 0070C8 800064C8 C4264C78 */ lwc1 $f6, %lo(D_800E4C78)($at) -/* 0070CC 800064CC C464005C */ lwc1 $f4, 0x5c($v1) -/* 0070D0 800064D0 24050001 */ li $a1, 1 -/* 0070D4 800064D4 46062282 */ mul.s $f10, $f4, $f6 -/* 0070D8 800064D8 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 0070DC 800064DC 444FF800 */ cfc1 $t7, $31 -/* 0070E0 800064E0 44C5F800 */ ctc1 $a1, $31 -/* 0070E4 800064E4 00000000 */ nop -/* 0070E8 800064E8 46005224 */ cvt.w.s $f8, $f10 -/* 0070EC 800064EC 4445F800 */ cfc1 $a1, $31 -/* 0070F0 800064F0 00000000 */ nop -/* 0070F4 800064F4 30A50078 */ andi $a1, $a1, 0x78 -/* 0070F8 800064F8 10A00012 */ beqz $a1, .L80006544 -/* 0070FC 800064FC 00000000 */ nop -/* 007100 80006500 44814000 */ mtc1 $at, $f8 -/* 007104 80006504 24050001 */ li $a1, 1 -/* 007108 80006508 46085201 */ sub.s $f8, $f10, $f8 -/* 00710C 8000650C 3C018000 */ lui $at, 0x8000 -/* 007110 80006510 44C5F800 */ ctc1 $a1, $31 -/* 007114 80006514 00000000 */ nop -/* 007118 80006518 46004224 */ cvt.w.s $f8, $f8 -/* 00711C 8000651C 4445F800 */ cfc1 $a1, $31 -/* 007120 80006520 00000000 */ nop -/* 007124 80006524 30A50078 */ andi $a1, $a1, 0x78 -/* 007128 80006528 14A00004 */ bnez $a1, .L8000653C -/* 00712C 8000652C 00000000 */ nop -/* 007130 80006530 44054000 */ mfc1 $a1, $f8 -/* 007134 80006534 10000007 */ b .L80006554 -/* 007138 80006538 00A12825 */ or $a1, $a1, $at -.L8000653C: -/* 00713C 8000653C 10000005 */ b .L80006554 -/* 007140 80006540 2405FFFF */ li $a1, -1 -.L80006544: -/* 007144 80006544 44054000 */ mfc1 $a1, $f8 -/* 007148 80006548 00000000 */ nop -/* 00714C 8000654C 04A0FFFB */ bltz $a1, .L8000653C -/* 007150 80006550 00000000 */ nop -.L80006554: -/* 007154 80006554 94790018 */ lhu $t9, 0x18($v1) -/* 007158 80006558 30A4FFFF */ andi $a0, $a1, 0xffff -/* 00715C 8000655C 44CFF800 */ ctc1 $t7, $31 -/* 007160 80006560 0099082A */ slt $at, $a0, $t9 -/* 007164 80006564 1420000C */ bnez $at, .L80006598 -/* 007168 80006568 00001025 */ move $v0, $zero -.L8000656C: -/* 00716C 8000656C 24420001 */ addiu $v0, $v0, 1 -/* 007170 80006570 304A00FF */ andi $t2, $v0, 0xff -/* 007174 80006574 000A5840 */ sll $t3, $t2, 1 -/* 007178 80006578 006B6021 */ addu $t4, $v1, $t3 -/* 00717C 8000657C 958D0018 */ lhu $t5, 0x18($t4) -/* 007180 80006580 01401025 */ move $v0, $t2 -/* 007184 80006584 008D082A */ slt $at, $a0, $t5 -/* 007188 80006588 14200003 */ bnez $at, .L80006598 -/* 00718C 8000658C 29410004 */ slti $at, $t2, 4 -/* 007190 80006590 1420FFF6 */ bnez $at, .L8000656C -/* 007194 80006594 00000000 */ nop -.L80006598: -/* 007198 80006598 24010004 */ li $at, 4 -/* 00719C 8000659C 14410005 */ bne $v0, $at, .L800065B4 -/* 0071A0 800065A0 00402825 */ move $a1, $v0 -/* 0071A4 800065A4 00627021 */ addu $t6, $v1, $v0 -/* 0071A8 800065A8 91C8002C */ lbu $t0, 0x2c($t6) -/* 0071AC 800065AC 10000045 */ b .L800066C4 -/* 0071B0 800065B0 44883000 */ mtc1 $t0, $f6 -.L800065B4: -/* 0071B4 800065B4 10A00004 */ beqz $a1, .L800065C8 -/* 0071B8 800065B8 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0071BC 800065BC 2442FFFF */ addiu $v0, $v0, -1 -/* 0071C0 800065C0 304500FF */ andi $a1, $v0, 0xff -/* 0071C4 800065C4 00A01025 */ move $v0, $a1 -.L800065C8: -/* 0071C8 800065C8 0002C040 */ sll $t8, $v0, 1 -/* 0071CC 800065CC 0078C821 */ addu $t9, $v1, $t8 -/* 0071D0 800065D0 00055840 */ sll $t3, $a1, 1 -/* 0071D4 800065D4 97260018 */ lhu $a2, 0x18($t9) -/* 0071D8 800065D8 006B6021 */ addu $t4, $v1, $t3 -/* 0071DC 800065DC 958D001A */ lhu $t5, 0x1a($t4) -/* 0071E0 800065E0 00865023 */ subu $t2, $a0, $a2 -/* 0071E4 800065E4 01A67023 */ subu $t6, $t5, $a2 -/* 0071E8 800065E8 448E5000 */ mtc1 $t6, $f10 -/* 0071EC 800065EC 448A2000 */ mtc1 $t2, $f4 -/* 0071F0 800065F0 46805220 */ cvt.s.w $f8, $f10 -/* 0071F4 800065F4 0065C021 */ addu $t8, $v1, $a1 -/* 0071F8 800065F8 00627821 */ addu $t7, $v1, $v0 -/* 0071FC 800065FC 468021A0 */ cvt.s.w $f6, $f4 -/* 007200 80006600 91E7002C */ lbu $a3, 0x2c($t7) -/* 007204 80006604 9319002D */ lbu $t9, 0x2d($t8) -/* 007208 80006608 46083003 */ div.s $f0, $f6, $f8 -/* 00720C 8000660C 03275023 */ subu $t2, $t9, $a3 -/* 007210 80006610 448A2000 */ mtc1 $t2, $f4 -/* 007214 80006614 44874000 */ mtc1 $a3, $f8 -/* 007218 80006618 468022A0 */ cvt.s.w $f10, $f4 -/* 00721C 8000661C 46005182 */ mul.s $f6, $f10, $f0 -/* 007220 80006620 04E10004 */ bgez $a3, .L80006634 -/* 007224 80006624 46804120 */ cvt.s.w $f4, $f8 -/* 007228 80006628 44815000 */ mtc1 $at, $f10 -/* 00722C 8000662C 00000000 */ nop -/* 007230 80006630 460A2100 */ add.s $f4, $f4, $f10 -.L80006634: -/* 007234 80006634 46043200 */ add.s $f8, $f6, $f4 -/* 007238 80006638 24080001 */ li $t0, 1 -/* 00723C 8000663C 444BF800 */ cfc1 $t3, $31 -/* 007240 80006640 44C8F800 */ ctc1 $t0, $31 -/* 007244 80006644 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 007248 80006648 460042A4 */ cvt.w.s $f10, $f8 -/* 00724C 8000664C 4448F800 */ cfc1 $t0, $31 -/* 007250 80006650 00000000 */ nop -/* 007254 80006654 31080078 */ andi $t0, $t0, 0x78 -/* 007258 80006658 11000012 */ beqz $t0, .L800066A4 -/* 00725C 8000665C 00000000 */ nop -/* 007260 80006660 44815000 */ mtc1 $at, $f10 -/* 007264 80006664 24080001 */ li $t0, 1 -/* 007268 80006668 460A4281 */ sub.s $f10, $f8, $f10 -/* 00726C 8000666C 3C018000 */ lui $at, 0x8000 -/* 007270 80006670 44C8F800 */ ctc1 $t0, $31 -/* 007274 80006674 00000000 */ nop -/* 007278 80006678 460052A4 */ cvt.w.s $f10, $f10 -/* 00727C 8000667C 4448F800 */ cfc1 $t0, $31 -/* 007280 80006680 00000000 */ nop -/* 007284 80006684 31080078 */ andi $t0, $t0, 0x78 -/* 007288 80006688 15000004 */ bnez $t0, .L8000669C -/* 00728C 8000668C 00000000 */ nop -/* 007290 80006690 44085000 */ mfc1 $t0, $f10 -/* 007294 80006694 10000007 */ b .L800066B4 -/* 007298 80006698 01014025 */ or $t0, $t0, $at -.L8000669C: -/* 00729C 8000669C 10000005 */ b .L800066B4 -/* 0072A0 800066A0 2408FFFF */ li $t0, -1 -.L800066A4: -/* 0072A4 800066A4 44085000 */ mfc1 $t0, $f10 -/* 0072A8 800066A8 00000000 */ nop -/* 0072AC 800066AC 0500FFFB */ bltz $t0, .L8000669C -/* 0072B0 800066B0 00000000 */ nop -.L800066B4: -/* 0072B4 800066B4 44CBF800 */ ctc1 $t3, $31 -/* 0072B8 800066B8 310C00FF */ andi $t4, $t0, 0xff -/* 0072BC 800066BC 01804025 */ move $t0, $t4 -/* 0072C0 800066C0 44883000 */ mtc1 $t0, $f6 -.L800066C4: -/* 0072C4 800066C4 C4600054 */ lwc1 $f0, 0x54($v1) -/* 0072C8 800066C8 05010005 */ bgez $t0, .L800066E0 -/* 0072CC 800066CC 46803120 */ cvt.s.w $f4, $f6 -/* 0072D0 800066D0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0072D4 800066D4 44814000 */ mtc1 $at, $f8 -/* 0072D8 800066D8 00000000 */ nop -/* 0072DC 800066DC 46082100 */ add.s $f4, $f4, $f8 -.L800066E0: -/* 0072E0 800066E0 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 0072E4 800066E4 44813000 */ mtc1 $at, $f6 -/* 0072E8 800066E8 46002281 */ sub.s $f10, $f4, $f0 -/* 0072EC 800066EC 00000000 */ nop -/* 0072F0 800066F0 46065203 */ div.s $f8, $f10, $f6 -/* 0072F4 800066F4 46080100 */ add.s $f4, $f0, $f8 -/* 0072F8 800066F8 E4640054 */ swc1 $f4, 0x54($v1) -.L800066FC: -/* 0072FC 800066FC 8D230000 */ lw $v1, ($t1) -/* 007300 80006700 8FAD0038 */ lw $t5, 0x38($sp) -/* 007304 80006704 C46E00D4 */ lwc1 $f14, 0xd4($v1) -/* 007308 80006708 31AE8000 */ andi $t6, $t5, 0x8000 -/* 00730C 8000670C 11C0001A */ beqz $t6, .L80006778 -/* 007310 80006710 8FB8003C */ lw $t8, 0x3c($sp) -/* 007314 80006714 8FAF003C */ lw $t7, 0x3c($sp) -/* 007318 80006718 C46A00B0 */ lwc1 $f10, 0xb0($v1) -/* 00731C 8000671C 448F3000 */ mtc1 $t7, $f6 -/* 007320 80006720 00000000 */ nop -/* 007324 80006724 46803220 */ cvt.s.w $f8, $f6 -/* 007328 80006728 C46600A4 */ lwc1 $f6, 0xa4($v1) -/* 00732C 8000672C 46085102 */ mul.s $f4, $f10, $f8 -/* 007330 80006730 46043280 */ add.s $f10, $f6, $f4 -/* 007334 80006734 E46A00A4 */ swc1 $f10, 0xa4($v1) -/* 007338 80006738 8D230000 */ lw $v1, ($t1) -/* 00733C 8000673C 00000000 */ nop -/* 007340 80006740 C46200C8 */ lwc1 $f2, 0xc8($v1) -/* 007344 80006744 C46000A4 */ lwc1 $f0, 0xa4($v1) -/* 007348 80006748 00000000 */ nop -/* 00734C 8000674C 4600103C */ c.lt.s $f2, $f0 -/* 007350 80006750 00000000 */ nop -/* 007354 80006754 45000014 */ bc1f .L800067A8 -/* 007358 80006758 00000000 */ nop -/* 00735C 8000675C E46200A4 */ swc1 $f2, 0xa4($v1) -/* 007360 80006760 8D230000 */ lw $v1, ($t1) -/* 007364 80006764 00000000 */ nop -/* 007368 80006768 C46000A4 */ lwc1 $f0, 0xa4($v1) -/* 00736C 8000676C 1000000F */ b .L800067AC -/* 007370 80006770 44801000 */ mtc1 $zero, $f2 -/* 007374 80006774 8FB8003C */ lw $t8, 0x3c($sp) -.L80006778: -/* 007378 80006778 C46800B4 */ lwc1 $f8, 0xb4($v1) -/* 00737C 8000677C 44983000 */ mtc1 $t8, $f6 -/* 007380 80006780 00000000 */ nop -/* 007384 80006784 46803120 */ cvt.s.w $f4, $f6 -/* 007388 80006788 C46600A4 */ lwc1 $f6, 0xa4($v1) -/* 00738C 8000678C 46044282 */ mul.s $f10, $f8, $f4 -/* 007390 80006790 460A3201 */ sub.s $f8, $f6, $f10 -/* 007394 80006794 E46800A4 */ swc1 $f8, 0xa4($v1) -/* 007398 80006798 8D230000 */ lw $v1, ($t1) -/* 00739C 8000679C 00000000 */ nop -/* 0073A0 800067A0 C46000A4 */ lwc1 $f0, 0xa4($v1) -/* 0073A4 800067A4 00000000 */ nop -.L800067A8: -/* 0073A8 800067A8 44801000 */ mtc1 $zero, $f2 -.L800067AC: -/* 0073AC 800067AC 00000000 */ nop -/* 0073B0 800067B0 4602003C */ c.lt.s $f0, $f2 -/* 0073B4 800067B4 00000000 */ nop -/* 0073B8 800067B8 45000002 */ bc1f .L800067C4 -/* 0073BC 800067BC 00000000 */ nop -/* 0073C0 800067C0 E46200A4 */ swc1 $f2, 0xa4($v1) -.L800067C4: -/* 0073C4 800067C4 E7AE0018 */ swc1 $f14, 0x18($sp) -/* 0073C8 800067C8 0C028064 */ jal func_800A0190 -/* 0073CC 800067CC E7B2002C */ swc1 $f18, 0x2c($sp) -/* 0073D0 800067D0 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 -/* 0073D4 800067D4 C7AE0018 */ lwc1 $f14, 0x18($sp) -/* 0073D8 800067D8 C7B2002C */ lwc1 $f18, 0x2c($sp) -/* 0073DC 800067DC 14400005 */ bnez $v0, .L800067F4 -/* 0073E0 800067E0 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 -/* 0073E4 800067E4 44802000 */ mtc1 $zero, $f4 -/* 0073E8 800067E8 8D390000 */ lw $t9, ($t1) -/* 0073EC 800067EC 00000000 */ nop -/* 0073F0 800067F0 E72400A4 */ swc1 $f4, 0xa4($t9) -.L800067F4: -/* 0073F4 800067F4 8D2A0000 */ lw $t2, ($t1) -/* 0073F8 800067F8 8FAB0030 */ lw $t3, 0x30($sp) -/* 0073FC 800067FC C54600A4 */ lwc1 $f6, 0xa4($t2) -/* 007400 80006800 85640002 */ lh $a0, 2($t3) -/* 007404 80006804 46067380 */ add.s $f14, $f14, $f6 -/* 007408 80006808 E7B2002C */ swc1 $f18, 0x2c($sp) -/* 00740C 8000680C 0C01C1F1 */ jal func_800707C4 -/* 007410 80006810 E7AE0018 */ swc1 $f14, 0x18($sp) -/* 007414 80006814 8FAC0030 */ lw $t4, 0x30($sp) -/* 007418 80006818 E7A00028 */ swc1 $f0, 0x28($sp) -/* 00741C 8000681C 85840004 */ lh $a0, 4($t4) -/* 007420 80006820 0C01C1F1 */ jal func_800707C4 -/* 007424 80006824 00000000 */ nop -/* 007428 80006828 3C098012 */ lui $t1, %hi(D_80119C38) # $t1, 0x8012 -/* 00742C 8000682C 25299C38 */ addiu $t1, %lo(D_80119C38) # addiu $t1, $t1, -0x63c8 -/* 007430 80006830 8D230000 */ lw $v1, ($t1) -/* 007434 80006834 C7A80028 */ lwc1 $f8, 0x28($sp) -/* 007438 80006838 C46A00C4 */ lwc1 $f10, 0xc4($v1) -/* 00743C 8000683C C46400C0 */ lwc1 $f4, 0xc0($v1) -/* 007440 80006840 46085302 */ mul.s $f12, $f10, $f8 -/* 007444 80006844 44803000 */ mtc1 $zero, $f6 -/* 007448 80006848 C7B2002C */ lwc1 $f18, 0x2c($sp) -/* 00744C 8000684C 3C014024 */ li $at, 0x40240000 # 2.562500 -/* 007450 80006850 46002082 */ mul.s $f2, $f4, $f0 -/* 007454 80006854 C7AE0018 */ lwc1 $f14, 0x18($sp) -/* 007458 80006858 44818800 */ mtc1 $at, $f17 -/* 00745C 8000685C 44808000 */ mtc1 $zero, $f16 -/* 007460 80006860 4606103C */ c.lt.s $f2, $f6 -/* 007464 80006864 3C0D8012 */ lui $t5, %hi(D_80119C3C) # $t5, 0x8012 -/* 007468 80006868 45000002 */ bc1f .L80006874 -/* 00746C 8000686C 46009021 */ cvt.d.s $f0, $f18 -/* 007470 80006870 46001087 */ neg.s $f2, $f2 -.L80006874: -/* 007474 80006874 4620803C */ c.lt.d $f16, $f0 -/* 007478 80006878 46026280 */ add.s $f10, $f12, $f2 -/* 00747C 8000687C 45000004 */ bc1f .L80006890 -/* 007480 80006880 460A7380 */ add.s $f14, $f14, $f10 -/* 007484 80006884 46300201 */ sub.d $f8, $f0, $f16 -/* 007488 80006888 10000003 */ b .L80006898 -/* 00748C 8000688C 462044A0 */ cvt.s.d $f18, $f8 -.L80006890: -/* 007490 80006890 44809000 */ mtc1 $zero, $f18 -/* 007494 80006894 00000000 */ nop -.L80006898: -/* 007498 80006898 C46400CC */ lwc1 $f4, 0xcc($v1) -/* 00749C 8000689C 44805800 */ mtc1 $zero, $f11 -/* 0074A0 800068A0 44805000 */ mtc1 $zero, $f10 -/* 0074A4 800068A4 46049182 */ mul.s $f6, $f18, $f4 -/* 0074A8 800068A8 46009221 */ cvt.d.s $f8, $f18 -/* 0074AC 800068AC 46285032 */ c.eq.d $f10, $f8 -/* 0074B0 800068B0 3C01800E */ lui $at, 0x800e -/* 0074B4 800068B4 45010032 */ bc1t .L80006980 -/* 0074B8 800068B8 46067380 */ add.s $f14, $f14, $f6 -/* 0074BC 800068BC 8DAD9C3C */ lw $t5, %lo(D_80119C3C)($t5) -/* 0074C0 800068C0 00000000 */ nop -/* 0074C4 800068C4 81A20185 */ lb $v0, 0x185($t5) -/* 0074C8 800068C8 00000000 */ nop -/* 0074CC 800068CC 1040002C */ beqz $v0, .L80006980 -/* 0074D0 800068D0 00000000 */ nop -/* 0074D4 800068D4 2841000B */ slti $at, $v0, 0xb -/* 0074D8 800068D8 10200003 */ beqz $at, .L800068E8 -/* 0074DC 800068DC 2404000A */ li $a0, 10 -/* 0074E0 800068E0 10000001 */ b .L800068E8 -/* 0074E4 800068E4 00402025 */ move $a0, $v0 -.L800068E8: -/* 0074E8 800068E8 44843000 */ mtc1 $a0, $f6 -/* 0074EC 800068EC 3C01800E */ lui $at, %hi(D_800E4C8C) # $at, 0x800e -/* 0074F0 800068F0 468032A1 */ cvt.d.w $f10, $f6 -/* 0074F4 800068F4 C4254C80 */ lwc1 $f5, %lo(D_800E4C80)($at) -/* 0074F8 800068F8 C4244C84 */ lwc1 $f4, %lo(D_800E4C84)($at) -/* 0074FC 800068FC C46C003C */ lwc1 $f12, 0x3c($v1) -/* 007500 80006900 462A2002 */ mul.d $f0, $f4, $f10 -/* 007504 80006904 460060A1 */ cvt.d.s $f2, $f12 -/* 007508 80006908 00047180 */ sll $t6, $a0, 6 -/* 00750C 8000690C 4620103C */ c.lt.d $f2, $f0 -/* 007510 80006910 00000000 */ nop -/* 007514 80006914 4500000E */ bc1f .L80006950 -/* 007518 80006918 00000000 */ nop -/* 00751C 8000691C 448E4000 */ mtc1 $t6, $f8 -/* 007520 80006920 00000000 */ nop -/* 007524 80006924 468041A1 */ cvt.d.w $f6, $f8 -/* 007528 80006928 00000000 */ nop -/* 00752C 8000692C 46260103 */ div.d $f4, $f0, $f6 -/* 007530 80006930 46241280 */ add.d $f10, $f2, $f4 -/* 007534 80006934 46205220 */ cvt.s.d $f8, $f10 -/* 007538 80006938 E468003C */ swc1 $f8, 0x3c($v1) -/* 00753C 8000693C 8D230000 */ lw $v1, ($t1) -/* 007540 80006940 00000000 */ nop -/* 007544 80006944 C46C003C */ lwc1 $f12, 0x3c($v1) -/* 007548 80006948 10000019 */ b .L800069B0 -/* 00754C 8000694C 460C7380 */ add.s $f14, $f14, $f12 -.L80006950: -/* 007550 80006950 4622003C */ c.lt.d $f0, $f2 -/* 007554 80006954 00000000 */ nop -/* 007558 80006958 45000007 */ bc1f .L80006978 -/* 00755C 8000695C 00000000 */ nop -/* 007560 80006960 462001A0 */ cvt.s.d $f6, $f0 -/* 007564 80006964 E466003C */ swc1 $f6, 0x3c($v1) -/* 007568 80006968 8D230000 */ lw $v1, ($t1) -/* 00756C 8000696C 00000000 */ nop -/* 007570 80006970 C46C003C */ lwc1 $f12, 0x3c($v1) -/* 007574 80006974 00000000 */ nop -.L80006978: -/* 007578 80006978 1000000D */ b .L800069B0 -/* 00757C 8000697C 460C7380 */ add.s $f14, $f14, $f12 -.L80006980: -/* 007580 80006980 C464003C */ lwc1 $f4, 0x3c($v1) -/* 007584 80006984 C4294C88 */ lwc1 $f9, %lo(D_800E4C88)($at) -/* 007588 80006988 C4284C8C */ lwc1 $f8, %lo(D_800E4C8C)($at) -/* 00758C 8000698C 460022A1 */ cvt.d.s $f10, $f4 -/* 007590 80006990 46285182 */ mul.d $f6, $f10, $f8 -/* 007594 80006994 46203120 */ cvt.s.d $f4, $f6 -/* 007598 80006998 E464003C */ swc1 $f4, 0x3c($v1) -/* 00759C 8000699C 8D230000 */ lw $v1, ($t1) -/* 0075A0 800069A0 00000000 */ nop -/* 0075A4 800069A4 C46A003C */ lwc1 $f10, 0x3c($v1) -/* 0075A8 800069A8 00000000 */ nop -/* 0075AC 800069AC 460A7380 */ add.s $f14, $f14, $f10 -.L800069B0: -/* 0075B0 800069B0 C460005C */ lwc1 $f0, 0x5c($v1) -/* 0075B4 800069B4 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 0075B8 800069B8 44813000 */ mtc1 $at, $f6 -/* 0075BC 800069BC 46007201 */ sub.s $f8, $f14, $f0 -/* 0075C0 800069C0 3C01800E */ lui $at, %hi(D_800E4C90) # $at, 0x800e -/* 0075C4 800069C4 46064103 */ div.s $f4, $f8, $f6 -/* 0075C8 800069C8 46040280 */ add.s $f10, $f0, $f4 -/* 0075CC 800069CC E46A005C */ swc1 $f10, 0x5c($v1) -/* 0075D0 800069D0 8D230000 */ lw $v1, ($t1) -/* 0075D4 800069D4 C4284C94 */ lwc1 $f8, %lo(D_800E4C94)($at) -/* 0075D8 800069D8 C466005C */ lwc1 $f6, 0x5c($v1) -/* 0075DC 800069DC C4294C90 */ lwc1 $f9, %lo(D_800E4C90)($at) -/* 0075E0 800069E0 46003121 */ cvt.d.s $f4, $f6 -/* 0075E4 800069E4 4624403C */ c.lt.d $f8, $f4 -/* 0075E8 800069E8 3C01800E */ lui $at, %hi(D_800E4C98) # $at, 0x800e -/* 0075EC 800069EC 45000006 */ bc1f .L80006A08 -/* 0075F0 800069F0 00000000 */ nop -/* 0075F4 800069F4 C42A4C98 */ lwc1 $f10, %lo(D_800E4C98)($at) -/* 0075F8 800069F8 00000000 */ nop -/* 0075FC 800069FC E46A005C */ swc1 $f10, 0x5c($v1) -/* 007600 80006A00 8D230000 */ lw $v1, ($t1) -/* 007604 80006A04 00000000 */ nop -.L80006A08: -/* 007608 80006A08 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 00760C 80006A0C 44813000 */ mtc1 $at, $f6 -/* 007610 80006A10 44804000 */ mtc1 $zero, $f8 -/* 007614 80006A14 E4660060 */ swc1 $f6, 0x60($v1) -/* 007618 80006A18 8D2F0000 */ lw $t7, ($t1) -/* 00761C 80006A1C 3C028012 */ lui $v0, %hi(D_80119C3C) # $v0, 0x8012 -/* 007620 80006A20 E5E80058 */ swc1 $f8, 0x58($t7) -/* 007624 80006A24 8C429C3C */ lw $v0, %lo(D_80119C3C)($v0) -/* 007628 80006A28 2401FFFF */ li $at, -1 -/* 00762C 80006A2C 84580000 */ lh $t8, ($v0) -/* 007630 80006A30 00000000 */ nop -/* 007634 80006A34 13010011 */ beq $t8, $at, .L80006A7C -/* 007638 80006A38 00000000 */ nop -/* 00763C 80006A3C 805901DB */ lb $t9, 0x1db($v0) -/* 007640 80006A40 00000000 */ nop -/* 007644 80006A44 1320000D */ beqz $t9, .L80006A7C -/* 007648 80006A48 00000000 */ nop -/* 00764C 80006A4C 8D230000 */ lw $v1, ($t1) -/* 007650 80006A50 240B0001 */ li $t3, 1 -/* 007654 80006A54 906A00D8 */ lbu $t2, 0xd8($v1) -/* 007658 80006A58 2404013D */ li $a0, 317 -/* 00765C 80006A5C 15400007 */ bnez $t2, .L80006A7C -/* 007660 80006A60 00000000 */ nop -/* 007664 80006A64 A06B00D8 */ sb $t3, 0xd8($v1) -/* 007668 80006A68 8D250000 */ lw $a1, ($t1) -/* 00766C 80006A6C 0C000741 */ jal func_80001D04 -/* 007670 80006A70 24A500DC */ addiu $a1, $a1, 0xdc -/* 007674 80006A74 10000011 */ b .L80006ABC -/* 007678 80006A78 8FBF0014 */ lw $ra, 0x14($sp) -.L80006A7C: -/* 00767C 80006A7C 804C01DB */ lb $t4, 0x1db($v0) -/* 007680 80006A80 00000000 */ nop -/* 007684 80006A84 1580000D */ bnez $t4, .L80006ABC -/* 007688 80006A88 8FBF0014 */ lw $ra, 0x14($sp) -/* 00768C 80006A8C 8D2D0000 */ lw $t5, ($t1) -/* 007690 80006A90 00000000 */ nop -/* 007694 80006A94 A1A000D8 */ sb $zero, 0xd8($t5) -/* 007698 80006A98 8D2E0000 */ lw $t6, ($t1) -/* 00769C 80006A9C 00000000 */ nop -/* 0076A0 80006AA0 8DC400DC */ lw $a0, 0xdc($t6) -/* 0076A4 80006AA4 00000000 */ nop -/* 0076A8 80006AA8 10800004 */ beqz $a0, .L80006ABC -/* 0076AC 80006AAC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0076B0 80006AB0 0C001223 */ jal func_8000488C -/* 0076B4 80006AB4 00000000 */ nop -/* 0076B8 80006AB8 8FBF0014 */ lw $ra, 0x14($sp) -.L80006ABC: -/* 0076BC 80006ABC 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0076C0 80006AC0 03E00008 */ jr $ra -/* 0076C4 80006AC4 00000000 */ nop - -glabel func_80006AC8 -/* 0076C8 80006AC8 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0076CC 80006ACC AFBF0024 */ sw $ra, 0x24($sp) -/* 0076D0 80006AD0 AFB20020 */ sw $s2, 0x20($sp) -/* 0076D4 80006AD4 AFB1001C */ sw $s1, 0x1c($sp) -/* 0076D8 80006AD8 AFB00018 */ sw $s0, 0x18($sp) -/* 0076DC 80006ADC AFA40028 */ sw $a0, 0x28($sp) -/* 0076E0 80006AE0 8C8F0064 */ lw $t7, 0x64($a0) -/* 0076E4 80006AE4 3C128012 */ lui $s2, %hi(D_80119C38) # $s2, 0x8012 -/* 0076E8 80006AE8 8DE50118 */ lw $a1, 0x118($t7) -/* 0076EC 80006AEC 26529C38 */ addiu $s2, %lo(D_80119C38) # addiu $s2, $s2, -0x63c8 -/* 0076F0 80006AF0 10A0003C */ beqz $a1, .L80006BE4 -/* 0076F4 80006AF4 AE450000 */ sw $a1, ($s2) -/* 0076F8 80006AF8 00008025 */ move $s0, $zero -/* 0076FC 80006AFC 24110008 */ li $s1, 8 -/* 007700 80006B00 00B0C821 */ addu $t9, $a1, $s0 -.L80006B04: -/* 007704 80006B04 8F240048 */ lw $a0, 0x48($t9) -/* 007708 80006B08 00000000 */ nop -/* 00770C 80006B0C 10800009 */ beqz $a0, .L80006B34 -/* 007710 80006B10 00000000 */ nop -/* 007714 80006B14 0C001223 */ jal func_8000488C -/* 007718 80006B18 00000000 */ nop -/* 00771C 80006B1C 8E480000 */ lw $t0, ($s2) -/* 007720 80006B20 00000000 */ nop -/* 007724 80006B24 01104821 */ addu $t1, $t0, $s0 -/* 007728 80006B28 AD200048 */ sw $zero, 0x48($t1) -/* 00772C 80006B2C 8E450000 */ lw $a1, ($s2) -/* 007730 80006B30 00000000 */ nop -.L80006B34: -/* 007734 80006B34 26100004 */ addiu $s0, $s0, 4 -/* 007738 80006B38 1611FFF2 */ bne $s0, $s1, .L80006B04 -/* 00773C 80006B3C 00B0C821 */ addu $t9, $a1, $s0 -/* 007740 80006B40 8CA40050 */ lw $a0, 0x50($a1) -/* 007744 80006B44 00000000 */ nop -/* 007748 80006B48 10800008 */ beqz $a0, .L80006B6C -/* 00774C 80006B4C 00000000 */ nop -/* 007750 80006B50 0C001223 */ jal func_8000488C -/* 007754 80006B54 00000000 */ nop -/* 007758 80006B58 8E4A0000 */ lw $t2, ($s2) -/* 00775C 80006B5C 00000000 */ nop -/* 007760 80006B60 AD400050 */ sw $zero, 0x50($t2) -/* 007764 80006B64 8E450000 */ lw $a1, ($s2) -/* 007768 80006B68 00000000 */ nop -.L80006B6C: -/* 00776C 80006B6C 8CA400A8 */ lw $a0, 0xa8($a1) -/* 007770 80006B70 00000000 */ nop -/* 007774 80006B74 10800008 */ beqz $a0, .L80006B98 -/* 007778 80006B78 00000000 */ nop -/* 00777C 80006B7C 0C001223 */ jal func_8000488C -/* 007780 80006B80 00000000 */ nop -/* 007784 80006B84 8E4B0000 */ lw $t3, ($s2) -/* 007788 80006B88 00000000 */ nop -/* 00778C 80006B8C AD6000A8 */ sw $zero, 0xa8($t3) -/* 007790 80006B90 8E450000 */ lw $a1, ($s2) -/* 007794 80006B94 00000000 */ nop -.L80006B98: -/* 007798 80006B98 3C028012 */ lui $v0, %hi(D_80119C30) # $v0, 0x8012 -/* 00779C 80006B9C 3C038012 */ lui $v1, %hi(D_80119C38) # $v1, 0x8012 -/* 0077A0 80006BA0 24639C38 */ addiu $v1, %lo(D_80119C38) # addiu $v1, $v1, -0x63c8 -/* 0077A4 80006BA4 24429C30 */ addiu $v0, %lo(D_80119C30) # addiu $v0, $v0, -0x63d0 -.L80006BA8: -/* 0077A8 80006BA8 8C4C0000 */ lw $t4, ($v0) -/* 0077AC 80006BAC 00000000 */ nop -/* 0077B0 80006BB0 14AC0002 */ bne $a1, $t4, .L80006BBC -/* 0077B4 80006BB4 00000000 */ nop -/* 0077B8 80006BB8 AC400000 */ sw $zero, ($v0) -.L80006BBC: -/* 0077BC 80006BBC 24420004 */ addiu $v0, $v0, 4 -/* 0077C0 80006BC0 1443FFF9 */ bne $v0, $v1, .L80006BA8 -/* 0077C4 80006BC4 00000000 */ nop -/* 0077C8 80006BC8 0C01C450 */ jal func_80071140 -/* 0077CC 80006BCC 00A02025 */ move $a0, $a1 -/* 0077D0 80006BD0 8FAD0028 */ lw $t5, 0x28($sp) -/* 0077D4 80006BD4 00000000 */ nop -/* 0077D8 80006BD8 8DAE0064 */ lw $t6, 0x64($t5) -/* 0077DC 80006BDC 00000000 */ nop -/* 0077E0 80006BE0 ADC00118 */ sw $zero, 0x118($t6) -.L80006BE4: -/* 0077E4 80006BE4 8FBF0024 */ lw $ra, 0x24($sp) -/* 0077E8 80006BE8 8FB00018 */ lw $s0, 0x18($sp) -/* 0077EC 80006BEC 8FB1001C */ lw $s1, 0x1c($sp) -/* 0077F0 80006BF0 8FB20020 */ lw $s2, 0x20($sp) -/* 0077F4 80006BF4 03E00008 */ jr $ra -/* 0077F8 80006BF8 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80006BFC -/* 0077FC 80006BFC 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 007800 80006C00 AFBF0014 */ sw $ra, 0x14($sp) -/* 007804 80006C04 AFA70054 */ sw $a3, 0x54($sp) -/* 007808 80006C08 8CC20064 */ lw $v0, 0x64($a2) -/* 00780C 80006C0C 8C830064 */ lw $v1, 0x64($a0) -/* 007810 80006C10 8C4E0118 */ lw $t6, 0x118($v0) -/* 007814 80006C14 3C018012 */ lui $at, %hi(D_80119C38) # $at, 0x8012 -/* 007818 80006C18 3C0F8012 */ lui $t7, %hi(D_80119C38) # $t7, 0x8012 -/* 00781C 80006C1C AC2E9C38 */ sw $t6, %lo(D_80119C38)($at) -/* 007820 80006C20 8DEF9C38 */ lw $t7, %lo(D_80119C38)($t7) -/* 007824 80006C24 00000000 */ nop -/* 007828 80006C28 11E000E4 */ beqz $t7, .L80006FBC -/* 00782C 80006C2C 8FBF0014 */ lw $ra, 0x14($sp) -/* 007830 80006C30 10A0000E */ beqz $a1, .L80006C6C -/* 007834 80006C34 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 007838 80006C38 84780000 */ lh $t8, ($v1) -/* 00783C 80006C3C 44814000 */ mtc1 $at, $f8 -/* 007840 80006C40 0018C900 */ sll $t9, $t8, 4 -/* 007844 80006C44 0338C821 */ addu $t9, $t9, $t8 -/* 007848 80006C48 0019C880 */ sll $t9, $t9, 2 -/* 00784C 80006C4C 00B91021 */ addu $v0, $a1, $t9 -/* 007850 80006C50 C4440010 */ lwc1 $f4, 0x10($v0) -/* 007854 80006C54 C452000C */ lwc1 $f18, 0xc($v0) -/* 007858 80006C58 E7A40038 */ swc1 $f4, 0x38($sp) -/* 00785C 80006C5C C4460014 */ lwc1 $f6, 0x14($v0) -/* 007860 80006C60 E7A8001C */ swc1 $f8, 0x1c($sp) -/* 007864 80006C64 10000047 */ b .L80006D84 -/* 007868 80006C68 E7A60034 */ swc1 $f6, 0x34($sp) -.L80006C6C: -/* 00786C 80006C6C C48A0010 */ lwc1 $f10, 0x10($a0) -/* 007870 80006C70 C492000C */ lwc1 $f18, 0xc($a0) -/* 007874 80006C74 E7AA0038 */ swc1 $f10, 0x38($sp) -/* 007878 80006C78 C4840014 */ lwc1 $f4, 0x14($a0) -/* 00787C 80006C7C 24010001 */ li $at, 1 -/* 007880 80006C80 E7A40034 */ swc1 $f4, 0x34($sp) -/* 007884 80006C84 806201D6 */ lb $v0, 0x1d6($v1) -/* 007888 80006C88 00000000 */ nop -/* 00788C 80006C8C 10400005 */ beqz $v0, .L80006CA4 -/* 007890 80006C90 00000000 */ nop -/* 007894 80006C94 1041000E */ beq $v0, $at, .L80006CD0 -/* 007898 80006C98 00000000 */ nop -/* 00789C 80006C9C 1000001B */ b .L80006D0C -/* 0078A0 80006CA0 C480001C */ lwc1 $f0, 0x1c($a0) -.L80006CA4: -/* 0078A4 80006CA4 C460002C */ lwc1 $f0, 0x2c($v1) -/* 0078A8 80006CA8 44803000 */ mtc1 $zero, $f6 -/* 0078AC 80006CAC 00000000 */ nop -/* 0078B0 80006CB0 4600303E */ c.le.s $f6, $f0 -/* 0078B4 80006CB4 00000000 */ nop -/* 0078B8 80006CB8 45000003 */ bc1f .L80006CC8 -/* 0078BC 80006CBC 00000000 */ nop -/* 0078C0 80006CC0 10000021 */ b .L80006D48 -/* 0078C4 80006CC4 46000086 */ mov.s $f2, $f0 -.L80006CC8: -/* 0078C8 80006CC8 1000001F */ b .L80006D48 -/* 0078CC 80006CCC 46000087 */ neg.s $f2, $f0 -.L80006CD0: -/* 0078D0 80006CD0 C480001C */ lwc1 $f0, 0x1c($a0) -/* 0078D4 80006CD4 C4820024 */ lwc1 $f2, 0x24($a0) -/* 0078D8 80006CD8 46000202 */ mul.s $f8, $f0, $f0 -/* 0078DC 80006CDC E7B2003C */ swc1 $f18, 0x3c($sp) -/* 0078E0 80006CE0 AFA60050 */ sw $a2, 0x50($sp) -/* 0078E4 80006CE4 AFA30044 */ sw $v1, 0x44($sp) -/* 0078E8 80006CE8 46021282 */ mul.s $f10, $f2, $f2 -/* 0078EC 80006CEC 0C0326B4 */ jal sqrtf -/* 0078F0 80006CF0 460A4300 */ add.s $f12, $f8, $f10 -/* 0078F4 80006CF4 8FA30044 */ lw $v1, 0x44($sp) -/* 0078F8 80006CF8 8FA60050 */ lw $a2, 0x50($sp) -/* 0078FC 80006CFC C7B2003C */ lwc1 $f18, 0x3c($sp) -/* 007900 80006D00 10000011 */ b .L80006D48 -/* 007904 80006D04 46000086 */ mov.s $f2, $f0 -/* 007908 80006D08 C480001C */ lwc1 $f0, 0x1c($a0) -.L80006D0C: -/* 00790C 80006D0C C4820024 */ lwc1 $f2, 0x24($a0) -/* 007910 80006D10 46000102 */ mul.s $f4, $f0, $f0 -/* 007914 80006D14 C48E0020 */ lwc1 $f14, 0x20($a0) -/* 007918 80006D18 E7B2003C */ swc1 $f18, 0x3c($sp) -/* 00791C 80006D1C AFA60050 */ sw $a2, 0x50($sp) -/* 007920 80006D20 46021182 */ mul.s $f6, $f2, $f2 -/* 007924 80006D24 AFA30044 */ sw $v1, 0x44($sp) -/* 007928 80006D28 460E7282 */ mul.s $f10, $f14, $f14 -/* 00792C 80006D2C 46062200 */ add.s $f8, $f4, $f6 -/* 007930 80006D30 0C0326B4 */ jal sqrtf -/* 007934 80006D34 460A4300 */ add.s $f12, $f8, $f10 -/* 007938 80006D38 8FA30044 */ lw $v1, 0x44($sp) -/* 00793C 80006D3C 8FA60050 */ lw $a2, 0x50($sp) -/* 007940 80006D40 C7B2003C */ lwc1 $f18, 0x3c($sp) -/* 007944 80006D44 46000086 */ mov.s $f2, $f0 -.L80006D48: -/* 007948 80006D48 3C014170 */ li $at, 0x41700000 # 15.000000 -/* 00794C 80006D4C 44818000 */ mtc1 $at, $f16 -/* 007950 80006D50 00000000 */ nop -/* 007954 80006D54 4602803C */ c.lt.s $f16, $f2 -/* 007958 80006D58 00000000 */ nop -/* 00795C 80006D5C 45000003 */ bc1f .L80006D6C -/* 007960 80006D60 00000000 */ nop -/* 007964 80006D64 46008086 */ mov.s $f2, $f16 -/* 007968 80006D68 00000000 */ nop -.L80006D6C: -/* 00796C 80006D6C 46101183 */ div.s $f6, $f2, $f16 -/* 007970 80006D70 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 007974 80006D74 44812000 */ mtc1 $at, $f4 -/* 007978 80006D78 00000000 */ nop -/* 00797C 80006D7C 46062201 */ sub.s $f8, $f4, $f6 -/* 007980 80006D80 E7A8001C */ swc1 $f8, 0x1c($sp) -.L80006D84: -/* 007984 80006D84 C4CA000C */ lwc1 $f10, 0xc($a2) -/* 007988 80006D88 C4C40010 */ lwc1 $f4, 0x10($a2) -/* 00798C 80006D8C C7A60038 */ lwc1 $f6, 0x38($sp) -/* 007990 80006D90 46125001 */ sub.s $f0, $f10, $f18 -/* 007994 80006D94 C7AA0034 */ lwc1 $f10, 0x34($sp) -/* 007998 80006D98 46062081 */ sub.s $f2, $f4, $f6 -/* 00799C 80006D9C C4C80014 */ lwc1 $f8, 0x14($a2) -/* 0079A0 80006DA0 46000102 */ mul.s $f4, $f0, $f0 -/* 0079A4 80006DA4 460A4381 */ sub.s $f14, $f8, $f10 -/* 0079A8 80006DA8 AFA30044 */ sw $v1, 0x44($sp) -/* 0079AC 80006DAC 46021182 */ mul.s $f6, $f2, $f2 -/* 0079B0 80006DB0 00000000 */ nop -/* 0079B4 80006DB4 460E7282 */ mul.s $f10, $f14, $f14 -/* 0079B8 80006DB8 46062200 */ add.s $f8, $f4, $f6 -/* 0079BC 80006DBC 0C0326B4 */ jal sqrtf -/* 0079C0 80006DC0 460A4300 */ add.s $f12, $f8, $f10 -/* 0079C4 80006DC4 8FA30044 */ lw $v1, 0x44($sp) -/* 0079C8 80006DC8 E7A00020 */ swc1 $f0, 0x20($sp) -/* 0079CC 80006DCC 84680000 */ lh $t0, ($v1) -/* 0079D0 80006DD0 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012 -/* 0079D4 80006DD4 8C429C38 */ lw $v0, %lo(D_80119C38)($v0) -/* 0079D8 80006DD8 8FAB0054 */ lw $t3, 0x54($sp) -/* 0079DC 80006DDC 00084880 */ sll $t1, $t0, 2 -/* 0079E0 80006DE0 448B4000 */ mtc1 $t3, $f8 -/* 0079E4 80006DE4 00495021 */ addu $t2, $v0, $t1 -/* 0079E8 80006DE8 C544006C */ lwc1 $f4, 0x6c($t2) -/* 0079EC 80006DEC 468042A0 */ cvt.s.w $f10, $f8 -/* 0079F0 80006DF0 3C014170 */ li $at, 0x41700000 # 15.000000 -/* 0079F4 80006DF4 44818000 */ mtc1 $at, $f16 -/* 0079F8 80006DF8 46002181 */ sub.s $f6, $f4, $f0 -/* 0079FC 80006DFC 3C01C170 */ li $at, 0xC1700000 # -15.000000 -/* 007A00 80006E00 460A3083 */ div.s $f2, $f6, $f10 -/* 007A04 80006E04 4602803C */ c.lt.s $f16, $f2 -/* 007A08 80006E08 00000000 */ nop -/* 007A0C 80006E0C 45000003 */ bc1f .L80006E1C -/* 007A10 80006E10 00000000 */ nop -/* 007A14 80006E14 10000008 */ b .L80006E38 -/* 007A18 80006E18 46008086 */ mov.s $f2, $f16 -.L80006E1C: -/* 007A1C 80006E1C 44810000 */ mtc1 $at, $f0 -/* 007A20 80006E20 00000000 */ nop -/* 007A24 80006E24 4600103C */ c.lt.s $f2, $f0 -/* 007A28 80006E28 00000000 */ nop -/* 007A2C 80006E2C 45000002 */ bc1f .L80006E38 -/* 007A30 80006E30 00000000 */ nop -/* 007A34 80006E34 46000086 */ mov.s $f2, $f0 -.L80006E38: -/* 007A38 80006E38 C44C005C */ lwc1 $f12, 0x5c($v0) -/* 007A3C 80006E3C E7A20024 */ swc1 $f2, 0x24($sp) -/* 007A40 80006E40 0C001FE9 */ jal func_80007FA4 -/* 007A44 80006E44 AFA30044 */ sw $v1, 0x44($sp) -/* 007A48 80006E48 3C01428C */ li $at, 0x428C0000 # 70.000000 -/* 007A4C 80006E4C 44816000 */ mtc1 $at, $f12 -/* 007A50 80006E50 C7A20024 */ lwc1 $f2, 0x24($sp) -/* 007A54 80006E54 3C01800E */ lui $at, %hi(D_800E4CA4) # $at, 0x800e -/* 007A58 80006E58 46026100 */ add.s $f4, $f12, $f2 -/* 007A5C 80006E5C C4254CA0 */ lwc1 $f5, %lo(D_800E4CA0)($at) -/* 007A60 80006E60 46026201 */ sub.s $f8, $f12, $f2 -/* 007A64 80006E64 00000000 */ nop -/* 007A68 80006E68 46082183 */ div.s $f6, $f4, $f8 -/* 007A6C 80006E6C C4244CA4 */ lwc1 $f4, %lo(D_800E4CA4)($at) -/* 007A70 80006E70 460002A1 */ cvt.d.s $f10, $f0 -/* 007A74 80006E74 46245202 */ mul.d $f8, $f10, $f4 -/* 007A78 80006E78 444CF800 */ cfc1 $t4, $31 -/* 007A7C 80006E7C 00000000 */ nop -/* 007A80 80006E80 35810003 */ ori $at, $t4, 3 -/* 007A84 80006E84 38210002 */ xori $at, $at, 2 -/* 007A88 80006E88 44C1F800 */ ctc1 $at, $31 -/* 007A8C 80006E8C 00000000 */ nop -/* 007A90 80006E90 462042A4 */ cvt.w.d $f10, $f8 -/* 007A94 80006E94 440D5000 */ mfc1 $t5, $f10 -/* 007A98 80006E98 44CCF800 */ ctc1 $t4, $31 -/* 007A9C 80006E9C 448D2000 */ mtc1 $t5, $f4 -/* 007AA0 80006EA0 00000000 */ nop -/* 007AA4 80006EA4 46802220 */ cvt.s.w $f8, $f4 -/* 007AA8 80006EA8 46083282 */ mul.s $f10, $f6, $f8 -/* 007AAC 80006EAC 444EF800 */ cfc1 $t6, $31 -/* 007AB0 80006EB0 00000000 */ nop -/* 007AB4 80006EB4 35C10003 */ ori $at, $t6, 3 -/* 007AB8 80006EB8 38210002 */ xori $at, $at, 2 -/* 007ABC 80006EBC 44C1F800 */ ctc1 $at, $31 -/* 007AC0 80006EC0 00000000 */ nop -/* 007AC4 80006EC4 46005124 */ cvt.w.s $f4, $f10 -/* 007AC8 80006EC8 44042000 */ mfc1 $a0, $f4 -/* 007ACC 80006ECC 44CEF800 */ ctc1 $t6, $31 -/* 007AD0 80006ED0 0C032678 */ jal func_800C99E0 -/* 007AD4 80006ED4 00000000 */ nop -/* 007AD8 80006ED8 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012 -/* 007ADC 80006EDC 8C429C38 */ lw $v0, %lo(D_80119C38)($v0) -/* 007AE0 80006EE0 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 007AE4 80006EE4 C446005C */ lwc1 $f6, 0x5c($v0) -/* 007AE8 80006EE8 C4420068 */ lwc1 $f2, 0x68($v0) -/* 007AEC 80006EEC 46060201 */ sub.s $f8, $f0, $f6 -/* 007AF0 80006EF0 44812000 */ mtc1 $at, $f4 -/* 007AF4 80006EF4 46024281 */ sub.s $f10, $f8, $f2 -/* 007AF8 80006EF8 8FA30044 */ lw $v1, 0x44($sp) -/* 007AFC 80006EFC 46045183 */ div.s $f6, $f10, $f4 -/* 007B00 80006F00 3C01800E */ lui $at, %hi(D_800E4CA8) # $at, 0x800e -/* 007B04 80006F04 46061200 */ add.s $f8, $f2, $f6 -/* 007B08 80006F08 E4480068 */ swc1 $f8, 0x68($v0) -/* 007B0C 80006F0C 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012 -/* 007B10 80006F10 8C429C38 */ lw $v0, %lo(D_80119C38)($v0) -/* 007B14 80006F14 C7A4001C */ lwc1 $f4, 0x1c($sp) -/* 007B18 80006F18 C44A0068 */ lwc1 $f10, 0x68($v0) -/* 007B1C 80006F1C 00000000 */ nop -/* 007B20 80006F20 46045182 */ mul.s $f6, $f10, $f4 -/* 007B24 80006F24 E4460068 */ swc1 $f6, 0x68($v0) -/* 007B28 80006F28 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012 -/* 007B2C 80006F2C 8C429C38 */ lw $v0, %lo(D_80119C38)($v0) -/* 007B30 80006F30 C42A4CAC */ lwc1 $f10, %lo(D_800E4CAC)($at) -/* 007B34 80006F34 C4480068 */ lwc1 $f8, 0x68($v0) -/* 007B38 80006F38 C42B4CA8 */ lwc1 $f11, %lo(D_800E4CA8)($at) -/* 007B3C 80006F3C 46004321 */ cvt.d.s $f12, $f8 -/* 007B40 80006F40 462C503C */ c.lt.d $f10, $f12 -/* 007B44 80006F44 3C01800E */ lui $at, 0x800e -/* 007B48 80006F48 45000009 */ bc1f .L80006F70 -/* 007B4C 80006F4C 00000000 */ nop -/* 007B50 80006F50 3C01800E */ lui $at, %hi(D_800E4CBC) # $at, 0x800e -/* 007B54 80006F54 C4244CB0 */ lwc1 $f4, %lo(D_800E4CB0)($at) -/* 007B58 80006F58 00000000 */ nop -/* 007B5C 80006F5C E4440068 */ swc1 $f4, 0x68($v0) -/* 007B60 80006F60 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012 -/* 007B64 80006F64 8C429C38 */ lw $v0, %lo(D_80119C38)($v0) -/* 007B68 80006F68 1000000F */ b .L80006FA8 -/* 007B6C 80006F6C 846F0000 */ lh $t7, ($v1) -.L80006F70: -/* 007B70 80006F70 C4274CB8 */ lwc1 $f7, %lo(D_800E4CB8)($at) -/* 007B74 80006F74 C4264CBC */ lwc1 $f6, %lo(D_800E4CBC)($at) -/* 007B78 80006F78 3C01800E */ lui $at, %hi(D_800E4CC0) # $at, 0x800e -/* 007B7C 80006F7C 4626603C */ c.lt.d $f12, $f6 -/* 007B80 80006F80 00000000 */ nop -/* 007B84 80006F84 45000007 */ bc1f .L80006FA4 -/* 007B88 80006F88 00000000 */ nop -/* 007B8C 80006F8C C4284CC0 */ lwc1 $f8, %lo(D_800E4CC0)($at) -/* 007B90 80006F90 00000000 */ nop -/* 007B94 80006F94 E4480068 */ swc1 $f8, 0x68($v0) -/* 007B98 80006F98 3C028012 */ lui $v0, %hi(D_80119C38) # $v0, 0x8012 -/* 007B9C 80006F9C 8C429C38 */ lw $v0, %lo(D_80119C38)($v0) -/* 007BA0 80006FA0 00000000 */ nop -.L80006FA4: -/* 007BA4 80006FA4 846F0000 */ lh $t7, ($v1) -.L80006FA8: -/* 007BA8 80006FA8 C7AA0020 */ lwc1 $f10, 0x20($sp) -/* 007BAC 80006FAC 000FC080 */ sll $t8, $t7, 2 -/* 007BB0 80006FB0 0058C821 */ addu $t9, $v0, $t8 -/* 007BB4 80006FB4 E72A006C */ swc1 $f10, 0x6c($t9) -/* 007BB8 80006FB8 8FBF0014 */ lw $ra, 0x14($sp) -.L80006FBC: -/* 007BBC 80006FBC 27BD0048 */ addiu $sp, $sp, 0x48 -/* 007BC0 80006FC0 03E00008 */ jr $ra -/* 007BC4 80006FC4 00000000 */ nop - -glabel func_80006FC8 -/* 007BC8 80006FC8 27BDFF38 */ addiu $sp, $sp, -0xc8 -/* 007BCC 80006FCC AFB70064 */ sw $s7, 0x64($sp) -/* 007BD0 80006FD0 30EE00FF */ andi $t6, $a3, 0xff -/* 007BD4 80006FD4 00C0B825 */ move $s7, $a2 -/* 007BD8 80006FD8 AFBF006C */ sw $ra, 0x6c($sp) -/* 007BDC 80006FDC AFBE0068 */ sw $fp, 0x68($sp) -/* 007BE0 80006FE0 AFB60060 */ sw $s6, 0x60($sp) -/* 007BE4 80006FE4 AFB5005C */ sw $s5, 0x5c($sp) -/* 007BE8 80006FE8 AFB40058 */ sw $s4, 0x58($sp) -/* 007BEC 80006FEC AFB30054 */ sw $s3, 0x54($sp) -/* 007BF0 80006FF0 AFB20050 */ sw $s2, 0x50($sp) -/* 007BF4 80006FF4 AFB1004C */ sw $s1, 0x4c($sp) -/* 007BF8 80006FF8 AFB00048 */ sw $s0, 0x48($sp) -/* 007BFC 80006FFC E7BF0040 */ swc1 $f31, 0x40($sp) -/* 007C00 80007000 E7BE0044 */ swc1 $f30, 0x44($sp) -/* 007C04 80007004 E7BD0038 */ swc1 $f29, 0x38($sp) -/* 007C08 80007008 E7BC003C */ swc1 $f28, 0x3c($sp) -/* 007C0C 8000700C E7BB0030 */ swc1 $f27, 0x30($sp) -/* 007C10 80007010 E7BA0034 */ swc1 $f26, 0x34($sp) -/* 007C14 80007014 E7B90028 */ swc1 $f25, 0x28($sp) -/* 007C18 80007018 E7B8002C */ swc1 $f24, 0x2c($sp) -/* 007C1C 8000701C E7B70020 */ swc1 $f23, 0x20($sp) -/* 007C20 80007020 E7B60024 */ swc1 $f22, 0x24($sp) -/* 007C24 80007024 E7B50018 */ swc1 $f21, 0x18($sp) -/* 007C28 80007028 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 007C2C 8000702C AFA400C8 */ sw $a0, 0xc8($sp) -/* 007C30 80007030 AFA500CC */ sw $a1, 0xcc($sp) -/* 007C34 80007034 AFA700D4 */ sw $a3, 0xd4($sp) -/* 007C38 80007038 AFAE007C */ sw $t6, 0x7c($sp) -/* 007C3C 8000703C 19C001C4 */ blez $t6, .L80007750 -/* 007C40 80007040 AFA000AC */ sw $zero, 0xac($sp) -/* 007C44 80007044 3C01800E */ lui $at, %hi(D_800E4CC4) # $at, 0x800e -/* 007C48 80007048 C43E4CC4 */ lwc1 $f30, %lo(D_800E4CC4)($at) -/* 007C4C 8000704C 3C01800E */ lui $at, %hi(D_800E4CCC) # $at, 0x800e -/* 007C50 80007050 3C148012 */ lui $s4, %hi(D_80119C38) # $s4, 0x8012 -/* 007C54 80007054 C43D4CC8 */ lwc1 $f29, %lo(D_800E4CC8)($at) -/* 007C58 80007058 C43C4CCC */ lwc1 $f28, %lo(D_800E4CCC)($at) -/* 007C5C 8000705C 4480C800 */ mtc1 $zero, $f25 -/* 007C60 80007060 4480C000 */ mtc1 $zero, $f24 -/* 007C64 80007064 8FBE00D8 */ lw $fp, 0xd8($sp) -/* 007C68 80007068 26949C38 */ addiu $s4, %lo(D_80119C38) # addiu $s4, $s4, -0x63c8 -/* 007C6C 8000706C 0080B025 */ move $s6, $a0 -.L80007070: -/* 007C70 80007070 8ED80000 */ lw $t8, ($s6) -/* 007C74 80007074 00000000 */ nop -/* 007C78 80007078 8F110064 */ lw $s1, 0x64($t8) -/* 007C7C 8000707C 00000000 */ nop -/* 007C80 80007080 12200004 */ beqz $s1, .L80007094 -/* 007C84 80007084 00000000 */ nop -/* 007C88 80007088 8E390118 */ lw $t9, 0x118($s1) -/* 007C8C 8000708C 10000002 */ b .L80007098 -/* 007C90 80007090 AE990000 */ sw $t9, ($s4) -.L80007094: -/* 007C94 80007094 AE800000 */ sw $zero, ($s4) -.L80007098: -/* 007C98 80007098 8E900000 */ lw $s0, ($s4) -/* 007C9C 8000709C 00000000 */ nop -/* 007CA0 800070A0 120001A6 */ beqz $s0, .L8000773C -/* 007CA4 800070A4 8FB900AC */ lw $t9, 0xac($sp) -/* 007CA8 800070A8 96080000 */ lhu $t0, ($s0) -/* 007CAC 800070AC 00000000 */ nop -/* 007CB0 800070B0 110001A2 */ beqz $t0, .L8000773C -/* 007CB4 800070B4 8FB900AC */ lw $t9, 0xac($sp) -/* 007CB8 800070B8 822901D8 */ lb $t1, 0x1d8($s1) -/* 007CBC 800070BC 0000A825 */ move $s5, $zero -/* 007CC0 800070C0 15200006 */ bnez $t1, .L800070DC -/* 007CC4 800070C4 8FAA00AC */ lw $t2, 0xac($sp) -/* 007CC8 800070C8 0C019944 */ jal func_80066510 -/* 007CCC 800070CC 00000000 */ nop -/* 007CD0 800070D0 10400047 */ beqz $v0, .L800071F0 -/* 007CD4 800070D4 3C013F80 */ lui $at, 0x3f80 -/* 007CD8 800070D8 8FAA00AC */ lw $t2, 0xac($sp) -.L800070DC: -/* 007CDC 800070DC 8EC60000 */ lw $a2, ($s6) -/* 007CE0 800070E0 000A5900 */ sll $t3, $t2, 4 -/* 007CE4 800070E4 016A5821 */ addu $t3, $t3, $t2 -/* 007CE8 800070E8 000B5880 */ sll $t3, $t3, 2 -/* 007CEC 800070EC 02EB1821 */ addu $v1, $s7, $t3 -/* 007CF0 800070F0 C466000C */ lwc1 $f6, 0xc($v1) -/* 007CF4 800070F4 C46A0010 */ lwc1 $f10, 0x10($v1) -/* 007CF8 800070F8 C4720014 */ lwc1 $f18, 0x14($v1) -/* 007CFC 800070FC C4C4000C */ lwc1 $f4, 0xc($a2) -/* 007D00 80007100 C4C80010 */ lwc1 $f8, 0x10($a2) -/* 007D04 80007104 C4D00014 */ lwc1 $f16, 0x14($a2) -/* 007D08 80007108 460A4001 */ sub.s $f0, $f8, $f10 -/* 007D0C 8000710C AFA30070 */ sw $v1, 0x70($sp) -/* 007D10 80007110 E7A000C0 */ swc1 $f0, 0xc0($sp) -/* 007D14 80007114 02E02825 */ move $a1, $s7 -/* 007D18 80007118 03C03825 */ move $a3, $fp -/* 007D1C 8000711C 00C02025 */ move $a0, $a2 -/* 007D20 80007120 46062501 */ sub.s $f20, $f4, $f6 -/* 007D24 80007124 0C001AFF */ jal func_80006BFC -/* 007D28 80007128 46128581 */ sub.s $f22, $f16, $f18 -/* 007D2C 8000712C 4614A102 */ mul.s $f4, $f20, $f20 -/* 007D30 80007130 C7A000C0 */ lwc1 $f0, 0xc0($sp) -/* 007D34 80007134 00000000 */ nop -/* 007D38 80007138 46000182 */ mul.s $f6, $f0, $f0 -/* 007D3C 8000713C 00000000 */ nop -/* 007D40 80007140 4616B282 */ mul.s $f10, $f22, $f22 -/* 007D44 80007144 46062200 */ add.s $f8, $f4, $f6 -/* 007D48 80007148 0C0326B4 */ jal sqrtf -/* 007D4C 8000714C 460A4300 */ add.s $f12, $f8, $f10 -/* 007D50 80007150 8E8C0000 */ lw $t4, ($s4) -/* 007D54 80007154 8FA30070 */ lw $v1, 0x70($sp) -/* 007D58 80007158 E5800084 */ swc1 $f0, 0x84($t4) -/* 007D5C 8000715C 8E900000 */ lw $s0, ($s4) -/* 007D60 80007160 3C01800E */ li $at, 0x800E0000 # -0.000000 -/* 007D64 80007164 C4304CD0 */ lwc1 $f16, %lo(D_800E4CD0)($at) -/* 007D68 80007168 C6020084 */ lwc1 $f2, 0x84($s0) -/* 007D6C 8000716C 00000000 */ nop -/* 007D70 80007170 4610103C */ c.lt.s $f2, $f16 -/* 007D74 80007174 00000000 */ nop -/* 007D78 80007178 45000011 */ bc1f .L800071C0 -/* 007D7C 8000717C 00000000 */ nop -/* 007D80 80007180 46021482 */ mul.s $f18, $f2, $f2 -/* 007D84 80007184 84660000 */ lh $a2, ($v1) -/* 007D88 80007188 4600A306 */ mov.s $f12, $f20 -/* 007D8C 8000718C 4612F101 */ sub.s $f4, $f30, $f18 -/* 007D90 80007190 00000000 */ nop -/* 007D94 80007194 461E2683 */ div.s $f26, $f4, $f30 -/* 007D98 80007198 4600B386 */ mov.s $f14, $f22 -/* 007D9C 8000719C 461AD682 */ mul.s $f26, $f26, $f26 -/* 007DA0 800071A0 0C002430 */ jal func_800090C0 -/* 007DA4 800071A4 00000000 */ nop -/* 007DA8 800071A8 8E8D0000 */ lw $t5, ($s4) -/* 007DAC 800071AC 00000000 */ nop -/* 007DB0 800071B0 A1A20091 */ sb $v0, 0x91($t5) -/* 007DB4 800071B4 8E900000 */ lw $s0, ($s4) -/* 007DB8 800071B8 10000004 */ b .L800071CC -/* 007DBC 800071BC 822E01D8 */ lb $t6, 0x1d8($s1) -.L800071C0: -/* 007DC0 800071C0 4480D000 */ mtc1 $zero, $f26 -/* 007DC4 800071C4 00000000 */ nop -/* 007DC8 800071C8 822E01D8 */ lb $t6, 0x1d8($s1) -.L800071CC: -/* 007DCC 800071CC 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 007DD0 800071D0 15C00010 */ bnez $t6, .L80007214 -/* 007DD4 800071D4 00000000 */ nop -/* 007DD8 800071D8 44814800 */ mtc1 $at, $f9 -/* 007DDC 800071DC 44804000 */ mtc1 $zero, $f8 -/* 007DE0 800071E0 4600D1A1 */ cvt.d.s $f6, $f26 -/* 007DE4 800071E4 46283282 */ mul.d $f10, $f6, $f8 -/* 007DE8 800071E8 1000000A */ b .L80007214 -/* 007DEC 800071EC 462056A0 */ cvt.s.d $f26, $f10 -.L800071F0: -/* 007DF0 800071F0 8E980000 */ lw $t8, ($s4) -/* 007DF4 800071F4 240F0040 */ li $t7, 64 -/* 007DF8 800071F8 A30F0091 */ sb $t7, 0x91($t8) -/* 007DFC 800071FC 8E990000 */ lw $t9, ($s4) -/* 007E00 80007200 44808000 */ mtc1 $zero, $f16 -/* 007E04 80007204 4481D000 */ mtc1 $at, $f26 -/* 007E08 80007208 E7300068 */ swc1 $f16, 0x68($t9) -/* 007E0C 8000720C 8E900000 */ lw $s0, ($s4) -/* 007E10 80007210 00000000 */ nop -.L80007214: -/* 007E14 80007214 920200A0 */ lbu $v0, 0xa0($s0) -/* 007E18 80007218 00000000 */ nop -/* 007E1C 8000721C 28410046 */ slti $at, $v0, 0x46 -/* 007E20 80007220 1020009D */ beqz $at, .L80007498 -/* 007E24 80007224 00000000 */ nop -/* 007E28 80007228 92040036 */ lbu $a0, 0x36($s0) -/* 007E2C 8000722C 8FA8007C */ lw $t0, 0x7c($sp) -/* 007E30 80007230 10800099 */ beqz $a0, .L80007498 -/* 007E34 80007234 29010003 */ slti $at, $t0, 3 -/* 007E38 80007238 10200097 */ beqz $at, .L80007498 -/* 007E3C 8000723C 00000000 */ nop -/* 007E40 80007240 4600D4A1 */ cvt.d.s $f18, $f26 -/* 007E44 80007244 4632C032 */ c.eq.d $f24, $f18 -/* 007E48 80007248 00000000 */ nop -/* 007E4C 8000724C 45010092 */ bc1t .L80007498 -/* 007E50 80007250 00000000 */ nop -/* 007E54 80007254 92090044 */ lbu $t1, 0x44($s0) -/* 007E58 80007258 00000000 */ nop -/* 007E5C 8000725C 312A0001 */ andi $t2, $t1, 1 -/* 007E60 80007260 1540008D */ bnez $t2, .L80007498 -/* 007E64 80007264 00000000 */ nop -/* 007E68 80007268 44822000 */ mtc1 $v0, $f4 -/* 007E6C 8000726C 04410005 */ bgez $v0, .L80007284 -/* 007E70 80007270 468021A0 */ cvt.s.w $f6, $f4 -/* 007E74 80007274 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 007E78 80007278 44814000 */ mtc1 $at, $f8 -/* 007E7C 8000727C 00000000 */ nop -/* 007E80 80007280 46083180 */ add.s $f6, $f6, $f8 -.L80007284: -/* 007E84 80007284 920B0037 */ lbu $t3, 0x37($s0) -/* 007E88 80007288 3C01428C */ li $at, 0x428C0000 # 70.000000 -/* 007E8C 8000728C 44815000 */ mtc1 $at, $f10 -/* 007E90 80007290 448B8000 */ mtc1 $t3, $f16 -/* 007E94 80007294 460A3503 */ div.s $f20, $f6, $f10 -/* 007E98 80007298 05610005 */ bgez $t3, .L800072B0 -/* 007E9C 8000729C 46808020 */ cvt.s.w $f0, $f16 -/* 007EA0 800072A0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 007EA4 800072A4 44819000 */ mtc1 $at, $f18 -/* 007EA8 800072A8 00000000 */ nop -/* 007EAC 800072AC 46120000 */ add.s $f0, $f0, $f18 -.L800072B0: -/* 007EB0 800072B0 46140102 */ mul.s $f4, $f0, $f20 -/* 007EB4 800072B4 24120001 */ li $s2, 1 -/* 007EB8 800072B8 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 007EBC 800072BC 46040201 */ sub.s $f8, $f0, $f4 -/* 007EC0 800072C0 461A4182 */ mul.s $f6, $f8, $f26 -/* 007EC4 800072C4 444CF800 */ cfc1 $t4, $31 -/* 007EC8 800072C8 44D2F800 */ ctc1 $s2, $31 -/* 007ECC 800072CC 00000000 */ nop -/* 007ED0 800072D0 460032A4 */ cvt.w.s $f10, $f6 -/* 007ED4 800072D4 4452F800 */ cfc1 $s2, $31 -/* 007ED8 800072D8 00000000 */ nop -/* 007EDC 800072DC 32520078 */ andi $s2, $s2, 0x78 -/* 007EE0 800072E0 12400012 */ beqz $s2, .L8000732C -/* 007EE4 800072E4 00000000 */ nop -/* 007EE8 800072E8 44815000 */ mtc1 $at, $f10 -/* 007EEC 800072EC 24120001 */ li $s2, 1 -/* 007EF0 800072F0 460A3281 */ sub.s $f10, $f6, $f10 -/* 007EF4 800072F4 3C018000 */ lui $at, 0x8000 -/* 007EF8 800072F8 44D2F800 */ ctc1 $s2, $31 -/* 007EFC 800072FC 00000000 */ nop -/* 007F00 80007300 460052A4 */ cvt.w.s $f10, $f10 -/* 007F04 80007304 4452F800 */ cfc1 $s2, $31 -/* 007F08 80007308 00000000 */ nop -/* 007F0C 8000730C 32520078 */ andi $s2, $s2, 0x78 -/* 007F10 80007310 16400004 */ bnez $s2, .L80007324 -/* 007F14 80007314 00000000 */ nop -/* 007F18 80007318 44125000 */ mfc1 $s2, $f10 -/* 007F1C 8000731C 10000007 */ b .L8000733C -/* 007F20 80007320 02419025 */ or $s2, $s2, $at -.L80007324: -/* 007F24 80007324 10000005 */ b .L8000733C -/* 007F28 80007328 2412FFFF */ li $s2, -1 -.L8000732C: -/* 007F2C 8000732C 44125000 */ mfc1 $s2, $f10 -/* 007F30 80007330 00000000 */ nop -/* 007F34 80007334 0640FFFB */ bltz $s2, .L80007324 -/* 007F38 80007338 00000000 */ nop -.L8000733C: -/* 007F3C 8000733C 325300FF */ andi $s3, $s2, 0xff -/* 007F40 80007340 44CCF800 */ ctc1 $t4, $31 -/* 007F44 80007344 2A610010 */ slti $at, $s3, 0x10 -/* 007F48 80007348 14200047 */ bnez $at, .L80007468 -/* 007F4C 8000734C 00000000 */ nop -/* 007F50 80007350 8E0E0050 */ lw $t6, 0x50($s0) -/* 007F54 80007354 00000000 */ nop -/* 007F58 80007358 15C00005 */ bnez $t6, .L80007370 -/* 007F5C 8000735C 00000000 */ nop -/* 007F60 80007360 0C0007C5 */ jal func_80001F14 -/* 007F64 80007364 26050050 */ addiu $a1, $s0, 0x50 -/* 007F68 80007368 8E900000 */ lw $s0, ($s4) -/* 007F6C 8000736C 00000000 */ nop -.L80007370: -/* 007F70 80007370 920F0038 */ lbu $t7, 0x38($s0) -/* 007F74 80007374 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 007F78 80007378 448F8000 */ mtc1 $t7, $f16 -/* 007F7C 8000737C 05E10004 */ bgez $t7, .L80007390 -/* 007F80 80007380 468084A0 */ cvt.s.w $f18, $f16 -/* 007F84 80007384 44812000 */ mtc1 $at, $f4 -/* 007F88 80007388 00000000 */ nop -/* 007F8C 8000738C 46049480 */ add.s $f18, $f18, $f4 -.L80007390: -/* 007F90 80007390 92180039 */ lbu $t8, 0x39($s0) -/* 007F94 80007394 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 007F98 80007398 44814000 */ mtc1 $at, $f8 -/* 007F9C 8000739C 44983000 */ mtc1 $t8, $f6 -/* 007FA0 800073A0 46089003 */ div.s $f0, $f18, $f8 -/* 007FA4 800073A4 07010005 */ bgez $t8, .L800073BC -/* 007FA8 800073A8 468032A0 */ cvt.s.w $f10, $f6 -/* 007FAC 800073AC 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 007FB0 800073B0 44818000 */ mtc1 $at, $f16 -/* 007FB4 800073B4 00000000 */ nop -/* 007FB8 800073B8 46105280 */ add.s $f10, $f10, $f16 -.L800073BC: -/* 007FBC 800073BC 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 007FC0 800073C0 44812000 */ mtc1 $at, $f4 -/* 007FC4 800073C4 00000000 */ nop -/* 007FC8 800073C8 46045483 */ div.s $f18, $f10, $f4 -/* 007FCC 800073CC 46009201 */ sub.s $f8, $f18, $f0 -/* 007FD0 800073D0 46144182 */ mul.s $f6, $f8, $f20 -/* 007FD4 800073D4 46060400 */ add.s $f16, $f0, $f6 -/* 007FD8 800073D8 E7B0008C */ swc1 $f16, 0x8c($sp) -/* 007FDC 800073DC 8E040050 */ lw $a0, 0x50($s0) -/* 007FE0 800073E0 00000000 */ nop -/* 007FE4 800073E4 10800037 */ beqz $a0, .L800074C4 -/* 007FE8 800073E8 00000000 */ nop -/* 007FEC 800073EC 8ED00000 */ lw $s0, ($s6) -/* 007FF0 800073F0 00000000 */ nop -/* 007FF4 800073F4 8E05000C */ lw $a1, 0xc($s0) -/* 007FF8 800073F8 8E060010 */ lw $a2, 0x10($s0) -/* 007FFC 800073FC 8E070014 */ lw $a3, 0x14($s0) -/* 008000 80007400 0C0026DF */ jal func_80009B7C -/* 008004 80007404 00000000 */ nop -/* 008008 80007408 8E990000 */ lw $t9, ($s4) -/* 00800C 8000740C 24050008 */ li $a1, 8 -/* 008010 80007410 8F240050 */ lw $a0, 0x50($t9) -/* 008014 80007414 0C00127E */ jal func_800049F8 -/* 008018 80007418 00133200 */ sll $a2, $s3, 8 -/* 00801C 8000741C 8E880000 */ lw $t0, ($s4) -/* 008020 80007420 8FA6008C */ lw $a2, 0x8c($sp) -/* 008024 80007424 8D040050 */ lw $a0, 0x50($t0) -/* 008028 80007428 0C00127E */ jal func_800049F8 -/* 00802C 8000742C 24050010 */ li $a1, 16 -/* 008030 80007430 8E890000 */ lw $t1, ($s4) -/* 008034 80007434 24050050 */ li $a1, 80 -/* 008038 80007438 8D240050 */ lw $a0, 0x50($t1) -/* 00803C 8000743C 0C001181 */ jal func_80004604 -/* 008040 80007440 00000000 */ nop -/* 008044 80007444 8E900000 */ lw $s0, ($s4) -/* 008048 80007448 24050004 */ li $a1, 4 -/* 00804C 8000744C 8E040050 */ lw $a0, 0x50($s0) -/* 008050 80007450 92060091 */ lbu $a2, 0x91($s0) -/* 008054 80007454 0C00127E */ jal func_800049F8 -/* 008058 80007458 00000000 */ nop -/* 00805C 8000745C 8E900000 */ lw $s0, ($s4) -/* 008060 80007460 10000019 */ b .L800074C8 -/* 008064 80007464 960C0000 */ lhu $t4, ($s0) -.L80007468: -/* 008068 80007468 8E040050 */ lw $a0, 0x50($s0) -/* 00806C 8000746C 00000000 */ nop -/* 008070 80007470 10800014 */ beqz $a0, .L800074C4 -/* 008074 80007474 00000000 */ nop -/* 008078 80007478 0C001223 */ jal func_8000488C -/* 00807C 8000747C 00000000 */ nop -/* 008080 80007480 8E8A0000 */ lw $t2, ($s4) -/* 008084 80007484 00000000 */ nop -/* 008088 80007488 AD400050 */ sw $zero, 0x50($t2) -/* 00808C 8000748C 8E900000 */ lw $s0, ($s4) -/* 008090 80007490 1000000D */ b .L800074C8 -/* 008094 80007494 960C0000 */ lhu $t4, ($s0) -.L80007498: -/* 008098 80007498 8E040050 */ lw $a0, 0x50($s0) -/* 00809C 8000749C 00000000 */ nop -/* 0080A0 800074A0 10800008 */ beqz $a0, .L800074C4 -/* 0080A4 800074A4 00000000 */ nop -/* 0080A8 800074A8 0C001223 */ jal func_8000488C -/* 0080AC 800074AC 00000000 */ nop -/* 0080B0 800074B0 8E8B0000 */ lw $t3, ($s4) -/* 0080B4 800074B4 00000000 */ nop -/* 0080B8 800074B8 AD600050 */ sw $zero, 0x50($t3) -/* 0080BC 800074BC 8E900000 */ lw $s0, ($s4) -/* 0080C0 800074C0 00000000 */ nop -.L800074C4: -/* 0080C4 800074C4 960C0000 */ lhu $t4, ($s0) -.L800074C8: -/* 0080C8 800074C8 00000000 */ nop -/* 0080CC 800074CC 1180009B */ beqz $t4, .L8000773C -/* 0080D0 800074D0 8FB900AC */ lw $t9, 0xac($sp) -/* 0080D4 800074D4 4600D521 */ cvt.d.s $f20, $f26 -/* 0080D8 800074D8 4634C032 */ c.eq.d $f24, $f20 -/* 0080DC 800074DC 00158880 */ sll $s1, $s5, 2 -/* 0080E0 800074E0 45010095 */ bc1t .L80007738 -/* 0080E4 800074E4 02111021 */ addu $v0, $s0, $s1 -.L800074E8: -/* 0080E8 800074E8 C44A0054 */ lwc1 $f10, 0x54($v0) -/* 0080EC 800074EC 24120001 */ li $s2, 1 -/* 0080F0 800074F0 461A5102 */ mul.s $f4, $f10, $f26 -/* 0080F4 800074F4 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 0080F8 800074F8 444DF800 */ cfc1 $t5, $31 -/* 0080FC 800074FC 44D2F800 */ ctc1 $s2, $31 -/* 008100 80007500 00000000 */ nop -/* 008104 80007504 460024A4 */ cvt.w.s $f18, $f4 -/* 008108 80007508 4452F800 */ cfc1 $s2, $31 -/* 00810C 8000750C 00000000 */ nop -/* 008110 80007510 32520078 */ andi $s2, $s2, 0x78 -/* 008114 80007514 12400012 */ beqz $s2, .L80007560 -/* 008118 80007518 00000000 */ nop -/* 00811C 8000751C 44819000 */ mtc1 $at, $f18 -/* 008120 80007520 24120001 */ li $s2, 1 -/* 008124 80007524 46122481 */ sub.s $f18, $f4, $f18 -/* 008128 80007528 3C018000 */ lui $at, 0x8000 -/* 00812C 8000752C 44D2F800 */ ctc1 $s2, $31 -/* 008130 80007530 00000000 */ nop -/* 008134 80007534 460094A4 */ cvt.w.s $f18, $f18 -/* 008138 80007538 4452F800 */ cfc1 $s2, $31 -/* 00813C 8000753C 00000000 */ nop -/* 008140 80007540 32520078 */ andi $s2, $s2, 0x78 -/* 008144 80007544 16400004 */ bnez $s2, .L80007558 -/* 008148 80007548 00000000 */ nop -/* 00814C 8000754C 44129000 */ mfc1 $s2, $f18 -/* 008150 80007550 10000007 */ b .L80007570 -/* 008154 80007554 02419025 */ or $s2, $s2, $at -.L80007558: -/* 008158 80007558 10000005 */ b .L80007570 -/* 00815C 8000755C 2412FFFF */ li $s2, -1 -.L80007560: -/* 008160 80007560 44129000 */ mfc1 $s2, $f18 -/* 008164 80007564 00000000 */ nop -/* 008168 80007568 0640FFFB */ bltz $s2, .L80007558 -/* 00816C 8000756C 00000000 */ nop -.L80007570: -/* 008170 80007570 44CDF800 */ ctc1 $t5, $31 -/* 008174 80007574 C448005C */ lwc1 $f8, 0x5c($v0) -/* 008178 80007578 C606003C */ lwc1 $f6, 0x3c($s0) -/* 00817C 8000757C C60A0094 */ lwc1 $f10, 0x94($s0) -/* 008180 80007580 46064400 */ add.s $f16, $f8, $f6 -/* 008184 80007584 C6120068 */ lwc1 $f18, 0x68($s0) -/* 008188 80007588 460A8100 */ add.s $f4, $f16, $f10 -/* 00818C 8000758C 324E00FF */ andi $t6, $s2, 0xff -/* 008190 80007590 46122200 */ add.s $f8, $f4, $f18 -/* 008194 80007594 01C09025 */ move $s2, $t6 -/* 008198 80007598 460041A1 */ cvt.d.s $f6, $f8 -/* 00819C 8000759C 463C303C */ c.lt.d $f6, $f28 -/* 0081A0 800075A0 E7A8008C */ swc1 $f8, 0x8c($sp) -/* 0081A4 800075A4 45000004 */ bc1f .L800075B8 -/* 0081A8 800075A8 3C01800E */ lui $at, %hi(D_800E4CD4) # $at, 0x800e -/* 0081AC 800075AC C4304CD4 */ lwc1 $f16, %lo(D_800E4CD4)($at) -/* 0081B0 800075B0 00000000 */ nop -/* 0081B4 800075B4 E7B0008C */ swc1 $f16, 0x8c($sp) -.L800075B8: -/* 0081B8 800075B8 16A0000F */ bnez $s5, .L800075F8 -/* 0081BC 800075BC 00000000 */ nop -/* 0081C0 800075C0 920F0044 */ lbu $t7, 0x44($s0) -/* 0081C4 800075C4 00000000 */ nop -/* 0081C8 800075C8 31F80001 */ andi $t8, $t7, 1 -/* 0081CC 800075CC 1300000A */ beqz $t8, .L800075F8 -/* 0081D0 800075D0 00000000 */ nop -/* 0081D4 800075D4 8E040048 */ lw $a0, 0x48($s0) -/* 0081D8 800075D8 00000000 */ nop -/* 0081DC 800075DC 10800047 */ beqz $a0, .L800076FC -/* 0081E0 800075E0 00000000 */ nop -/* 0081E4 800075E4 0C001223 */ jal func_8000488C -/* 0081E8 800075E8 00000000 */ nop -/* 0081EC 800075EC 8E990000 */ lw $t9, ($s4) -/* 0081F0 800075F0 10000042 */ b .L800076FC -/* 0081F4 800075F4 AF200048 */ sw $zero, 0x48($t9) -.L800075F8: -/* 0081F8 800075F8 8C440048 */ lw $a0, 0x48($v0) -/* 0081FC 800075FC 00000000 */ nop -/* 008200 80007600 1080000A */ beqz $a0, .L8000762C -/* 008204 80007604 00000000 */ nop -/* 008208 80007608 16400008 */ bnez $s2, .L8000762C -/* 00820C 8000760C 00000000 */ nop -/* 008210 80007610 0C001223 */ jal func_8000488C -/* 008214 80007614 00000000 */ nop -/* 008218 80007618 8E880000 */ lw $t0, ($s4) -/* 00821C 8000761C 00000000 */ nop -/* 008220 80007620 01114821 */ addu $t1, $t0, $s1 -/* 008224 80007624 10000035 */ b .L800076FC -/* 008228 80007628 AD200048 */ sw $zero, 0x48($t1) -.L8000762C: -/* 00822C 8000762C 1480000A */ bnez $a0, .L80007658 -/* 008230 80007630 00155040 */ sll $t2, $s5, 1 -/* 008234 80007634 020A5821 */ addu $t3, $s0, $t2 -/* 008238 80007638 95640000 */ lhu $a0, ($t3) -/* 00823C 8000763C 0C0007C5 */ jal func_80001F14 -/* 008240 80007640 24450048 */ addiu $a1, $v0, 0x48 -/* 008244 80007644 8E8C0000 */ lw $t4, ($s4) -/* 008248 80007648 00000000 */ nop -/* 00824C 8000764C 01916821 */ addu $t5, $t4, $s1 -/* 008250 80007650 8DA40048 */ lw $a0, 0x48($t5) -/* 008254 80007654 00000000 */ nop -.L80007658: -/* 008258 80007658 10800028 */ beqz $a0, .L800076FC -/* 00825C 8000765C 00000000 */ nop -/* 008260 80007660 8ED00000 */ lw $s0, ($s6) -/* 008264 80007664 02409825 */ move $s3, $s2 -/* 008268 80007668 8E05000C */ lw $a1, 0xc($s0) -/* 00826C 8000766C 8E060010 */ lw $a2, 0x10($s0) -/* 008270 80007670 8E070014 */ lw $a3, 0x14($s0) -/* 008274 80007674 0C0026DF */ jal func_80009B7C -/* 008278 80007678 00000000 */ nop -/* 00827C 8000767C 8E8E0000 */ lw $t6, ($s4) -/* 008280 80007680 24050008 */ li $a1, 8 -/* 008284 80007684 01D17821 */ addu $t7, $t6, $s1 -/* 008288 80007688 8DE40048 */ lw $a0, 0x48($t7) -/* 00828C 8000768C 0C00127E */ jal func_800049F8 -/* 008290 80007690 00133200 */ sll $a2, $s3, 8 -/* 008294 80007694 8E980000 */ lw $t8, ($s4) -/* 008298 80007698 8FA6008C */ lw $a2, 0x8c($sp) -/* 00829C 8000769C 0311C821 */ addu $t9, $t8, $s1 -/* 0082A0 800076A0 8F240048 */ lw $a0, 0x48($t9) -/* 0082A4 800076A4 0C00127E */ jal func_800049F8 -/* 0082A8 800076A8 24050010 */ li $a1, 16 -/* 0082AC 800076AC 8E880000 */ lw $t0, ($s4) -/* 0082B0 800076B0 24050050 */ li $a1, 80 -/* 0082B4 800076B4 01114821 */ addu $t1, $t0, $s1 -/* 0082B8 800076B8 8D240048 */ lw $a0, 0x48($t1) -/* 0082BC 800076BC 0C001181 */ jal func_80004604 -/* 0082C0 800076C0 00000000 */ nop -/* 0082C4 800076C4 8FAA007C */ lw $t2, 0x7c($sp) -/* 0082C8 800076C8 24010001 */ li $at, 1 -/* 0082CC 800076CC 11410004 */ beq $t2, $at, .L800076E0 -/* 0082D0 800076D0 00000000 */ nop -/* 0082D4 800076D4 8E8C0000 */ lw $t4, ($s4) -/* 0082D8 800076D8 240B0040 */ li $t3, 64 -/* 0082DC 800076DC A18B0091 */ sb $t3, 0x91($t4) -.L800076E0: -/* 0082E0 800076E0 8E900000 */ lw $s0, ($s4) -/* 0082E4 800076E4 24050004 */ li $a1, 4 -/* 0082E8 800076E8 02116821 */ addu $t5, $s0, $s1 -/* 0082EC 800076EC 8DA40048 */ lw $a0, 0x48($t5) -/* 0082F0 800076F0 92060091 */ lbu $a2, 0x91($s0) -/* 0082F4 800076F4 0C00127E */ jal func_800049F8 -/* 0082F8 800076F8 00000000 */ nop -.L800076FC: -/* 0082FC 800076FC 26B50001 */ addiu $s5, $s5, 1 -/* 008300 80007700 2AA10002 */ slti $at, $s5, 2 -/* 008304 80007704 1020000C */ beqz $at, .L80007738 -/* 008308 80007708 26310004 */ addiu $s1, $s1, 4 -/* 00830C 8000770C 8E900000 */ lw $s0, ($s4) -/* 008310 80007710 00157040 */ sll $t6, $s5, 1 -/* 008314 80007714 020E7821 */ addu $t7, $s0, $t6 -/* 008318 80007718 95F80000 */ lhu $t8, ($t7) -/* 00831C 8000771C 00000000 */ nop -/* 008320 80007720 13000006 */ beqz $t8, .L8000773C -/* 008324 80007724 8FB900AC */ lw $t9, 0xac($sp) -/* 008328 80007728 4634C032 */ c.eq.d $f24, $f20 -/* 00832C 8000772C 00000000 */ nop -/* 008330 80007730 4500FF6D */ bc1f .L800074E8 -/* 008334 80007734 02111021 */ addu $v0, $s0, $s1 -.L80007738: -/* 008338 80007738 8FB900AC */ lw $t9, 0xac($sp) -.L8000773C: -/* 00833C 8000773C 8FA9007C */ lw $t1, 0x7c($sp) -/* 008340 80007740 27280001 */ addiu $t0, $t9, 1 -/* 008344 80007744 AFA800AC */ sw $t0, 0xac($sp) -/* 008348 80007748 1509FE49 */ bne $t0, $t1, .L80007070 -/* 00834C 8000774C 26D60004 */ addiu $s6, $s6, 4 -.L80007750: -/* 008350 80007750 3C01800E */ lui $at, %hi(D_800E4CDC) # $at, 0x800e -/* 008354 80007754 C43D4CD8 */ lwc1 $f29, %lo(D_800E4CD8)($at) -/* 008358 80007758 C43C4CDC */ lwc1 $f28, %lo(D_800E4CDC)($at) -/* 00835C 8000775C 8FAA007C */ lw $t2, 0x7c($sp) -/* 008360 80007760 3C01800E */ lui $at, %hi(D_800E4CE0) # $at, 0x800e -/* 008364 80007764 C43E4CE0 */ lwc1 $f30, %lo(D_800E4CE0)($at) -/* 008368 80007768 3C148012 */ lui $s4, %hi(D_80119C38) # $s4, 0x8012 -/* 00836C 8000776C 8FBE00D8 */ lw $fp, 0xd8($sp) -/* 008370 80007770 29410003 */ slti $at, $t2, 3 -/* 008374 80007774 102001E8 */ beqz $at, .L80007F18 -/* 008378 80007778 26949C38 */ addiu $s4, %lo(D_80119C38) # addiu $s4, $s4, -0x63c8 -/* 00837C 8000777C 8FAC00CC */ lw $t4, 0xcc($sp) -/* 008380 80007780 0140A825 */ move $s5, $t2 -/* 008384 80007784 014C082A */ slt $at, $t2, $t4 -/* 008388 80007788 1020004D */ beqz $at, .L800078C0 -/* 00838C 8000778C AFA000AC */ sw $zero, 0xac($sp) -/* 008390 80007790 018A1823 */ subu $v1, $t4, $t2 -/* 008394 80007794 306D0003 */ andi $t5, $v1, 3 -/* 008398 80007798 11A00015 */ beqz $t5, .L800077F0 -/* 00839C 8000779C 01AA1021 */ addu $v0, $t5, $t2 -/* 0083A0 800077A0 8FAE00C8 */ lw $t6, 0xc8($sp) -/* 0083A4 800077A4 000A7880 */ sll $t7, $t2, 2 -/* 0083A8 800077A8 01CF9021 */ addu $s2, $t6, $t7 -.L800077AC: -/* 0083AC 800077AC 8E580000 */ lw $t8, ($s2) -/* 0083B0 800077B0 26B50001 */ addiu $s5, $s5, 1 -/* 0083B4 800077B4 8F110064 */ lw $s1, 0x64($t8) -/* 0083B8 800077B8 00000000 */ nop -/* 0083BC 800077BC 12200006 */ beqz $s1, .L800077D8 -/* 0083C0 800077C0 00000000 */ nop -/* 0083C4 800077C4 8E390118 */ lw $t9, 0x118($s1) -/* 0083C8 800077C8 00000000 */ nop -/* 0083CC 800077CC 13200002 */ beqz $t9, .L800077D8 -/* 0083D0 800077D0 AE990000 */ sw $t9, ($s4) -/* 0083D4 800077D4 A3200088 */ sb $zero, 0x88($t9) -.L800077D8: -/* 0083D8 800077D8 1455FFF4 */ bne $v0, $s5, .L800077AC -/* 0083DC 800077DC 26520004 */ addiu $s2, $s2, 4 -/* 0083E0 800077E0 8FA300CC */ lw $v1, 0xcc($sp) -/* 0083E4 800077E4 00000000 */ nop -/* 0083E8 800077E8 12A30036 */ beq $s5, $v1, .L800078C4 -/* 0083EC 800077EC 8FAA007C */ lw $t2, 0x7c($sp) -.L800077F0: -/* 0083F0 800077F0 8FA300CC */ lw $v1, 0xcc($sp) -/* 0083F4 800077F4 8FA800C8 */ lw $t0, 0xc8($sp) -/* 0083F8 800077F8 00154880 */ sll $t1, $s5, 2 -/* 0083FC 800077FC 00035080 */ sll $t2, $v1, 2 -/* 008400 80007800 01481021 */ addu $v0, $t2, $t0 -/* 008404 80007804 01099021 */ addu $s2, $t0, $t1 -.L80007808: -/* 008408 80007808 8E4C0000 */ lw $t4, ($s2) -/* 00840C 8000780C 00000000 */ nop -/* 008410 80007810 8D910064 */ lw $s1, 0x64($t4) -/* 008414 80007814 00000000 */ nop -/* 008418 80007818 12200006 */ beqz $s1, .L80007834 -/* 00841C 8000781C 00000000 */ nop -/* 008420 80007820 8E2D0118 */ lw $t5, 0x118($s1) -/* 008424 80007824 00000000 */ nop -/* 008428 80007828 11A00002 */ beqz $t5, .L80007834 -/* 00842C 8000782C AE8D0000 */ sw $t5, ($s4) -/* 008430 80007830 A1A00088 */ sb $zero, 0x88($t5) -.L80007834: -/* 008434 80007834 8E4B0004 */ lw $t3, 4($s2) -/* 008438 80007838 00000000 */ nop -/* 00843C 8000783C 8D710064 */ lw $s1, 0x64($t3) -/* 008440 80007840 00000000 */ nop -/* 008444 80007844 12200006 */ beqz $s1, .L80007860 -/* 008448 80007848 00000000 */ nop -/* 00844C 8000784C 8E2E0118 */ lw $t6, 0x118($s1) -/* 008450 80007850 00000000 */ nop -/* 008454 80007854 11C00002 */ beqz $t6, .L80007860 -/* 008458 80007858 AE8E0000 */ sw $t6, ($s4) -/* 00845C 8000785C A1C00088 */ sb $zero, 0x88($t6) -.L80007860: -/* 008460 80007860 8E4F0008 */ lw $t7, 8($s2) -/* 008464 80007864 00000000 */ nop -/* 008468 80007868 8DF10064 */ lw $s1, 0x64($t7) -/* 00846C 8000786C 00000000 */ nop -/* 008470 80007870 12200006 */ beqz $s1, .L8000788C -/* 008474 80007874 00000000 */ nop -/* 008478 80007878 8E380118 */ lw $t8, 0x118($s1) -/* 00847C 8000787C 00000000 */ nop -/* 008480 80007880 13000002 */ beqz $t8, .L8000788C -/* 008484 80007884 AE980000 */ sw $t8, ($s4) -/* 008488 80007888 A3000088 */ sb $zero, 0x88($t8) -.L8000788C: -/* 00848C 8000788C 8E59000C */ lw $t9, 0xc($s2) -/* 008490 80007890 26520010 */ addiu $s2, $s2, 0x10 -/* 008494 80007894 8F310064 */ lw $s1, 0x64($t9) -/* 008498 80007898 00000000 */ nop -/* 00849C 8000789C 12200006 */ beqz $s1, .L800078B8 -/* 0084A0 800078A0 00000000 */ nop -/* 0084A4 800078A4 8E290118 */ lw $t1, 0x118($s1) -/* 0084A8 800078A8 00000000 */ nop -/* 0084AC 800078AC 11200002 */ beqz $t1, .L800078B8 -/* 0084B0 800078B0 AE890000 */ sw $t1, ($s4) -/* 0084B4 800078B4 A1200088 */ sb $zero, 0x88($t1) -.L800078B8: -/* 0084B8 800078B8 1642FFD3 */ bne $s2, $v0, .L80007808 -/* 0084BC 800078BC 00000000 */ nop -.L800078C0: -/* 0084C0 800078C0 8FAA007C */ lw $t2, 0x7c($sp) -.L800078C4: -/* 0084C4 800078C4 8FB600C8 */ lw $s6, 0xc8($sp) -/* 0084C8 800078C8 194000D7 */ blez $t2, .L80007C28 -/* 0084CC 800078CC 3C01800E */ lui $at, %hi(D_800E4CEC) # $at, 0x800e -/* 0084D0 800078D0 C4394CE8 */ lwc1 $f25, %lo(D_800E4CE8)($at) -/* 0084D4 800078D4 C4384CEC */ lwc1 $f24, %lo(D_800E4CEC)($at) -/* 0084D8 800078D8 00000000 */ nop -.L800078DC: -/* 0084DC 800078DC 8EC80000 */ lw $t0, ($s6) -/* 0084E0 800078E0 8FAC007C */ lw $t4, 0x7c($sp) -/* 0084E4 800078E4 8FAD00CC */ lw $t5, 0xcc($sp) -/* 0084E8 800078E8 8D110064 */ lw $s1, 0x64($t0) -/* 0084EC 800078EC 018D082A */ slt $at, $t4, $t5 -/* 0084F0 800078F0 102000C7 */ beqz $at, .L80007C10 -/* 0084F4 800078F4 0180A825 */ move $s5, $t4 -/* 0084F8 800078F8 8FAB00C8 */ lw $t3, 0xc8($sp) -/* 0084FC 800078FC 000C7080 */ sll $t6, $t4, 2 -/* 008500 80007900 016E9021 */ addu $s2, $t3, $t6 -.L80007904: -/* 008504 80007904 8E4F0000 */ lw $t7, ($s2) -/* 008508 80007908 00000000 */ nop -/* 00850C 8000790C 8DE20064 */ lw $v0, 0x64($t7) -/* 008510 80007910 00000000 */ nop -/* 008514 80007914 104000BB */ beqz $v0, .L80007C04 -/* 008518 80007918 8FAA00CC */ lw $t2, 0xcc($sp) -/* 00851C 8000791C 8C580118 */ lw $t8, 0x118($v0) -/* 008520 80007920 00000000 */ nop -/* 008524 80007924 130000B6 */ beqz $t8, .L80007C00 -/* 008528 80007928 AE980000 */ sw $t8, ($s4) -/* 00852C 8000792C 822901D8 */ lb $t1, 0x1d8($s1) -/* 008530 80007930 8FAA00AC */ lw $t2, 0xac($sp) -/* 008534 80007934 1120000F */ beqz $t1, .L80007974 -/* 008538 80007938 000A4100 */ sll $t0, $t2, 4 -/* 00853C 8000793C 010A4021 */ addu $t0, $t0, $t2 -/* 008540 80007940 8E420000 */ lw $v0, ($s2) -/* 008544 80007944 00084080 */ sll $t0, $t0, 2 -/* 008548 80007948 02E81821 */ addu $v1, $s7, $t0 -/* 00854C 8000794C C464000C */ lwc1 $f4, 0xc($v1) -/* 008550 80007950 C4680010 */ lwc1 $f8, 0x10($v1) -/* 008554 80007954 C4700014 */ lwc1 $f16, 0x14($v1) -/* 008558 80007958 C44A000C */ lwc1 $f10, 0xc($v0) -/* 00855C 8000795C C4520010 */ lwc1 $f18, 0x10($v0) -/* 008560 80007960 C4460014 */ lwc1 $f6, 0x14($v0) -/* 008564 80007964 46045501 */ sub.s $f20, $f10, $f4 -/* 008568 80007968 46089001 */ sub.s $f0, $f18, $f8 -/* 00856C 8000796C 1000000C */ b .L800079A0 -/* 008570 80007970 46103581 */ sub.s $f22, $f6, $f16 -.L80007974: -/* 008574 80007974 8E420000 */ lw $v0, ($s2) -/* 008578 80007978 8ED00000 */ lw $s0, ($s6) -/* 00857C 8000797C C44A000C */ lwc1 $f10, 0xc($v0) -/* 008580 80007980 C4520010 */ lwc1 $f18, 0x10($v0) -/* 008584 80007984 C4460014 */ lwc1 $f6, 0x14($v0) -/* 008588 80007988 C604000C */ lwc1 $f4, 0xc($s0) -/* 00858C 8000798C C6080010 */ lwc1 $f8, 0x10($s0) -/* 008590 80007990 C6100014 */ lwc1 $f16, 0x14($s0) -/* 008594 80007994 46045501 */ sub.s $f20, $f10, $f4 -/* 008598 80007998 46089001 */ sub.s $f0, $f18, $f8 -/* 00859C 8000799C 46103581 */ sub.s $f22, $f6, $f16 -.L800079A0: -/* 0085A0 800079A0 4614A282 */ mul.s $f10, $f20, $f20 -/* 0085A4 800079A4 00000000 */ nop -/* 0085A8 800079A8 46000102 */ mul.s $f4, $f0, $f0 -/* 0085AC 800079AC 00000000 */ nop -/* 0085B0 800079B0 4616B202 */ mul.s $f8, $f22, $f22 -/* 0085B4 800079B4 46045480 */ add.s $f18, $f10, $f4 -/* 0085B8 800079B8 0C0326B4 */ jal sqrtf -/* 0085BC 800079BC 46089300 */ add.s $f12, $f18, $f8 -/* 0085C0 800079C0 8E8C0000 */ lw $t4, ($s4) -/* 0085C4 800079C4 3C01800E */ lui $at, %hi(D_800E4CF0) # $at, 0x800e -/* 0085C8 800079C8 E5800084 */ swc1 $f0, 0x84($t4) -/* 0085CC 800079CC 8E900000 */ lw $s0, ($s4) -/* 0085D0 800079D0 C4264CF0 */ lwc1 $f6, %lo(D_800E4CF0)($at) -/* 0085D4 800079D4 C6020084 */ lwc1 $f2, 0x84($s0) -/* 0085D8 800079D8 00000000 */ nop -/* 0085DC 800079DC 4606103C */ c.lt.s $f2, $f6 -/* 0085E0 800079E0 00000000 */ nop -/* 0085E4 800079E4 45000087 */ bc1f .L80007C04 -/* 0085E8 800079E8 8FAA00CC */ lw $t2, 0xcc($sp) -/* 0085EC 800079EC 46021402 */ mul.s $f16, $f2, $f2 -/* 0085F0 800079F0 C6040054 */ lwc1 $f4, 0x54($s0) -/* 0085F4 800079F4 24020001 */ li $v0, 1 -/* 0085F8 800079F8 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 0085FC 800079FC 4610F281 */ sub.s $f10, $f30, $f16 -/* 008600 80007A00 00000000 */ nop -/* 008604 80007A04 461E5683 */ div.s $f26, $f10, $f30 -/* 008608 80007A08 461A2482 */ mul.s $f18, $f4, $f26 -/* 00860C 80007A0C 444DF800 */ cfc1 $t5, $31 -/* 008610 80007A10 44C2F800 */ ctc1 $v0, $31 -/* 008614 80007A14 00000000 */ nop -/* 008618 80007A18 46009224 */ cvt.w.s $f8, $f18 -/* 00861C 80007A1C 4442F800 */ cfc1 $v0, $31 -/* 008620 80007A20 00000000 */ nop -/* 008624 80007A24 30420078 */ andi $v0, $v0, 0x78 -/* 008628 80007A28 10400012 */ beqz $v0, .L80007A74 -/* 00862C 80007A2C 00000000 */ nop -/* 008630 80007A30 44814000 */ mtc1 $at, $f8 -/* 008634 80007A34 24020001 */ li $v0, 1 -/* 008638 80007A38 46089201 */ sub.s $f8, $f18, $f8 -/* 00863C 80007A3C 3C018000 */ lui $at, 0x8000 -/* 008640 80007A40 44C2F800 */ ctc1 $v0, $31 -/* 008644 80007A44 00000000 */ nop -/* 008648 80007A48 46004224 */ cvt.w.s $f8, $f8 -/* 00864C 80007A4C 4442F800 */ cfc1 $v0, $31 -/* 008650 80007A50 00000000 */ nop -/* 008654 80007A54 30420078 */ andi $v0, $v0, 0x78 -/* 008658 80007A58 14400004 */ bnez $v0, .L80007A6C -/* 00865C 80007A5C 00000000 */ nop -/* 008660 80007A60 44024000 */ mfc1 $v0, $f8 -/* 008664 80007A64 10000007 */ b .L80007A84 -/* 008668 80007A68 00411025 */ or $v0, $v0, $at -.L80007A6C: -/* 00866C 80007A6C 10000005 */ b .L80007A84 -/* 008670 80007A70 2402FFFF */ li $v0, -1 -.L80007A74: -/* 008674 80007A74 44024000 */ mfc1 $v0, $f8 -/* 008678 80007A78 00000000 */ nop -/* 00867C 80007A7C 0440FFFB */ bltz $v0, .L80007A6C -/* 008680 80007A80 00000000 */ nop -.L80007A84: -/* 008684 80007A84 304B00FF */ andi $t3, $v0, 0xff -/* 008688 80007A88 44CDF800 */ ctc1 $t5, $31 -/* 00868C 80007A8C 29610080 */ slti $at, $t3, 0x80 -/* 008690 80007A90 14200002 */ bnez $at, .L80007A9C -/* 008694 80007A94 01601025 */ move $v0, $t3 -/* 008698 80007A98 2402007F */ li $v0, 127 -.L80007A9C: -/* 00869C 80007A9C 44823000 */ mtc1 $v0, $f6 -/* 0086A0 80007AA0 04410006 */ bgez $v0, .L80007ABC -/* 0086A4 80007AA4 46803421 */ cvt.d.w $f16, $f6 -/* 0086A8 80007AA8 3C0141F0 */ li $at, 0x41F00000 # 30.000000 -/* 0086AC 80007AAC 44815800 */ mtc1 $at, $f11 -/* 0086B0 80007AB0 44805000 */ mtc1 $zero, $f10 -/* 0086B4 80007AB4 00000000 */ nop -/* 0086B8 80007AB8 462A8400 */ add.d $f16, $f16, $f10 -.L80007ABC: -/* 0086BC 80007ABC 46388102 */ mul.d $f4, $f16, $f24 -/* 0086C0 80007AC0 24020001 */ li $v0, 1 -/* 0086C4 80007AC4 3C0141E0 */ li $at, 0x41E00000 # 28.000000 -/* 0086C8 80007AC8 444EF800 */ cfc1 $t6, $31 -/* 0086CC 80007ACC 44C2F800 */ ctc1 $v0, $31 -/* 0086D0 80007AD0 00000000 */ nop -/* 0086D4 80007AD4 462024A4 */ cvt.w.d $f18, $f4 -/* 0086D8 80007AD8 4442F800 */ cfc1 $v0, $31 -/* 0086DC 80007ADC 00000000 */ nop -/* 0086E0 80007AE0 30420078 */ andi $v0, $v0, 0x78 -/* 0086E4 80007AE4 10400013 */ beqz $v0, .L80007B34 -/* 0086E8 80007AE8 00000000 */ nop -/* 0086EC 80007AEC 44819800 */ mtc1 $at, $f19 -/* 0086F0 80007AF0 44809000 */ mtc1 $zero, $f18 -/* 0086F4 80007AF4 24020001 */ li $v0, 1 -/* 0086F8 80007AF8 46322481 */ sub.d $f18, $f4, $f18 -/* 0086FC 80007AFC 3C018000 */ lui $at, 0x8000 -/* 008700 80007B00 44C2F800 */ ctc1 $v0, $31 -/* 008704 80007B04 00000000 */ nop -/* 008708 80007B08 462094A4 */ cvt.w.d $f18, $f18 -/* 00870C 80007B0C 4442F800 */ cfc1 $v0, $31 -/* 008710 80007B10 00000000 */ nop -/* 008714 80007B14 30420078 */ andi $v0, $v0, 0x78 -/* 008718 80007B18 14400004 */ bnez $v0, .L80007B2C -/* 00871C 80007B1C 00000000 */ nop -/* 008720 80007B20 44029000 */ mfc1 $v0, $f18 -/* 008724 80007B24 10000007 */ b .L80007B44 -/* 008728 80007B28 00411025 */ or $v0, $v0, $at -.L80007B2C: -/* 00872C 80007B2C 10000005 */ b .L80007B44 -/* 008730 80007B30 2402FFFF */ li $v0, -1 -.L80007B34: -/* 008734 80007B34 44029000 */ mfc1 $v0, $f18 -/* 008738 80007B38 00000000 */ nop -/* 00873C 80007B3C 0440FFFB */ bltz $v0, .L80007B2C -/* 008740 80007B40 00000000 */ nop -.L80007B44: -/* 008744 80007B44 92180088 */ lbu $t8, 0x88($s0) -/* 008748 80007B48 304F00FF */ andi $t7, $v0, 0xff -/* 00874C 80007B4C 44CEF800 */ ctc1 $t6, $31 -/* 008750 80007B50 030F082A */ slt $at, $t8, $t7 -/* 008754 80007B54 1020002B */ beqz $at, .L80007C04 -/* 008758 80007B58 8FAA00CC */ lw $t2, 0xcc($sp) -/* 00875C 80007B5C A20F0088 */ sb $t7, 0x88($s0) -/* 008760 80007B60 86E60000 */ lh $a2, ($s7) -/* 008764 80007B64 4600A306 */ mov.s $f12, $f20 -/* 008768 80007B68 0C002430 */ jal func_800090C0 -/* 00876C 80007B6C 4600B386 */ mov.s $f14, $f22 -/* 008770 80007B70 8E990000 */ lw $t9, ($s4) -/* 008774 80007B74 03C03825 */ move $a3, $fp -/* 008778 80007B78 A3220091 */ sb $v0, 0x91($t9) -/* 00877C 80007B7C 822901D8 */ lb $t1, 0x1d8($s1) -/* 008780 80007B80 00002825 */ move $a1, $zero -/* 008784 80007B84 11200007 */ beqz $t1, .L80007BA4 -/* 008788 80007B88 00000000 */ nop -/* 00878C 80007B8C 8EC40000 */ lw $a0, ($s6) -/* 008790 80007B90 8E460000 */ lw $a2, ($s2) -/* 008794 80007B94 0C001AFF */ jal func_80006BFC -/* 008798 80007B98 02E02825 */ move $a1, $s7 -/* 00879C 80007B9C 10000006 */ b .L80007BB8 -/* 0087A0 80007BA0 8E900000 */ lw $s0, ($s4) -.L80007BA4: -/* 0087A4 80007BA4 8EC40000 */ lw $a0, ($s6) -/* 0087A8 80007BA8 8E460000 */ lw $a2, ($s2) -/* 0087AC 80007BAC 0C001AFF */ jal func_80006BFC -/* 0087B0 80007BB0 03C03825 */ move $a3, $fp -/* 0087B4 80007BB4 8E900000 */ lw $s0, ($s4) -.L80007BB8: -/* 0087B8 80007BB8 3C01800E */ lui $at, %hi(D_800E4CF4) # $at, 0x800e -/* 0087BC 80007BBC C608005C */ lwc1 $f8, 0x5c($s0) -/* 0087C0 80007BC0 C6060068 */ lwc1 $f6, 0x68($s0) -/* 0087C4 80007BC4 00000000 */ nop -/* 0087C8 80007BC8 46064280 */ add.s $f10, $f8, $f6 -/* 0087CC 80007BCC E60A008C */ swc1 $f10, 0x8c($s0) -/* 0087D0 80007BD0 8E900000 */ lw $s0, ($s4) -/* 0087D4 80007BD4 00000000 */ nop -/* 0087D8 80007BD8 C610008C */ lwc1 $f16, 0x8c($s0) -/* 0087DC 80007BDC 00000000 */ nop -/* 0087E0 80007BE0 46008121 */ cvt.d.s $f4, $f16 -/* 0087E4 80007BE4 463C203C */ c.lt.d $f4, $f28 -/* 0087E8 80007BE8 00000000 */ nop -/* 0087EC 80007BEC 45000005 */ bc1f .L80007C04 -/* 0087F0 80007BF0 8FAA00CC */ lw $t2, 0xcc($sp) -/* 0087F4 80007BF4 C4324CF4 */ lwc1 $f18, %lo(D_800E4CF4)($at) -/* 0087F8 80007BF8 00000000 */ nop -/* 0087FC 80007BFC E612008C */ swc1 $f18, 0x8c($s0) -.L80007C00: -/* 008800 80007C00 8FAA00CC */ lw $t2, 0xcc($sp) -.L80007C04: -/* 008804 80007C04 26B50001 */ addiu $s5, $s5, 1 -/* 008808 80007C08 16AAFF3E */ bne $s5, $t2, .L80007904 -/* 00880C 80007C0C 26520004 */ addiu $s2, $s2, 4 -.L80007C10: -/* 008810 80007C10 8FA800AC */ lw $t0, 0xac($sp) -/* 008814 80007C14 8FAD007C */ lw $t5, 0x7c($sp) -/* 008818 80007C18 250C0001 */ addiu $t4, $t0, 1 -/* 00881C 80007C1C AFAC00AC */ sw $t4, 0xac($sp) -/* 008820 80007C20 158DFF2E */ bne $t4, $t5, .L800078DC -/* 008824 80007C24 26D60004 */ addiu $s6, $s6, 4 -.L80007C28: -/* 008828 80007C28 3C138012 */ lui $s3, %hi(D_80119C30) # $s3, 0x8012 -/* 00882C 80007C2C 3C108012 */ lui $s0, %hi(D_80119C38) # $s0, 0x8012 -/* 008830 80007C30 26109C38 */ addiu $s0, %lo(D_80119C38) # addiu $s0, $s0, -0x63c8 -/* 008834 80007C34 26739C30 */ addiu $s3, %lo(D_80119C30) # addiu $s3, $s3, -0x63d0 -.L80007C38: -/* 008838 80007C38 8E620000 */ lw $v0, ($s3) -/* 00883C 80007C3C 00000000 */ nop -/* 008840 80007C40 10400013 */ beqz $v0, .L80007C90 -/* 008844 80007C44 00000000 */ nop -/* 008848 80007C48 8C440048 */ lw $a0, 0x48($v0) -/* 00884C 80007C4C 00000000 */ nop -/* 008850 80007C50 1080000F */ beqz $a0, .L80007C90 -/* 008854 80007C54 00000000 */ nop -/* 008858 80007C58 904B0088 */ lbu $t3, 0x88($v0) -/* 00885C 80007C5C 00000000 */ nop -/* 008860 80007C60 29610008 */ slti $at, $t3, 8 -/* 008864 80007C64 1020000A */ beqz $at, .L80007C90 -/* 008868 80007C68 00000000 */ nop -/* 00886C 80007C6C 0C001223 */ jal func_8000488C -/* 008870 80007C70 00000000 */ nop -/* 008874 80007C74 8E6E0000 */ lw $t6, ($s3) -/* 008878 80007C78 00000000 */ nop -/* 00887C 80007C7C ADC00048 */ sw $zero, 0x48($t6) -/* 008880 80007C80 8E6F0000 */ lw $t7, ($s3) -/* 008884 80007C84 00000000 */ nop -/* 008888 80007C88 A1E00074 */ sb $zero, 0x74($t7) -/* 00888C 80007C8C AE600000 */ sw $zero, ($s3) -.L80007C90: -/* 008890 80007C90 26730004 */ addiu $s3, $s3, 4 -/* 008894 80007C94 1670FFE8 */ bne $s3, $s0, .L80007C38 -/* 008898 80007C98 00000000 */ nop -/* 00889C 80007C9C 3C07800E */ lui $a3, %hi(D_800DC6D4) # $a3, 0x800e -/* 0088A0 80007CA0 24E7C6D4 */ addiu $a3, %lo(D_800DC6D4) # addiu $a3, $a3, -0x392c -/* 0088A4 80007CA4 8CE20000 */ lw $v0, ($a3) -/* 0088A8 80007CA8 24170002 */ li $s7, 2 -/* 0088AC 80007CAC 03C2082A */ slt $at, $fp, $v0 -/* 0088B0 80007CB0 10200003 */ beqz $at, .L80007CC0 -/* 0088B4 80007CB4 005EC023 */ subu $t8, $v0, $fp -/* 0088B8 80007CB8 10000002 */ b .L80007CC4 -/* 0088BC 80007CBC ACF80000 */ sw $t8, ($a3) -.L80007CC0: -/* 0088C0 80007CC0 ACE00000 */ sw $zero, ($a3) -.L80007CC4: -/* 0088C4 80007CC4 8FB900CC */ lw $t9, 0xcc($sp) -/* 0088C8 80007CC8 8FB200C8 */ lw $s2, 0xc8($sp) -/* 0088CC 80007CCC 2B210002 */ slti $at, $t9, 2 -/* 0088D0 80007CD0 14200054 */ bnez $at, .L80007E24 -/* 0088D4 80007CD4 24150001 */ li $s5, 1 -/* 0088D8 80007CD8 26520004 */ addiu $s2, $s2, 4 -/* 0088DC 80007CDC 241EFFFF */ li $fp, -1 -/* 0088E0 80007CE0 24160002 */ li $s6, 2 -.L80007CE4: -/* 0088E4 80007CE4 8E490000 */ lw $t1, ($s2) -/* 0088E8 80007CE8 00000000 */ nop -/* 0088EC 80007CEC 8D220064 */ lw $v0, 0x64($t1) -/* 0088F0 80007CF0 00000000 */ nop -/* 0088F4 80007CF4 10400048 */ beqz $v0, .L80007E18 -/* 0088F8 80007CF8 8FAC00CC */ lw $t4, 0xcc($sp) -/* 0088FC 80007CFC 8C4A0118 */ lw $t2, 0x118($v0) -/* 008900 80007D00 00000000 */ nop -/* 008904 80007D04 AE8A0000 */ sw $t2, ($s4) -/* 008908 80007D08 11400042 */ beqz $t2, .L80007E14 -/* 00890C 80007D0C 01408025 */ move $s0, $t2 -/* 008910 80007D10 91480074 */ lbu $t0, 0x74($t2) -/* 008914 80007D14 00000000 */ nop -/* 008918 80007D18 1500003F */ bnez $t0, .L80007E18 -/* 00891C 80007D1C 8FAC00CC */ lw $t4, 0xcc($sp) -/* 008920 80007D20 954C0000 */ lhu $t4, ($t2) -/* 008924 80007D24 24060014 */ li $a2, 20 -/* 008928 80007D28 1180003A */ beqz $t4, .L80007E14 -/* 00892C 80007D2C 03C02025 */ move $a0, $fp -/* 008930 80007D30 3C138012 */ lui $s3, %hi(D_80119C30) # $s3, 0x8012 -/* 008934 80007D34 91450088 */ lbu $a1, 0x88($t2) -/* 008938 80007D38 26739C30 */ addiu $s3, %lo(D_80119C30) # addiu $s3, $s3, -0x63d0 -/* 00893C 80007D3C 00001825 */ move $v1, $zero -.L80007D40: -/* 008940 80007D40 8E710000 */ lw $s1, ($s3) -/* 008944 80007D44 28A10009 */ slti $at, $a1, 9 -/* 008948 80007D48 1220000E */ beqz $s1, .L80007D84 -/* 00894C 80007D4C 00000000 */ nop -/* 008950 80007D50 922D0088 */ lbu $t5, 0x88($s1) -/* 008954 80007D54 00000000 */ nop -/* 008958 80007D58 00AD1023 */ subu $v0, $a1, $t5 -/* 00895C 80007D5C 00C2082A */ slt $at, $a2, $v0 -/* 008960 80007D60 1020000B */ beqz $at, .L80007D90 -/* 008964 80007D64 00000000 */ nop -/* 008968 80007D68 8CEB0000 */ lw $t3, ($a3) -/* 00896C 80007D6C 00000000 */ nop -/* 008970 80007D70 15600007 */ bnez $t3, .L80007D90 -/* 008974 80007D74 00000000 */ nop -/* 008978 80007D78 00602025 */ move $a0, $v1 -/* 00897C 80007D7C 10000004 */ b .L80007D90 -/* 008980 80007D80 00403025 */ move $a2, $v0 -.L80007D84: -/* 008984 80007D84 14200002 */ bnez $at, .L80007D90 -/* 008988 80007D88 00000000 */ nop -/* 00898C 80007D8C 00602025 */ move $a0, $v1 -.L80007D90: -/* 008990 80007D90 24630001 */ addiu $v1, $v1, 1 -/* 008994 80007D94 1476FFEA */ bne $v1, $s6, .L80007D40 -/* 008998 80007D98 26730004 */ addiu $s3, $s3, 4 -/* 00899C 80007D9C 109E001D */ beq $a0, $fp, .L80007E14 -/* 0089A0 80007DA0 00047080 */ sll $t6, $a0, 2 -/* 0089A4 80007DA4 3C0F8012 */ lui $t7, %hi(D_80119C30) # $t7, 0x8012 -/* 0089A8 80007DA8 25EF9C30 */ addiu $t7, %lo(D_80119C30) # addiu $t7, $t7, -0x63d0 -/* 0089AC 80007DAC A2170074 */ sb $s7, 0x74($s0) -/* 0089B0 80007DB0 01CF8821 */ addu $s1, $t6, $t7 -/* 0089B4 80007DB4 8E220000 */ lw $v0, ($s1) -/* 0089B8 80007DB8 00000000 */ nop -/* 0089BC 80007DBC 10400012 */ beqz $v0, .L80007E08 -/* 0089C0 80007DC0 00000000 */ nop -/* 0089C4 80007DC4 8C440048 */ lw $a0, 0x48($v0) -/* 0089C8 80007DC8 00000000 */ nop -/* 0089CC 80007DCC 1080000C */ beqz $a0, .L80007E00 -/* 0089D0 80007DD0 240A003C */ li $t2, 60 -/* 0089D4 80007DD4 0C001223 */ jal func_8000488C -/* 0089D8 80007DD8 00000000 */ nop -/* 0089DC 80007DDC 8E380000 */ lw $t8, ($s1) -/* 0089E0 80007DE0 24190001 */ li $t9, 1 -/* 0089E4 80007DE4 AF000048 */ sw $zero, 0x48($t8) -/* 0089E8 80007DE8 8E890000 */ lw $t1, ($s4) -/* 0089EC 80007DEC 3C07800E */ lui $a3, %hi(D_800DC6D4) # $a3, 0x800e -/* 0089F0 80007DF0 A1390074 */ sb $t9, 0x74($t1) -/* 0089F4 80007DF4 8E220000 */ lw $v0, ($s1) -/* 0089F8 80007DF8 24E7C6D4 */ addiu $a3, %lo(D_800DC6D4) # addiu $a3, $a3, -0x392c -/* 0089FC 80007DFC 240A003C */ li $t2, 60 -.L80007E00: -/* 008A00 80007E00 ACEA0000 */ sw $t2, ($a3) -/* 008A04 80007E04 A0400074 */ sb $zero, 0x74($v0) -.L80007E08: -/* 008A08 80007E08 8E880000 */ lw $t0, ($s4) -/* 008A0C 80007E0C 00000000 */ nop -/* 008A10 80007E10 AE280000 */ sw $t0, ($s1) -.L80007E14: -/* 008A14 80007E14 8FAC00CC */ lw $t4, 0xcc($sp) -.L80007E18: -/* 008A18 80007E18 26B50001 */ addiu $s5, $s5, 1 -/* 008A1C 80007E1C 16ACFFB1 */ bne $s5, $t4, .L80007CE4 -/* 008A20 80007E20 26520004 */ addiu $s2, $s2, 4 -.L80007E24: -/* 008A24 80007E24 0C0044E7 */ jal func_8001139C -/* 008A28 80007E28 24170002 */ li $s7, 2 -/* 008A2C 80007E2C 1C40003A */ bgtz $v0, .L80007F18 -/* 008A30 80007E30 3C138012 */ lui $s3, %hi(D_80119C30) # $s3, 0x8012 -/* 008A34 80007E34 3C108012 */ lui $s0, %hi(D_80119C38) # $s0, 0x8012 -/* 008A38 80007E38 26109C38 */ addiu $s0, %lo(D_80119C38) # addiu $s0, $s0, -0x63c8 -/* 008A3C 80007E3C 26739C30 */ addiu $s3, %lo(D_80119C30) # addiu $s3, $s3, -0x63d0 -.L80007E40: -/* 008A40 80007E40 8E710000 */ lw $s1, ($s3) -/* 008A44 80007E44 00000000 */ nop -/* 008A48 80007E48 12200030 */ beqz $s1, .L80007F0C -/* 008A4C 80007E4C 00000000 */ nop -/* 008A50 80007E50 96260000 */ lhu $a2, ($s1) -/* 008A54 80007E54 00000000 */ nop -/* 008A58 80007E58 10C0002C */ beqz $a2, .L80007F0C -/* 008A5C 80007E5C 00000000 */ nop -/* 008A60 80007E60 922D0074 */ lbu $t5, 0x74($s1) -/* 008A64 80007E64 24010001 */ li $at, 1 -/* 008A68 80007E68 15A10003 */ bne $t5, $at, .L80007E78 -/* 008A6C 80007E6C 00000000 */ nop -/* 008A70 80007E70 10000026 */ b .L80007F0C -/* 008A74 80007E74 A2370074 */ sb $s7, 0x74($s1) -.L80007E78: -/* 008A78 80007E78 8E240048 */ lw $a0, 0x48($s1) -/* 008A7C 80007E7C 26250048 */ addiu $a1, $s1, 0x48 -/* 008A80 80007E80 14800005 */ bnez $a0, .L80007E98 -/* 008A84 80007E84 00000000 */ nop -/* 008A88 80007E88 0C0007C5 */ jal func_80001F14 -/* 008A8C 80007E8C 30C4FFFF */ andi $a0, $a2, 0xffff -/* 008A90 80007E90 8E240048 */ lw $a0, 0x48($s1) -/* 008A94 80007E94 00000000 */ nop -.L80007E98: -/* 008A98 80007E98 1080001C */ beqz $a0, .L80007F0C -/* 008A9C 80007E9C 00000000 */ nop -/* 008AA0 80007EA0 8E250078 */ lw $a1, 0x78($s1) -/* 008AA4 80007EA4 8E26007C */ lw $a2, 0x7c($s1) -/* 008AA8 80007EA8 8E270080 */ lw $a3, 0x80($s1) -/* 008AAC 80007EAC 0C0026DF */ jal func_80009B7C -/* 008AB0 80007EB0 00000000 */ nop -/* 008AB4 80007EB4 92260088 */ lbu $a2, 0x88($s1) -/* 008AB8 80007EB8 8E240048 */ lw $a0, 0x48($s1) -/* 008ABC 80007EBC 00065A00 */ sll $t3, $a2, 8 -/* 008AC0 80007EC0 01603025 */ move $a2, $t3 -/* 008AC4 80007EC4 0C00127E */ jal func_800049F8 -/* 008AC8 80007EC8 24050008 */ li $a1, 8 -/* 008ACC 80007ECC 8E240048 */ lw $a0, 0x48($s1) -/* 008AD0 80007ED0 8E26008C */ lw $a2, 0x8c($s1) -/* 008AD4 80007ED4 0C00127E */ jal func_800049F8 -/* 008AD8 80007ED8 24050010 */ li $a1, 16 -/* 008ADC 80007EDC 8FAE007C */ lw $t6, 0x7c($sp) -/* 008AE0 80007EE0 24010001 */ li $at, 1 -/* 008AE4 80007EE4 11C10002 */ beq $t6, $at, .L80007EF0 -/* 008AE8 80007EE8 240F0040 */ li $t7, 64 -/* 008AEC 80007EEC A22F0091 */ sb $t7, 0x91($s1) -.L80007EF0: -/* 008AF0 80007EF0 8E240048 */ lw $a0, 0x48($s1) -/* 008AF4 80007EF4 92260091 */ lbu $a2, 0x91($s1) -/* 008AF8 80007EF8 0C00127E */ jal func_800049F8 -/* 008AFC 80007EFC 24050004 */ li $a1, 4 -/* 008B00 80007F00 8E240048 */ lw $a0, 0x48($s1) -/* 008B04 80007F04 0C001181 */ jal func_80004604 -/* 008B08 80007F08 24050046 */ li $a1, 70 -.L80007F0C: -/* 008B0C 80007F0C 26730004 */ addiu $s3, $s3, 4 -/* 008B10 80007F10 1670FFCB */ bne $s3, $s0, .L80007E40 -/* 008B14 80007F14 00000000 */ nop -.L80007F18: -/* 008B18 80007F18 8FBF006C */ lw $ra, 0x6c($sp) -/* 008B1C 80007F1C C7B50018 */ lwc1 $f21, 0x18($sp) -/* 008B20 80007F20 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 008B24 80007F24 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 008B28 80007F28 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 008B2C 80007F2C C7B90028 */ lwc1 $f25, 0x28($sp) -/* 008B30 80007F30 C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 008B34 80007F34 C7BB0030 */ lwc1 $f27, 0x30($sp) -/* 008B38 80007F38 C7BA0034 */ lwc1 $f26, 0x34($sp) -/* 008B3C 80007F3C C7BD0038 */ lwc1 $f29, 0x38($sp) -/* 008B40 80007F40 C7BC003C */ lwc1 $f28, 0x3c($sp) -/* 008B44 80007F44 C7BF0040 */ lwc1 $f31, 0x40($sp) -/* 008B48 80007F48 C7BE0044 */ lwc1 $f30, 0x44($sp) -/* 008B4C 80007F4C 8FB00048 */ lw $s0, 0x48($sp) -/* 008B50 80007F50 8FB1004C */ lw $s1, 0x4c($sp) -/* 008B54 80007F54 8FB20050 */ lw $s2, 0x50($sp) -/* 008B58 80007F58 8FB30054 */ lw $s3, 0x54($sp) -/* 008B5C 80007F5C 8FB40058 */ lw $s4, 0x58($sp) -/* 008B60 80007F60 8FB5005C */ lw $s5, 0x5c($sp) -/* 008B64 80007F64 8FB60060 */ lw $s6, 0x60($sp) -/* 008B68 80007F68 8FB70064 */ lw $s7, 0x64($sp) -/* 008B6C 80007F6C 8FBE0068 */ lw $fp, 0x68($sp) -/* 008B70 80007F70 03E00008 */ jr $ra -/* 008B74 80007F74 27BD00C8 */ addiu $sp, $sp, 0xc8 - -/* 008B78 80007F78 240E0001 */ li $t6, 1 -/* 008B7C 80007F7C 3C01800E */ lui $at, 0x800e -/* 008B80 80007F80 03E00008 */ jr $ra -/* 008B84 80007F84 A02EC6D0 */ sb $t6, -0x3930($at) - -/* 008B88 80007F88 3C01800E */ lui $at, 0x800e -/* 008B8C 80007F8C 03E00008 */ jr $ra -/* 008B90 80007F90 A020C6D0 */ sb $zero, -0x3930($at) - -/* 008B94 80007F94 3C02800E */ lui $v0, %hi(D_800DC6D0) # $v0, 0x800e -/* 008B98 80007F98 9042C6D0 */ lbu $v0, %lo(D_800DC6D0)($v0) -/* 008B9C 80007F9C 03E00008 */ jr $ra -/* 008BA0 80007FA0 00000000 */ nop - -glabel func_80007FA4 -/* 008BA4 80007FA4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 008BA8 80007FA8 44818000 */ mtc1 $at, $f16 -/* 008BAC 80007FAC 3C01800E */ lui $at, %hi(D_800E4CFC) # $at, 0x800e -/* 008BB0 80007FB0 46106101 */ sub.s $f4, $f12, $f16 -/* 008BB4 80007FB4 C4334CF8 */ lwc1 $f19, %lo(D_800E4CF8)($at) -/* 008BB8 80007FB8 460C8180 */ add.s $f6, $f16, $f12 -/* 008BBC 80007FBC C4324CFC */ lwc1 $f18, %lo(D_800E4CFC)($at) -/* 008BC0 80007FC0 46062303 */ div.s $f12, $f4, $f6 -/* 008BC4 80007FC4 3C01BF80 */ li $at, 0xBF800000 # -1.000000 -/* 008BC8 80007FC8 44801000 */ mtc1 $zero, $f2 -/* 008BCC 80007FCC 44814000 */ mtc1 $at, $f8 -/* 008BD0 80007FD0 24020001 */ li $v0, 1 -/* 008BD4 80007FD4 46081281 */ sub.s $f10, $f2, $f8 -/* 008BD8 80007FD8 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 008BDC 80007FDC 46005121 */ cvt.d.s $f4, $f10 -/* 008BE0 80007FE0 4624903C */ c.lt.d $f18, $f4 -/* 008BE4 80007FE4 00000000 */ nop -/* 008BE8 80007FE8 45000010 */ bc1f .L8000802C -/* 008BEC 80007FEC 46006386 */ mov.s $f14, $f12 -/* 008BF0 80007FF0 460C6402 */ mul.s $f16, $f12, $f12 -/* 008BF4 80007FF4 00000000 */ nop -.L80007FF8: -/* 008BF8 80007FF8 44823000 */ mtc1 $v0, $f6 -/* 008BFC 80007FFC 46001006 */ mov.s $f0, $f2 -/* 008C00 80008000 46803220 */ cvt.s.w $f8, $f6 -/* 008C04 80008004 24420002 */ addiu $v0, $v0, 2 -/* 008C08 80008008 46087283 */ div.s $f10, $f14, $f8 -/* 008C0C 8000800C 46107382 */ mul.s $f14, $f14, $f16 -/* 008C10 80008010 460A1080 */ add.s $f2, $f2, $f10 -/* 008C14 80008014 46001101 */ sub.s $f4, $f2, $f0 -/* 008C18 80008018 460021A1 */ cvt.d.s $f6, $f4 -/* 008C1C 8000801C 4626903C */ c.lt.d $f18, $f6 -/* 008C20 80008020 00000000 */ nop -/* 008C24 80008024 4501FFF4 */ bc1t .L80007FF8 -/* 008C28 80008028 00000000 */ nop -.L8000802C: -/* 008C2C 8000802C 44814000 */ mtc1 $at, $f8 -/* 008C30 80008030 00000000 */ nop -/* 008C34 80008034 46081002 */ mul.s $f0, $f2, $f8 -/* 008C38 80008038 03E00008 */ jr $ra -/* 008C3C 8000803C 00000000 */ nop - -glabel func_80008040 -/* 008C40 80008040 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 008C44 80008044 AFBF0014 */ sw $ra, 0x14($sp) -/* 008C48 80008048 3C048012 */ lui $a0, %hi(D_80119C40) # $a0, 0x8012 -/* 008C4C 8000804C 24849C40 */ addiu $a0, %lo(D_80119C40) # addiu $a0, $a0, -0x63c0 -/* 008C50 80008050 00002825 */ move $a1, $zero -/* 008C54 80008054 0C00084A */ jal func_80002128 -/* 008C58 80008058 00003025 */ move $a2, $zero -/* 008C5C 8000805C 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff -/* 008C60 80008060 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 008C64 80008064 0C01C327 */ jal func_80070C9C -/* 008C68 80008068 240405A0 */ li $a0, 1440 -/* 008C6C 8000806C 3C068012 */ lui $a2, %hi(D_80119C48) # $a2, 0x8012 -/* 008C70 80008070 24C69C48 */ addiu $a2, %lo(D_80119C48) # addiu $a2, $a2, -0x63b8 -/* 008C74 80008074 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff -/* 008C78 80008078 ACC20000 */ sw $v0, ($a2) -/* 008C7C 8000807C 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 008C80 80008080 0C01C327 */ jal func_80070C9C -/* 008C84 80008084 240400A0 */ li $a0, 160 -/* 008C88 80008088 3C018012 */ lui $at, %hi(D_80119C50) # $at, 0x8012 -/* 008C8C 8000808C 3C0500FF */ lui $a1, (0x00FFFFFF >> 16) # lui $a1, 0xff -/* 008C90 80008090 AC229C50 */ sw $v0, %lo(D_80119C50)($at) -/* 008C94 80008094 34A5FFFF */ ori $a1, (0x00FFFFFF & 0xFFFF) # ori $a1, $a1, 0xffff -/* 008C98 80008098 0C01C327 */ jal func_80070C9C -/* 008C9C 8000809C 240400A0 */ li $a0, 160 -/* 008CA0 800080A0 3C018012 */ lui $at, %hi(D_80119C44) # $at, 0x8012 -/* 008CA4 800080A4 AC229C44 */ sw $v0, %lo(D_80119C44)($at) -/* 008CA8 800080A8 3C068012 */ lui $a2, %hi(D_80119C48) # $a2, 0x8012 -/* 008CAC 800080AC 3C01800E */ lui $at, %hi(D_800DC6E0) # $at, 0x800e -/* 008CB0 800080B0 3C028012 */ lui $v0, %hi(D_8011A6D8) # $v0, 0x8012 -/* 008CB4 800080B4 3C038012 */ lui $v1, %hi(D_80119C58) # $v1, 0x8012 -/* 008CB8 800080B8 24C69C48 */ addiu $a2, %lo(D_80119C48) # addiu $a2, $a2, -0x63b8 -/* 008CBC 800080BC A420C6E0 */ sh $zero, %lo(D_800DC6E0)($at) -/* 008CC0 800080C0 24639C58 */ addiu $v1, %lo(D_80119C58) # addiu $v1, $v1, -0x63a8 -/* 008CC4 800080C4 2442A6D8 */ addiu $v0, %lo(D_8011A6D8) # addiu $v0, $v0, -0x5928 -.L800080C8: -/* 008CC8 800080C8 24630180 */ addiu $v1, $v1, 0x180 -/* 008CCC 800080CC 0062082B */ sltu $at, $v1, $v0 -/* 008CD0 800080D0 1420FFFD */ bnez $at, .L800080C8 -/* 008CD4 800080D4 AC60FFF8 */ sw $zero, -8($v1) -/* 008CD8 800080D8 00001025 */ move $v0, $zero -/* 008CDC 800080DC 240305A0 */ li $v1, 1440 -.L800080E0: -/* 008CE0 800080E0 8CCE0000 */ lw $t6, ($a2) -/* 008CE4 800080E4 00000000 */ nop -/* 008CE8 800080E8 01C27821 */ addu $t7, $t6, $v0 -/* 008CEC 800080EC ADE00018 */ sw $zero, 0x18($t7) -/* 008CF0 800080F0 8CD80000 */ lw $t8, ($a2) -/* 008CF4 800080F4 00000000 */ nop -/* 008CF8 800080F8 0302C821 */ addu $t9, $t8, $v0 -/* 008CFC 800080FC AF20003C */ sw $zero, 0x3c($t9) -/* 008D00 80008100 8CC80000 */ lw $t0, ($a2) -/* 008D04 80008104 00000000 */ nop -/* 008D08 80008108 01024821 */ addu $t1, $t0, $v0 -/* 008D0C 8000810C AD200060 */ sw $zero, 0x60($t1) -/* 008D10 80008110 8CCA0000 */ lw $t2, ($a2) -/* 008D14 80008114 00000000 */ nop -/* 008D18 80008118 01425821 */ addu $t3, $t2, $v0 -/* 008D1C 8000811C 24420090 */ addiu $v0, $v0, 0x90 -/* 008D20 80008120 1443FFEF */ bne $v0, $v1, .L800080E0 -/* 008D24 80008124 AD600084 */ sw $zero, 0x84($t3) -/* 008D28 80008128 0C00205D */ jal func_80008174 -/* 008D2C 8000812C 00000000 */ nop -/* 008D30 80008130 8FBF0014 */ lw $ra, 0x14($sp) -/* 008D34 80008134 27BD0018 */ addiu $sp, $sp, 0x18 -/* 008D38 80008138 03E00008 */ jr $ra -/* 008D3C 8000813C 00000000 */ nop - -glabel func_80008140 -/* 008D40 80008140 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 008D44 80008144 AFBF0014 */ sw $ra, 0x14($sp) -/* 008D48 80008148 0C000638 */ jal func_800018E0 -/* 008D4C 8000814C 00000000 */ nop -/* 008D50 80008150 8FBF0014 */ lw $ra, 0x14($sp) -/* 008D54 80008154 240E0001 */ li $t6, 1 -/* 008D58 80008158 3C018012 */ lui $at, %hi(D_8011AC18) # $at, 0x8012 -/* 008D5C 8000815C A02EAC18 */ sb $t6, %lo(D_8011AC18)($at) -/* 008D60 80008160 03E00008 */ jr $ra -/* 008D64 80008164 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_80008168 -/* 008D68 80008168 3C018012 */ lui $at, 0x8012 -/* 008D6C 8000816C 03E00008 */ jr $ra -/* 008D70 80008170 A020AC18 */ sb $zero, -0x53e8($at) - -glabel func_80008174 -/* 008D74 80008174 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 008D78 80008178 3C038012 */ lui $v1, %hi(D_80119C4C) # $v1, 0x8012 -/* 008D7C 8000817C 3C048012 */ lui $a0, %hi(D_80119C48) # $a0, 0x8012 -/* 008D80 80008180 300200FF */ andi $v0, $zero, 0xff -/* 008D84 80008184 24639C4C */ addiu $v1, %lo(D_80119C4C) # addiu $v1, $v1, -0x63b4 -/* 008D88 80008188 8C849C48 */ lw $a0, %lo(D_80119C48)($a0) -/* 008D8C 8000818C 28410028 */ slti $at, $v0, 0x28 -/* 008D90 80008190 AFBF003C */ sw $ra, 0x3c($sp) -/* 008D94 80008194 AFB60038 */ sw $s6, 0x38($sp) -/* 008D98 80008198 AFB50034 */ sw $s5, 0x34($sp) -/* 008D9C 8000819C AFB40030 */ sw $s4, 0x30($sp) -/* 008DA0 800081A0 AFB3002C */ sw $s3, 0x2c($sp) -/* 008DA4 800081A4 AFB20028 */ sw $s2, 0x28($sp) -/* 008DA8 800081A8 AFB10024 */ sw $s1, 0x24($sp) -/* 008DAC 800081AC AFB00020 */ sw $s0, 0x20($sp) -/* 008DB0 800081B0 E7B50018 */ swc1 $f21, 0x18($sp) -/* 008DB4 800081B4 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 008DB8 800081B8 1020000E */ beqz $at, .L800081F4 -/* 008DBC 800081BC A0600000 */ sb $zero, ($v1) -/* 008DC0 800081C0 3C058012 */ lui $a1, %hi(D_80119C50) # $a1, 0x8012 -/* 008DC4 800081C4 24A59C50 */ addiu $a1, %lo(D_80119C50) # addiu $a1, $a1, -0x63b0 -.L800081C8: -/* 008DC8 800081C8 8CAE0000 */ lw $t6, ($a1) -/* 008DCC 800081CC 00027880 */ sll $t7, $v0, 2 -/* 008DD0 800081D0 01CFC021 */ addu $t8, $t6, $t7 -/* 008DD4 800081D4 AF040000 */ sw $a0, ($t8) -/* 008DD8 800081D8 90790000 */ lbu $t9, ($v1) -/* 008DDC 800081DC 24840024 */ addiu $a0, $a0, 0x24 -/* 008DE0 800081E0 27290001 */ addiu $t1, $t9, 1 -/* 008DE4 800081E4 312200FF */ andi $v0, $t1, 0xff -/* 008DE8 800081E8 28410028 */ slti $at, $v0, 0x28 -/* 008DEC 800081EC 1420FFF6 */ bnez $at, .L800081C8 -/* 008DF0 800081F0 A0690000 */ sb $t1, ($v1) -.L800081F4: -/* 008DF4 800081F4 3C14800E */ lui $s4, %hi(D_800DC6E0) # $s4, 0x800e -/* 008DF8 800081F8 2694C6E0 */ addiu $s4, %lo(D_800DC6E0) # addiu $s4, $s4, -0x3920 -/* 008DFC 800081FC 968B0000 */ lhu $t3, ($s4) -/* 008E00 80008200 244AFFFF */ addiu $t2, $v0, -1 -/* 008E04 80008204 A06A0000 */ sb $t2, ($v1) -/* 008E08 80008208 19600014 */ blez $t3, .L8000825C -/* 008E0C 8000820C 00008825 */ move $s1, $zero -/* 008E10 80008210 3C128012 */ lui $s2, %hi(D_80119C44) # $s2, 0x8012 -/* 008E14 80008214 26529C44 */ addiu $s2, %lo(D_80119C44) # addiu $s2, $s2, -0x63bc -/* 008E18 80008218 00008025 */ move $s0, $zero -.L8000821C: -/* 008E1C 8000821C 8E4C0000 */ lw $t4, ($s2) -/* 008E20 80008220 00000000 */ nop -/* 008E24 80008224 01906821 */ addu $t5, $t4, $s0 -/* 008E28 80008228 8DA20000 */ lw $v0, ($t5) -/* 008E2C 8000822C 00000000 */ nop -/* 008E30 80008230 8C440018 */ lw $a0, 0x18($v0) -/* 008E34 80008234 A0400012 */ sb $zero, 0x12($v0) -/* 008E38 80008238 10800003 */ beqz $a0, .L80008248 -/* 008E3C 8000823C 00000000 */ nop -/* 008E40 80008240 0C001223 */ jal func_8000488C -/* 008E44 80008244 00000000 */ nop -.L80008248: -/* 008E48 80008248 968E0000 */ lhu $t6, ($s4) -/* 008E4C 8000824C 26310001 */ addiu $s1, $s1, 1 -/* 008E50 80008250 022E082A */ slt $at, $s1, $t6 -/* 008E54 80008254 1420FFF1 */ bnez $at, .L8000821C -/* 008E58 80008258 26100004 */ addiu $s0, $s0, 4 -.L8000825C: -/* 008E5C 8000825C A6800000 */ sh $zero, ($s4) -/* 008E60 80008260 3C01800E */ lui $at, %hi(D_800E4F10) # $at, 0x800e -/* 008E64 80008264 3C118012 */ lui $s1, %hi(D_80119C58) # $s1, 0x8012 -/* 008E68 80008268 3C128012 */ lui $s2, %hi(D_80119C5C) # $s2, 0x8012 -/* 008E6C 8000826C 3C138012 */ lui $s3, %hi(D_80119C60) # $s3, 0x8012 -/* 008E70 80008270 3C158012 */ lui $s5, %hi(D_8011A6E0) # $s5, 0x8012 -/* 008E74 80008274 C4344F10 */ lwc1 $f20, %lo(D_800E4F10)($at) -/* 008E78 80008278 26B5A6E0 */ addiu $s5, %lo(D_8011A6E0) # addiu $s5, $s5, -0x5920 -/* 008E7C 8000827C 26739C60 */ addiu $s3, %lo(D_80119C60) # addiu $s3, $s3, -0x63a0 -/* 008E80 80008280 26529C5C */ addiu $s2, %lo(D_80119C5C) # addiu $s2, $s2, -0x63a4 -/* 008E84 80008284 26319C58 */ addiu $s1, %lo(D_80119C58) # addiu $s1, $s1, -0x63a8 -/* 008E88 80008288 2414FFFF */ li $s4, -1 -/* 008E8C 8000828C 24160001 */ li $s6, 1 -/* 008E90 80008290 2410001E */ li $s0, 30 -.L80008294: -/* 008E94 80008294 8E240178 */ lw $a0, 0x178($s1) -/* 008E98 80008298 AE20016C */ sw $zero, 0x16c($s1) -/* 008E9C 8000829C 1080000E */ beqz $a0, .L800082D8 -/* 008EA0 800082A0 00000000 */ nop -/* 008EA4 800082A4 92220000 */ lbu $v0, ($s1) -/* 008EA8 800082A8 00000000 */ nop -/* 008EAC 800082AC 14400005 */ bnez $v0, .L800082C4 -/* 008EB0 800082B0 00000000 */ nop -/* 008EB4 800082B4 0C001223 */ jal func_8000488C -/* 008EB8 800082B8 00000000 */ nop -/* 008EBC 800082BC 10000006 */ b .L800082D8 -/* 008EC0 800082C0 AE200178 */ sw $zero, 0x178($s1) -.L800082C4: -/* 008EC4 800082C4 16C20003 */ bne $s6, $v0, .L800082D4 -/* 008EC8 800082C8 00000000 */ nop -/* 008ECC 800082CC 0C000638 */ jal func_800018E0 -/* 008ED0 800082D0 00000000 */ nop -.L800082D4: -/* 008ED4 800082D4 AE200178 */ sw $zero, 0x178($s1) -.L800082D8: -/* 008ED8 800082D8 A234017C */ sb $s4, 0x17c($s1) -/* 008EDC 800082DC E6540000 */ swc1 $f20, ($s2) -/* 008EE0 800082E0 02601025 */ move $v0, $s3 -/* 008EE4 800082E4 E6740000 */ swc1 $f20, ($s3) -/* 008EE8 800082E8 E4540010 */ swc1 $f20, 0x10($v0) -/* 008EEC 800082EC E454000C */ swc1 $f20, 0xc($v0) -/* 008EF0 800082F0 E4540008 */ swc1 $f20, 8($v0) -/* 008EF4 800082F4 E4540004 */ swc1 $f20, 4($v0) -/* 008EF8 800082F8 24420014 */ addiu $v0, $v0, 0x14 -/* 008EFC 800082FC 24030002 */ li $v1, 2 -.L80008300: -/* 008F00 80008300 24630004 */ addiu $v1, $v1, 4 -/* 008F04 80008304 E454000C */ swc1 $f20, 0xc($v0) -/* 008F08 80008308 E4540010 */ swc1 $f20, 0x10($v0) -/* 008F0C 8000830C E4540014 */ swc1 $f20, 0x14($v0) -/* 008F10 80008310 E4540018 */ swc1 $f20, 0x18($v0) -/* 008F14 80008314 E454001C */ swc1 $f20, 0x1c($v0) -/* 008F18 80008318 E4540020 */ swc1 $f20, 0x20($v0) -/* 008F1C 8000831C E4540024 */ swc1 $f20, 0x24($v0) -/* 008F20 80008320 E4540028 */ swc1 $f20, 0x28($v0) -/* 008F24 80008324 E454002C */ swc1 $f20, 0x2c($v0) -/* 008F28 80008328 24420030 */ addiu $v0, $v0, 0x30 -/* 008F2C 8000832C E454FFD0 */ swc1 $f20, -0x30($v0) -/* 008F30 80008330 E454FFD4 */ swc1 $f20, -0x2c($v0) -/* 008F34 80008334 1470FFF2 */ bne $v1, $s0, .L80008300 -/* 008F38 80008338 E454FFD8 */ swc1 $f20, -0x28($v0) -/* 008F3C 8000833C 26730180 */ addiu $s3, $s3, 0x180 -/* 008F40 80008340 0275082B */ sltu $at, $s3, $s5 -/* 008F44 80008344 26310180 */ addiu $s1, $s1, 0x180 -/* 008F48 80008348 1420FFD2 */ bnez $at, .L80008294 -/* 008F4C 8000834C 26520180 */ addiu $s2, $s2, 0x180 -/* 008F50 80008350 3C058012 */ lui $a1, %hi(D_8011A6D8) # $a1, 0x8012 -/* 008F54 80008354 3C068012 */ lui $a2, %hi(D_8011A6DC) # $a2, 0x8012 -/* 008F58 80008358 3C078012 */ lui $a3, %hi(D_8011A6E0) # $a3, 0x8012 -/* 008F5C 8000835C 3C088012 */ lui $t0, %hi(D_8011AC20) # $t0, 0x8012 -/* 008F60 80008360 44800000 */ mtc1 $zero, $f0 -/* 008F64 80008364 2508AC20 */ addiu $t0, %lo(D_8011AC20) # addiu $t0, $t0, -0x53e0 -/* 008F68 80008368 24E7A6E0 */ addiu $a3, %lo(D_8011A6E0) # addiu $a3, $a3, -0x5920 -/* 008F6C 8000836C 24C6A6DC */ addiu $a2, %lo(D_8011A6DC) # addiu $a2, $a2, -0x5924 -/* 008F70 80008370 24A5A6D8 */ addiu $a1, %lo(D_8011A6D8) # addiu $a1, $a1, -0x5928 -/* 008F74 80008374 2404000F */ li $a0, 15 -.L80008378: -/* 008F78 80008378 A0B400B8 */ sb $s4, 0xb8($a1) -/* 008F7C 8000837C A0A00000 */ sb $zero, ($a1) -/* 008F80 80008380 E4A000BC */ swc1 $f0, 0xbc($a1) -/* 008F84 80008384 E4D40000 */ swc1 $f20, ($a2) -/* 008F88 80008388 00E01025 */ move $v0, $a3 -/* 008F8C 8000838C E4F40000 */ swc1 $f20, ($a3) -/* 008F90 80008390 E454001C */ swc1 $f20, 0x1c($v0) -/* 008F94 80008394 E4540018 */ swc1 $f20, 0x18($v0) -/* 008F98 80008398 E4540014 */ swc1 $f20, 0x14($v0) -/* 008F9C 8000839C E4540010 */ swc1 $f20, 0x10($v0) -/* 008FA0 800083A0 E454000C */ swc1 $f20, 0xc($v0) -/* 008FA4 800083A4 E4540008 */ swc1 $f20, 8($v0) -/* 008FA8 800083A8 E4540004 */ swc1 $f20, 4($v0) -/* 008FAC 800083AC 24420020 */ addiu $v0, $v0, 0x20 -/* 008FB0 800083B0 24030003 */ li $v1, 3 -.L800083B4: -/* 008FB4 800083B4 24630004 */ addiu $v1, $v1, 4 -/* 008FB8 800083B8 E454000C */ swc1 $f20, 0xc($v0) -/* 008FBC 800083BC E4540010 */ swc1 $f20, 0x10($v0) -/* 008FC0 800083C0 E4540014 */ swc1 $f20, 0x14($v0) -/* 008FC4 800083C4 E4540018 */ swc1 $f20, 0x18($v0) -/* 008FC8 800083C8 E454001C */ swc1 $f20, 0x1c($v0) -/* 008FCC 800083CC E4540020 */ swc1 $f20, 0x20($v0) -/* 008FD0 800083D0 E4540024 */ swc1 $f20, 0x24($v0) -/* 008FD4 800083D4 E4540028 */ swc1 $f20, 0x28($v0) -/* 008FD8 800083D8 E454002C */ swc1 $f20, 0x2c($v0) -/* 008FDC 800083DC 24420030 */ addiu $v0, $v0, 0x30 -/* 008FE0 800083E0 E454FFD0 */ swc1 $f20, -0x30($v0) -/* 008FE4 800083E4 E454FFD4 */ swc1 $f20, -0x2c($v0) -/* 008FE8 800083E8 1464FFF2 */ bne $v1, $a0, .L800083B4 -/* 008FEC 800083EC E454FFD8 */ swc1 $f20, -0x28($v0) -/* 008FF0 800083F0 24E700C0 */ addiu $a3, $a3, 0xc0 -/* 008FF4 800083F4 24A500C0 */ addiu $a1, $a1, 0xc0 -/* 008FF8 800083F8 14E8FFDF */ bne $a3, $t0, .L80008378 -/* 008FFC 800083FC 24C600C0 */ addiu $a2, $a2, 0xc0 -/* 009000 80008400 8FBF003C */ lw $ra, 0x3c($sp) -/* 009004 80008404 3C018012 */ lui $at, %hi(D_8011AC18) # $at, 0x8012 -/* 009008 80008408 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 00900C 8000840C C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 009010 80008410 8FB00020 */ lw $s0, 0x20($sp) -/* 009014 80008414 8FB10024 */ lw $s1, 0x24($sp) -/* 009018 80008418 8FB20028 */ lw $s2, 0x28($sp) -/* 00901C 8000841C 8FB3002C */ lw $s3, 0x2c($sp) -/* 009020 80008420 8FB40030 */ lw $s4, 0x30($sp) -/* 009024 80008424 8FB50034 */ lw $s5, 0x34($sp) -/* 009028 80008428 8FB60038 */ lw $s6, 0x38($sp) -/* 00902C 8000842C A020AC18 */ sb $zero, %lo(D_8011AC18)($at) -/* 009030 80008430 03E00008 */ jr $ra -/* 009034 80008434 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_80008438 -/* 009038 80008438 27BDFD98 */ addiu $sp, $sp, -0x268 -/* 00903C 8000843C AFBF006C */ sw $ra, 0x6c($sp) -/* 009040 80008440 AFBE0068 */ sw $fp, 0x68($sp) -/* 009044 80008444 AFB70064 */ sw $s7, 0x64($sp) -/* 009048 80008448 AFB60060 */ sw $s6, 0x60($sp) -/* 00904C 8000844C AFB5005C */ sw $s5, 0x5c($sp) -/* 009050 80008450 AFB40058 */ sw $s4, 0x58($sp) -/* 009054 80008454 AFB30054 */ sw $s3, 0x54($sp) -/* 009058 80008458 AFB20050 */ sw $s2, 0x50($sp) -/* 00905C 8000845C AFB1004C */ sw $s1, 0x4c($sp) -/* 009060 80008460 AFB00048 */ sw $s0, 0x48($sp) -/* 009064 80008464 E7BB0040 */ swc1 $f27, 0x40($sp) -/* 009068 80008468 E7BA0044 */ swc1 $f26, 0x44($sp) -/* 00906C 8000846C E7B90038 */ swc1 $f25, 0x38($sp) -/* 009070 80008470 E7B8003C */ swc1 $f24, 0x3c($sp) -/* 009074 80008474 E7B70030 */ swc1 $f23, 0x30($sp) -/* 009078 80008478 E7B60034 */ swc1 $f22, 0x34($sp) -/* 00907C 8000847C E7B50028 */ swc1 $f21, 0x28($sp) -/* 009080 80008480 E7B4002C */ swc1 $f20, 0x2c($sp) -/* 009084 80008484 AFA40268 */ sw $a0, 0x268($sp) -/* 009088 80008488 AFA5026C */ sw $a1, 0x26c($sp) -/* 00908C 8000848C AFA60270 */ sw $a2, 0x270($sp) -/* 009090 80008490 0C019884 */ jal func_80066210 -/* 009094 80008494 AFA0024C */ sw $zero, 0x24c($sp) -/* 009098 80008498 0C01994B */ jal func_8006652C -/* 00909C 8000849C 00402025 */ move $a0, $v0 -/* 0090A0 800084A0 0C01A75F */ jal func_80069D7C -/* 0090A4 800084A4 AFA200B0 */ sw $v0, 0xb0($sp) -/* 0090A8 800084A8 3C15800E */ lui $s5, %hi(D_800DC6E0) # $s5, 0x800e -/* 0090AC 800084AC 26B5C6E0 */ addiu $s5, %lo(D_800DC6E0) # addiu $s5, $s5, -0x3920 -/* 0090B0 800084B0 96AE0000 */ lhu $t6, ($s5) -/* 0090B4 800084B4 AFA200AC */ sw $v0, 0xac($sp) -/* 0090B8 800084B8 19C00187 */ blez $t6, .L80008AD8 -/* 0090BC 800084BC AFA00260 */ sw $zero, 0x260($sp) -/* 0090C0 800084C0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0090C4 800084C4 3C168012 */ lui $s6, %hi(D_80119C44) # $s6, 0x8012 -/* 0090C8 800084C8 4481D000 */ mtc1 $at, $f26 -/* 0090CC 800084CC 26D69C44 */ addiu $s6, %lo(D_80119C44) # addiu $s6, $s6, -0x63bc -/* 0090D0 800084D0 0000A025 */ move $s4, $zero -/* 0090D4 800084D4 27B700A8 */ addiu $s7, $sp, 0xa8 -/* 0090D8 800084D8 24120001 */ li $s2, 1 -.L800084DC: -/* 0090DC 800084DC 8ECF0000 */ lw $t7, ($s6) -/* 0090E0 800084E0 8FA900B0 */ lw $t1, 0xb0($sp) -/* 0090E4 800084E4 01F4C021 */ addu $t8, $t7, $s4 -/* 0090E8 800084E8 8F110000 */ lw $s1, ($t8) -/* 0090EC 800084EC AFA00254 */ sw $zero, 0x254($sp) -/* 0090F0 800084F0 92390011 */ lbu $t9, 0x11($s1) -/* 0090F4 800084F4 8FAB00B0 */ lw $t3, 0xb0($sp) -/* 0090F8 800084F8 33280002 */ andi $t0, $t9, 2 -/* 0090FC 800084FC 1100006F */ beqz $t0, .L800086BC -/* 009100 80008500 24010001 */ li $at, 1 -/* 009104 80008504 1521016D */ bne $t1, $at, .L80008ABC -/* 009108 80008508 8FA80260 */ lw $t0, 0x260($sp) -/* 00910C 8000850C 8FAA00AC */ lw $t2, 0xac($sp) -/* 009110 80008510 C6240000 */ lwc1 $f4, ($s1) -/* 009114 80008514 C546000C */ lwc1 $f6, 0xc($t2) -/* 009118 80008518 C6280004 */ lwc1 $f8, 4($s1) -/* 00911C 8000851C 46062501 */ sub.s $f20, $f4, $f6 -/* 009120 80008520 C54A0010 */ lwc1 $f10, 0x10($t2) -/* 009124 80008524 4614A102 */ mul.s $f4, $f20, $f20 -/* 009128 80008528 460A4001 */ sub.s $f0, $f8, $f10 -/* 00912C 8000852C C6300008 */ lwc1 $f16, 8($s1) -/* 009130 80008530 C5520014 */ lwc1 $f18, 0x14($t2) -/* 009134 80008534 46000182 */ mul.s $f6, $f0, $f0 -/* 009138 80008538 46128581 */ sub.s $f22, $f16, $f18 -/* 00913C 8000853C 4616B282 */ mul.s $f10, $f22, $f22 -/* 009140 80008540 46062200 */ add.s $f8, $f4, $f6 -/* 009144 80008544 0C0326B4 */ jal sqrtf -/* 009148 80008548 460A4300 */ add.s $f12, $f8, $f10 -/* 00914C 8000854C 444BF800 */ cfc1 $t3, $31 -/* 009150 80008550 8E240014 */ lw $a0, 0x14($s1) -/* 009154 80008554 35610003 */ ori $at, $t3, 3 -/* 009158 80008558 38210002 */ xori $at, $at, 2 -/* 00915C 8000855C 44C1F800 */ ctc1 $at, $31 -/* 009160 80008560 00000000 */ nop -/* 009164 80008564 46000424 */ cvt.w.s $f16, $f0 -/* 009168 80008568 44038000 */ mfc1 $v1, $f16 -/* 00916C 8000856C 44CBF800 */ ctc1 $t3, $31 -/* 009170 80008570 0064082A */ slt $at, $v1, $a0 -/* 009174 80008574 10200049 */ beqz $at, .L8000869C -/* 009178 80008578 0083082A */ slt $at, $a0, $v1 -/* 00917C 8000857C 922C0012 */ lbu $t4, 0x12($s1) -/* 009180 80008580 00000000 */ nop -/* 009184 80008584 15800045 */ bnez $t4, .L8000869C -/* 009188 80008588 0083082A */ slt $at, $a0, $v1 -/* 00918C 8000858C 8E240018 */ lw $a0, 0x18($s1) -/* 009190 80008590 00000000 */ nop -/* 009194 80008594 1480000F */ bnez $a0, .L800085D4 -/* 009198 80008598 00000000 */ nop -/* 00919C 8000859C 922D0022 */ lbu $t5, 0x22($s1) -/* 0091A0 800085A0 00000000 */ nop -/* 0091A4 800085A4 11A00006 */ beqz $t5, .L800085C0 -/* 0091A8 800085A8 00000000 */ nop -/* 0091AC 800085AC 922E0011 */ lbu $t6, 0x11($s1) -/* 0091B0 800085B0 00000000 */ nop -/* 0091B4 800085B4 31CF0004 */ andi $t7, $t6, 4 -/* 0091B8 800085B8 15E00006 */ bnez $t7, .L800085D4 -/* 0091BC 800085BC 00000000 */ nop -.L800085C0: -/* 0091C0 800085C0 9624000C */ lhu $a0, 0xc($s1) -/* 0091C4 800085C4 0C0007C5 */ jal func_80001F14 -/* 0091C8 800085C8 26250018 */ addiu $a1, $s1, 0x18 -/* 0091CC 800085CC 8E240018 */ lw $a0, 0x18($s1) -/* 0091D0 800085D0 A2320022 */ sb $s2, 0x22($s1) -.L800085D4: -/* 0091D4 800085D4 1080002E */ beqz $a0, .L80008690 -/* 0091D8 800085D8 00000000 */ nop -/* 0091DC 800085DC 9238000F */ lbu $t8, 0xf($s1) -/* 0091E0 800085E0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0091E4 800085E4 44989000 */ mtc1 $t8, $f18 -/* 0091E8 800085E8 07010004 */ bgez $t8, .L800085FC -/* 0091EC 800085EC 46809120 */ cvt.s.w $f4, $f18 -/* 0091F0 800085F0 44813000 */ mtc1 $at, $f6 -/* 0091F4 800085F4 00000000 */ nop -/* 0091F8 800085F8 46062100 */ add.s $f4, $f4, $f6 -.L800085FC: -/* 0091FC 800085FC 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 009200 80008600 44814000 */ mtc1 $at, $f8 -/* 009204 80008604 24050008 */ li $a1, 8 -/* 009208 80008608 46082283 */ div.s $f10, $f4, $f8 -/* 00920C 8000860C E7AA00A8 */ swc1 $f10, 0xa8($sp) -/* 009210 80008610 9226000E */ lbu $a2, 0xe($s1) -/* 009214 80008614 8E240018 */ lw $a0, 0x18($s1) -/* 009218 80008618 0006CA00 */ sll $t9, $a2, 8 -/* 00921C 8000861C 0C00127E */ jal func_800049F8 -/* 009220 80008620 03203025 */ move $a2, $t9 -/* 009224 80008624 8E240018 */ lw $a0, 0x18($s1) -/* 009228 80008628 8EE60000 */ lw $a2, ($s7) -/* 00922C 8000862C 0C00127E */ jal func_800049F8 -/* 009230 80008630 24050010 */ li $a1, 16 -/* 009234 80008634 8FA800AC */ lw $t0, 0xac($sp) -/* 009238 80008638 4600A306 */ mov.s $f12, $f20 -/* 00923C 8000863C 85060000 */ lh $a2, ($t0) -/* 009240 80008640 0C002430 */ jal func_800090C0 -/* 009244 80008644 4600B386 */ mov.s $f14, $f22 -/* 009248 80008648 8FA900B0 */ lw $t1, 0xb0($sp) -/* 00924C 8000864C 24010001 */ li $at, 1 -/* 009250 80008650 11210002 */ beq $t1, $at, .L8000865C -/* 009254 80008654 00403025 */ move $a2, $v0 -/* 009258 80008658 24060040 */ li $a2, 64 -.L8000865C: -/* 00925C 8000865C 8E240018 */ lw $a0, 0x18($s1) -/* 009260 80008660 0C00127E */ jal func_800049F8 -/* 009264 80008664 24050004 */ li $a1, 4 -/* 009268 80008668 8E240018 */ lw $a0, 0x18($s1) -/* 00926C 8000866C 8E250000 */ lw $a1, ($s1) -/* 009270 80008670 8E260004 */ lw $a2, 4($s1) -/* 009274 80008674 8E270008 */ lw $a3, 8($s1) -/* 009278 80008678 0C0026DF */ jal func_80009B7C -/* 00927C 8000867C 00000000 */ nop -/* 009280 80008680 8E240018 */ lw $a0, 0x18($s1) -/* 009284 80008684 92250021 */ lbu $a1, 0x21($s1) -/* 009288 80008688 0C001181 */ jal func_80004604 -/* 00928C 8000868C 00000000 */ nop -.L80008690: -/* 009290 80008690 10000109 */ b .L80008AB8 -/* 009294 80008694 A2320012 */ sb $s2, 0x12($s1) -/* 009298 80008698 0083082A */ slt $at, $a0, $v1 -.L8000869C: -/* 00929C 8000869C 10200107 */ beqz $at, .L80008ABC -/* 0092A0 800086A0 8FA80260 */ lw $t0, 0x260($sp) -/* 0092A4 800086A4 922A0012 */ lbu $t2, 0x12($s1) -/* 0092A8 800086A8 00000000 */ nop -/* 0092AC 800086AC 11400103 */ beqz $t2, .L80008ABC -/* 0092B0 800086B0 8FA80260 */ lw $t0, 0x260($sp) -/* 0092B4 800086B4 10000100 */ b .L80008AB8 -/* 0092B8 800086B8 A2200012 */ sb $zero, 0x12($s1) -.L800086BC: -/* 0092BC 800086BC 19600063 */ blez $t3, .L8000884C -/* 0092C0 800086C0 0000F025 */ move $fp, $zero -/* 0092C4 800086C4 8FB300AC */ lw $s3, 0xac($sp) -/* 0092C8 800086C8 00000000 */ nop -.L800086CC: -/* 0092CC 800086CC C6300000 */ lwc1 $f16, ($s1) -/* 0092D0 800086D0 C672000C */ lwc1 $f18, 0xc($s3) -/* 0092D4 800086D4 C6260004 */ lwc1 $f6, 4($s1) -/* 0092D8 800086D8 46128501 */ sub.s $f20, $f16, $f18 -/* 0092DC 800086DC C6640010 */ lwc1 $f4, 0x10($s3) -/* 0092E0 800086E0 4614A402 */ mul.s $f16, $f20, $f20 -/* 0092E4 800086E4 46043001 */ sub.s $f0, $f6, $f4 -/* 0092E8 800086E8 C6280008 */ lwc1 $f8, 8($s1) -/* 0092EC 800086EC C66A0014 */ lwc1 $f10, 0x14($s3) -/* 0092F0 800086F0 46000482 */ mul.s $f18, $f0, $f0 -/* 0092F4 800086F4 460A4581 */ sub.s $f22, $f8, $f10 -/* 0092F8 800086F8 4616B102 */ mul.s $f4, $f22, $f22 -/* 0092FC 800086FC 46128180 */ add.s $f6, $f16, $f18 -/* 009300 80008700 0C0326B4 */ jal sqrtf -/* 009304 80008704 46043300 */ add.s $f12, $f6, $f4 -/* 009308 80008708 444CF800 */ cfc1 $t4, $31 -/* 00930C 8000870C 8E240014 */ lw $a0, 0x14($s1) -/* 009310 80008710 35810003 */ ori $at, $t4, 3 -/* 009314 80008714 38210002 */ xori $at, $at, 2 -/* 009318 80008718 44C1F800 */ ctc1 $at, $31 -/* 00931C 8000871C 8FA90254 */ lw $t1, 0x254($sp) -/* 009320 80008720 46000224 */ cvt.w.s $f8, $f0 -/* 009324 80008724 44034000 */ mfc1 $v1, $f8 -/* 009328 80008728 44CCF800 */ ctc1 $t4, $31 -/* 00932C 8000872C 0064082A */ slt $at, $v1, $a0 -/* 009330 80008730 10200043 */ beqz $at, .L80008840 -/* 009334 80008734 8FAA00B0 */ lw $t2, 0xb0($sp) -/* 009338 80008738 922D0020 */ lbu $t5, 0x20($s1) -/* 00933C 8000873C 0083C023 */ subu $t8, $a0, $v1 -/* 009340 80008740 15A0001B */ bnez $t5, .L800087B0 -/* 009344 80008744 00000000 */ nop -/* 009348 80008748 44835000 */ mtc1 $v1, $f10 -/* 00934C 8000874C 44849000 */ mtc1 $a0, $f18 -/* 009350 80008750 46805420 */ cvt.s.w $f16, $f10 -/* 009354 80008754 922E000E */ lbu $t6, 0xe($s1) -/* 009358 80008758 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 00935C 8000875C 468091A0 */ cvt.s.w $f6, $f18 -/* 009360 80008760 448E5000 */ mtc1 $t6, $f10 -/* 009364 80008764 46068103 */ div.s $f4, $f16, $f6 -/* 009368 80008768 468054A0 */ cvt.s.w $f18, $f10 -/* 00936C 8000876C 05C10004 */ bgez $t6, .L80008780 -/* 009370 80008770 4604D201 */ sub.s $f8, $f26, $f4 -/* 009374 80008774 44818000 */ mtc1 $at, $f16 -/* 009378 80008778 00000000 */ nop -/* 00937C 8000877C 46109480 */ add.s $f18, $f18, $f16 -.L80008780: -/* 009380 80008780 46124182 */ mul.s $f6, $f8, $f18 -/* 009384 80008784 444FF800 */ cfc1 $t7, $31 -/* 009388 80008788 00000000 */ nop -/* 00938C 8000878C 35E10003 */ ori $at, $t7, 3 -/* 009390 80008790 38210002 */ xori $at, $at, 2 -/* 009394 80008794 44C1F800 */ ctc1 $at, $31 -/* 009398 80008798 00000000 */ nop -/* 00939C 8000879C 46003124 */ cvt.w.s $f4, $f6 -/* 0093A0 800087A0 44022000 */ mfc1 $v0, $f4 -/* 0093A4 800087A4 44CFF800 */ ctc1 $t7, $31 -/* 0093A8 800087A8 1000001C */ b .L8000881C -/* 0093AC 800087AC 0122082A */ slt $at, $t1, $v0 -.L800087B0: -/* 0093B0 800087B0 44985000 */ mtc1 $t8, $f10 -/* 0093B4 800087B4 44844000 */ mtc1 $a0, $f8 -/* 0093B8 800087B8 46805420 */ cvt.s.w $f16, $f10 -/* 0093BC 800087BC 9239000E */ lbu $t9, 0xe($s1) -/* 0093C0 800087C0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0093C4 800087C4 468044A0 */ cvt.s.w $f18, $f8 -/* 0093C8 800087C8 44992000 */ mtc1 $t9, $f4 -/* 0093CC 800087CC 46128003 */ div.s $f0, $f16, $f18 -/* 0093D0 800087D0 468022A0 */ cvt.s.w $f10, $f4 -/* 0093D4 800087D4 46000182 */ mul.s $f6, $f0, $f0 -/* 0093D8 800087D8 07210004 */ bgez $t9, .L800087EC -/* 0093DC 800087DC 00000000 */ nop -/* 0093E0 800087E0 44814000 */ mtc1 $at, $f8 -/* 0093E4 800087E4 00000000 */ nop -/* 0093E8 800087E8 46085280 */ add.s $f10, $f10, $f8 -.L800087EC: -/* 0093EC 800087EC 460A3402 */ mul.s $f16, $f6, $f10 -/* 0093F0 800087F0 4448F800 */ cfc1 $t0, $31 -/* 0093F4 800087F4 00000000 */ nop -/* 0093F8 800087F8 35010003 */ ori $at, $t0, 3 -/* 0093FC 800087FC 38210002 */ xori $at, $at, 2 -/* 009400 80008800 44C1F800 */ ctc1 $at, $31 -/* 009404 80008804 00000000 */ nop -/* 009408 80008808 460084A4 */ cvt.w.s $f18, $f16 -/* 00940C 8000880C 44C8F800 */ ctc1 $t0, $31 -/* 009410 80008810 44029000 */ mfc1 $v0, $f18 -/* 009414 80008814 00000000 */ nop -/* 009418 80008818 0122082A */ slt $at, $t1, $v0 -.L8000881C: -/* 00941C 8000881C 10200008 */ beqz $at, .L80008840 -/* 009420 80008820 8FAA00B0 */ lw $t2, 0xb0($sp) -/* 009424 80008824 AFA20254 */ sw $v0, 0x254($sp) -/* 009428 80008828 86660000 */ lh $a2, ($s3) -/* 00942C 8000882C 4600A306 */ mov.s $f12, $f20 -/* 009430 80008830 0C002430 */ jal func_800090C0 -/* 009434 80008834 4600B386 */ mov.s $f14, $f22 -/* 009438 80008838 AFA20250 */ sw $v0, 0x250($sp) -/* 00943C 8000883C 8FAA00B0 */ lw $t2, 0xb0($sp) -.L80008840: -/* 009440 80008840 27DE0001 */ addiu $fp, $fp, 1 -/* 009444 80008844 17CAFFA1 */ bne $fp, $t2, .L800086CC -/* 009448 80008848 26730044 */ addiu $s3, $s3, 0x44 -.L8000884C: -/* 00944C 8000884C 92220010 */ lbu $v0, 0x10($s1) -/* 009450 80008850 8FAB0254 */ lw $t3, 0x254($sp) -/* 009454 80008854 8FAC00B0 */ lw $t4, 0xb0($sp) -/* 009458 80008858 0162082A */ slt $at, $t3, $v0 -/* 00945C 8000885C 10200033 */ beqz $at, .L8000892C -/* 009460 80008860 3C01800E */ lui $at, %hi(D_800E4F14) # $at, 0x800e -/* 009464 80008864 C4384F14 */ lwc1 $f24, %lo(D_800E4F14)($at) -/* 009468 80008868 1980002F */ blez $t4, .L80008928 -/* 00946C 8000886C 0000F025 */ move $fp, $zero -/* 009470 80008870 8FB300AC */ lw $s3, 0xac($sp) -/* 009474 80008874 00000000 */ nop -.L80008878: -/* 009478 80008878 C6240000 */ lwc1 $f4, ($s1) -/* 00947C 8000887C C668000C */ lwc1 $f8, 0xc($s3) -/* 009480 80008880 C6260004 */ lwc1 $f6, 4($s1) -/* 009484 80008884 46082501 */ sub.s $f20, $f4, $f8 -/* 009488 80008888 C66A0010 */ lwc1 $f10, 0x10($s3) -/* 00948C 8000888C 4614A102 */ mul.s $f4, $f20, $f20 -/* 009490 80008890 460A3001 */ sub.s $f0, $f6, $f10 -/* 009494 80008894 C6300008 */ lwc1 $f16, 8($s1) -/* 009498 80008898 C6720014 */ lwc1 $f18, 0x14($s3) -/* 00949C 8000889C 46000202 */ mul.s $f8, $f0, $f0 -/* 0094A0 800088A0 46128581 */ sub.s $f22, $f16, $f18 -/* 0094A4 800088A4 4616B282 */ mul.s $f10, $f22, $f22 -/* 0094A8 800088A8 46082180 */ add.s $f6, $f4, $f8 -/* 0094AC 800088AC 0C0326B4 */ jal sqrtf -/* 0094B0 800088B0 460A3300 */ add.s $f12, $f6, $f10 -/* 0094B4 800088B4 444DF800 */ cfc1 $t5, $31 -/* 0094B8 800088B8 00000000 */ nop -/* 0094BC 800088BC 35A10003 */ ori $at, $t5, 3 -/* 0094C0 800088C0 38210002 */ xori $at, $at, 2 -/* 0094C4 800088C4 44C1F800 */ ctc1 $at, $31 -/* 0094C8 800088C8 00000000 */ nop -/* 0094CC 800088CC 46000424 */ cvt.w.s $f16, $f0 -/* 0094D0 800088D0 44108000 */ mfc1 $s0, $f16 -/* 0094D4 800088D4 44CDF800 */ ctc1 $t5, $31 -/* 0094D8 800088D8 44909000 */ mtc1 $s0, $f18 -/* 0094DC 800088DC 00000000 */ nop -/* 0094E0 800088E0 46809120 */ cvt.s.w $f4, $f18 -/* 0094E4 800088E4 4618203C */ c.lt.s $f4, $f24 -/* 0094E8 800088E8 00000000 */ nop -/* 0094EC 800088EC 45000009 */ bc1f .L80008914 -/* 0094F0 800088F0 8FAE00B0 */ lw $t6, 0xb0($sp) -/* 0094F4 800088F4 86660000 */ lh $a2, ($s3) -/* 0094F8 800088F8 4600A306 */ mov.s $f12, $f20 -/* 0094FC 800088FC 0C002430 */ jal func_800090C0 -/* 009500 80008900 4600B386 */ mov.s $f14, $f22 -/* 009504 80008904 44904000 */ mtc1 $s0, $f8 -/* 009508 80008908 AFA20250 */ sw $v0, 0x250($sp) -/* 00950C 8000890C 46804620 */ cvt.s.w $f24, $f8 -/* 009510 80008910 8FAE00B0 */ lw $t6, 0xb0($sp) -.L80008914: -/* 009514 80008914 27DE0001 */ addiu $fp, $fp, 1 -/* 009518 80008918 17CEFFD7 */ bne $fp, $t6, .L80008878 -/* 00951C 8000891C 26730044 */ addiu $s3, $s3, 0x44 -/* 009520 80008920 92220010 */ lbu $v0, 0x10($s1) -/* 009524 80008924 00000000 */ nop -.L80008928: -/* 009528 80008928 AFA20254 */ sw $v0, 0x254($sp) -.L8000892C: -/* 00952C 8000892C 8FAF0254 */ lw $t7, 0x254($sp) -/* 009530 80008930 00000000 */ nop -/* 009534 80008934 29E1000B */ slti $at, $t7, 0xb -/* 009538 80008938 14200044 */ bnez $at, .L80008A4C -/* 00953C 8000893C 00000000 */ nop -/* 009540 80008940 8E240018 */ lw $a0, 0x18($s1) -/* 009544 80008944 00000000 */ nop -/* 009548 80008948 1480000F */ bnez $a0, .L80008988 -/* 00954C 8000894C 00000000 */ nop -/* 009550 80008950 92380022 */ lbu $t8, 0x22($s1) -/* 009554 80008954 00000000 */ nop -/* 009558 80008958 13000006 */ beqz $t8, .L80008974 -/* 00955C 8000895C 00000000 */ nop -/* 009560 80008960 92390011 */ lbu $t9, 0x11($s1) -/* 009564 80008964 00000000 */ nop -/* 009568 80008968 33280004 */ andi $t0, $t9, 4 -/* 00956C 8000896C 15000006 */ bnez $t0, .L80008988 -/* 009570 80008970 00000000 */ nop -.L80008974: -/* 009574 80008974 9624000C */ lhu $a0, 0xc($s1) -/* 009578 80008978 0C0007C5 */ jal func_80001F14 -/* 00957C 8000897C 26250018 */ addiu $a1, $s1, 0x18 -/* 009580 80008980 8E240018 */ lw $a0, 0x18($s1) -/* 009584 80008984 A2320022 */ sb $s2, 0x22($s1) -.L80008988: -/* 009588 80008988 1080002B */ beqz $a0, .L80008A38 -/* 00958C 8000898C 00000000 */ nop -/* 009590 80008990 9229000F */ lbu $t1, 0xf($s1) -/* 009594 80008994 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 009598 80008998 44893000 */ mtc1 $t1, $f6 -/* 00959C 8000899C 05210004 */ bgez $t1, .L800089B0 -/* 0095A0 800089A0 468032A0 */ cvt.s.w $f10, $f6 -/* 0095A4 800089A4 44818000 */ mtc1 $at, $f16 -/* 0095A8 800089A8 00000000 */ nop -/* 0095AC 800089AC 46105280 */ add.s $f10, $f10, $f16 -.L800089B0: -/* 0095B0 800089B0 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 0095B4 800089B4 44819000 */ mtc1 $at, $f18 -/* 0095B8 800089B8 8FA60254 */ lw $a2, 0x254($sp) -/* 0095BC 800089BC 46125103 */ div.s $f4, $f10, $f18 -/* 0095C0 800089C0 00065200 */ sll $t2, $a2, 8 -/* 0095C4 800089C4 01403025 */ move $a2, $t2 -/* 0095C8 800089C8 24050008 */ li $a1, 8 -/* 0095CC 800089CC E7A40098 */ swc1 $f4, 0x98($sp) -/* 0095D0 800089D0 8E240018 */ lw $a0, 0x18($s1) -/* 0095D4 800089D4 0C00127E */ jal func_800049F8 -/* 0095D8 800089D8 00000000 */ nop -/* 0095DC 800089DC 8E240018 */ lw $a0, 0x18($s1) -/* 0095E0 800089E0 8FA60098 */ lw $a2, 0x98($sp) -/* 0095E4 800089E4 0C00127E */ jal func_800049F8 -/* 0095E8 800089E8 24050010 */ li $a1, 16 -/* 0095EC 800089EC 8FAB00B0 */ lw $t3, 0xb0($sp) -/* 0095F0 800089F0 24010001 */ li $at, 1 -/* 0095F4 800089F4 11610002 */ beq $t3, $at, .L80008A00 -/* 0095F8 800089F8 240C0040 */ li $t4, 64 -/* 0095FC 800089FC AFAC0250 */ sw $t4, 0x250($sp) -.L80008A00: -/* 009600 80008A00 8E240018 */ lw $a0, 0x18($s1) -/* 009604 80008A04 8FA60250 */ lw $a2, 0x250($sp) -/* 009608 80008A08 0C00127E */ jal func_800049F8 -/* 00960C 80008A0C 24050004 */ li $a1, 4 -/* 009610 80008A10 8E240018 */ lw $a0, 0x18($s1) -/* 009614 80008A14 92250021 */ lbu $a1, 0x21($s1) -/* 009618 80008A18 0C001181 */ jal func_80004604 -/* 00961C 80008A1C 00000000 */ nop -/* 009620 80008A20 8E240018 */ lw $a0, 0x18($s1) -/* 009624 80008A24 8E250000 */ lw $a1, ($s1) -/* 009628 80008A28 8E260004 */ lw $a2, 4($s1) -/* 00962C 80008A2C 8E270008 */ lw $a3, 8($s1) -/* 009630 80008A30 0C0026DF */ jal func_80009B7C -/* 009634 80008A34 00000000 */ nop -.L80008A38: -/* 009638 80008A38 92220011 */ lbu $v0, 0x11($s1) -/* 00963C 80008A3C 00000000 */ nop -/* 009640 80008A40 304D0004 */ andi $t5, $v0, 4 -/* 009644 80008A44 10000010 */ b .L80008A88 -/* 009648 80008A48 01A01025 */ move $v0, $t5 -.L80008A4C: -/* 00964C 80008A4C 8E240018 */ lw $a0, 0x18($s1) -/* 009650 80008A50 00000000 */ nop -/* 009654 80008A54 10800008 */ beqz $a0, .L80008A78 -/* 009658 80008A58 00000000 */ nop -/* 00965C 80008A5C 0C001223 */ jal func_8000488C -/* 009660 80008A60 00000000 */ nop -/* 009664 80008A64 92220011 */ lbu $v0, 0x11($s1) -/* 009668 80008A68 00000000 */ nop -/* 00966C 80008A6C 304E0004 */ andi $t6, $v0, 4 -/* 009670 80008A70 10000005 */ b .L80008A88 -/* 009674 80008A74 01C01025 */ move $v0, $t6 -.L80008A78: -/* 009678 80008A78 92220011 */ lbu $v0, 0x11($s1) -/* 00967C 80008A7C A2320022 */ sb $s2, 0x22($s1) -/* 009680 80008A80 304F0004 */ andi $t7, $v0, 4 -/* 009684 80008A84 01E01025 */ move $v0, $t7 -.L80008A88: -/* 009688 80008A88 1040000C */ beqz $v0, .L80008ABC -/* 00968C 80008A8C 8FA80260 */ lw $t0, 0x260($sp) -/* 009690 80008A90 92380022 */ lbu $t8, 0x22($s1) -/* 009694 80008A94 00000000 */ nop -/* 009698 80008A98 13000008 */ beqz $t8, .L80008ABC -/* 00969C 80008A9C 8FA80260 */ lw $t0, 0x260($sp) -/* 0096A0 80008AA0 8E390018 */ lw $t9, 0x18($s1) -/* 0096A4 80008AA4 8FA40260 */ lw $a0, 0x260($sp) -/* 0096A8 80008AA8 17200004 */ bnez $t9, .L80008ABC -/* 0096AC 80008AAC 8FA80260 */ lw $t0, 0x260($sp) -/* 0096B0 80008AB0 0C0028BA */ jal func_8000A2E8 -/* 0096B4 80008AB4 00000000 */ nop -.L80008AB8: -/* 0096B8 80008AB8 8FA80260 */ lw $t0, 0x260($sp) -.L80008ABC: -/* 0096BC 80008ABC 96AA0000 */ lhu $t2, ($s5) -/* 0096C0 80008AC0 25090001 */ addiu $t1, $t0, 1 -/* 0096C4 80008AC4 012A082A */ slt $at, $t1, $t2 -/* 0096C8 80008AC8 AFA90260 */ sw $t1, 0x260($sp) -/* 0096CC 80008ACC 1420FE83 */ bnez $at, .L800084DC -/* 0096D0 80008AD0 26940004 */ addiu $s4, $s4, 4 -/* 0096D4 80008AD4 AFA00260 */ sw $zero, 0x260($sp) -.L80008AD8: -/* 0096D8 80008AD8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0096DC 80008ADC 4481D000 */ mtc1 $at, $f26 -/* 0096E0 80008AE0 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 0096E4 80008AE4 4481B000 */ mtc1 $at, $f22 -/* 0096E8 80008AE8 3C0143C8 */ li $at, 0x43C80000 # 400.000000 -/* 0096EC 80008AEC 3C028012 */ lui $v0, %hi(D_80119C58) # $v0, 0x8012 -/* 0096F0 80008AF0 4481A000 */ mtc1 $at, $f20 -/* 0096F4 80008AF4 24429C58 */ addiu $v0, %lo(D_80119C58) # addiu $v0, $v0, -0x63a8 -.L80008AF8: -/* 0096F8 80008AF8 8C4B016C */ lw $t3, 0x16c($v0) -/* 0096FC 80008AFC 0040B825 */ move $s7, $v0 -/* 009700 80008B00 11600130 */ beqz $t3, .L80008FC4 -/* 009704 80008B04 AFA20088 */ sw $v0, 0x88($sp) -/* 009708 80008B08 93A40263 */ lbu $a0, 0x263($sp) -/* 00970C 80008B0C 0C00267B */ jal func_800099EC -/* 009710 80008B10 AFA20088 */ sw $v0, 0x88($sp) -/* 009714 80008B14 1040012C */ beqz $v0, .L80008FC8 -/* 009718 80008B18 8FAB0260 */ lw $t3, 0x260($sp) -/* 00971C 80008B1C 8FAC00B0 */ lw $t4, 0xb0($sp) -/* 009720 80008B20 AFA00254 */ sw $zero, 0x254($sp) -/* 009724 80008B24 198000C7 */ blez $t4, .L80008E44 -/* 009728 80008B28 0000F025 */ move $fp, $zero -/* 00972C 80008B2C 8FA20088 */ lw $v0, 0x88($sp) -/* 009730 80008B30 00000000 */ nop -/* 009734 80008B34 244D0004 */ addiu $t5, $v0, 4 -/* 009738 80008B38 AFAD0070 */ sw $t5, 0x70($sp) -/* 00973C 80008B3C 8FA20088 */ lw $v0, 0x88($sp) -.L80008B40: -/* 009740 80008B40 8FB40070 */ lw $s4, 0x70($sp) -/* 009744 80008B44 8C430170 */ lw $v1, 0x170($v0) -/* 009748 80008B48 804E017C */ lb $t6, 0x17c($v0) -/* 00974C 80008B4C 0000A825 */ move $s5, $zero -/* 009750 80008B50 00009025 */ move $s2, $zero -/* 009754 80008B54 19C0002D */ blez $t6, .L80008C0C -/* 009758 80008B58 0060B025 */ move $s6, $v1 -/* 00975C 80008B5C 001EC100 */ sll $t8, $fp, 4 -/* 009760 80008B60 8FAF00AC */ lw $t7, 0xac($sp) -/* 009764 80008B64 031EC021 */ addu $t8, $t8, $fp -/* 009768 80008B68 0018C080 */ sll $t8, $t8, 2 -/* 00976C 80008B6C 27B001A8 */ addiu $s0, $sp, 0x1a8 -/* 009770 80008B70 27B1012C */ addiu $s1, $sp, 0x12c -/* 009774 80008B74 01F89821 */ addu $s3, $t7, $t8 -.L80008B78: -/* 009778 80008B78 C66C000C */ lwc1 $f12, 0xc($s3) -/* 00977C 80008B7C C66E0010 */ lwc1 $f14, 0x10($s3) -/* 009780 80008B80 8E660014 */ lw $a2, 0x14($s3) -/* 009784 80008B84 27B9022C */ addiu $t9, $sp, 0x22c -/* 009788 80008B88 27A80228 */ addiu $t0, $sp, 0x228 -/* 00978C 80008B8C 27A90224 */ addiu $t1, $sp, 0x224 -/* 009790 80008B90 AFA90018 */ sw $t1, 0x18($sp) -/* 009794 80008B94 AFA80014 */ sw $t0, 0x14($sp) -/* 009798 80008B98 AFB90010 */ sw $t9, 0x10($sp) -/* 00979C 80008B9C 0C0024AA */ jal func_800092A8 -/* 0097A0 80008BA0 02803825 */ move $a3, $s4 -/* 0097A4 80008BA4 AE020000 */ sw $v0, ($s0) -/* 0097A8 80008BA8 C66A0014 */ lwc1 $f10, 0x14($s3) -/* 0097AC 80008BAC C7B00224 */ lwc1 $f16, 0x224($sp) -/* 0097B0 80008BB0 C666000C */ lwc1 $f6, 0xc($s3) -/* 0097B4 80008BB4 C7A8022C */ lwc1 $f8, 0x22c($sp) -/* 0097B8 80008BB8 86660000 */ lh $a2, ($s3) -/* 0097BC 80008BBC 460A8381 */ sub.s $f14, $f16, $f10 -/* 0097C0 80008BC0 0C002430 */ jal func_800090C0 -/* 0097C4 80008BC4 46064301 */ sub.s $f12, $f8, $f6 -/* 0097C8 80008BC8 8E030000 */ lw $v1, ($s0) -/* 0097CC 80008BCC AE220000 */ sw $v0, ($s1) -/* 0097D0 80008BD0 0076082A */ slt $at, $v1, $s6 -/* 0097D4 80008BD4 10200002 */ beqz $at, .L80008BE0 -/* 0097D8 80008BD8 2694000C */ addiu $s4, $s4, 0xc -/* 0097DC 80008BDC 0060B025 */ move $s6, $v1 -.L80008BE0: -/* 0097E0 80008BE0 82EA017C */ lb $t2, 0x17c($s7) -/* 0097E4 80008BE4 26520001 */ addiu $s2, $s2, 1 -/* 0097E8 80008BE8 024A082A */ slt $at, $s2, $t2 -/* 0097EC 80008BEC 26100004 */ addiu $s0, $s0, 4 -/* 0097F0 80008BF0 26310004 */ addiu $s1, $s1, 4 -/* 0097F4 80008BF4 1420FFE0 */ bnez $at, .L80008B78 -/* 0097F8 80008BF8 02A3A821 */ addu $s5, $s5, $v1 -/* 0097FC 80008BFC 8FA20088 */ lw $v0, 0x88($sp) -/* 009800 80008C00 00000000 */ nop -/* 009804 80008C04 8C430170 */ lw $v1, 0x170($v0) -/* 009808 80008C08 00000000 */ nop -.L80008C0C: -/* 00980C 80008C0C 4483C000 */ mtc1 $v1, $f24 -/* 009810 80008C10 904C0174 */ lbu $t4, 0x174($v0) -/* 009814 80008C14 4680C0A0 */ cvt.s.w $f2, $f24 -/* 009818 80008C18 448CC000 */ mtc1 $t4, $f24 -/* 00981C 80008C1C 05810005 */ bgez $t4, .L80008C34 -/* 009820 80008C20 4680C320 */ cvt.s.w $f12, $f24 -/* 009824 80008C24 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 009828 80008C28 44814000 */ mtc1 $at, $f8 -/* 00982C 80008C2C 00000000 */ nop -/* 009830 80008C30 46086300 */ add.s $f12, $f12, $f8 -.L80008C34: -/* 009834 80008C34 904D017D */ lbu $t5, 0x17d($v0) -/* 009838 80008C38 8FB90254 */ lw $t9, 0x254($sp) -/* 00983C 80008C3C 15A00013 */ bnez $t5, .L80008C8C -/* 009840 80008C40 00767823 */ subu $t7, $v1, $s6 -/* 009844 80008C44 44963000 */ mtc1 $s6, $f6 -/* 009848 80008C48 00000000 */ nop -/* 00984C 80008C4C 46803420 */ cvt.s.w $f16, $f6 -/* 009850 80008C50 00000000 */ nop -/* 009854 80008C54 46028283 */ div.s $f10, $f16, $f2 -/* 009858 80008C58 460AD481 */ sub.s $f18, $f26, $f10 -/* 00985C 80008C5C 460C9102 */ mul.s $f4, $f18, $f12 -/* 009860 80008C60 444EF800 */ cfc1 $t6, $31 -/* 009864 80008C64 00000000 */ nop -/* 009868 80008C68 35C10003 */ ori $at, $t6, 3 -/* 00986C 80008C6C 38210002 */ xori $at, $at, 2 -/* 009870 80008C70 44C1F800 */ ctc1 $at, $31 -/* 009874 80008C74 00000000 */ nop -/* 009878 80008C78 46002224 */ cvt.w.s $f8, $f4 -/* 00987C 80008C7C 44024000 */ mfc1 $v0, $f8 -/* 009880 80008C80 44CEF800 */ ctc1 $t6, $31 -/* 009884 80008C84 10000014 */ b .L80008CD8 -/* 009888 80008C88 0059082A */ slt $at, $v0, $t9 -.L80008C8C: -/* 00988C 80008C8C 448F3000 */ mtc1 $t7, $f6 -/* 009890 80008C90 00000000 */ nop -/* 009894 80008C94 46803420 */ cvt.s.w $f16, $f6 -/* 009898 80008C98 00000000 */ nop -/* 00989C 80008C9C 46028003 */ div.s $f0, $f16, $f2 -/* 0098A0 80008CA0 46000282 */ mul.s $f10, $f0, $f0 -/* 0098A4 80008CA4 00000000 */ nop -/* 0098A8 80008CA8 460C5482 */ mul.s $f18, $f10, $f12 -/* 0098AC 80008CAC 4458F800 */ cfc1 $t8, $31 -/* 0098B0 80008CB0 00000000 */ nop -/* 0098B4 80008CB4 37010003 */ ori $at, $t8, 3 -/* 0098B8 80008CB8 38210002 */ xori $at, $at, 2 -/* 0098BC 80008CBC 44C1F800 */ ctc1 $at, $31 -/* 0098C0 80008CC0 00000000 */ nop -/* 0098C4 80008CC4 46009124 */ cvt.w.s $f4, $f18 -/* 0098C8 80008CC8 44D8F800 */ ctc1 $t8, $31 -/* 0098CC 80008CCC 44022000 */ mfc1 $v0, $f4 -/* 0098D0 80008CD0 00000000 */ nop -/* 0098D4 80008CD4 0059082A */ slt $at, $v0, $t9 -.L80008CD8: -/* 0098D8 80008CD8 14200057 */ bnez $at, .L80008E38 -/* 0098DC 80008CDC 8FAC00B0 */ lw $t4, 0xb0($sp) -/* 0098E0 80008CE0 8FA80088 */ lw $t0, 0x88($sp) -/* 0098E4 80008CE4 AFA20254 */ sw $v0, 0x254($sp) -/* 0098E8 80008CE8 8103017C */ lb $v1, 0x17c($t0) -/* 0098EC 80008CEC 24010001 */ li $at, 1 -/* 0098F0 80008CF0 14610004 */ bne $v1, $at, .L80008D04 -/* 0098F4 80008CF4 00002025 */ move $a0, $zero -/* 0098F8 80008CF8 8FA9012C */ lw $t1, 0x12c($sp) -/* 0098FC 80008CFC 10000036 */ b .L80008DD8 -/* 009900 80008D00 AFA90250 */ sw $t1, 0x250($sp) -.L80008D04: -/* 009904 80008D04 00009025 */ move $s2, $zero -/* 009908 80008D08 18600011 */ blez $v1, .L80008D50 -/* 00990C 80008D0C AFA00250 */ sw $zero, 0x250($sp) -/* 009910 80008D10 27B001A8 */ addiu $s0, $sp, 0x1a8 -/* 009914 80008D14 27A200B8 */ addiu $v0, $sp, 0xb8 -.L80008D18: -/* 009918 80008D18 8E0A0000 */ lw $t2, ($s0) -/* 00991C 80008D1C 26520001 */ addiu $s2, $s2, 1 -/* 009920 80008D20 02AA1823 */ subu $v1, $s5, $t2 -/* 009924 80008D24 AC430000 */ sw $v1, ($v0) -/* 009928 80008D28 82EB017C */ lb $t3, 0x17c($s7) -/* 00992C 80008D2C 26100004 */ addiu $s0, $s0, 4 -/* 009930 80008D30 024B082A */ slt $at, $s2, $t3 -/* 009934 80008D34 24420004 */ addiu $v0, $v0, 4 -/* 009938 80008D38 1420FFF7 */ bnez $at, .L80008D18 -/* 00993C 80008D3C 00832021 */ addu $a0, $a0, $v1 -/* 009940 80008D40 8FAC0088 */ lw $t4, 0x88($sp) -/* 009944 80008D44 00000000 */ nop -/* 009948 80008D48 8183017C */ lb $v1, 0x17c($t4) -/* 00994C 80008D4C 00000000 */ nop -.L80008D50: -/* 009950 80008D50 18600021 */ blez $v1, .L80008DD8 -/* 009954 80008D54 27B1012C */ addiu $s1, $sp, 0x12c -/* 009958 80008D58 82E5017C */ lb $a1, 0x17c($s7) -/* 00995C 80008D5C 44844000 */ mtc1 $a0, $f8 -/* 009960 80008D60 27A200B8 */ addiu $v0, $sp, 0xb8 -/* 009964 80008D64 00057080 */ sll $t6, $a1, 2 -/* 009968 80008D68 8FA40250 */ lw $a0, 0x250($sp) -/* 00996C 80008D6C 01C21821 */ addu $v1, $t6, $v0 -/* 009970 80008D70 46804020 */ cvt.s.w $f0, $f8 -.L80008D74: -/* 009974 80008D74 8C4F0000 */ lw $t7, ($v0) -/* 009978 80008D78 8E380000 */ lw $t8, ($s1) -/* 00997C 80008D7C 448F3000 */ mtc1 $t7, $f6 -/* 009980 80008D80 44989000 */ mtc1 $t8, $f18 -/* 009984 80008D84 46803420 */ cvt.s.w $f16, $f6 -/* 009988 80008D88 44843000 */ mtc1 $a0, $f6 -/* 00998C 80008D8C 24420004 */ addiu $v0, $v0, 4 -/* 009990 80008D90 46008283 */ div.s $f10, $f16, $f0 -/* 009994 80008D94 46809120 */ cvt.s.w $f4, $f18 -/* 009998 80008D98 26310004 */ addiu $s1, $s1, 4 -/* 00999C 80008D9C 46803420 */ cvt.s.w $f16, $f6 -/* 0099A0 80008DA0 46045202 */ mul.s $f8, $f10, $f4 -/* 0099A4 80008DA4 46088480 */ add.s $f18, $f16, $f8 -/* 0099A8 80008DA8 4459F800 */ cfc1 $t9, $31 -/* 0099AC 80008DAC 00000000 */ nop -/* 0099B0 80008DB0 37210003 */ ori $at, $t9, 3 -/* 0099B4 80008DB4 38210002 */ xori $at, $at, 2 -/* 0099B8 80008DB8 44C1F800 */ ctc1 $at, $31 -/* 0099BC 80008DBC 0043082B */ sltu $at, $v0, $v1 -/* 0099C0 80008DC0 460092A4 */ cvt.w.s $f10, $f18 -/* 0099C4 80008DC4 44045000 */ mfc1 $a0, $f10 -/* 0099C8 80008DC8 44D9F800 */ ctc1 $t9, $31 -/* 0099CC 80008DCC 1420FFE9 */ bnez $at, .L80008D74 -/* 0099D0 80008DD0 00000000 */ nop -/* 0099D4 80008DD4 AFA40250 */ sw $a0, 0x250($sp) -.L80008DD8: -/* 0099D8 80008DD8 2AC10190 */ slti $at, $s6, 0x190 -/* 0099DC 80008DDC 10200016 */ beqz $at, .L80008E38 -/* 0099E0 80008DE0 8FAC00B0 */ lw $t4, 0xb0($sp) -/* 0099E4 80008DE4 44968000 */ mtc1 $s6, $f16 -/* 0099E8 80008DE8 8FA80250 */ lw $t0, 0x250($sp) -/* 0099EC 80008DEC 46808220 */ cvt.s.w $f8, $f16 -/* 0099F0 80008DF0 2509FFC0 */ addiu $t1, $t0, -0x40 -/* 0099F4 80008DF4 44892000 */ mtc1 $t1, $f4 -/* 0099F8 80008DF8 46144483 */ div.s $f18, $f8, $f20 -/* 0099FC 80008DFC 468021A0 */ cvt.s.w $f6, $f4 -/* 009A00 80008E00 46123282 */ mul.s $f10, $f6, $f18 -/* 009A04 80008E04 46165100 */ add.s $f4, $f10, $f22 -/* 009A08 80008E08 444AF800 */ cfc1 $t2, $31 -/* 009A0C 80008E0C 00000000 */ nop -/* 009A10 80008E10 35410003 */ ori $at, $t2, 3 -/* 009A14 80008E14 38210002 */ xori $at, $at, 2 -/* 009A18 80008E18 44C1F800 */ ctc1 $at, $31 -/* 009A1C 80008E1C 00000000 */ nop -/* 009A20 80008E20 46002424 */ cvt.w.s $f16, $f4 -/* 009A24 80008E24 440B8000 */ mfc1 $t3, $f16 -/* 009A28 80008E28 44CAF800 */ ctc1 $t2, $31 -/* 009A2C 80008E2C AFAB0250 */ sw $t3, 0x250($sp) -/* 009A30 80008E30 00000000 */ nop -/* 009A34 80008E34 8FAC00B0 */ lw $t4, 0xb0($sp) -.L80008E38: -/* 009A38 80008E38 27DE0001 */ addiu $fp, $fp, 1 -/* 009A3C 80008E3C 17CCFF40 */ bne $fp, $t4, .L80008B40 -/* 009A40 80008E40 8FA20088 */ lw $v0, 0x88($sp) -.L80008E44: -/* 009A44 80008E44 8FAE0088 */ lw $t6, 0x88($sp) -/* 009A48 80008E48 8FAD0254 */ lw $t5, 0x254($sp) -/* 009A4C 80008E4C 91C20000 */ lbu $v0, ($t6) -/* 009A50 80008E50 24010001 */ li $at, 1 -/* 009A54 80008E54 1440004C */ bnez $v0, .L80008F88 -/* 009A58 80008E58 00000000 */ nop -/* 009A5C 80008E5C 91C20175 */ lbu $v0, 0x175($t6) -/* 009A60 80008E60 00000000 */ nop -/* 009A64 80008E64 01A2082A */ slt $at, $t5, $v0 -/* 009A68 80008E68 10200003 */ beqz $at, .L80008E78 -/* 009A6C 80008E6C 8FAF0254 */ lw $t7, 0x254($sp) -/* 009A70 80008E70 AFA20254 */ sw $v0, 0x254($sp) -/* 009A74 80008E74 8FAF0254 */ lw $t7, 0x254($sp) -.L80008E78: -/* 009A78 80008E78 8FB80088 */ lw $t8, 0x88($sp) -/* 009A7C 80008E7C 29E1000B */ slti $at, $t7, 0xb -/* 009A80 80008E80 14200038 */ bnez $at, .L80008F64 -/* 009A84 80008E84 8FAF0088 */ lw $t7, 0x88($sp) -/* 009A88 80008E88 93190176 */ lbu $t9, 0x176($t8) -/* 009A8C 80008E8C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 009A90 80008E90 44994000 */ mtc1 $t9, $f8 -/* 009A94 80008E94 07210004 */ bgez $t9, .L80008EA8 -/* 009A98 80008E98 468041A0 */ cvt.s.w $f6, $f8 -/* 009A9C 80008E9C 44819000 */ mtc1 $at, $f18 -/* 009AA0 80008EA0 00000000 */ nop -/* 009AA4 80008EA4 46123180 */ add.s $f6, $f6, $f18 -.L80008EA8: -/* 009AA8 80008EA8 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 009AAC 80008EAC 44815000 */ mtc1 $at, $f10 -/* 009AB0 80008EB0 00000000 */ nop -/* 009AB4 80008EB4 460A3103 */ div.s $f4, $f6, $f10 -/* 009AB8 80008EB8 E7A40090 */ swc1 $f4, 0x90($sp) -/* 009ABC 80008EBC 8F040178 */ lw $a0, 0x178($t8) -/* 009AC0 80008EC0 00000000 */ nop -/* 009AC4 80008EC4 14800008 */ bnez $a0, .L80008EE8 -/* 009AC8 80008EC8 00000000 */ nop -/* 009ACC 80008ECC 9704016E */ lhu $a0, 0x16e($t8) -/* 009AD0 80008ED0 0C0007C5 */ jal func_80001F14 -/* 009AD4 80008ED4 27050178 */ addiu $a1, $t8, 0x178 -/* 009AD8 80008ED8 8FA80088 */ lw $t0, 0x88($sp) -/* 009ADC 80008EDC 00000000 */ nop -/* 009AE0 80008EE0 8D040178 */ lw $a0, 0x178($t0) -/* 009AE4 80008EE4 00000000 */ nop -.L80008EE8: -/* 009AE8 80008EE8 10800037 */ beqz $a0, .L80008FC8 -/* 009AEC 80008EEC 8FAB0260 */ lw $t3, 0x260($sp) -/* 009AF0 80008EF0 8FA60254 */ lw $a2, 0x254($sp) -/* 009AF4 80008EF4 24050008 */ li $a1, 8 -/* 009AF8 80008EF8 00064A00 */ sll $t1, $a2, 8 -/* 009AFC 80008EFC 0C00127E */ jal func_800049F8 -/* 009B00 80008F00 01203025 */ move $a2, $t1 -/* 009B04 80008F04 8FAA0088 */ lw $t2, 0x88($sp) -/* 009B08 80008F08 8FA60090 */ lw $a2, 0x90($sp) -/* 009B0C 80008F0C 8D440178 */ lw $a0, 0x178($t2) -/* 009B10 80008F10 0C00127E */ jal func_800049F8 -/* 009B14 80008F14 24050010 */ li $a1, 16 -/* 009B18 80008F18 8FAB00B0 */ lw $t3, 0xb0($sp) -/* 009B1C 80008F1C 24010001 */ li $at, 1 -/* 009B20 80008F20 11610002 */ beq $t3, $at, .L80008F2C -/* 009B24 80008F24 240C0040 */ li $t4, 64 -/* 009B28 80008F28 AFAC0250 */ sw $t4, 0x250($sp) -.L80008F2C: -/* 009B2C 80008F2C 8FAE0088 */ lw $t6, 0x88($sp) -/* 009B30 80008F30 8FA60250 */ lw $a2, 0x250($sp) -/* 009B34 80008F34 8DC40178 */ lw $a0, 0x178($t6) -/* 009B38 80008F38 0C00127E */ jal func_800049F8 -/* 009B3C 80008F3C 24050004 */ li $a1, 4 -/* 009B40 80008F40 8FAD0088 */ lw $t5, 0x88($sp) -/* 009B44 80008F44 00000000 */ nop -/* 009B48 80008F48 8DA40178 */ lw $a0, 0x178($t5) -/* 009B4C 80008F4C 91A5017E */ lbu $a1, 0x17e($t5) -/* 009B50 80008F50 0C001181 */ jal func_80004604 -/* 009B54 80008F54 00000000 */ nop -/* 009B58 80008F58 1000001B */ b .L80008FC8 -/* 009B5C 80008F5C 8FAB0260 */ lw $t3, 0x260($sp) -/* 009B60 80008F60 8FAF0088 */ lw $t7, 0x88($sp) -.L80008F64: -/* 009B64 80008F64 00000000 */ nop -/* 009B68 80008F68 8DE40178 */ lw $a0, 0x178($t7) -/* 009B6C 80008F6C 00000000 */ nop -/* 009B70 80008F70 10800015 */ beqz $a0, .L80008FC8 -/* 009B74 80008F74 8FAB0260 */ lw $t3, 0x260($sp) -/* 009B78 80008F78 0C001223 */ jal func_8000488C -/* 009B7C 80008F7C 00000000 */ nop -/* 009B80 80008F80 10000011 */ b .L80008FC8 -/* 009B84 80008F84 8FAB0260 */ lw $t3, 0x260($sp) -.L80008F88: -/* 009B88 80008F88 1441000F */ bne $v0, $at, .L80008FC8 -/* 009B8C 80008F8C 8FAB0260 */ lw $t3, 0x260($sp) -/* 009B90 80008F90 8FB9024C */ lw $t9, 0x24c($sp) -/* 009B94 80008F94 8FB80254 */ lw $t8, 0x254($sp) -/* 009B98 80008F98 00000000 */ nop -/* 009B9C 80008F9C 0338082A */ slt $at, $t9, $t8 -/* 009BA0 80008FA0 10200009 */ beqz $at, .L80008FC8 -/* 009BA4 80008FA4 8FAB0260 */ lw $t3, 0x260($sp) -/* 009BA8 80008FA8 8FA80250 */ lw $t0, 0x250($sp) -/* 009BAC 80008FAC 8FA90088 */ lw $t1, 0x88($sp) -/* 009BB0 80008FB0 AFB8024C */ sw $t8, 0x24c($sp) -/* 009BB4 80008FB4 AFA80248 */ sw $t0, 0x248($sp) -/* 009BB8 80008FB8 8D2A016C */ lw $t2, 0x16c($t1) -/* 009BBC 80008FBC 00000000 */ nop -/* 009BC0 80008FC0 AFAA0244 */ sw $t2, 0x244($sp) -.L80008FC4: -/* 009BC4 80008FC4 8FAB0260 */ lw $t3, 0x260($sp) -.L80008FC8: -/* 009BC8 80008FC8 8FA20088 */ lw $v0, 0x88($sp) -/* 009BCC 80008FCC 24010007 */ li $at, 7 -/* 009BD0 80008FD0 256C0001 */ addiu $t4, $t3, 1 -/* 009BD4 80008FD4 AFAC0260 */ sw $t4, 0x260($sp) -/* 009BD8 80008FD8 1581FEC7 */ bne $t4, $at, .L80008AF8 -/* 009BDC 80008FDC 24420180 */ addiu $v0, $v0, 0x180 -/* 009BE0 80008FE0 8FAE024C */ lw $t6, 0x24c($sp) -/* 009BE4 80008FE4 3C0D8012 */ lui $t5, %hi(D_8011AC18) # $t5, 0x8012 -/* 009BE8 80008FE8 29C1000B */ slti $at, $t6, 0xb -/* 009BEC 80008FEC 14200015 */ bnez $at, .L80009044 -/* 009BF0 80008FF0 00000000 */ nop -/* 009BF4 80008FF4 91ADAC18 */ lbu $t5, %lo(D_8011AC18)($t5) -/* 009BF8 80008FF8 00000000 */ nop -/* 009BFC 80008FFC 15A00011 */ bnez $t5, .L80009044 -/* 009C00 80009000 00000000 */ nop -/* 009C04 80009004 0C000660 */ jal func_80001980 -/* 009C08 80009008 00000000 */ nop -/* 009C0C 8000900C 8FAF0244 */ lw $t7, 0x244($sp) -/* 009C10 80009010 93A40247 */ lbu $a0, 0x247($sp) -/* 009C14 80009014 11E20003 */ beq $t7, $v0, .L80009024 -/* 009C18 80009018 00000000 */ nop -/* 009C1C 8000901C 0C0005E1 */ jal func_80001784 -/* 009C20 80009020 00000000 */ nop -.L80009024: -/* 009C24 80009024 93A4024F */ lbu $a0, 0x24f($sp) -/* 009C28 80009028 0C0006C3 */ jal func_80001B0C -/* 009C2C 8000902C 00000000 */ nop -/* 009C30 80009030 93A4024B */ lbu $a0, 0x24b($sp) -/* 009C34 80009034 0C0006D6 */ jal func_80001B58 -/* 009C38 80009038 00000000 */ nop -/* 009C3C 8000903C 10000004 */ b .L80009050 -/* 009C40 80009040 8FA5026C */ lw $a1, 0x26c($sp) -.L80009044: -/* 009C44 80009044 0C000638 */ jal func_800018E0 -/* 009C48 80009048 00000000 */ nop -/* 009C4C 8000904C 8FA5026C */ lw $a1, 0x26c($sp) -.L80009050: -/* 009C50 80009050 8FA40268 */ lw $a0, 0x268($sp) -/* 009C54 80009054 10A00007 */ beqz $a1, .L80009074 -/* 009C58 80009058 8FBF006C */ lw $ra, 0x6c($sp) -/* 009C5C 8000905C 8FB90270 */ lw $t9, 0x270($sp) -/* 009C60 80009060 8FA600AC */ lw $a2, 0xac($sp) -/* 009C64 80009064 93A700B3 */ lbu $a3, 0xb3($sp) -/* 009C68 80009068 0C001BF2 */ jal func_80006FC8 -/* 009C6C 8000906C AFB90010 */ sw $t9, 0x10($sp) -/* 009C70 80009070 8FBF006C */ lw $ra, 0x6c($sp) -.L80009074: -/* 009C74 80009074 C7B50028 */ lwc1 $f21, 0x28($sp) -/* 009C78 80009078 C7B4002C */ lwc1 $f20, 0x2c($sp) -/* 009C7C 8000907C C7B70030 */ lwc1 $f23, 0x30($sp) -/* 009C80 80009080 C7B60034 */ lwc1 $f22, 0x34($sp) -/* 009C84 80009084 C7B90038 */ lwc1 $f25, 0x38($sp) -/* 009C88 80009088 C7B8003C */ lwc1 $f24, 0x3c($sp) -/* 009C8C 8000908C C7BB0040 */ lwc1 $f27, 0x40($sp) -/* 009C90 80009090 C7BA0044 */ lwc1 $f26, 0x44($sp) -/* 009C94 80009094 8FB00048 */ lw $s0, 0x48($sp) -/* 009C98 80009098 8FB1004C */ lw $s1, 0x4c($sp) -/* 009C9C 8000909C 8FB20050 */ lw $s2, 0x50($sp) -/* 009CA0 800090A0 8FB30054 */ lw $s3, 0x54($sp) -/* 009CA4 800090A4 8FB40058 */ lw $s4, 0x58($sp) -/* 009CA8 800090A8 8FB5005C */ lw $s5, 0x5c($sp) -/* 009CAC 800090AC 8FB60060 */ lw $s6, 0x60($sp) -/* 009CB0 800090B0 8FB70064 */ lw $s7, 0x64($sp) -/* 009CB4 800090B4 8FBE0068 */ lw $fp, 0x68($sp) -/* 009CB8 800090B8 03E00008 */ jr $ra -/* 009CBC 800090BC 27BD0268 */ addiu $sp, $sp, 0x268 - -glabel func_800090C0 -/* 009CC0 800090C0 460E7482 */ mul.s $f18, $f14, $f14 -/* 009CC4 800090C4 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 009CC8 800090C8 E7AC0028 */ swc1 $f12, 0x28($sp) -/* 009CCC 800090CC C7B00028 */ lwc1 $f16, 0x28($sp) -/* 009CD0 800090D0 AFBF0014 */ sw $ra, 0x14($sp) -/* 009CD4 800090D4 46108402 */ mul.s $f16, $f16, $f16 -/* 009CD8 800090D8 AFA60030 */ sw $a2, 0x30($sp) -/* 009CDC 800090DC E7AE002C */ swc1 $f14, 0x2c($sp) -/* 009CE0 800090E0 0C0326B4 */ jal sqrtf -/* 009CE4 800090E4 46128300 */ add.s $f12, $f16, $f18 -/* 009CE8 800090E8 C7AE002C */ lwc1 $f14, 0x2c($sp) -/* 009CEC 800090EC C7AC0028 */ lwc1 $f12, 0x28($sp) -/* 009CF0 800090F0 0C01C1D4 */ jal func_80070750 -/* 009CF4 800090F4 E7A0001C */ swc1 $f0, 0x1c($sp) -/* 009CF8 800090F8 8FA60030 */ lw $a2, 0x30($sp) -/* 009CFC 800090FC 340EFFFF */ li $t6, 65535 -/* 009D00 80009100 01C21823 */ subu $v1, $t6, $v0 -/* 009D04 80009104 C7A2001C */ lwc1 $f2, 0x1c($sp) -/* 009D08 80009108 0066082A */ slt $at, $v1, $a2 -/* 009D0C 8000910C 1020002F */ beqz $at, .L800091CC -/* 009D10 80009110 00602825 */ move $a1, $v1 -/* 009D14 80009114 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 009D18 80009118 44815000 */ mtc1 $at, $f10 -/* 009D1C 8000911C 00C52023 */ subu $a0, $a2, $a1 -/* 009D20 80009120 460A103E */ c.le.s $f2, $f10 -/* 009D24 80009124 00044C00 */ sll $t1, $a0, 0x10 -/* 009D28 80009128 4500001F */ bc1f .L800091A8 -/* 009D2C 8000912C 00000000 */ nop -/* 009D30 80009130 00C32023 */ subu $a0, $a2, $v1 -/* 009D34 80009134 00047C00 */ sll $t7, $a0, 0x10 -/* 009D38 80009138 000F2403 */ sra $a0, $t7, 0x10 -/* 009D3C 8000913C 0C01C20C */ jal func_80070830 -/* 009D40 80009140 E7A2001C */ swc1 $f2, 0x1c($sp) -/* 009D44 80009144 C7A2001C */ lwc1 $f2, 0x1c($sp) -/* 009D48 80009148 04410003 */ bgez $v0, .L80009158 -/* 009D4C 8000914C 0002CA83 */ sra $t9, $v0, 0xa -/* 009D50 80009150 244103FF */ addiu $at, $v0, 0x3ff -/* 009D54 80009154 0001CA83 */ sra $t9, $at, 0xa -.L80009158: -/* 009D58 80009158 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 009D5C 8000915C 44812000 */ mtc1 $at, $f4 -/* 009D60 80009160 44998000 */ mtc1 $t9, $f16 -/* 009D64 80009164 46041182 */ mul.s $f6, $f2, $f4 -/* 009D68 80009168 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 009D6C 8000916C 44815000 */ mtc1 $at, $f10 -/* 009D70 80009170 468084A0 */ cvt.s.w $f18, $f16 -/* 009D74 80009174 46069202 */ mul.s $f8, $f18, $f6 -/* 009D78 80009178 46085401 */ sub.s $f16, $f10, $f8 -/* 009D7C 8000917C 4448F800 */ cfc1 $t0, $31 -/* 009D80 80009180 00000000 */ nop -/* 009D84 80009184 35010003 */ ori $at, $t0, 3 -/* 009D88 80009188 38210002 */ xori $at, $at, 2 -/* 009D8C 8000918C 44C1F800 */ ctc1 $at, $31 -/* 009D90 80009190 00000000 */ nop -/* 009D94 80009194 46008124 */ cvt.w.s $f4, $f16 -/* 009D98 80009198 44032000 */ mfc1 $v1, $f4 -/* 009D9C 8000919C 44C8F800 */ ctc1 $t0, $31 -/* 009DA0 800091A0 10000036 */ b .L8000927C -/* 009DA4 800091A4 00000000 */ nop -.L800091A8: -/* 009DA8 800091A8 0C01C224 */ jal func_80070890 -/* 009DAC 800091AC 00092403 */ sra $a0, $t1, 0x10 -/* 009DB0 800091B0 04410003 */ bgez $v0, .L800091C0 -/* 009DB4 800091B4 00025A83 */ sra $t3, $v0, 0xa -/* 009DB8 800091B8 244103FF */ addiu $at, $v0, 0x3ff -/* 009DBC 800091BC 00015A83 */ sra $t3, $at, 0xa -.L800091C0: -/* 009DC0 800091C0 240C0040 */ li $t4, 64 -/* 009DC4 800091C4 1000002D */ b .L8000927C -/* 009DC8 800091C8 018B1823 */ subu $v1, $t4, $t3 -.L800091CC: -/* 009DCC 800091CC 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 009DD0 800091D0 44819000 */ mtc1 $at, $f18 -/* 009DD4 800091D4 00A62023 */ subu $a0, $a1, $a2 -/* 009DD8 800091D8 4612103E */ c.le.s $f2, $f18 -/* 009DDC 800091DC 0004CC00 */ sll $t9, $a0, 0x10 -/* 009DE0 800091E0 4500001F */ bc1f .L80009260 -/* 009DE4 800091E4 00000000 */ nop -/* 009DE8 800091E8 00A62023 */ subu $a0, $a1, $a2 -/* 009DEC 800091EC 00046C00 */ sll $t5, $a0, 0x10 -/* 009DF0 800091F0 000D2403 */ sra $a0, $t5, 0x10 -/* 009DF4 800091F4 0C01C20C */ jal func_80070830 -/* 009DF8 800091F8 E7A2001C */ swc1 $f2, 0x1c($sp) -/* 009DFC 800091FC C7A2001C */ lwc1 $f2, 0x1c($sp) -/* 009E00 80009200 04410003 */ bgez $v0, .L80009210 -/* 009E04 80009204 00027A83 */ sra $t7, $v0, 0xa -/* 009E08 80009208 244103FF */ addiu $at, $v0, 0x3ff -/* 009E0C 8000920C 00017A83 */ sra $t7, $at, 0xa -.L80009210: -/* 009E10 80009210 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 009E14 80009214 44814000 */ mtc1 $at, $f8 -/* 009E18 80009218 448F3000 */ mtc1 $t7, $f6 -/* 009E1C 8000921C 46081402 */ mul.s $f16, $f2, $f8 -/* 009E20 80009220 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 009E24 80009224 44819000 */ mtc1 $at, $f18 -/* 009E28 80009228 468032A0 */ cvt.s.w $f10, $f6 -/* 009E2C 8000922C 46105102 */ mul.s $f4, $f10, $f16 -/* 009E30 80009230 46122180 */ add.s $f6, $f4, $f18 -/* 009E34 80009234 4458F800 */ cfc1 $t8, $31 -/* 009E38 80009238 00000000 */ nop -/* 009E3C 8000923C 37010003 */ ori $at, $t8, 3 -/* 009E40 80009240 38210002 */ xori $at, $at, 2 -/* 009E44 80009244 44C1F800 */ ctc1 $at, $31 -/* 009E48 80009248 00000000 */ nop -/* 009E4C 8000924C 46003224 */ cvt.w.s $f8, $f6 -/* 009E50 80009250 44034000 */ mfc1 $v1, $f8 -/* 009E54 80009254 44D8F800 */ ctc1 $t8, $31 -/* 009E58 80009258 10000008 */ b .L8000927C -/* 009E5C 8000925C 00000000 */ nop -.L80009260: -/* 009E60 80009260 0C01C224 */ jal func_80070890 -/* 009E64 80009264 00192403 */ sra $a0, $t9, 0x10 -/* 009E68 80009268 04410003 */ bgez $v0, .L80009278 -/* 009E6C 8000926C 00021A83 */ sra $v1, $v0, 0xa -/* 009E70 80009270 244103FF */ addiu $at, $v0, 0x3ff -/* 009E74 80009274 00011A83 */ sra $v1, $at, 0xa -.L80009278: -/* 009E78 80009278 24630040 */ addiu $v1, $v1, 0x40 -.L8000927C: -/* 009E7C 8000927C 0C0270C3 */ jal func_8009C30C -/* 009E80 80009280 AFA30020 */ sw $v1, 0x20($sp) -/* 009E84 80009284 8FA30020 */ lw $v1, 0x20($sp) -/* 009E88 80009288 30490004 */ andi $t1, $v0, 4 -/* 009E8C 8000928C 11200002 */ beqz $t1, .L80009298 -/* 009E90 80009290 240A0080 */ li $t2, 128 -/* 009E94 80009294 01431823 */ subu $v1, $t2, $v1 -.L80009298: -/* 009E98 80009298 8FBF0014 */ lw $ra, 0x14($sp) -/* 009E9C 8000929C 27BD0028 */ addiu $sp, $sp, 0x28 -/* 009EA0 800092A0 03E00008 */ jr $ra -/* 009EA4 800092A4 00601025 */ move $v0, $v1 - -glabel func_800092A8 -/* 009EA8 800092A8 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 009EAC 800092AC AFBF002C */ sw $ra, 0x2c($sp) -/* 009EB0 800092B0 E7B90020 */ swc1 $f25, 0x20($sp) -/* 009EB4 800092B4 E7B80024 */ swc1 $f24, 0x24($sp) -/* 009EB8 800092B8 E7B70018 */ swc1 $f23, 0x18($sp) -/* 009EBC 800092BC E7B6001C */ swc1 $f22, 0x1c($sp) -/* 009EC0 800092C0 E7B50010 */ swc1 $f21, 0x10($sp) -/* 009EC4 800092C4 E7B40014 */ swc1 $f20, 0x14($sp) -/* 009EC8 800092C8 E7AC0068 */ swc1 $f12, 0x68($sp) -/* 009ECC 800092CC E7AE006C */ swc1 $f14, 0x6c($sp) -/* 009ED0 800092D0 AFA60070 */ sw $a2, 0x70($sp) -/* 009ED4 800092D4 C4E4000C */ lwc1 $f4, 0xc($a3) -/* 009ED8 800092D8 C4F40000 */ lwc1 $f20, ($a3) -/* 009EDC 800092DC C4F60004 */ lwc1 $f22, 4($a3) -/* 009EE0 800092E0 C4F80008 */ lwc1 $f24, 8($a3) -/* 009EE4 800092E4 E7A4004C */ swc1 $f4, 0x4c($sp) -/* 009EE8 800092E8 C4E60010 */ lwc1 $f6, 0x10($a3) -/* 009EEC 800092EC C7AA004C */ lwc1 $f10, 0x4c($sp) -/* 009EF0 800092F0 E7A60048 */ swc1 $f6, 0x48($sp) -/* 009EF4 800092F4 C4E80014 */ lwc1 $f8, 0x14($a3) -/* 009EF8 800092F8 C7A60048 */ lwc1 $f6, 0x48($sp) -/* 009EFC 800092FC 46145081 */ sub.s $f2, $f10, $f20 -/* 009F00 80009300 E7A80044 */ swc1 $f8, 0x44($sp) -/* 009F04 80009304 C7AA0044 */ lwc1 $f10, 0x44($sp) -/* 009F08 80009308 46163201 */ sub.s $f8, $f6, $f22 -/* 009F0C 8000930C 44800800 */ mtc1 $zero, $f1 -/* 009F10 80009310 44800000 */ mtc1 $zero, $f0 -/* 009F14 80009314 46185181 */ sub.s $f6, $f10, $f24 -/* 009F18 80009318 E7A20038 */ swc1 $f2, 0x38($sp) -/* 009F1C 8000931C 460012A1 */ cvt.d.s $f10, $f2 -/* 009F20 80009320 462A0032 */ c.eq.d $f0, $f10 -/* 009F24 80009324 E7A80034 */ swc1 $f8, 0x34($sp) -/* 009F28 80009328 46004406 */ mov.s $f16, $f8 -/* 009F2C 8000932C E7A60030 */ swc1 $f6, 0x30($sp) -/* 009F30 80009330 4500000E */ bc1f .L8000936C -/* 009F34 80009334 46003486 */ mov.s $f18, $f6 -/* 009F38 80009338 46004121 */ cvt.d.s $f4, $f8 -/* 009F3C 8000933C 46240032 */ c.eq.d $f0, $f4 -/* 009F40 80009340 00000000 */ nop -/* 009F44 80009344 45000009 */ bc1f .L8000936C -/* 009F48 80009348 00000000 */ nop -/* 009F4C 8000934C 460032A1 */ cvt.d.s $f10, $f6 -/* 009F50 80009350 462A0032 */ c.eq.d $f0, $f10 -/* 009F54 80009354 00000000 */ nop -/* 009F58 80009358 45000004 */ bc1f .L8000936C -/* 009F5C 8000935C 00000000 */ nop -/* 009F60 80009360 44800000 */ mtc1 $zero, $f0 -/* 009F64 80009364 10000015 */ b .L800093BC -/* 009F68 80009368 44802000 */ mtc1 $zero, $f4 -.L8000936C: -/* 009F6C 8000936C C7A80068 */ lwc1 $f8, 0x68($sp) -/* 009F70 80009370 C7AA006C */ lwc1 $f10, 0x6c($sp) -/* 009F74 80009374 46144101 */ sub.s $f4, $f8, $f20 -/* 009F78 80009378 46022182 */ mul.s $f6, $f4, $f2 -/* 009F7C 8000937C 46165201 */ sub.s $f8, $f10, $f22 -/* 009F80 80009380 46104102 */ mul.s $f4, $f8, $f16 -/* 009F84 80009384 C7A80070 */ lwc1 $f8, 0x70($sp) -/* 009F88 80009388 46043280 */ add.s $f10, $f6, $f4 -/* 009F8C 8000938C 46184181 */ sub.s $f6, $f8, $f24 -/* 009F90 80009390 46123102 */ mul.s $f4, $f6, $f18 -/* 009F94 80009394 00000000 */ nop -/* 009F98 80009398 46021182 */ mul.s $f6, $f2, $f2 -/* 009F9C 8000939C 46045200 */ add.s $f8, $f10, $f4 -/* 009FA0 800093A0 46108282 */ mul.s $f10, $f16, $f16 -/* 009FA4 800093A4 460A3100 */ add.s $f4, $f6, $f10 -/* 009FA8 800093A8 46129182 */ mul.s $f6, $f18, $f18 -/* 009FAC 800093AC 46062280 */ add.s $f10, $f4, $f6 -/* 009FB0 800093B0 00000000 */ nop -/* 009FB4 800093B4 460A4003 */ div.s $f0, $f8, $f10 -/* 009FB8 800093B8 44802000 */ mtc1 $zero, $f4 -.L800093BC: -/* 009FBC 800093BC 8FA20078 */ lw $v0, 0x78($sp) -/* 009FC0 800093C0 4604003C */ c.lt.s $f0, $f4 -/* 009FC4 800093C4 8FA3007C */ lw $v1, 0x7c($sp) -/* 009FC8 800093C8 45000014 */ bc1f .L8000941C -/* 009FCC 800093CC 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 009FD0 800093D0 E4540000 */ swc1 $f20, ($v0) -/* 009FD4 800093D4 E4760000 */ swc1 $f22, ($v1) -/* 009FD8 800093D8 8FAE0080 */ lw $t6, 0x80($sp) -/* 009FDC 800093DC 00000000 */ nop -/* 009FE0 800093E0 E5D80000 */ swc1 $f24, ($t6) -/* 009FE4 800093E4 C7A60068 */ lwc1 $f6, 0x68($sp) -/* 009FE8 800093E8 C7A8006C */ lwc1 $f8, 0x6c($sp) -/* 009FEC 800093EC 4606A001 */ sub.s $f0, $f20, $f6 -/* 009FF0 800093F0 C7AA0070 */ lwc1 $f10, 0x70($sp) -/* 009FF4 800093F4 46000102 */ mul.s $f4, $f0, $f0 -/* 009FF8 800093F8 4608B081 */ sub.s $f2, $f22, $f8 -/* 009FFC 800093FC 46021182 */ mul.s $f6, $f2, $f2 -/* 00A000 80009400 460AC381 */ sub.s $f14, $f24, $f10 -/* 00A004 80009404 460E7282 */ mul.s $f10, $f14, $f14 -/* 00A008 80009408 46062200 */ add.s $f8, $f4, $f6 -/* 00A00C 8000940C 0C0326B4 */ jal sqrtf -/* 00A010 80009410 460A4300 */ add.s $f12, $f8, $f10 -/* 00A014 80009414 10000041 */ b .L8000951C -/* 00A018 80009418 4459F800 */ cfc1 $t9, $31 -.L8000941C: -/* 00A01C 8000941C 44812000 */ mtc1 $at, $f4 -/* 00A020 80009420 8FA20078 */ lw $v0, 0x78($sp) -/* 00A024 80009424 4600203C */ c.lt.s $f4, $f0 -/* 00A028 80009428 C7A80038 */ lwc1 $f8, 0x38($sp) -/* 00A02C 8000942C 4500001C */ bc1f .L800094A0 -/* 00A030 80009430 00000000 */ nop -/* 00A034 80009434 C7A6004C */ lwc1 $f6, 0x4c($sp) -/* 00A038 80009438 8FA3007C */ lw $v1, 0x7c($sp) -/* 00A03C 8000943C E4460000 */ swc1 $f6, ($v0) -/* 00A040 80009440 C7A80048 */ lwc1 $f8, 0x48($sp) -/* 00A044 80009444 00000000 */ nop -/* 00A048 80009448 E4680000 */ swc1 $f8, ($v1) -/* 00A04C 8000944C 8FAF0080 */ lw $t7, 0x80($sp) -/* 00A050 80009450 C7AA0044 */ lwc1 $f10, 0x44($sp) -/* 00A054 80009454 00000000 */ nop -/* 00A058 80009458 E5EA0000 */ swc1 $f10, ($t7) -/* 00A05C 8000945C C7A60068 */ lwc1 $f6, 0x68($sp) -/* 00A060 80009460 C7A4004C */ lwc1 $f4, 0x4c($sp) -/* 00A064 80009464 C7A80048 */ lwc1 $f8, 0x48($sp) -/* 00A068 80009468 46062001 */ sub.s $f0, $f4, $f6 -/* 00A06C 8000946C C7A4006C */ lwc1 $f4, 0x6c($sp) -/* 00A070 80009470 C7A60070 */ lwc1 $f6, 0x70($sp) -/* 00A074 80009474 46044081 */ sub.s $f2, $f8, $f4 -/* 00A078 80009478 46000202 */ mul.s $f8, $f0, $f0 -/* 00A07C 8000947C 46065381 */ sub.s $f14, $f10, $f6 -/* 00A080 80009480 46021102 */ mul.s $f4, $f2, $f2 -/* 00A084 80009484 00000000 */ nop -/* 00A088 80009488 460E7182 */ mul.s $f6, $f14, $f14 -/* 00A08C 8000948C 46044280 */ add.s $f10, $f8, $f4 -/* 00A090 80009490 0C0326B4 */ jal sqrtf -/* 00A094 80009494 46065300 */ add.s $f12, $f10, $f6 -/* 00A098 80009498 10000020 */ b .L8000951C -/* 00A09C 8000949C 4459F800 */ cfc1 $t9, $31 -.L800094A0: -/* 00A0A0 800094A0 46080102 */ mul.s $f4, $f0, $f8 -/* 00A0A4 800094A4 8FA20078 */ lw $v0, 0x78($sp) -/* 00A0A8 800094A8 8FA3007C */ lw $v1, 0x7c($sp) -/* 00A0AC 800094AC 46142280 */ add.s $f10, $f4, $f20 -/* 00A0B0 800094B0 E44A0000 */ swc1 $f10, ($v0) -/* 00A0B4 800094B4 C7A60034 */ lwc1 $f6, 0x34($sp) -/* 00A0B8 800094B8 00000000 */ nop -/* 00A0BC 800094BC 46060202 */ mul.s $f8, $f0, $f6 -/* 00A0C0 800094C0 46164100 */ add.s $f4, $f8, $f22 -/* 00A0C4 800094C4 E4640000 */ swc1 $f4, ($v1) -/* 00A0C8 800094C8 C7AA0030 */ lwc1 $f10, 0x30($sp) -/* 00A0CC 800094CC 8FB80080 */ lw $t8, 0x80($sp) -/* 00A0D0 800094D0 460A0182 */ mul.s $f6, $f0, $f10 -/* 00A0D4 800094D4 46183400 */ add.s $f16, $f6, $f24 -/* 00A0D8 800094D8 E7100000 */ swc1 $f16, ($t8) -/* 00A0DC 800094DC C7AA0068 */ lwc1 $f10, 0x68($sp) -/* 00A0E0 800094E0 C7A80070 */ lwc1 $f8, 0x70($sp) -/* 00A0E4 800094E4 C4440000 */ lwc1 $f4, ($v0) -/* 00A0E8 800094E8 46088481 */ sub.s $f18, $f16, $f8 -/* 00A0EC 800094EC C7A8006C */ lwc1 $f8, 0x6c($sp) -/* 00A0F0 800094F0 460A2081 */ sub.s $f2, $f4, $f10 -/* 00A0F4 800094F4 C4660000 */ lwc1 $f6, ($v1) -/* 00A0F8 800094F8 46021102 */ mul.s $f4, $f2, $f2 -/* 00A0FC 800094FC 46083381 */ sub.s $f14, $f6, $f8 -/* 00A100 80009500 460E7282 */ mul.s $f10, $f14, $f14 -/* 00A104 80009504 00000000 */ nop -/* 00A108 80009508 46129202 */ mul.s $f8, $f18, $f18 -/* 00A10C 8000950C 460A2180 */ add.s $f6, $f4, $f10 -/* 00A110 80009510 0C0326B4 */ jal sqrtf -/* 00A114 80009514 46064300 */ add.s $f12, $f8, $f6 -/* 00A118 80009518 4459F800 */ cfc1 $t9, $31 -.L8000951C: -/* 00A11C 8000951C 8FBF002C */ lw $ra, 0x2c($sp) -/* 00A120 80009520 37210003 */ ori $at, $t9, 3 -/* 00A124 80009524 38210002 */ xori $at, $at, 2 -/* 00A128 80009528 44C1F800 */ ctc1 $at, $31 -/* 00A12C 8000952C C7B50010 */ lwc1 $f21, 0x10($sp) -/* 00A130 80009530 46000124 */ cvt.w.s $f4, $f0 -/* 00A134 80009534 C7B40014 */ lwc1 $f20, 0x14($sp) -/* 00A138 80009538 44022000 */ mfc1 $v0, $f4 -/* 00A13C 8000953C C7B70018 */ lwc1 $f23, 0x18($sp) -/* 00A140 80009540 C7B6001C */ lwc1 $f22, 0x1c($sp) -/* 00A144 80009544 C7B90020 */ lwc1 $f25, 0x20($sp) -/* 00A148 80009548 C7B80024 */ lwc1 $f24, 0x24($sp) -/* 00A14C 8000954C 44D9F800 */ ctc1 $t9, $31 -/* 00A150 80009550 03E00008 */ jr $ra -/* 00A154 80009554 27BD0068 */ addiu $sp, $sp, 0x68 - -glabel func_80009558 -/* 00A158 80009558 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 00A15C 8000955C AFA40038 */ sw $a0, 0x38($sp) -/* 00A160 80009560 97AF003A */ lhu $t7, 0x3a($sp) -/* 00A164 80009564 3C0E8012 */ lui $t6, %hi(D_80119C40) # $t6, 0x8012 -/* 00A168 80009568 000FC080 */ sll $t8, $t7, 2 -/* 00A16C 8000956C 8DCE9C40 */ lw $t6, %lo(D_80119C40)($t6) -/* 00A170 80009570 030FC021 */ addu $t8, $t8, $t7 -/* 00A174 80009574 0018C040 */ sll $t8, $t8, 1 -/* 00A178 80009578 93B9004B */ lbu $t9, 0x4b($sp) -/* 00A17C 8000957C AFBF0034 */ sw $ra, 0x34($sp) -/* 00A180 80009580 AFA70044 */ sw $a3, 0x44($sp) -/* 00A184 80009584 01D81021 */ addu $v0, $t6, $t8 -/* 00A188 80009588 94440000 */ lhu $a0, ($v0) -/* 00A18C 8000958C AFB90010 */ sw $t9, 0x10($sp) -/* 00A190 80009590 90480003 */ lbu $t0, 3($v0) -/* 00A194 80009594 44856000 */ mtc1 $a1, $f12 -/* 00A198 80009598 AFA80014 */ sw $t0, 0x14($sp) -/* 00A19C 8000959C 90490002 */ lbu $t1, 2($v0) -/* 00A1A0 800095A0 44867000 */ mtc1 $a2, $f14 -/* 00A1A4 800095A4 AFA90018 */ sw $t1, 0x18($sp) -/* 00A1A8 800095A8 944A0006 */ lhu $t2, 6($v0) -/* 00A1AC 800095AC AFA00020 */ sw $zero, 0x20($sp) -/* 00A1B0 800095B0 AFAA001C */ sw $t2, 0x1c($sp) -/* 00A1B4 800095B4 904B0004 */ lbu $t3, 4($v0) -/* 00A1B8 800095B8 8FAD004C */ lw $t5, 0x4c($sp) -/* 00A1BC 800095BC AFAB0024 */ sw $t3, 0x24($sp) -/* 00A1C0 800095C0 904C0008 */ lbu $t4, 8($v0) -/* 00A1C4 800095C4 44056000 */ mfc1 $a1, $f12 -/* 00A1C8 800095C8 44067000 */ mfc1 $a2, $f14 -/* 00A1CC 800095CC AFAD002C */ sw $t5, 0x2c($sp) -/* 00A1D0 800095D0 0C0025D3 */ jal func_8000974C -/* 00A1D4 800095D4 AFAC0028 */ sw $t4, 0x28($sp) -/* 00A1D8 800095D8 8FBF0034 */ lw $ra, 0x34($sp) -/* 00A1DC 800095DC 27BD0038 */ addiu $sp, $sp, 0x38 -/* 00A1E0 800095E0 03E00008 */ jr $ra -/* 00A1E4 800095E4 00000000 */ nop - -glabel func_800095E8 -/* 00A1E8 800095E8 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 00A1EC 800095EC 4449F800 */ cfc1 $t1, $31 -/* 00A1F0 800095F0 240A0001 */ li $t2, 1 -/* 00A1F4 800095F4 44CAF800 */ ctc1 $t2, $31 -/* 00A1F8 800095F8 C7A40050 */ lwc1 $f4, 0x50($sp) -/* 00A1FC 800095FC 44856000 */ mtc1 $a1, $f12 -/* 00A200 80009600 460021A4 */ cvt.w.s $f6, $f4 -/* 00A204 80009604 44867000 */ mtc1 $a2, $f14 -/* 00A208 80009608 444AF800 */ cfc1 $t2, $31 -/* 00A20C 8000960C 93AF004B */ lbu $t7, 0x4b($sp) -/* 00A210 80009610 93B9004F */ lbu $t9, 0x4f($sp) -/* 00A214 80009614 AFA40038 */ sw $a0, 0x38($sp) -/* 00A218 80009618 308EFFFF */ andi $t6, $a0, 0xffff -/* 00A21C 8000961C 24180064 */ li $t8, 100 -/* 00A220 80009620 24083A98 */ li $t0, 15000 -/* 00A224 80009624 44056000 */ mfc1 $a1, $f12 -/* 00A228 80009628 44067000 */ mfc1 $a2, $f14 -/* 00A22C 8000962C 314A0078 */ andi $t2, $t2, 0x78 -/* 00A230 80009630 01C02025 */ move $a0, $t6 -/* 00A234 80009634 AFBF0034 */ sw $ra, 0x34($sp) -/* 00A238 80009638 AFA70044 */ sw $a3, 0x44($sp) -/* 00A23C 8000963C AFA8001C */ sw $t0, 0x1c($sp) -/* 00A240 80009640 AFB80014 */ sw $t8, 0x14($sp) -/* 00A244 80009644 AFA00020 */ sw $zero, 0x20($sp) -/* 00A248 80009648 AFAF0010 */ sw $t7, 0x10($sp) -/* 00A24C 8000964C 11400013 */ beqz $t2, .L8000969C -/* 00A250 80009650 AFB90018 */ sw $t9, 0x18($sp) -/* 00A254 80009654 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 00A258 80009658 44813000 */ mtc1 $at, $f6 -/* 00A25C 8000965C 240A0001 */ li $t2, 1 -/* 00A260 80009660 46062181 */ sub.s $f6, $f4, $f6 -/* 00A264 80009664 3C018000 */ lui $at, 0x8000 -/* 00A268 80009668 44CAF800 */ ctc1 $t2, $31 -/* 00A26C 8000966C 00000000 */ nop -/* 00A270 80009670 460031A4 */ cvt.w.s $f6, $f6 -/* 00A274 80009674 444AF800 */ cfc1 $t2, $31 -/* 00A278 80009678 00000000 */ nop -/* 00A27C 8000967C 314A0078 */ andi $t2, $t2, 0x78 -/* 00A280 80009680 15400004 */ bnez $t2, .L80009694 -/* 00A284 80009684 00000000 */ nop -/* 00A288 80009688 440A3000 */ mfc1 $t2, $f6 -/* 00A28C 8000968C 10000007 */ b .L800096AC -/* 00A290 80009690 01415025 */ or $t2, $t2, $at -.L80009694: -/* 00A294 80009694 10000005 */ b .L800096AC -/* 00A298 80009698 240AFFFF */ li $t2, -1 -.L8000969C: -/* 00A29C 8000969C 440A3000 */ mfc1 $t2, $f6 -/* 00A2A0 800096A0 00000000 */ nop -/* 00A2A4 800096A4 0540FFFB */ bltz $t2, .L80009694 -/* 00A2A8 800096A8 00000000 */ nop -.L800096AC: -/* 00A2AC 800096AC 8FAC0054 */ lw $t4, 0x54($sp) -/* 00A2B0 800096B0 44C9F800 */ ctc1 $t1, $31 -/* 00A2B4 800096B4 240B003F */ li $t3, 63 -/* 00A2B8 800096B8 AFAB0028 */ sw $t3, 0x28($sp) -/* 00A2BC 800096BC AFAA0024 */ sw $t2, 0x24($sp) -/* 00A2C0 800096C0 0C0025D3 */ jal func_8000974C -/* 00A2C4 800096C4 AFAC002C */ sw $t4, 0x2c($sp) -/* 00A2C8 800096C8 8FBF0034 */ lw $ra, 0x34($sp) -/* 00A2CC 800096CC 27BD0038 */ addiu $sp, $sp, 0x38 -/* 00A2D0 800096D0 03E00008 */ jr $ra -/* 00A2D4 800096D4 00000000 */ nop - -glabel func_800096D8 -/* 00A2D8 800096D8 44856000 */ mtc1 $a1, $f12 -/* 00A2DC 800096DC 44867000 */ mtc1 $a2, $f14 -/* 00A2E0 800096E0 AFA7000C */ sw $a3, 0xc($sp) -/* 00A2E4 800096E4 E48C0000 */ swc1 $f12, ($a0) -/* 00A2E8 800096E8 E48E0004 */ swc1 $f14, 4($a0) -/* 00A2EC 800096EC C7A4000C */ lwc1 $f4, 0xc($sp) -/* 00A2F0 800096F0 03E00008 */ jr $ra -/* 00A2F4 800096F4 E4840008 */ swc1 $f4, 8($a0) - -glabel func_800096F8 -/* 00A2F8 800096F8 3C028012 */ lui $v0, %hi(D_80119C44) # $v0, 0x8012 -/* 00A2FC 800096FC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 00A300 80009700 8C429C44 */ lw $v0, %lo(D_80119C44)($v0) -/* 00A304 80009704 AFBF0014 */ sw $ra, 0x14($sp) -/* 00A308 80009708 00002825 */ move $a1, $zero -/* 00A30C 8000970C 24030028 */ li $v1, 40 -.L80009710: -/* 00A310 80009710 8C4E0000 */ lw $t6, ($v0) -/* 00A314 80009714 00000000 */ nop -/* 00A318 80009718 148E0005 */ bne $a0, $t6, .L80009730 -/* 00A31C 8000971C 00000000 */ nop -/* 00A320 80009720 0C0028BA */ jal func_8000A2E8 -/* 00A324 80009724 00A02025 */ move $a0, $a1 -/* 00A328 80009728 10000005 */ b .L80009740 -/* 00A32C 8000972C 8FBF0014 */ lw $ra, 0x14($sp) -.L80009730: -/* 00A330 80009730 24A50001 */ addiu $a1, $a1, 1 -/* 00A334 80009734 14A3FFF6 */ bne $a1, $v1, .L80009710 -/* 00A338 80009738 24420004 */ addiu $v0, $v0, 4 -/* 00A33C 8000973C 8FBF0014 */ lw $ra, 0x14($sp) -.L80009740: -/* 00A340 80009740 27BD0018 */ addiu $sp, $sp, 0x18 -/* 00A344 80009744 03E00008 */ jr $ra -/* 00A348 80009748 00000000 */ nop - -glabel func_8000974C -/* 00A34C 8000974C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 00A350 80009750 AFA5001C */ sw $a1, 0x1c($sp) -/* 00A354 80009754 8FA50044 */ lw $a1, 0x44($sp) -/* 00A358 80009758 AFBF0014 */ sw $ra, 0x14($sp) -/* 00A35C 8000975C AFA40018 */ sw $a0, 0x18($sp) -/* 00A360 80009760 AFA60020 */ sw $a2, 0x20($sp) -/* 00A364 80009764 10A00009 */ beqz $a1, .L8000978C -/* 00A368 80009768 AFA70024 */ sw $a3, 0x24($sp) -/* 00A36C 8000976C 97A4001A */ lhu $a0, 0x1a($sp) -/* 00A370 80009770 00000000 */ nop -/* 00A374 80009774 348EE000 */ ori $t6, $a0, 0xe000 -/* 00A378 80009778 000E7C00 */ sll $t7, $t6, 0x10 -/* 00A37C 8000977C 0C00916D */ jal func_800245B4 -/* 00A380 80009780 000F2403 */ sra $a0, $t7, 0x10 -/* 00A384 80009784 8FA50044 */ lw $a1, 0x44($sp) -/* 00A388 80009788 00000000 */ nop -.L8000978C: -/* 00A38C 8000978C 3C04800E */ lui $a0, %hi(D_800DC6E0) # $a0, 0x800e -/* 00A390 80009790 2484C6E0 */ addiu $a0, %lo(D_800DC6E0) # addiu $a0, $a0, -0x3920 -/* 00A394 80009794 94990000 */ lhu $t9, ($a0) -/* 00A398 80009798 24010028 */ li $at, 40 -/* 00A39C 8000979C 17210008 */ bne $t9, $at, .L800097C0 -/* 00A3A0 800097A0 3C068012 */ lui $a2, %hi(D_80119C4C) # $a2, 0x8012 -/* 00A3A4 800097A4 10A00002 */ beqz $a1, .L800097B0 -/* 00A3A8 800097A8 00000000 */ nop -/* 00A3AC 800097AC ACA00000 */ sw $zero, ($a1) -.L800097B0: -/* 00A3B0 800097B0 0C00916D */ jal func_800245B4 -/* 00A3B4 800097B4 2404AA55 */ li $a0, -21931 -/* 00A3B8 800097B8 10000037 */ b .L80009898 -/* 00A3BC 800097BC 8FBF0014 */ lw $ra, 0x14($sp) -.L800097C0: -/* 00A3C0 800097C0 24C69C4C */ addiu $a2, %lo(D_80119C4C) # addiu $a2, $a2, -0x63b4 -/* 00A3C4 800097C4 90C30000 */ lbu $v1, ($a2) -/* 00A3C8 800097C8 3C088012 */ lui $t0, %hi(D_80119C50) # $t0, 0x8012 -/* 00A3CC 800097CC 8D089C50 */ lw $t0, %lo(D_80119C50)($t0) -/* 00A3D0 800097D0 00034880 */ sll $t1, $v1, 2 -/* 00A3D4 800097D4 01095021 */ addu $t2, $t0, $t1 -/* 00A3D8 800097D8 8D420000 */ lw $v0, ($t2) -/* 00A3DC 800097DC C7A4001C */ lwc1 $f4, 0x1c($sp) -/* 00A3E0 800097E0 246BFFFF */ addiu $t3, $v1, -1 -/* 00A3E4 800097E4 A0CB0000 */ sb $t3, ($a2) -/* 00A3E8 800097E8 E4440000 */ swc1 $f4, ($v0) -/* 00A3EC 800097EC C7A60020 */ lwc1 $f6, 0x20($sp) -/* 00A3F0 800097F0 3C0A8012 */ lui $t2, %hi(D_80119C44) # $t2, 0x8012 -/* 00A3F4 800097F4 E4460004 */ swc1 $f6, 4($v0) -/* 00A3F8 800097F8 C7A80024 */ lwc1 $f8, 0x24($sp) -/* 00A3FC 800097FC 00000000 */ nop -/* 00A400 80009800 E4480008 */ swc1 $f8, 8($v0) -/* 00A404 80009804 97AC001A */ lhu $t4, 0x1a($sp) -/* 00A408 80009808 00000000 */ nop -/* 00A40C 8000980C A44C000C */ sh $t4, 0xc($v0) -/* 00A410 80009810 93AD002B */ lbu $t5, 0x2b($sp) -/* 00A414 80009814 00000000 */ nop -/* 00A418 80009818 A04D0011 */ sb $t5, 0x11($v0) -/* 00A41C 8000981C 93AE002F */ lbu $t6, 0x2f($sp) -/* 00A420 80009820 00000000 */ nop -/* 00A424 80009824 A04E0010 */ sb $t6, 0x10($v0) -/* 00A428 80009828 93AF0033 */ lbu $t7, 0x33($sp) -/* 00A42C 8000982C 00000000 */ nop -/* 00A430 80009830 A04F000E */ sb $t7, 0xe($v0) -/* 00A434 80009834 93B8003F */ lbu $t8, 0x3f($sp) -/* 00A438 80009838 00000000 */ nop -/* 00A43C 8000983C A058000F */ sb $t8, 0xf($v0) -/* 00A440 80009840 97B90036 */ lhu $t9, 0x36($sp) -/* 00A444 80009844 00000000 */ nop -/* 00A448 80009848 AC590014 */ sw $t9, 0x14($v0) -/* 00A44C 8000984C 93A8003B */ lbu $t0, 0x3b($sp) -/* 00A450 80009850 00000000 */ nop -/* 00A454 80009854 A0480020 */ sb $t0, 0x20($v0) -/* 00A458 80009858 93A90043 */ lbu $t1, 0x43($sp) -/* 00A45C 8000985C A0400022 */ sb $zero, 0x22($v0) -/* 00A460 80009860 AC45001C */ sw $a1, 0x1c($v0) -/* 00A464 80009864 A0490021 */ sb $t1, 0x21($v0) -/* 00A468 80009868 948B0000 */ lhu $t3, ($a0) -/* 00A46C 8000986C 8D4A9C44 */ lw $t2, %lo(D_80119C44)($t2) -/* 00A470 80009870 000B6080 */ sll $t4, $t3, 2 -/* 00A474 80009874 014C6821 */ addu $t5, $t2, $t4 -/* 00A478 80009878 ADA20000 */ sw $v0, ($t5) -/* 00A47C 8000987C 948E0000 */ lhu $t6, ($a0) -/* 00A480 80009880 00000000 */ nop -/* 00A484 80009884 25CF0001 */ addiu $t7, $t6, 1 -/* 00A488 80009888 10A00002 */ beqz $a1, .L80009894 -/* 00A48C 8000988C A48F0000 */ sh $t7, ($a0) -/* 00A490 80009890 ACA20000 */ sw $v0, ($a1) -.L80009894: -/* 00A494 80009894 8FBF0014 */ lw $ra, 0x14($sp) -.L80009898: -/* 00A498 80009898 27BD0018 */ addiu $sp, $sp, 0x18 -/* 00A49C 8000989C 03E00008 */ jr $ra -/* 00A4A0 800098A0 00000000 */ nop - -glabel func_800098A4 -/* 00A4A4 800098A4 44866000 */ mtc1 $a2, $f12 -/* 00A4A8 800098A8 93A6002F */ lbu $a2, 0x2f($sp) -/* 00A4AC 800098AC AFA40000 */ sw $a0, ($sp) -/* 00A4B0 800098B0 44877000 */ mtc1 $a3, $f14 -/* 00A4B4 800098B4 93A70003 */ lbu $a3, 3($sp) -/* 00A4B8 800098B8 28C10007 */ slti $at, $a2, 7 -/* 00A4BC 800098BC AFA50004 */ sw $a1, 4($sp) -/* 00A4C0 800098C0 10200027 */ beqz $at, .L80009960 -/* 00A4C4 800098C4 30AEFFFF */ andi $t6, $a1, 0xffff -/* 00A4C8 800098C8 93A20033 */ lbu $v0, 0x33($sp) -/* 00A4CC 800098CC 00067880 */ sll $t7, $a2, 2 -/* 00A4D0 800098D0 2841001E */ slti $at, $v0, 0x1e -/* 00A4D4 800098D4 10200022 */ beqz $at, .L80009960 -/* 00A4D8 800098D8 01E67823 */ subu $t7, $t7, $a2 -/* 00A4DC 800098DC 3C188012 */ lui $t8, %hi(D_80119C58) # $t8, 0x8012 -/* 00A4E0 800098E0 0002C880 */ sll $t9, $v0, 2 -/* 00A4E4 800098E4 0322C823 */ subu $t9, $t9, $v0 -/* 00A4E8 800098E8 27189C58 */ addiu $t8, %lo(D_80119C58) # addiu $t8, $t8, -0x63a8 -/* 00A4EC 800098EC 000F79C0 */ sll $t7, $t7, 7 -/* 00A4F0 800098F0 01F81821 */ addu $v1, $t7, $t8 -/* 00A4F4 800098F4 00194080 */ sll $t0, $t9, 2 -/* 00A4F8 800098F8 C7A40010 */ lwc1 $f4, 0x10($sp) -/* 00A4FC 800098FC 00682021 */ addu $a0, $v1, $t0 -/* 00A500 80009900 E48C0004 */ swc1 $f12, 4($a0) -/* 00A504 80009904 E48E0008 */ swc1 $f14, 8($a0) -/* 00A508 80009908 1440000F */ bnez $v0, .L80009948 -/* 00A50C 8000990C E484000C */ swc1 $f4, 0xc($a0) -/* 00A510 80009910 AC6E016C */ sw $t6, 0x16c($v1) -/* 00A514 80009914 97A90026 */ lhu $t1, 0x26($sp) -/* 00A518 80009918 93AA002B */ lbu $t2, 0x2b($sp) -/* 00A51C 8000991C 93AB001B */ lbu $t3, 0x1b($sp) -/* 00A520 80009920 93AC0017 */ lbu $t4, 0x17($sp) -/* 00A524 80009924 93AD001F */ lbu $t5, 0x1f($sp) -/* 00A528 80009928 93AE0023 */ lbu $t6, 0x23($sp) -/* 00A52C 8000992C A0670000 */ sb $a3, ($v1) -/* 00A530 80009930 AC690170 */ sw $t1, 0x170($v1) -/* 00A534 80009934 A06A017D */ sb $t2, 0x17d($v1) -/* 00A538 80009938 A06B0174 */ sb $t3, 0x174($v1) -/* 00A53C 8000993C A06C0175 */ sb $t4, 0x175($v1) -/* 00A540 80009940 A06D0176 */ sb $t5, 0x176($v1) -/* 00A544 80009944 A06E017E */ sb $t6, 0x17e($v1) -.L80009948: -/* 00A548 80009948 806F017C */ lb $t7, 0x17c($v1) -/* 00A54C 8000994C 00000000 */ nop -/* 00A550 80009950 01E2082A */ slt $at, $t7, $v0 -/* 00A554 80009954 10200002 */ beqz $at, .L80009960 -/* 00A558 80009958 00000000 */ nop -/* 00A55C 8000995C A062017C */ sb $v0, 0x17c($v1) -.L80009960: -/* 00A560 80009960 03E00008 */ jr $ra -/* 00A564 80009964 00000000 */ nop - -glabel func_80009968 -/* 00A568 80009968 93A40013 */ lbu $a0, 0x13($sp) -/* 00A56C 8000996C AFA60008 */ sw $a2, 8($sp) -/* 00A570 80009970 28810007 */ slti $at, $a0, 7 -/* 00A574 80009974 AFA7000C */ sw $a3, 0xc($sp) -/* 00A578 80009978 1020001A */ beqz $at, .L800099E4 -/* 00A57C 8000997C 30EE00FF */ andi $t6, $a3, 0xff -/* 00A580 80009980 93A20017 */ lbu $v0, 0x17($sp) -/* 00A584 80009984 00047880 */ sll $t7, $a0, 2 -/* 00A588 80009988 2841000F */ slti $at, $v0, 0xf -/* 00A58C 8000998C 10200015 */ beqz $at, .L800099E4 -/* 00A590 80009990 01E47823 */ subu $t7, $t7, $a0 -/* 00A594 80009994 3C188012 */ lui $t8, %hi(D_8011A6D8) # $t8, 0x8012 -/* 00A598 80009998 0002C880 */ sll $t9, $v0, 2 -/* 00A59C 8000999C 0322C823 */ subu $t9, $t9, $v0 -/* 00A5A0 800099A0 2718A6D8 */ addiu $t8, %lo(D_8011A6D8) # addiu $t8, $t8, -0x5928 -/* 00A5A4 800099A4 000F7980 */ sll $t7, $t7, 6 -/* 00A5A8 800099A8 01F81821 */ addu $v1, $t7, $t8 -/* 00A5AC 800099AC 00194080 */ sll $t0, $t9, 2 -/* 00A5B0 800099B0 C7A40008 */ lwc1 $f4, 8($sp) -/* 00A5B4 800099B4 00682821 */ addu $a1, $v1, $t0 -/* 00A5B8 800099B8 E4AC0004 */ swc1 $f12, 4($a1) -/* 00A5BC 800099BC E4AE0008 */ swc1 $f14, 8($a1) -/* 00A5C0 800099C0 14400002 */ bnez $v0, .L800099CC -/* 00A5C4 800099C4 E4A4000C */ swc1 $f4, 0xc($a1) -/* 00A5C8 800099C8 A06E0000 */ sb $t6, ($v1) -.L800099CC: -/* 00A5CC 800099CC 806900B8 */ lb $t1, 0xb8($v1) -/* 00A5D0 800099D0 00000000 */ nop -/* 00A5D4 800099D4 0122082A */ slt $at, $t1, $v0 -/* 00A5D8 800099D8 10200002 */ beqz $at, .L800099E4 -/* 00A5DC 800099DC 00000000 */ nop -/* 00A5E0 800099E0 A06200B8 */ sb $v0, 0xb8($v1) -.L800099E4: -/* 00A5E4 800099E4 03E00008 */ jr $ra -/* 00A5E8 800099E8 00000000 */ nop - -glabel func_800099EC -/* 00A5EC 800099EC 308E00FF */ andi $t6, $a0, 0xff -/* 00A5F0 800099F0 000E7880 */ sll $t7, $t6, 2 -/* 00A5F4 800099F4 01EE7823 */ subu $t7, $t7, $t6 -/* 00A5F8 800099F8 3C188012 */ lui $t8, %hi(D_80119C58) # $t8, 0x8012 -/* 00A5FC 800099FC 27189C58 */ addiu $t8, %lo(D_80119C58) # addiu $t8, $t8, -0x63a8 -/* 00A600 80009A00 000F79C0 */ sll $t7, $t7, 7 -/* 00A604 80009A04 AFA40000 */ sw $a0, ($sp) -/* 00A608 80009A08 01F81021 */ addu $v0, $t7, $t8 -/* 00A60C 80009A0C 8047017C */ lb $a3, 0x17c($v0) -/* 00A610 80009A10 24030001 */ li $v1, 1 -/* 00A614 80009A14 1CE00003 */ bgtz $a3, .L80009A24 -/* 00A618 80009A18 24460004 */ addiu $a2, $v0, 4 -/* 00A61C 80009A1C 03E00008 */ jr $ra -/* 00A620 80009A20 00001025 */ move $v0, $zero - -.L80009A24: -/* 00A624 80009A24 18E00020 */ blez $a3, .L80009AA8 -/* 00A628 80009A28 00002025 */ move $a0, $zero -/* 00A62C 80009A2C 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 00A630 80009A30 44817000 */ mtc1 $at, $f14 -/* 00A634 80009A34 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 00A638 80009A38 44816000 */ mtc1 $at, $f12 -/* 00A63C 80009A3C 3C01800E */ lui $at, %hi(D_800E4F1C) # $at, 0x800e -/* 00A640 80009A40 C4234F18 */ lwc1 $f3, %lo(D_800E4F18)($at) -/* 00A644 80009A44 C4224F1C */ lwc1 $f2, %lo(D_800E4F1C)($at) -/* 00A648 80009A48 8045017C */ lb $a1, 0x17c($v0) -/* 00A64C 80009A4C 00000000 */ nop -.L80009A50: -/* 00A650 80009A50 C4C00000 */ lwc1 $f0, ($a2) -/* 00A654 80009A54 24840001 */ addiu $a0, $a0, 1 -/* 00A658 80009A58 46000121 */ cvt.d.s $f4, $f0 -/* 00A65C 80009A5C 46241032 */ c.eq.d $f2, $f4 -/* 00A660 80009A60 0085082A */ slt $at, $a0, $a1 -/* 00A664 80009A64 4501000D */ bc1t .L80009A9C -/* 00A668 80009A68 00000000 */ nop -/* 00A66C 80009A6C 460C0180 */ add.s $f6, $f0, $f12 -/* 00A670 80009A70 46003221 */ cvt.d.s $f8, $f6 -/* 00A674 80009A74 46281032 */ c.eq.d $f2, $f8 -/* 00A678 80009A78 00000000 */ nop -/* 00A67C 80009A7C 45010007 */ bc1t .L80009A9C -/* 00A680 80009A80 00000000 */ nop -/* 00A684 80009A84 460E0280 */ add.s $f10, $f0, $f14 -/* 00A688 80009A88 46005421 */ cvt.d.s $f16, $f10 -/* 00A68C 80009A8C 46301032 */ c.eq.d $f2, $f16 -/* 00A690 80009A90 00000000 */ nop -/* 00A694 80009A94 45000002 */ bc1f .L80009AA0 -/* 00A698 80009A98 00000000 */ nop -.L80009A9C: -/* 00A69C 80009A9C 00001825 */ move $v1, $zero -.L80009AA0: -/* 00A6A0 80009AA0 1420FFEB */ bnez $at, .L80009A50 -/* 00A6A4 80009AA4 24C6000C */ addiu $a2, $a2, 0xc -.L80009AA8: -/* 00A6A8 80009AA8 00601025 */ move $v0, $v1 -/* 00A6AC 80009AAC 03E00008 */ jr $ra -/* 00A6B0 80009AB0 00000000 */ nop - -glabel func_80009AB4 -/* 00A6B4 80009AB4 308E00FF */ andi $t6, $a0, 0xff -/* 00A6B8 80009AB8 000E7880 */ sll $t7, $t6, 2 -/* 00A6BC 80009ABC 01EE7823 */ subu $t7, $t7, $t6 -/* 00A6C0 80009AC0 3C188012 */ lui $t8, %hi(D_8011A6D8) # $t8, 0x8012 -/* 00A6C4 80009AC4 2718A6D8 */ addiu $t8, %lo(D_8011A6D8) # addiu $t8, $t8, -0x5928 -/* 00A6C8 80009AC8 000F7980 */ sll $t7, $t7, 6 -/* 00A6CC 80009ACC AFA40000 */ sw $a0, ($sp) -/* 00A6D0 80009AD0 01F81021 */ addu $v0, $t7, $t8 -/* 00A6D4 80009AD4 804700B8 */ lb $a3, 0xb8($v0) -/* 00A6D8 80009AD8 24030001 */ li $v1, 1 -/* 00A6DC 80009ADC 1CE00003 */ bgtz $a3, .L80009AEC -/* 00A6E0 80009AE0 24460004 */ addiu $a2, $v0, 4 -/* 00A6E4 80009AE4 03E00008 */ jr $ra -/* 00A6E8 80009AE8 00001025 */ move $v0, $zero - -.L80009AEC: -/* 00A6EC 80009AEC 18E00020 */ blez $a3, .L80009B70 -/* 00A6F0 80009AF0 00002025 */ move $a0, $zero -/* 00A6F4 80009AF4 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 00A6F8 80009AF8 44817000 */ mtc1 $at, $f14 -/* 00A6FC 80009AFC 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 00A700 80009B00 44816000 */ mtc1 $at, $f12 -/* 00A704 80009B04 3C01800E */ lui $at, %hi(D_800E4F24) # $at, 0x800e -/* 00A708 80009B08 C4234F20 */ lwc1 $f3, %lo(D_800E4F20)($at) -/* 00A70C 80009B0C C4224F24 */ lwc1 $f2, %lo(D_800E4F24)($at) -/* 00A710 80009B10 804500B8 */ lb $a1, 0xb8($v0) -/* 00A714 80009B14 00000000 */ nop -.L80009B18: -/* 00A718 80009B18 C4C00000 */ lwc1 $f0, ($a2) -/* 00A71C 80009B1C 24840001 */ addiu $a0, $a0, 1 -/* 00A720 80009B20 46000121 */ cvt.d.s $f4, $f0 -/* 00A724 80009B24 46241032 */ c.eq.d $f2, $f4 -/* 00A728 80009B28 0085082A */ slt $at, $a0, $a1 -/* 00A72C 80009B2C 4501000D */ bc1t .L80009B64 -/* 00A730 80009B30 00000000 */ nop -/* 00A734 80009B34 460C0180 */ add.s $f6, $f0, $f12 -/* 00A738 80009B38 46003221 */ cvt.d.s $f8, $f6 -/* 00A73C 80009B3C 46281032 */ c.eq.d $f2, $f8 -/* 00A740 80009B40 00000000 */ nop -/* 00A744 80009B44 45010007 */ bc1t .L80009B64 -/* 00A748 80009B48 00000000 */ nop -/* 00A74C 80009B4C 460E0280 */ add.s $f10, $f0, $f14 -/* 00A750 80009B50 46005421 */ cvt.d.s $f16, $f10 -/* 00A754 80009B54 46301032 */ c.eq.d $f2, $f16 -/* 00A758 80009B58 00000000 */ nop -/* 00A75C 80009B5C 45000002 */ bc1f .L80009B68 -/* 00A760 80009B60 00000000 */ nop -.L80009B64: -/* 00A764 80009B64 00001825 */ move $v1, $zero -.L80009B68: -/* 00A768 80009B68 1420FFEB */ bnez $at, .L80009B18 -/* 00A76C 80009B6C 24C6000C */ addiu $a2, $a2, 0xc -.L80009B70: -/* 00A770 80009B70 00601025 */ move $v0, $v1 -/* 00A774 80009B74 03E00008 */ jr $ra -/* 00A778 80009B78 00000000 */ nop - -glabel func_80009B7C -/* 00A77C 80009B7C 27BDFF28 */ addiu $sp, $sp, -0xd8 -/* 00A780 80009B80 E7B8003C */ swc1 $f24, 0x3c($sp) -/* 00A784 80009B84 E7B4002C */ swc1 $f20, 0x2c($sp) -/* 00A788 80009B88 4486A000 */ mtc1 $a2, $f20 -/* 00A78C 80009B8C 4487C000 */ mtc1 $a3, $f24 -/* 00A790 80009B90 E7B60034 */ swc1 $f22, 0x34($sp) -/* 00A794 80009B94 4485B000 */ mtc1 $a1, $f22 -/* 00A798 80009B98 AFBF0064 */ sw $ra, 0x64($sp) -/* 00A79C 80009B9C 4406C000 */ mfc1 $a2, $f24 -/* 00A7A0 80009BA0 AFBE0060 */ sw $fp, 0x60($sp) -/* 00A7A4 80009BA4 AFB7005C */ sw $s7, 0x5c($sp) -/* 00A7A8 80009BA8 AFB60058 */ sw $s6, 0x58($sp) -/* 00A7AC 80009BAC AFB50054 */ sw $s5, 0x54($sp) -/* 00A7B0 80009BB0 AFB40050 */ sw $s4, 0x50($sp) -/* 00A7B4 80009BB4 AFB3004C */ sw $s3, 0x4c($sp) -/* 00A7B8 80009BB8 AFB20048 */ sw $s2, 0x48($sp) -/* 00A7BC 80009BBC AFB10044 */ sw $s1, 0x44($sp) -/* 00A7C0 80009BC0 AFB00040 */ sw $s0, 0x40($sp) -/* 00A7C4 80009BC4 E7B90038 */ swc1 $f25, 0x38($sp) -/* 00A7C8 80009BC8 E7B70030 */ swc1 $f23, 0x30($sp) -/* 00A7CC 80009BCC E7B50028 */ swc1 $f21, 0x28($sp) -/* 00A7D0 80009BD0 AFA400D8 */ sw $a0, 0xd8($sp) -/* 00A7D4 80009BD4 4600A386 */ mov.s $f14, $f20 -/* 00A7D8 80009BD8 0C00A7C6 */ jal func_80029F18 -/* 00A7DC 80009BDC 4600B306 */ mov.s $f12, $f22 -/* 00A7E0 80009BE0 3C178012 */ lui $s7, %hi(D_8011A6D8) # $s7, 0x8012 -/* 00A7E4 80009BE4 AFA200B0 */ sw $v0, 0xb0($sp) -/* 00A7E8 80009BE8 0000A825 */ move $s5, $zero -/* 00A7EC 80009BEC 24160190 */ li $s6, 400 -/* 00A7F0 80009BF0 26F7A6D8 */ addiu $s7, %lo(D_8011A6D8) # addiu $s7, $s7, -0x5928 -/* 00A7F4 80009BF4 00001825 */ move $v1, $zero -.L80009BF8: -/* 00A7F8 80009BF8 92EE0000 */ lbu $t6, ($s7) -/* 00A7FC 80009BFC AFB700CC */ sw $s7, 0xcc($sp) -/* 00A800 80009C00 11C0003D */ beqz $t6, .L80009CF8 -/* 00A804 80009C04 AFA300D4 */ sw $v1, 0xd4($sp) -/* 00A808 80009C08 306400FF */ andi $a0, $v1, 0xff -/* 00A80C 80009C0C 0C0026AD */ jal func_80009AB4 -/* 00A810 80009C10 AFA300D4 */ sw $v1, 0xd4($sp) -/* 00A814 80009C14 10400039 */ beqz $v0, .L80009CFC -/* 00A818 80009C18 8FA300D4 */ lw $v1, 0xd4($sp) -/* 00A81C 80009C1C 82EF00B8 */ lb $t7, 0xb8($s7) -/* 00A820 80009C20 26FE0004 */ addiu $fp, $s7, 4 -/* 00A824 80009C24 19E00034 */ blez $t7, .L80009CF8 -/* 00A828 80009C28 AFA000D0 */ sw $zero, 0xd0($sp) -.L80009C2C: -/* 00A82C 80009C2C 4406C000 */ mfc1 $a2, $f24 -/* 00A830 80009C30 27B800C4 */ addiu $t8, $sp, 0xc4 -/* 00A834 80009C34 27B900C0 */ addiu $t9, $sp, 0xc0 -/* 00A838 80009C38 27A800BC */ addiu $t0, $sp, 0xbc -/* 00A83C 80009C3C AFA80018 */ sw $t0, 0x18($sp) -/* 00A840 80009C40 AFB90014 */ sw $t9, 0x14($sp) -/* 00A844 80009C44 AFB80010 */ sw $t8, 0x10($sp) -/* 00A848 80009C48 4600B306 */ mov.s $f12, $f22 -/* 00A84C 80009C4C 4600A386 */ mov.s $f14, $f20 -/* 00A850 80009C50 0C0024AA */ jal func_800092A8 -/* 00A854 80009C54 03C03825 */ move $a3, $fp -/* 00A858 80009C58 0056082A */ slt $at, $v0, $s6 -/* 00A85C 80009C5C 1020001D */ beqz $at, .L80009CD4 -/* 00A860 80009C60 00409825 */ move $s3, $v0 -/* 00A864 80009C64 8FA400B0 */ lw $a0, 0xb0($sp) -/* 00A868 80009C68 4405B000 */ mfc1 $a1, $f22 -/* 00A86C 80009C6C 4406C000 */ mfc1 $a2, $f24 -/* 00A870 80009C70 27A7007C */ addiu $a3, $sp, 0x7c -/* 00A874 80009C74 0C00AEAC */ jal func_8002BAB0 -/* 00A878 80009C78 00001025 */ move $v0, $zero -/* 00A87C 80009C7C 18400015 */ blez $v0, .L80009CD4 -/* 00A880 80009C80 27B0007C */ addiu $s0, $sp, 0x7c -/* 00A884 80009C84 00025080 */ sll $t2, $v0, 2 -/* 00A888 80009C88 0150A021 */ addu $s4, $t2, $s0 -.L80009C8C: -/* 00A88C 80009C8C C6040000 */ lwc1 $f4, ($s0) -/* 00A890 80009C90 8FA500C4 */ lw $a1, 0xc4($sp) -/* 00A894 80009C94 4604A03C */ c.lt.s $f20, $f4 -/* 00A898 80009C98 8FA600C0 */ lw $a2, 0xc0($sp) -/* 00A89C 80009C9C 45000009 */ bc1f .L80009CC4 -/* 00A8A0 80009CA0 02E02025 */ move $a0, $s7 -/* 00A8A4 80009CA4 8FA700BC */ lw $a3, 0xbc($sp) -/* 00A8A8 80009CA8 0260B025 */ move $s6, $s3 -/* 00A8AC 80009CAC 0C00275B */ jal func_80009D6C -/* 00A8B0 80009CB0 02A08825 */ move $s1, $s5 -/* 00A8B4 80009CB4 0222082A */ slt $at, $s1, $v0 -/* 00A8B8 80009CB8 10200002 */ beqz $at, .L80009CC4 -/* 00A8BC 80009CBC 00000000 */ nop -/* 00A8C0 80009CC0 305500FF */ andi $s5, $v0, 0xff -.L80009CC4: -/* 00A8C4 80009CC4 26100004 */ addiu $s0, $s0, 4 -/* 00A8C8 80009CC8 0214082B */ sltu $at, $s0, $s4 -/* 00A8CC 80009CCC 1420FFEF */ bnez $at, .L80009C8C -/* 00A8D0 80009CD0 00000000 */ nop -.L80009CD4: -/* 00A8D4 80009CD4 8FA200D0 */ lw $v0, 0xd0($sp) -/* 00A8D8 80009CD8 8FAB00CC */ lw $t3, 0xcc($sp) -/* 00A8DC 80009CDC 24420001 */ addiu $v0, $v0, 1 -/* 00A8E0 80009CE0 AFA200D0 */ sw $v0, 0xd0($sp) -/* 00A8E4 80009CE4 816C00B8 */ lb $t4, 0xb8($t3) -/* 00A8E8 80009CE8 27DE000C */ addiu $fp, $fp, 0xc -/* 00A8EC 80009CEC 004C082A */ slt $at, $v0, $t4 -/* 00A8F0 80009CF0 1420FFCE */ bnez $at, .L80009C2C -/* 00A8F4 80009CF4 00000000 */ nop -.L80009CF8: -/* 00A8F8 80009CF8 8FA300D4 */ lw $v1, 0xd4($sp) -.L80009CFC: -/* 00A8FC 80009CFC 24010007 */ li $at, 7 -/* 00A900 80009D00 24630001 */ addiu $v1, $v1, 1 -/* 00A904 80009D04 1461FFBC */ bne $v1, $at, .L80009BF8 -/* 00A908 80009D08 26F700C0 */ addiu $s7, $s7, 0xc0 -/* 00A90C 80009D0C 8FA400D8 */ lw $a0, 0xd8($sp) -/* 00A910 80009D10 24050100 */ li $a1, 256 -/* 00A914 80009D14 10800004 */ beqz $a0, .L80009D28 -/* 00A918 80009D18 8FBF0064 */ lw $ra, 0x64($sp) -/* 00A91C 80009D1C 0C00127E */ jal func_800049F8 -/* 00A920 80009D20 02A03025 */ move $a2, $s5 -/* 00A924 80009D24 8FBF0064 */ lw $ra, 0x64($sp) -.L80009D28: -/* 00A928 80009D28 C7B50028 */ lwc1 $f21, 0x28($sp) -/* 00A92C 80009D2C C7B4002C */ lwc1 $f20, 0x2c($sp) -/* 00A930 80009D30 C7B70030 */ lwc1 $f23, 0x30($sp) -/* 00A934 80009D34 C7B60034 */ lwc1 $f22, 0x34($sp) -/* 00A938 80009D38 C7B90038 */ lwc1 $f25, 0x38($sp) -/* 00A93C 80009D3C C7B8003C */ lwc1 $f24, 0x3c($sp) -/* 00A940 80009D40 8FB00040 */ lw $s0, 0x40($sp) -/* 00A944 80009D44 8FB10044 */ lw $s1, 0x44($sp) -/* 00A948 80009D48 8FB20048 */ lw $s2, 0x48($sp) -/* 00A94C 80009D4C 8FB3004C */ lw $s3, 0x4c($sp) -/* 00A950 80009D50 8FB40050 */ lw $s4, 0x50($sp) -/* 00A954 80009D54 8FB50054 */ lw $s5, 0x54($sp) -/* 00A958 80009D58 8FB60058 */ lw $s6, 0x58($sp) -/* 00A95C 80009D5C 8FB7005C */ lw $s7, 0x5c($sp) -/* 00A960 80009D60 8FBE0060 */ lw $fp, 0x60($sp) -/* 00A964 80009D64 03E00008 */ jr $ra -/* 00A968 80009D68 27BD00D8 */ addiu $sp, $sp, 0xd8 - -glabel func_80009D6C -/* 00A96C 80009D6C 27BDFF68 */ addiu $sp, $sp, -0x98 -/* 00A970 80009D70 E7B80024 */ swc1 $f24, 0x24($sp) -/* 00A974 80009D74 AFBF004C */ sw $ra, 0x4c($sp) -/* 00A978 80009D78 AFB10048 */ sw $s1, 0x48($sp) -/* 00A97C 80009D7C AFB00044 */ sw $s0, 0x44($sp) -/* 00A980 80009D80 E7BF0038 */ swc1 $f31, 0x38($sp) -/* 00A984 80009D84 E7BE003C */ swc1 $f30, 0x3c($sp) -/* 00A988 80009D88 E7BD0030 */ swc1 $f29, 0x30($sp) -/* 00A98C 80009D8C E7BC0034 */ swc1 $f28, 0x34($sp) -/* 00A990 80009D90 E7BB0028 */ swc1 $f27, 0x28($sp) -/* 00A994 80009D94 E7BA002C */ swc1 $f26, 0x2c($sp) -/* 00A998 80009D98 E7B90020 */ swc1 $f25, 0x20($sp) -/* 00A99C 80009D9C E7B70018 */ swc1 $f23, 0x18($sp) -/* 00A9A0 80009DA0 E7B6001C */ swc1 $f22, 0x1c($sp) -/* 00A9A4 80009DA4 E7B50010 */ swc1 $f21, 0x10($sp) -/* 00A9A8 80009DA8 E7B40014 */ swc1 $f20, 0x14($sp) -/* 00A9AC 80009DAC AFA5009C */ sw $a1, 0x9c($sp) -/* 00A9B0 80009DB0 AFA600A0 */ sw $a2, 0xa0($sp) -/* 00A9B4 80009DB4 AFA700A4 */ sw $a3, 0xa4($sp) -/* 00A9B8 80009DB8 4480C000 */ mtc1 $zero, $f24 -/* 00A9BC 80009DBC C48400BC */ lwc1 $f4, 0xbc($a0) -/* 00A9C0 80009DC0 00808825 */ move $s1, $a0 -/* 00A9C4 80009DC4 4604C032 */ c.eq.s $f24, $f4 -/* 00A9C8 80009DC8 00000000 */ nop -/* 00A9CC 80009DCC 45000028 */ bc1f .L80009E70 -/* 00A9D0 80009DD0 26300004 */ addiu $s0, $s1, 4 -/* 00A9D4 80009DD4 808E00B8 */ lb $t6, 0xb8($a0) -/* 00A9D8 80009DD8 24900004 */ addiu $s0, $a0, 4 -/* 00A9DC 80009DDC 448E3000 */ mtc1 $t6, $f6 -/* 00A9E0 80009DE0 4600C506 */ mov.s $f20, $f24 -/* 00A9E4 80009DE4 46803220 */ cvt.s.w $f8, $f6 -/* 00A9E8 80009DE8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 00A9EC 80009DEC 4608C03C */ c.lt.s $f24, $f8 -/* 00A9F0 80009DF0 00000000 */ nop -/* 00A9F4 80009DF4 4500001D */ bc1f .L80009E6C -/* 00A9F8 80009DF8 00000000 */ nop -/* 00A9FC 80009DFC 4481B000 */ mtc1 $at, $f22 -/* 00AA00 80009E00 00000000 */ nop -.L80009E04: -/* 00AA04 80009E04 C60A000C */ lwc1 $f10, 0xc($s0) -/* 00AA08 80009E08 C6040000 */ lwc1 $f4, ($s0) -/* 00AA0C 80009E0C C6060010 */ lwc1 $f6, 0x10($s0) -/* 00AA10 80009E10 C6080004 */ lwc1 $f8, 4($s0) -/* 00AA14 80009E14 46045001 */ sub.s $f0, $f10, $f4 -/* 00AA18 80009E18 C6040008 */ lwc1 $f4, 8($s0) -/* 00AA1C 80009E1C 46083081 */ sub.s $f2, $f6, $f8 -/* 00AA20 80009E20 C60A0014 */ lwc1 $f10, 0x14($s0) -/* 00AA24 80009E24 46000182 */ mul.s $f6, $f0, $f0 -/* 00AA28 80009E28 46045381 */ sub.s $f14, $f10, $f4 -/* 00AA2C 80009E2C 46021202 */ mul.s $f8, $f2, $f2 -/* 00AA30 80009E30 00000000 */ nop -/* 00AA34 80009E34 460E7102 */ mul.s $f4, $f14, $f14 -/* 00AA38 80009E38 46083280 */ add.s $f10, $f6, $f8 -/* 00AA3C 80009E3C 0C0326B4 */ jal sqrtf -/* 00AA40 80009E40 46045300 */ add.s $f12, $f10, $f4 -/* 00AA44 80009E44 822F00B8 */ lb $t7, 0xb8($s1) -/* 00AA48 80009E48 4616A500 */ add.s $f20, $f20, $f22 -/* 00AA4C 80009E4C 448F5000 */ mtc1 $t7, $f10 -/* 00AA50 80009E50 C62600BC */ lwc1 $f6, 0xbc($s1) -/* 00AA54 80009E54 46805120 */ cvt.s.w $f4, $f10 -/* 00AA58 80009E58 2610000C */ addiu $s0, $s0, 0xc -/* 00AA5C 80009E5C 4604A03C */ c.lt.s $f20, $f4 -/* 00AA60 80009E60 46003200 */ add.s $f8, $f6, $f0 -/* 00AA64 80009E64 4501FFE7 */ bc1t .L80009E04 -/* 00AA68 80009E68 E62800BC */ swc1 $f8, 0xbc($s1) -.L80009E6C: -/* 00AA6C 80009E6C 26300004 */ addiu $s0, $s1, 4 -.L80009E70: -/* 00AA70 80009E70 4600C406 */ mov.s $f16, $f24 -/* 00AA74 80009E74 00001025 */ move $v0, $zero -.L80009E78: -/* 00AA78 80009E78 C6160000 */ lwc1 $f22, ($s0) -/* 00AA7C 80009E7C C614000C */ lwc1 $f20, 0xc($s0) -/* 00AA80 80009E80 C61E0004 */ lwc1 $f30, 4($s0) -/* 00AA84 80009E84 4616A601 */ sub.s $f24, $f20, $f22 -/* 00AA88 80009E88 C6000010 */ lwc1 $f0, 0x10($s0) -/* 00AA8C 80009E8C 4618C182 */ mul.s $f6, $f24, $f24 -/* 00AA90 80009E90 461E0681 */ sub.s $f26, $f0, $f30 -/* 00AA94 80009E94 C6120008 */ lwc1 $f18, 8($s0) -/* 00AA98 80009E98 C6020014 */ lwc1 $f2, 0x14($s0) -/* 00AA9C 80009E9C 461AD202 */ mul.s $f8, $f26, $f26 -/* 00AAA0 80009EA0 46121701 */ sub.s $f28, $f2, $f18 -/* 00AAA4 80009EA4 E7B0005C */ swc1 $f16, 0x5c($sp) -/* 00AAA8 80009EA8 A3A20057 */ sb $v0, 0x57($sp) -/* 00AAAC 80009EAC 461CE102 */ mul.s $f4, $f28, $f28 -/* 00AAB0 80009EB0 46083280 */ add.s $f10, $f6, $f8 -/* 00AAB4 80009EB4 E7B2007C */ swc1 $f18, 0x7c($sp) -/* 00AAB8 80009EB8 0C0326B4 */ jal sqrtf -/* 00AABC 80009EBC 46045300 */ add.s $f12, $f10, $f4 -/* 00AAC0 80009EC0 C7A6009C */ lwc1 $f6, 0x9c($sp) -/* 00AAC4 80009EC4 93A20057 */ lbu $v0, 0x57($sp) -/* 00AAC8 80009EC8 4606B03E */ c.le.s $f22, $f6 -/* 00AACC 80009ECC C7B0005C */ lwc1 $f16, 0x5c($sp) -/* 00AAD0 80009ED0 C7B2007C */ lwc1 $f18, 0x7c($sp) -/* 00AAD4 80009ED4 45000005 */ bc1f .L80009EEC -/* 00AAD8 80009ED8 00000000 */ nop -/* 00AADC 80009EDC 4614303E */ c.le.s $f6, $f20 -/* 00AAE0 80009EE0 00000000 */ nop -/* 00AAE4 80009EE4 4501000B */ bc1t .L80009F14 -/* 00AAE8 80009EE8 00000000 */ nop -.L80009EEC: -/* 00AAEC 80009EEC C7A8009C */ lwc1 $f8, 0x9c($sp) -/* 00AAF0 80009EF0 00000000 */ nop -/* 00AAF4 80009EF4 4608A03E */ c.le.s $f20, $f8 -/* 00AAF8 80009EF8 00000000 */ nop -/* 00AAFC 80009EFC 45000048 */ bc1f .L8000A020 -/* 00AB00 80009F00 00000000 */ nop -/* 00AB04 80009F04 4616403E */ c.le.s $f8, $f22 -/* 00AB08 80009F08 00000000 */ nop -/* 00AB0C 80009F0C 45000044 */ bc1f .L8000A020 -/* 00AB10 80009F10 00000000 */ nop -.L80009F14: -/* 00AB14 80009F14 44805000 */ mtc1 $zero, $f10 -/* 00AB18 80009F18 C7A4009C */ lwc1 $f4, 0x9c($sp) -/* 00AB1C 80009F1C 460AC032 */ c.eq.s $f24, $f10 -/* 00AB20 80009F20 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 00AB24 80009F24 45010004 */ bc1t .L80009F38 -/* 00AB28 80009F28 00000000 */ nop -/* 00AB2C 80009F2C 46162181 */ sub.s $f6, $f4, $f22 -/* 00AB30 80009F30 10000012 */ b .L80009F7C -/* 00AB34 80009F34 46183303 */ div.s $f12, $f6, $f24 -.L80009F38: -/* 00AB38 80009F38 44801000 */ mtc1 $zero, $f2 -/* 00AB3C 80009F3C C7A800A0 */ lwc1 $f8, 0xa0($sp) -/* 00AB40 80009F40 4602D032 */ c.eq.s $f26, $f2 -/* 00AB44 80009F44 00000000 */ nop -/* 00AB48 80009F48 45010004 */ bc1t .L80009F5C -/* 00AB4C 80009F4C 00000000 */ nop -/* 00AB50 80009F50 461E4281 */ sub.s $f10, $f8, $f30 -/* 00AB54 80009F54 10000009 */ b .L80009F7C -/* 00AB58 80009F58 461A5303 */ div.s $f12, $f10, $f26 -.L80009F5C: -/* 00AB5C 80009F5C 4602E032 */ c.eq.s $f28, $f2 -/* 00AB60 80009F60 C7A400A4 */ lwc1 $f4, 0xa4($sp) -/* 00AB64 80009F64 45010004 */ bc1t .L80009F78 -/* 00AB68 80009F68 00000000 */ nop -/* 00AB6C 80009F6C 46122181 */ sub.s $f6, $f4, $f18 -/* 00AB70 80009F70 10000002 */ b .L80009F7C -/* 00AB74 80009F74 461C3303 */ div.s $f12, $f6, $f28 -.L80009F78: -/* 00AB78 80009F78 46001306 */ mov.s $f12, $f2 -.L80009F7C: -/* 00AB7C 80009F7C 460CD202 */ mul.s $f8, $f26, $f12 -/* 00AB80 80009F80 C7AA00A0 */ lwc1 $f10, 0xa0($sp) -/* 00AB84 80009F84 44813000 */ mtc1 $at, $f6 -/* 00AB88 80009F88 C7A400A0 */ lwc1 $f4, 0xa0($sp) -/* 00AB8C 80009F8C 461E4080 */ add.s $f2, $f8, $f30 -/* 00AB90 80009F90 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 00AB94 80009F94 4602503E */ c.le.s $f10, $f2 -/* 00AB98 80009F98 00000000 */ nop -/* 00AB9C 80009F9C 45000003 */ bc1f .L80009FAC -/* 00ABA0 80009FA0 00000000 */ nop -/* 00ABA4 80009FA4 10000003 */ b .L80009FB4 -/* 00ABA8 80009FA8 460A1381 */ sub.s $f14, $f2, $f10 -.L80009FAC: -/* 00ABAC 80009FAC 46041381 */ sub.s $f14, $f2, $f4 -/* 00ABB0 80009FB0 46007387 */ neg.s $f14, $f14 -.L80009FB4: -/* 00ABB4 80009FB4 4606703C */ c.lt.s $f14, $f6 -/* 00ABB8 80009FB8 00000000 */ nop -/* 00ABBC 80009FBC 45000016 */ bc1f .L8000A018 -/* 00ABC0 80009FC0 00000000 */ nop -/* 00ABC4 80009FC4 460CE202 */ mul.s $f8, $f28, $f12 -/* 00ABC8 80009FC8 C7AA00A4 */ lwc1 $f10, 0xa4($sp) -/* 00ABCC 80009FCC 44813000 */ mtc1 $at, $f6 -/* 00ABD0 80009FD0 C7A400A4 */ lwc1 $f4, 0xa4($sp) -/* 00ABD4 80009FD4 46124080 */ add.s $f2, $f8, $f18 -/* 00ABD8 80009FD8 4602503E */ c.le.s $f10, $f2 -/* 00ABDC 80009FDC 00000000 */ nop -/* 00ABE0 80009FE0 45000003 */ bc1f .L80009FF0 -/* 00ABE4 80009FE4 00000000 */ nop -/* 00ABE8 80009FE8 10000003 */ b .L80009FF8 -/* 00ABEC 80009FEC 460A1381 */ sub.s $f14, $f2, $f10 -.L80009FF0: -/* 00ABF0 80009FF0 46041381 */ sub.s $f14, $f2, $f4 -/* 00ABF4 80009FF4 46007387 */ neg.s $f14, $f14 -.L80009FF8: -/* 00ABF8 80009FF8 4606703C */ c.lt.s $f14, $f6 -/* 00ABFC 80009FFC 00000000 */ nop -/* 00AC00 8000A000 45000005 */ bc1f .L8000A018 -/* 00AC04 8000A004 00000000 */ nop -/* 00AC08 8000A008 46006202 */ mul.s $f8, $f12, $f0 -/* 00AC0C 8000A00C 24020001 */ li $v0, 1 -/* 00AC10 8000A010 10000004 */ b .L8000A024 -/* 00AC14 8000A014 46088400 */ add.s $f16, $f16, $f8 -.L8000A018: -/* 00AC18 8000A018 10000002 */ b .L8000A024 -/* 00AC1C 8000A01C 46008400 */ add.s $f16, $f16, $f0 -.L8000A020: -/* 00AC20 8000A020 46008400 */ add.s $f16, $f16, $f0 -.L8000A024: -/* 00AC24 8000A024 1040FF94 */ beqz $v0, .L80009E78 -/* 00AC28 8000A028 2610000C */ addiu $s0, $s0, 0xc -/* 00AC2C 8000A02C 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 00AC30 8000A030 44815000 */ mtc1 $at, $f10 -/* 00AC34 8000A034 C62000BC */ lwc1 $f0, 0xbc($s1) -/* 00AC38 8000A038 8FB00044 */ lw $s0, 0x44($sp) -/* 00AC3C 8000A03C 460A0103 */ div.s $f4, $f0, $f10 -/* 00AC40 8000A040 8FBF004C */ lw $ra, 0x4c($sp) -/* 00AC44 8000A044 3C014396 */ li $at, 0x43960000 # 300.000000 -/* 00AC48 8000A048 4610203C */ c.lt.s $f4, $f16 -/* 00AC4C 8000A04C 00000000 */ nop -/* 00AC50 8000A050 45000002 */ bc1f .L8000A05C -/* 00AC54 8000A054 00000000 */ nop -/* 00AC58 8000A058 46100401 */ sub.s $f16, $f0, $f16 -.L8000A05C: -/* 00AC5C 8000A05C 44810000 */ mtc1 $at, $f0 -/* 00AC60 8000A060 00000000 */ nop -/* 00AC64 8000A064 4600803C */ c.lt.s $f16, $f0 -/* 00AC68 8000A068 00000000 */ nop -/* 00AC6C 8000A06C 45000034 */ bc1f .L8000A140 -/* 00AC70 8000A070 00000000 */ nop -/* 00AC74 8000A074 92380000 */ lbu $t8, ($s1) -/* 00AC78 8000A078 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 00AC7C 8000A07C 44983000 */ mtc1 $t8, $f6 -/* 00AC80 8000A080 07010004 */ bgez $t8, .L8000A094 -/* 00AC84 8000A084 46803220 */ cvt.s.w $f8, $f6 -/* 00AC88 8000A088 44815000 */ mtc1 $at, $f10 -/* 00AC8C 8000A08C 00000000 */ nop -/* 00AC90 8000A090 460A4200 */ add.s $f8, $f8, $f10 -.L8000A094: -/* 00AC94 8000A094 46104102 */ mul.s $f4, $f8, $f16 -/* 00AC98 8000A098 24020001 */ li $v0, 1 -/* 00AC9C 8000A09C 3C014F00 */ li $at, 0x4F000000 # 2147483648.000000 -/* 00ACA0 8000A0A0 46002183 */ div.s $f6, $f4, $f0 -/* 00ACA4 8000A0A4 4459F800 */ cfc1 $t9, $31 -/* 00ACA8 8000A0A8 44C2F800 */ ctc1 $v0, $31 -/* 00ACAC 8000A0AC 00000000 */ nop -/* 00ACB0 8000A0B0 460032A4 */ cvt.w.s $f10, $f6 -/* 00ACB4 8000A0B4 4442F800 */ cfc1 $v0, $31 -/* 00ACB8 8000A0B8 00000000 */ nop -/* 00ACBC 8000A0BC 30420078 */ andi $v0, $v0, 0x78 -/* 00ACC0 8000A0C0 10400018 */ beqz $v0, .L8000A124 -/* 00ACC4 8000A0C4 00000000 */ nop -/* 00ACC8 8000A0C8 44815000 */ mtc1 $at, $f10 -/* 00ACCC 8000A0CC 24020001 */ li $v0, 1 -/* 00ACD0 8000A0D0 460A3281 */ sub.s $f10, $f6, $f10 -/* 00ACD4 8000A0D4 3C018000 */ lui $at, 0x8000 -/* 00ACD8 8000A0D8 44C2F800 */ ctc1 $v0, $31 -/* 00ACDC 8000A0DC 00000000 */ nop -/* 00ACE0 8000A0E0 460052A4 */ cvt.w.s $f10, $f10 -/* 00ACE4 8000A0E4 4442F800 */ cfc1 $v0, $31 -/* 00ACE8 8000A0E8 00000000 */ nop -/* 00ACEC 8000A0EC 30420078 */ andi $v0, $v0, 0x78 -/* 00ACF0 8000A0F0 14400008 */ bnez $v0, .L8000A114 -/* 00ACF4 8000A0F4 2402FFFF */ li $v0, -1 -/* 00ACF8 8000A0F8 44025000 */ mfc1 $v0, $f10 -/* 00ACFC 8000A0FC 44D9F800 */ ctc1 $t9, $31 -/* 00AD00 8000A100 00411025 */ or $v0, $v0, $at -/* 00AD04 8000A104 304800FF */ andi $t0, $v0, 0xff -/* 00AD08 8000A108 1000000F */ b .L8000A148 -/* 00AD0C 8000A10C 01001025 */ move $v0, $t0 -.L8000A110: -/* 00AD10 8000A110 2402FFFF */ li $v0, -1 -.L8000A114: -/* 00AD14 8000A114 304800FF */ andi $t0, $v0, 0xff -/* 00AD18 8000A118 44D9F800 */ ctc1 $t9, $31 -/* 00AD1C 8000A11C 1000000A */ b .L8000A148 -/* 00AD20 8000A120 01001025 */ move $v0, $t0 -.L8000A124: -/* 00AD24 8000A124 44025000 */ mfc1 $v0, $f10 -/* 00AD28 8000A128 00000000 */ nop -/* 00AD2C 8000A12C 0440FFF8 */ bltz $v0, .L8000A110 -/* 00AD30 8000A130 304800FF */ andi $t0, $v0, 0xff -/* 00AD34 8000A134 44D9F800 */ ctc1 $t9, $31 -/* 00AD38 8000A138 10000003 */ b .L8000A148 -/* 00AD3C 8000A13C 01001025 */ move $v0, $t0 -.L8000A140: -/* 00AD40 8000A140 92220000 */ lbu $v0, ($s1) -/* 00AD44 8000A144 00000000 */ nop -.L8000A148: -/* 00AD48 8000A148 C7B50010 */ lwc1 $f21, 0x10($sp) -/* 00AD4C 8000A14C C7B40014 */ lwc1 $f20, 0x14($sp) -/* 00AD50 8000A150 C7B70018 */ lwc1 $f23, 0x18($sp) -/* 00AD54 8000A154 C7B6001C */ lwc1 $f22, 0x1c($sp) -/* 00AD58 8000A158 C7B90020 */ lwc1 $f25, 0x20($sp) -/* 00AD5C 8000A15C C7B80024 */ lwc1 $f24, 0x24($sp) -/* 00AD60 8000A160 C7BB0028 */ lwc1 $f27, 0x28($sp) -/* 00AD64 8000A164 C7BA002C */ lwc1 $f26, 0x2c($sp) -/* 00AD68 8000A168 C7BD0030 */ lwc1 $f29, 0x30($sp) -/* 00AD6C 8000A16C C7BC0034 */ lwc1 $f28, 0x34($sp) -/* 00AD70 8000A170 C7BF0038 */ lwc1 $f31, 0x38($sp) -/* 00AD74 8000A174 C7BE003C */ lwc1 $f30, 0x3c($sp) -/* 00AD78 8000A178 8FB10048 */ lw $s1, 0x48($sp) -/* 00AD7C 8000A17C 03E00008 */ jr $ra -/* 00AD80 8000A180 27BD0098 */ addiu $sp, $sp, 0x98 - -/* 00AD84 8000A184 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 00AD88 8000A188 AFBE0048 */ sw $fp, 0x48($sp) -/* 00AD8C 8000A18C AFB70044 */ sw $s7, 0x44($sp) -/* 00AD90 8000A190 AFB60040 */ sw $s6, 0x40($sp) -/* 00AD94 8000A194 AFB5003C */ sw $s5, 0x3c($sp) -/* 00AD98 8000A198 AFB40038 */ sw $s4, 0x38($sp) -/* 00AD9C 8000A19C AFB30034 */ sw $s3, 0x34($sp) -/* 00ADA0 8000A1A0 3C168012 */ lui $s6, %hi(D_80119C58) # $s6, 0x8012 -/* 00ADA4 8000A1A4 3C178012 */ lui $s7, %hi(D_80119C5C) # $s7, 0x8012 -/* 00ADA8 8000A1A8 3C1E8012 */ lui $fp, %hi(D_8011A6DC) # $fp, 0x8012 -/* 00ADAC 8000A1AC 00809825 */ move $s3, $a0 -/* 00ADB0 8000A1B0 00A0A025 */ move $s4, $a1 -/* 00ADB4 8000A1B4 00C0A825 */ move $s5, $a2 -/* 00ADB8 8000A1B8 AFBF004C */ sw $ra, 0x4c($sp) -/* 00ADBC 8000A1BC AFB20030 */ sw $s2, 0x30($sp) -/* 00ADC0 8000A1C0 AFB1002C */ sw $s1, 0x2c($sp) -/* 00ADC4 8000A1C4 AFB00028 */ sw $s0, 0x28($sp) -/* 00ADC8 8000A1C8 27DEA6DC */ addiu $fp, %lo(D_8011A6DC) # addiu $fp, $fp, -0x5924 -/* 00ADCC 8000A1CC 26F79C5C */ addiu $s7, %lo(D_80119C5C) # addiu $s7, $s7, -0x63a4 -/* 00ADD0 8000A1D0 26D69C58 */ addiu $s6, %lo(D_80119C58) # addiu $s6, $s6, -0x63a8 -.L8000A1D4: -/* 00ADD4 8000A1D4 8ECE016C */ lw $t6, 0x16c($s6) -/* 00ADD8 8000A1D8 02C09025 */ move $s2, $s6 -/* 00ADDC 8000A1DC 11C00013 */ beqz $t6, .L8000A22C -/* 00ADE0 8000A1E0 02E08825 */ move $s1, $s7 -/* 00ADE4 8000A1E4 82CF017C */ lb $t7, 0x17c($s6) -/* 00ADE8 8000A1E8 00008025 */ move $s0, $zero -/* 00ADEC 8000A1EC 19E0000F */ blez $t7, .L8000A22C -.L8000A1F0: -/* 00ADF0 8000A1F0 241800FF */ li $t8, 255 -/* 00ADF4 8000A1F4 241900FF */ li $t9, 255 -/* 00ADF8 8000A1F8 AFB90014 */ sw $t9, 0x14($sp) -/* 00ADFC 8000A1FC AFB80010 */ sw $t8, 0x10($sp) -/* 00AE00 8000A200 02602025 */ move $a0, $s3 -/* 00AE04 8000A204 02802825 */ move $a1, $s4 -/* 00AE08 8000A208 02A03025 */ move $a2, $s5 -/* 00AE0C 8000A20C 02203825 */ move $a3, $s1 -/* 00AE10 8000A210 0C002905 */ jal func_8000A414 -/* 00AE14 8000A214 AFA00018 */ sw $zero, 0x18($sp) -/* 00AE18 8000A218 8248017C */ lb $t0, 0x17c($s2) -/* 00AE1C 8000A21C 26100001 */ addiu $s0, $s0, 1 -/* 00AE20 8000A220 0208082A */ slt $at, $s0, $t0 -/* 00AE24 8000A224 1420FFF2 */ bnez $at, .L8000A1F0 -/* 00AE28 8000A228 2631000C */ addiu $s1, $s1, 0xc -.L8000A22C: -/* 00AE2C 8000A22C 26F70180 */ addiu $s7, $s7, 0x180 -/* 00AE30 8000A230 02FE082B */ sltu $at, $s7, $fp -/* 00AE34 8000A234 1420FFE7 */ bnez $at, .L8000A1D4 -/* 00AE38 8000A238 26D60180 */ addiu $s6, $s6, 0x180 -/* 00AE3C 8000A23C 3C168012 */ lui $s6, %hi(D_8011A6D8) # $s6, 0x8012 -/* 00AE40 8000A240 3C178012 */ lui $s7, %hi(D_8011A6DC) # $s7, 0x8012 -/* 00AE44 8000A244 3C1E8012 */ lui $fp, %hi(D_8011AC1C) # $fp, 0x8012 -/* 00AE48 8000A248 27DEAC1C */ addiu $fp, %lo(D_8011AC1C) # addiu $fp, $fp, -0x53e4 -/* 00AE4C 8000A24C 26F7A6DC */ addiu $s7, %lo(D_8011A6DC) # addiu $s7, $s7, -0x5924 -/* 00AE50 8000A250 26D6A6D8 */ addiu $s6, %lo(D_8011A6D8) # addiu $s6, $s6, -0x5928 -.L8000A254: -/* 00AE54 8000A254 92C90000 */ lbu $t1, ($s6) -/* 00AE58 8000A258 02C09025 */ move $s2, $s6 -/* 00AE5C 8000A25C 11200013 */ beqz $t1, .L8000A2AC -/* 00AE60 8000A260 02E08825 */ move $s1, $s7 -/* 00AE64 8000A264 82CA00B8 */ lb $t2, 0xb8($s6) -/* 00AE68 8000A268 00008025 */ move $s0, $zero -/* 00AE6C 8000A26C 1940000F */ blez $t2, .L8000A2AC -.L8000A270: -/* 00AE70 8000A270 240B00FF */ li $t3, 255 -/* 00AE74 8000A274 240C00FF */ li $t4, 255 -/* 00AE78 8000A278 AFAC0018 */ sw $t4, 0x18($sp) -/* 00AE7C 8000A27C AFAB0010 */ sw $t3, 0x10($sp) -/* 00AE80 8000A280 02602025 */ move $a0, $s3 -/* 00AE84 8000A284 02802825 */ move $a1, $s4 -/* 00AE88 8000A288 02A03025 */ move $a2, $s5 -/* 00AE8C 8000A28C 02203825 */ move $a3, $s1 -/* 00AE90 8000A290 0C002905 */ jal func_8000A414 -/* 00AE94 8000A294 AFA00014 */ sw $zero, 0x14($sp) -/* 00AE98 8000A298 824D00B8 */ lb $t5, 0xb8($s2) -/* 00AE9C 8000A29C 26100001 */ addiu $s0, $s0, 1 -/* 00AEA0 8000A2A0 020D082A */ slt $at, $s0, $t5 -/* 00AEA4 8000A2A4 1420FFF2 */ bnez $at, .L8000A270 -/* 00AEA8 8000A2A8 2631000C */ addiu $s1, $s1, 0xc -.L8000A2AC: -/* 00AEAC 8000A2AC 26F700C0 */ addiu $s7, $s7, 0xc0 -/* 00AEB0 8000A2B0 16FEFFE8 */ bne $s7, $fp, .L8000A254 -/* 00AEB4 8000A2B4 26D600C0 */ addiu $s6, $s6, 0xc0 -/* 00AEB8 8000A2B8 8FBF004C */ lw $ra, 0x4c($sp) -/* 00AEBC 8000A2BC 8FB00028 */ lw $s0, 0x28($sp) -/* 00AEC0 8000A2C0 8FB1002C */ lw $s1, 0x2c($sp) -/* 00AEC4 8000A2C4 8FB20030 */ lw $s2, 0x30($sp) -/* 00AEC8 8000A2C8 8FB30034 */ lw $s3, 0x34($sp) -/* 00AECC 8000A2CC 8FB40038 */ lw $s4, 0x38($sp) -/* 00AED0 8000A2D0 8FB5003C */ lw $s5, 0x3c($sp) -/* 00AED4 8000A2D4 8FB60040 */ lw $s6, 0x40($sp) -/* 00AED8 8000A2D8 8FB70044 */ lw $s7, 0x44($sp) -/* 00AEDC 8000A2DC 8FBE0048 */ lw $fp, 0x48($sp) -/* 00AEE0 8000A2E0 03E00008 */ jr $ra -/* 00AEE4 8000A2E4 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_8000A2E8 -/* 00AEE8 8000A2E8 3C07800E */ lui $a3, %hi(D_800DC6E0) # $a3, 0x800e -/* 00AEEC 8000A2EC 24E7C6E0 */ addiu $a3, %lo(D_800DC6E0) # addiu $a3, $a3, -0x3920 -/* 00AEF0 8000A2F0 94EE0000 */ lhu $t6, ($a3) -/* 00AEF4 8000A2F4 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 00AEF8 8000A2F8 11C00042 */ beqz $t6, .L8000A404 -/* 00AEFC 8000A2FC AFBF0014 */ sw $ra, 0x14($sp) -/* 00AF00 8000A300 3C0F8012 */ lui $t7, %hi(D_80119C44) # $t7, 0x8012 -/* 00AF04 8000A304 8DEF9C44 */ lw $t7, %lo(D_80119C44)($t7) -/* 00AF08 8000A308 00042880 */ sll $a1, $a0, 2 -/* 00AF0C 8000A30C 01E51821 */ addu $v1, $t7, $a1 -/* 00AF10 8000A310 8C620000 */ lw $v0, ($v1) -/* 00AF14 8000A314 00000000 */ nop -/* 00AF18 8000A318 8C440018 */ lw $a0, 0x18($v0) -/* 00AF1C 8000A31C 00000000 */ nop -/* 00AF20 8000A320 1080000A */ beqz $a0, .L8000A34C -/* 00AF24 8000A324 00000000 */ nop -/* 00AF28 8000A328 0C001223 */ jal func_8000488C -/* 00AF2C 8000A32C AFA5001C */ sw $a1, 0x1c($sp) -/* 00AF30 8000A330 3C188012 */ lui $t8, %hi(D_80119C44) # $t8, 0x8012 -/* 00AF34 8000A334 8F189C44 */ lw $t8, %lo(D_80119C44)($t8) -/* 00AF38 8000A338 8FA5001C */ lw $a1, 0x1c($sp) -/* 00AF3C 8000A33C 3C07800E */ lui $a3, %hi(D_800DC6E0) # $a3, 0x800e -/* 00AF40 8000A340 03051821 */ addu $v1, $t8, $a1 -/* 00AF44 8000A344 8C620000 */ lw $v0, ($v1) -/* 00AF48 8000A348 24E7C6E0 */ addiu $a3, %lo(D_800DC6E0) # addiu $a3, $a3, -0x3920 -.L8000A34C: -/* 00AF4C 8000A34C 8C46001C */ lw $a2, 0x1c($v0) -/* 00AF50 8000A350 3C198012 */ lui $t9, %hi(D_80119C44) # $t9, 0x8012 -/* 00AF54 8000A354 10C00013 */ beqz $a2, .L8000A3A4 -/* 00AF58 8000A358 00000000 */ nop -/* 00AF5C 8000A35C ACC00000 */ sw $zero, ($a2) -/* 00AF60 8000A360 8F399C44 */ lw $t9, %lo(D_80119C44)($t9) -/* 00AF64 8000A364 00000000 */ nop -/* 00AF68 8000A368 03254021 */ addu $t0, $t9, $a1 -/* 00AF6C 8000A36C 8D090000 */ lw $t1, ($t0) -/* 00AF70 8000A370 00000000 */ nop -/* 00AF74 8000A374 9524000C */ lhu $a0, 0xc($t1) -/* 00AF78 8000A378 AFA5001C */ sw $a1, 0x1c($sp) -/* 00AF7C 8000A37C 348A5000 */ ori $t2, $a0, 0x5000 -/* 00AF80 8000A380 000A5C00 */ sll $t3, $t2, 0x10 -/* 00AF84 8000A384 0C00916D */ jal func_800245B4 -/* 00AF88 8000A388 000B2403 */ sra $a0, $t3, 0x10 -/* 00AF8C 8000A38C 3C0D8012 */ lui $t5, %hi(D_80119C44) # $t5, 0x8012 -/* 00AF90 8000A390 8DAD9C44 */ lw $t5, %lo(D_80119C44)($t5) -/* 00AF94 8000A394 8FA5001C */ lw $a1, 0x1c($sp) -/* 00AF98 8000A398 3C07800E */ lui $a3, %hi(D_800DC6E0) # $a3, 0x800e -/* 00AF9C 8000A39C 24E7C6E0 */ addiu $a3, %lo(D_800DC6E0) # addiu $a3, $a3, -0x3920 -/* 00AFA0 8000A3A0 01A51821 */ addu $v1, $t5, $a1 -.L8000A3A4: -/* 00AFA4 8000A3A4 3C048012 */ lui $a0, %hi(D_80119C4C) # $a0, 0x8012 -/* 00AFA8 8000A3A8 24849C4C */ addiu $a0, %lo(D_80119C4C) # addiu $a0, $a0, -0x63b4 -/* 00AFAC 8000A3AC 908E0000 */ lbu $t6, ($a0) -/* 00AFB0 8000A3B0 3C198012 */ lui $t9, %hi(D_80119C50) # $t9, 0x8012 -/* 00AFB4 8000A3B4 25CF0001 */ addiu $t7, $t6, 1 -/* 00AFB8 8000A3B8 A08F0000 */ sb $t7, ($a0) -/* 00AFBC 8000A3BC 8F399C50 */ lw $t9, %lo(D_80119C50)($t9) -/* 00AFC0 8000A3C0 31E800FF */ andi $t0, $t7, 0xff -/* 00AFC4 8000A3C4 8C780000 */ lw $t8, ($v1) -/* 00AFC8 8000A3C8 00084880 */ sll $t1, $t0, 2 -/* 00AFCC 8000A3CC 03295021 */ addu $t2, $t9, $t1 -/* 00AFD0 8000A3D0 AD580000 */ sw $t8, ($t2) -/* 00AFD4 8000A3D4 94EB0000 */ lhu $t3, ($a3) -/* 00AFD8 8000A3D8 3C028012 */ lui $v0, %hi(D_80119C44) # $v0, 0x8012 -/* 00AFDC 8000A3DC 8C429C44 */ lw $v0, %lo(D_80119C44)($v0) -/* 00AFE0 8000A3E0 000B6080 */ sll $t4, $t3, 2 -/* 00AFE4 8000A3E4 004C6821 */ addu $t5, $v0, $t4 -/* 00AFE8 8000A3E8 8DAEFFFC */ lw $t6, -4($t5) -/* 00AFEC 8000A3EC 00457821 */ addu $t7, $v0, $a1 -/* 00AFF0 8000A3F0 ADEE0000 */ sw $t6, ($t7) -/* 00AFF4 8000A3F4 94E80000 */ lhu $t0, ($a3) -/* 00AFF8 8000A3F8 00000000 */ nop -/* 00AFFC 8000A3FC 2519FFFF */ addiu $t9, $t0, -1 -/* 00B000 8000A400 A4F90000 */ sh $t9, ($a3) -.L8000A404: -/* 00B004 8000A404 8FBF0014 */ lw $ra, 0x14($sp) -/* 00B008 8000A408 27BD0020 */ addiu $sp, $sp, 0x20 -/* 00B00C 8000A40C 03E00008 */ jr $ra -/* 00B010 8000A410 00000000 */ nop - -glabel func_8000A414 -/* 00B014 8000A414 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 00B018 8000A418 444EF800 */ cfc1 $t6, $31 -/* 00B01C 8000A41C AFBF0014 */ sw $ra, 0x14($sp) -/* 00B020 8000A420 35C10003 */ ori $at, $t6, 3 -/* 00B024 8000A424 AFA40038 */ sw $a0, 0x38($sp) -/* 00B028 8000A428 AFA5003C */ sw $a1, 0x3c($sp) -/* 00B02C 8000A42C AFA60040 */ sw $a2, 0x40($sp) -/* 00B030 8000A430 38210002 */ xori $at, $at, 2 -/* 00B034 8000A434 44C1F800 */ ctc1 $at, $31 -/* 00B038 8000A438 C4E40000 */ lwc1 $f4, ($a3) -/* 00B03C 8000A43C C4E80004 */ lwc1 $f8, 4($a3) -/* 00B040 8000A440 460021A4 */ cvt.w.s $f6, $f4 -/* 00B044 8000A444 C4F00008 */ lwc1 $f16, 8($a3) -/* 00B048 8000A448 44CEF800 */ ctc1 $t6, $31 -/* 00B04C 8000A44C C4E4000C */ lwc1 $f4, 0xc($a3) -/* 00B050 8000A450 44083000 */ mfc1 $t0, $f6 -/* 00B054 8000A454 4459F800 */ cfc1 $t9, $31 -/* 00B058 8000A458 00000000 */ nop -/* 00B05C 8000A45C 37210003 */ ori $at, $t9, 3 -/* 00B060 8000A460 38210002 */ xori $at, $at, 2 -/* 00B064 8000A464 44C1F800 */ ctc1 $at, $31 -/* 00B068 8000A468 00000000 */ nop -/* 00B06C 8000A46C 460042A4 */ cvt.w.s $f10, $f8 -/* 00B070 8000A470 C4E80010 */ lwc1 $f8, 0x10($a3) -/* 00B074 8000A474 44D9F800 */ ctc1 $t9, $31 -/* 00B078 8000A478 44095000 */ mfc1 $t1, $f10 -/* 00B07C 8000A47C 00000000 */ nop -/* 00B080 8000A480 4458F800 */ cfc1 $t8, $31 -/* 00B084 8000A484 00000000 */ nop -/* 00B088 8000A488 37010003 */ ori $at, $t8, 3 -/* 00B08C 8000A48C 38210002 */ xori $at, $at, 2 -/* 00B090 8000A490 44C1F800 */ ctc1 $at, $31 -/* 00B094 8000A494 00000000 */ nop -/* 00B098 8000A498 460084A4 */ cvt.w.s $f18, $f16 -/* 00B09C 8000A49C C4F00014 */ lwc1 $f16, 0x14($a3) -/* 00B0A0 8000A4A0 44D8F800 */ ctc1 $t8, $31 -/* 00B0A4 8000A4A4 440A9000 */ mfc1 $t2, $f18 -/* 00B0A8 8000A4A8 00000000 */ nop -/* 00B0AC 8000A4AC 444FF800 */ cfc1 $t7, $31 -/* 00B0B0 8000A4B0 00000000 */ nop -/* 00B0B4 8000A4B4 35E10003 */ ori $at, $t7, 3 -/* 00B0B8 8000A4B8 38210002 */ xori $at, $at, 2 -/* 00B0BC 8000A4BC 44C1F800 */ ctc1 $at, $31 -/* 00B0C0 8000A4C0 00000000 */ nop -/* 00B0C4 8000A4C4 460021A4 */ cvt.w.s $f6, $f4 -/* 00B0C8 8000A4C8 44CFF800 */ ctc1 $t7, $31 -/* 00B0CC 8000A4CC 440B3000 */ mfc1 $t3, $f6 -/* 00B0D0 8000A4D0 00000000 */ nop -/* 00B0D4 8000A4D4 444EF800 */ cfc1 $t6, $31 -/* 00B0D8 8000A4D8 00000000 */ nop -/* 00B0DC 8000A4DC 35C10003 */ ori $at, $t6, 3 -/* 00B0E0 8000A4E0 38210002 */ xori $at, $at, 2 -/* 00B0E4 8000A4E4 44C1F800 */ ctc1 $at, $31 -/* 00B0E8 8000A4E8 00000000 */ nop -/* 00B0EC 8000A4EC 460042A4 */ cvt.w.s $f10, $f8 -/* 00B0F0 8000A4F0 44CEF800 */ ctc1 $t6, $31 -/* 00B0F4 8000A4F4 440C5000 */ mfc1 $t4, $f10 -/* 00B0F8 8000A4F8 00000000 */ nop -/* 00B0FC 8000A4FC 4459F800 */ cfc1 $t9, $31 -/* 00B100 8000A500 00000000 */ nop -/* 00B104 8000A504 37210003 */ ori $at, $t9, 3 -/* 00B108 8000A508 38210002 */ xori $at, $at, 2 -/* 00B10C 8000A50C 44C1F800 */ ctc1 $at, $31 -/* 00B110 8000A510 00000000 */ nop -/* 00B114 8000A514 460084A4 */ cvt.w.s $f18, $f16 -/* 00B118 8000A518 44D9F800 */ ctc1 $t9, $31 -/* 00B11C 8000A51C 8C990000 */ lw $t9, ($a0) -/* 00B120 8000A520 440D9000 */ mfc1 $t5, $f18 -/* 00B124 8000A524 AFB90034 */ sw $t9, 0x34($sp) -/* 00B128 8000A528 8CA20000 */ lw $v0, ($a1) -/* 00B12C 8000A52C 8CC30000 */ lw $v1, ($a2) -/* 00B130 8000A530 00003025 */ move $a2, $zero -/* 00B134 8000A534 00002825 */ move $a1, $zero -/* 00B138 8000A538 27A40034 */ addiu $a0, $sp, 0x34 -/* 00B13C 8000A53C A7A8002A */ sh $t0, 0x2a($sp) -/* 00B140 8000A540 A7A90028 */ sh $t1, 0x28($sp) -/* 00B144 8000A544 A7AA0026 */ sh $t2, 0x26($sp) -/* 00B148 8000A548 A7AB0024 */ sh $t3, 0x24($sp) -/* 00B14C 8000A54C A7AC0022 */ sh $t4, 0x22($sp) -/* 00B150 8000A550 A7AD0020 */ sh $t5, 0x20($sp) -/* 00B154 8000A554 AFA20030 */ sw $v0, 0x30($sp) -/* 00B158 8000A558 0C01ED32 */ jal func_8007B4C8 -/* 00B15C 8000A55C AFA3002C */ sw $v1, 0x2c($sp) -/* 00B160 8000A560 8FA20030 */ lw $v0, 0x30($sp) -/* 00B164 8000A564 3C078000 */ lui $a3, 0x8000 -/* 00B168 8000A568 8FA40034 */ lw $a0, 0x34($sp) -/* 00B16C 8000A56C 00472821 */ addu $a1, $v0, $a3 -/* 00B170 8000A570 30AE0006 */ andi $t6, $a1, 6 -/* 00B174 8000A574 35CF0018 */ ori $t7, $t6, 0x18 -/* 00B178 8000A578 24990008 */ addiu $t9, $a0, 8 -/* 00B17C 8000A57C AFB90034 */ sw $t9, 0x34($sp) -/* 00B180 8000A580 31F800FF */ andi $t8, $t7, 0xff -/* 00B184 8000A584 0018CC00 */ sll $t9, $t8, 0x10 -/* 00B188 8000A588 3C010400 */ lui $at, 0x400 -/* 00B18C 8000A58C 8FA3002C */ lw $v1, 0x2c($sp) -/* 00B190 8000A590 87A8002A */ lh $t0, 0x2a($sp) -/* 00B194 8000A594 87A90028 */ lh $t1, 0x28($sp) -/* 00B198 8000A598 87AA0026 */ lh $t2, 0x26($sp) -/* 00B19C 8000A59C 87AB0024 */ lh $t3, 0x24($sp) -/* 00B1A0 8000A5A0 87AC0022 */ lh $t4, 0x22($sp) -/* 00B1A4 8000A5A4 87AD0020 */ lh $t5, 0x20($sp) -/* 00B1A8 8000A5A8 93BF004B */ lbu $ra, 0x4b($sp) -/* 00B1AC 8000A5AC 03217025 */ or $t6, $t9, $at -/* 00B1B0 8000A5B0 35CF0050 */ ori $t7, $t6, 0x50 -/* 00B1B4 8000A5B4 AC8F0000 */ sw $t7, ($a0) -/* 00B1B8 8000A5B8 AC850004 */ sw $a1, 4($a0) -/* 00B1BC 8000A5BC 8FB80034 */ lw $t8, 0x34($sp) -/* 00B1C0 8000A5C0 3C0E0510 */ lui $t6, (0x05100020 >> 16) # lui $t6, 0x510 -/* 00B1C4 8000A5C4 27190008 */ addiu $t9, $t8, 8 -/* 00B1C8 8000A5C8 AFB90034 */ sw $t9, 0x34($sp) -/* 00B1CC 8000A5CC 35CE0020 */ ori $t6, (0x05100020 & 0xFFFF) # ori $t6, $t6, 0x20 -/* 00B1D0 8000A5D0 00677821 */ addu $t7, $v1, $a3 -/* 00B1D4 8000A5D4 AF0F0004 */ sw $t7, 4($t8) -/* 00B1D8 8000A5D8 AF0E0000 */ sw $t6, ($t8) -/* 00B1DC 8000A5DC 25380005 */ addiu $t8, $t1, 5 -/* 00B1E0 8000A5E0 A4580002 */ sh $t8, 2($v0) -/* 00B1E4 8000A5E4 A4480000 */ sh $t0, ($v0) -/* 00B1E8 8000A5E8 A44A0004 */ sh $t2, 4($v0) -/* 00B1EC 8000A5EC A05F0006 */ sb $ra, 6($v0) -/* 00B1F0 8000A5F0 93B9004F */ lbu $t9, 0x4f($sp) -/* 00B1F4 8000A5F4 240400FF */ li $a0, 255 -/* 00B1F8 8000A5F8 A0590007 */ sb $t9, 7($v0) -/* 00B1FC 8000A5FC 93A50053 */ lbu $a1, 0x53($sp) -/* 00B200 8000A600 252EFFFB */ addiu $t6, $t1, -5 -/* 00B204 8000A604 A0440009 */ sb $a0, 9($v0) -/* 00B208 8000A608 A44E000C */ sh $t6, 0xc($v0) -/* 00B20C 8000A60C A448000A */ sh $t0, 0xa($v0) -/* 00B210 8000A610 A44A000E */ sh $t2, 0xe($v0) -/* 00B214 8000A614 A05F0010 */ sb $ra, 0x10($v0) -/* 00B218 8000A618 A0450008 */ sb $a1, 8($v0) -/* 00B21C 8000A61C 93AF004F */ lbu $t7, 0x4f($sp) -/* 00B220 8000A620 A0440013 */ sb $a0, 0x13($v0) -/* 00B224 8000A624 A044001A */ sb $a0, 0x1a($v0) -/* 00B228 8000A628 A044001B */ sb $a0, 0x1b($v0) -/* 00B22C 8000A62C A044001C */ sb $a0, 0x1c($v0) -/* 00B230 8000A630 A044001D */ sb $a0, 0x1d($v0) -/* 00B234 8000A634 A0440024 */ sb $a0, 0x24($v0) -/* 00B238 8000A638 A0440025 */ sb $a0, 0x25($v0) -/* 00B23C 8000A63C A0440026 */ sb $a0, 0x26($v0) -/* 00B240 8000A640 A0440027 */ sb $a0, 0x27($v0) -/* 00B244 8000A644 25980005 */ addiu $t8, $t4, 5 -/* 00B248 8000A648 2599FFFB */ addiu $t9, $t4, -5 -/* 00B24C 8000A64C A0450012 */ sb $a1, 0x12($v0) -/* 00B250 8000A650 A4580016 */ sh $t8, 0x16($v0) -/* 00B254 8000A654 A4590020 */ sh $t9, 0x20($v0) -/* 00B258 8000A658 A44B0014 */ sh $t3, 0x14($v0) -/* 00B25C 8000A65C A44B001E */ sh $t3, 0x1e($v0) -/* 00B260 8000A660 A44D0018 */ sh $t5, 0x18($v0) -/* 00B264 8000A664 A44D0022 */ sh $t5, 0x22($v0) -/* 00B268 8000A668 A04F0011 */ sb $t7, 0x11($v0) -/* 00B26C 8000A66C 240403E0 */ li $a0, 992 -/* 00B270 8000A670 24050001 */ li $a1, 1 -/* 00B274 8000A674 24080001 */ li $t0, 1 -/* 00B278 8000A678 24070002 */ li $a3, 2 -/* 00B27C 8000A67C 24060040 */ li $a2, 64 -/* 00B280 8000A680 240E0003 */ li $t6, 3 -/* 00B284 8000A684 A0660000 */ sb $a2, ($v1) -/* 00B288 8000A688 A0670001 */ sb $a3, 1($v1) -/* 00B28C 8000A68C A0680002 */ sb $t0, 2($v1) -/* 00B290 8000A690 A0600003 */ sb $zero, 3($v1) -/* 00B294 8000A694 A4640004 */ sh $a0, 4($v1) -/* 00B298 8000A698 A4640006 */ sh $a0, 6($v1) -/* 00B29C 8000A69C A4640008 */ sh $a0, 8($v1) -/* 00B2A0 8000A6A0 A460000A */ sh $zero, 0xa($v1) -/* 00B2A4 8000A6A4 A465000C */ sh $a1, 0xc($v1) -/* 00B2A8 8000A6A8 A460000E */ sh $zero, 0xe($v1) -/* 00B2AC 8000A6AC A0660010 */ sb $a2, 0x10($v1) -/* 00B2B0 8000A6B0 A06E0011 */ sb $t6, 0x11($v1) -/* 00B2B4 8000A6B4 A0670012 */ sb $a3, 0x12($v1) -/* 00B2B8 8000A6B8 A0680013 */ sb $t0, 0x13($v1) -/* 00B2BC 8000A6BC A4650014 */ sh $a1, 0x14($v1) -/* 00B2C0 8000A6C0 A4640016 */ sh $a0, 0x16($v1) -/* 00B2C4 8000A6C4 A4640018 */ sh $a0, 0x18($v1) -/* 00B2C8 8000A6C8 A464001A */ sh $a0, 0x1a($v1) -/* 00B2CC 8000A6CC A465001C */ sh $a1, 0x1c($v1) -/* 00B2D0 8000A6D0 A460001E */ sh $zero, 0x1e($v1) -/* 00B2D4 8000A6D4 8FB80038 */ lw $t8, 0x38($sp) -/* 00B2D8 8000A6D8 8FAF0034 */ lw $t7, 0x34($sp) -/* 00B2DC 8000A6DC 24420028 */ addiu $v0, $v0, 0x28 -/* 00B2E0 8000A6E0 AF0F0000 */ sw $t7, ($t8) -/* 00B2E4 8000A6E4 8FB9003C */ lw $t9, 0x3c($sp) -/* 00B2E8 8000A6E8 24630020 */ addiu $v1, $v1, 0x20 -/* 00B2EC 8000A6EC AF220000 */ sw $v0, ($t9) -/* 00B2F0 8000A6F0 8FAE0040 */ lw $t6, 0x40($sp) -/* 00B2F4 8000A6F4 00000000 */ nop -/* 00B2F8 8000A6F8 ADC30000 */ sw $v1, ($t6) -/* 00B2FC 8000A6FC 8FBF0014 */ lw $ra, 0x14($sp) -/* 00B300 8000A700 27BD0038 */ addiu $sp, $sp, 0x38 -/* 00B304 8000A704 03E00008 */ jr $ra -/* 00B308 8000A708 00000000 */ nop - -/* 00B30C 8000A70C 00000000 */ nop -/* 00B310 8000A710 AFA40000 */ sw $a0, ($sp) -/* 00B314 8000A714 03E00008 */ jr $ra -/* 00B318 8000A718 AFA50004 */ sw $a1, 4($sp) - -glabel func_8000A71C -/* 00B31C 8000A71C AFA50004 */ sw $a1, 4($sp) -/* 00B320 8000A720 AFA60008 */ sw $a2, 8($sp) -/* 00B324 8000A724 AFA7000C */ sw $a3, 0xc($sp) -/* 00B328 8000A728 90880071 */ lbu $t0, 0x71($a0) -/* 00B32C 8000A72C 90990070 */ lbu $t9, 0x70($a0) -/* 00B330 8000A730 30AE00FF */ andi $t6, $a1, 0xff -/* 00B334 8000A734 30CF00FF */ andi $t7, $a2, 0xff -/* 00B338 8000A738 30F800FF */ andi $t8, $a3, 0xff -/* 00B33C 8000A73C 8C83006C */ lw $v1, 0x6c($a0) -/* 00B340 8000A740 0328082A */ slt $at, $t9, $t0 -/* 00B344 8000A744 03003825 */ move $a3, $t8 -/* 00B348 8000A748 01E03025 */ move $a2, $t7 -/* 00B34C 8000A74C 10200003 */ beqz $at, .L8000A75C -/* 00B350 8000A750 01C02825 */ move $a1, $t6 -/* 00B354 8000A754 03E00008 */ jr $ra -/* 00B358 8000A758 00001025 */ move $v0, $zero - -.L8000A75C: -/* 00B35C 8000A75C 10600017 */ beqz $v1, .L8000A7BC -/* 00B360 8000A760 00601025 */ move $v0, $v1 -/* 00B364 8000A764 8C690000 */ lw $t1, ($v1) -/* 00B368 8000A768 00000000 */ nop -/* 00B36C 8000A76C AC89006C */ sw $t1, 0x6c($a0) -/* 00B370 8000A770 AC600000 */ sw $zero, ($v1) -/* 00B374 8000A774 8C8A0064 */ lw $t2, 0x64($a0) -/* 00B378 8000A778 00000000 */ nop -/* 00B37C 8000A77C 15400003 */ bnez $t2, .L8000A78C -/* 00B380 8000A780 00000000 */ nop -/* 00B384 8000A784 10000004 */ b .L8000A798 -/* 00B388 8000A788 AC830064 */ sw $v1, 0x64($a0) -.L8000A78C: -/* 00B38C 8000A78C 8C8B0068 */ lw $t3, 0x68($a0) -/* 00B390 8000A790 00000000 */ nop -/* 00B394 8000A794 AD630000 */ sw $v1, ($t3) -.L8000A798: -/* 00B398 8000A798 AC830068 */ sw $v1, 0x68($a0) -/* 00B39C 8000A79C A0670031 */ sb $a3, 0x31($v1) -/* 00B3A0 8000A7A0 A0650032 */ sb $a1, 0x32($v1) -/* 00B3A4 8000A7A4 A0660033 */ sb $a2, 0x33($v1) -/* 00B3A8 8000A7A8 AC630014 */ sw $v1, 0x14($v1) -/* 00B3AC 8000A7AC 908C0071 */ lbu $t4, 0x71($a0) -/* 00B3B0 8000A7B0 00000000 */ nop -/* 00B3B4 8000A7B4 258D0001 */ addiu $t5, $t4, 1 -/* 00B3B8 8000A7B8 A08D0071 */ sb $t5, 0x71($a0) -.L8000A7BC: -/* 00B3BC 8000A7BC 03E00008 */ jr $ra -/* 00B3C0 8000A7C0 00000000 */ nop - -glabel func_8000A7C4 -/* 00B3C4 8000A7C4 8C830064 */ lw $v1, 0x64($a0) -/* 00B3C8 8000A7C8 00001025 */ move $v0, $zero -/* 00B3CC 8000A7CC 1060001D */ beqz $v1, .L8000A844 -/* 00B3D0 8000A7D0 24A6FFFC */ addiu $a2, $a1, -4 -.L8000A7D4: -/* 00B3D4 8000A7D4 14660016 */ bne $v1, $a2, .L8000A830 -/* 00B3D8 8000A7D8 00000000 */ nop -/* 00B3DC 8000A7DC 10400004 */ beqz $v0, .L8000A7F0 -/* 00B3E0 8000A7E0 00000000 */ nop -/* 00B3E4 8000A7E4 8C6E0000 */ lw $t6, ($v1) -/* 00B3E8 8000A7E8 10000004 */ b .L8000A7FC -/* 00B3EC 8000A7EC AC4E0000 */ sw $t6, ($v0) -.L8000A7F0: -/* 00B3F0 8000A7F0 8C6F0000 */ lw $t7, ($v1) -/* 00B3F4 8000A7F4 00000000 */ nop -/* 00B3F8 8000A7F8 AC8F0064 */ sw $t7, 0x64($a0) -.L8000A7FC: -/* 00B3FC 8000A7FC 8C980068 */ lw $t8, 0x68($a0) -/* 00B400 8000A800 00000000 */ nop -/* 00B404 8000A804 14780002 */ bne $v1, $t8, .L8000A810 -/* 00B408 8000A808 00000000 */ nop -/* 00B40C 8000A80C AC820068 */ sw $v0, 0x68($a0) -.L8000A810: -/* 00B410 8000A810 8C99006C */ lw $t9, 0x6c($a0) -/* 00B414 8000A814 00000000 */ nop -/* 00B418 8000A818 AC790000 */ sw $t9, ($v1) -/* 00B41C 8000A81C 90880071 */ lbu $t0, 0x71($a0) -/* 00B420 8000A820 AC83006C */ sw $v1, 0x6c($a0) -/* 00B424 8000A824 2509FFFF */ addiu $t1, $t0, -1 -/* 00B428 8000A828 03E00008 */ jr $ra -/* 00B42C 8000A82C A0890071 */ sb $t1, 0x71($a0) - -.L8000A830: -/* 00B430 8000A830 00601025 */ move $v0, $v1 -/* 00B434 8000A834 8C630000 */ lw $v1, ($v1) -/* 00B438 8000A838 00000000 */ nop -/* 00B43C 8000A83C 1460FFE5 */ bnez $v1, .L8000A7D4 -/* 00B440 8000A840 00000000 */ nop -.L8000A844: -/* 00B444 8000A844 03E00008 */ jr $ra -/* 00B448 8000A848 00000000 */ nop - -glabel func_8000A84C -/* 00B44C 8000A84C AFA50004 */ sw $a1, 4($sp) -/* 00B450 8000A850 AFA60008 */ sw $a2, 8($sp) -/* 00B454 8000A854 8C830064 */ lw $v1, 0x64($a0) -/* 00B458 8000A858 30CF00FF */ andi $t7, $a2, 0xff -/* 00B45C 8000A85C 01E03025 */ move $a2, $t7 -/* 00B460 8000A860 10600018 */ beqz $v1, .L8000A8C4 -/* 00B464 8000A864 30AE00FF */ andi $t6, $a1, 0xff -/* 00B468 8000A868 01C01025 */ move $v0, $t6 -/* 00B46C 8000A86C 24070004 */ li $a3, 4 -/* 00B470 8000A870 24050003 */ li $a1, 3 -.L8000A874: -/* 00B474 8000A874 90780032 */ lbu $t8, 0x32($v1) -/* 00B478 8000A878 00000000 */ nop -/* 00B47C 8000A87C 1458000D */ bne $v0, $t8, .L8000A8B4 -/* 00B480 8000A880 00000000 */ nop -/* 00B484 8000A884 90790031 */ lbu $t9, 0x31($v1) -/* 00B488 8000A888 00000000 */ nop -/* 00B48C 8000A88C 14D90009 */ bne $a2, $t9, .L8000A8B4 -/* 00B490 8000A890 00000000 */ nop -/* 00B494 8000A894 90640035 */ lbu $a0, 0x35($v1) -/* 00B498 8000A898 00000000 */ nop -/* 00B49C 8000A89C 10A40005 */ beq $a1, $a0, .L8000A8B4 -/* 00B4A0 8000A8A0 00000000 */ nop -/* 00B4A4 8000A8A4 10E40003 */ beq $a3, $a0, .L8000A8B4 -/* 00B4A8 8000A8A8 00000000 */ nop -/* 00B4AC 8000A8AC 03E00008 */ jr $ra -/* 00B4B0 8000A8B0 00601025 */ move $v0, $v1 - -.L8000A8B4: -/* 00B4B4 8000A8B4 8C630000 */ lw $v1, ($v1) -/* 00B4B8 8000A8B8 00000000 */ nop -/* 00B4BC 8000A8BC 1460FFED */ bnez $v1, .L8000A874 -/* 00B4C0 8000A8C0 00000000 */ nop -.L8000A8C4: -/* 00B4C4 8000A8C4 00001025 */ move $v0, $zero -/* 00B4C8 8000A8C8 03E00008 */ jr $ra -/* 00B4CC 8000A8CC 00000000 */ nop - -glabel func_8000A8D0 -/* 00B4D0 8000A8D0 27BDFFF8 */ addiu $sp, $sp, -8 -/* 00B4D4 8000A8D4 30EF00FF */ andi $t7, $a3, 0xff -/* 00B4D8 8000A8D8 AFB00004 */ sw $s0, 4($sp) -/* 00B4DC 8000A8DC AFA5000C */ sw $a1, 0xc($sp) -/* 00B4E0 8000A8E0 AFA60010 */ sw $a2, 0x10($sp) -/* 00B4E4 8000A8E4 AFA70014 */ sw $a3, 0x14($sp) -/* 00B4E8 8000A8E8 000FC880 */ sll $t9, $t7, 2 -/* 00B4EC 8000A8EC 8C980060 */ lw $t8, 0x60($a0) -/* 00B4F0 8000A8F0 032FC821 */ addu $t9, $t9, $t7 -/* 00B4F4 8000A8F4 0019C880 */ sll $t9, $t9, 2 -/* 00B4F8 8000A8F8 03195821 */ addu $t3, $t8, $t9 -/* 00B4FC 8000A8FC 8D620000 */ lw $v0, ($t3) -/* 00B500 8000A900 30D000FF */ andi $s0, $a2, 0xff -/* 00B504 8000A904 8448000E */ lh $t0, 0xe($v0) -/* 00B508 8000A908 30AE00FF */ andi $t6, $a1, 0xff -/* 00B50C 8000A90C 19000036 */ blez $t0, .L8000A9E8 -/* 00B510 8000A910 24030001 */ li $v1, 1 -/* 00B514 8000A914 01C04825 */ move $t1, $t6 -/* 00B518 8000A918 00682821 */ addu $a1, $v1, $t0 -.L8000A91C: -/* 00B51C 8000A91C 04A10003 */ bgez $a1, .L8000A92C -/* 00B520 8000A920 00056043 */ sra $t4, $a1, 1 -/* 00B524 8000A924 24A10001 */ addiu $at, $a1, 1 -/* 00B528 8000A928 00016043 */ sra $t4, $at, 1 -.L8000A92C: -/* 00B52C 8000A92C 000C6880 */ sll $t5, $t4, 2 -/* 00B530 8000A930 004D7021 */ addu $t6, $v0, $t5 -/* 00B534 8000A934 8DC7000C */ lw $a3, 0xc($t6) -/* 00B538 8000A938 01802025 */ move $a0, $t4 -/* 00B53C 8000A93C 8CE60004 */ lw $a2, 4($a3) -/* 00B540 8000A940 00000000 */ nop -/* 00B544 8000A944 90CA0002 */ lbu $t2, 2($a2) -/* 00B548 8000A948 00000000 */ nop -/* 00B54C 8000A94C 012A082A */ slt $at, $t1, $t2 -/* 00B550 8000A950 14200013 */ bnez $at, .L8000A9A0 -/* 00B554 8000A954 012A082A */ slt $at, $t1, $t2 -/* 00B558 8000A958 90CF0003 */ lbu $t7, 3($a2) -/* 00B55C 8000A95C 00000000 */ nop -/* 00B560 8000A960 01E9082A */ slt $at, $t7, $t1 -/* 00B564 8000A964 1420000E */ bnez $at, .L8000A9A0 -/* 00B568 8000A968 012A082A */ slt $at, $t1, $t2 -/* 00B56C 8000A96C 90D80000 */ lbu $t8, ($a2) -/* 00B570 8000A970 02002825 */ move $a1, $s0 -/* 00B574 8000A974 0218082A */ slt $at, $s0, $t8 -/* 00B578 8000A978 14200009 */ bnez $at, .L8000A9A0 -/* 00B57C 8000A97C 012A082A */ slt $at, $t1, $t2 -/* 00B580 8000A980 90D90001 */ lbu $t9, 1($a2) -/* 00B584 8000A984 00000000 */ nop -/* 00B588 8000A988 0325082A */ slt $at, $t9, $a1 -/* 00B58C 8000A98C 14200004 */ bnez $at, .L8000A9A0 -/* 00B590 8000A990 012A082A */ slt $at, $t1, $t2 -/* 00B594 8000A994 10000015 */ b .L8000A9EC -/* 00B598 8000A998 00E01025 */ move $v0, $a3 -/* 00B59C 8000A99C 012A082A */ slt $at, $t1, $t2 -.L8000A9A0: -/* 00B5A0 8000A9A0 1420000B */ bnez $at, .L8000A9D0 -/* 00B5A4 8000A9A4 00000000 */ nop -/* 00B5A8 8000A9A8 90CB0000 */ lbu $t3, ($a2) -/* 00B5AC 8000A9AC 00000000 */ nop -/* 00B5B0 8000A9B0 020B082A */ slt $at, $s0, $t3 -/* 00B5B4 8000A9B4 10200008 */ beqz $at, .L8000A9D8 -/* 00B5B8 8000A9B8 00000000 */ nop -/* 00B5BC 8000A9BC 90CC0003 */ lbu $t4, 3($a2) -/* 00B5C0 8000A9C0 00000000 */ nop -/* 00B5C4 8000A9C4 0189082A */ slt $at, $t4, $t1 -/* 00B5C8 8000A9C8 14200003 */ bnez $at, .L8000A9D8 -/* 00B5CC 8000A9CC 00000000 */ nop -.L8000A9D0: -/* 00B5D0 8000A9D0 10000002 */ b .L8000A9DC -/* 00B5D4 8000A9D4 2488FFFF */ addiu $t0, $a0, -1 -.L8000A9D8: -/* 00B5D8 8000A9D8 24830001 */ addiu $v1, $a0, 1 -.L8000A9DC: -/* 00B5DC 8000A9DC 0103082A */ slt $at, $t0, $v1 -/* 00B5E0 8000A9E0 1020FFCE */ beqz $at, .L8000A91C -/* 00B5E4 8000A9E4 00682821 */ addu $a1, $v1, $t0 -.L8000A9E8: -/* 00B5E8 8000A9E8 00001025 */ move $v0, $zero -.L8000A9EC: -/* 00B5EC 8000A9EC 8FB00004 */ lw $s0, 4($sp) -/* 00B5F0 8000A9F0 03E00008 */ jr $ra -/* 00B5F4 8000A9F4 27BD0008 */ addiu $sp, $sp, 8 - -glabel func_8000A9F8 -/* 00B5F8 8000A9F8 908E0036 */ lbu $t6, 0x36($a0) -/* 00B5FC 8000A9FC 908F0033 */ lbu $t7, 0x33($a0) -/* 00B600 8000AA00 90990030 */ lbu $t9, 0x30($a0) -/* 00B604 8000AA04 01CF0019 */ multu $t6, $t7 -/* 00B608 8000AA08 908A0031 */ lbu $t2, 0x31($a0) -/* 00B60C 8000AA0C 8CA90060 */ lw $t1, 0x60($a1) -/* 00B610 8000AA10 000A5880 */ sll $t3, $t2, 2 -/* 00B614 8000AA14 016A5821 */ addu $t3, $t3, $t2 -/* 00B618 8000AA18 8C8E0020 */ lw $t6, 0x20($a0) -/* 00B61C 8000AA1C 000B5880 */ sll $t3, $t3, 2 -/* 00B620 8000AA20 012B6021 */ addu $t4, $t1, $t3 -/* 00B624 8000AA24 918D0009 */ lbu $t5, 9($t4) -/* 00B628 8000AA28 91CF000D */ lbu $t7, 0xd($t6) -/* 00B62C 8000AA2C 0000C012 */ mflo $t8 -/* 00B630 8000AA30 00000000 */ nop -/* 00B634 8000AA34 00000000 */ nop -/* 00B638 8000AA38 03190019 */ multu $t8, $t9 -/* 00B63C 8000AA3C 84B90032 */ lh $t9, 0x32($a1) -/* 00B640 8000AA40 00001812 */ mflo $v1 -/* 00B644 8000AA44 00034183 */ sra $t0, $v1, 6 -/* 00B648 8000AA48 01001825 */ move $v1, $t0 -/* 00B64C 8000AA4C 01AF0019 */ multu $t5, $t7 -/* 00B650 8000AA50 0000C012 */ mflo $t8 -/* 00B654 8000AA54 00000000 */ nop -/* 00B658 8000AA58 00000000 */ nop -/* 00B65C 8000AA5C 03190019 */ multu $t8, $t9 -/* 00B660 8000AA60 00003012 */ mflo $a2 -/* 00B664 8000AA64 00064383 */ sra $t0, $a2, 0xe -/* 00B668 8000AA68 00000000 */ nop -/* 00B66C 8000AA6C 00680019 */ multu $v1, $t0 -/* 00B670 8000AA70 00001812 */ mflo $v1 -/* 00B674 8000AA74 000353C2 */ srl $t2, $v1, 0xf -/* 00B678 8000AA78 000A1400 */ sll $v0, $t2, 0x10 -/* 00B67C 8000AA7C 00024C03 */ sra $t1, $v0, 0x10 -/* 00B680 8000AA80 03E00008 */ jr $ra -/* 00B684 8000AA84 01201025 */ move $v0, $t1 - -glabel func_8000AA88 -/* 00B688 8000AA88 8C8E0024 */ lw $t6, 0x24($a0) -/* 00B68C 8000AA8C 240203E8 */ li $v0, 1000 -/* 00B690 8000AA90 01C51823 */ subu $v1, $t6, $a1 -/* 00B694 8000AA94 04600003 */ bltz $v1, .L8000AAA4 -/* 00B698 8000AA98 00000000 */ nop -/* 00B69C 8000AA9C 03E00008 */ jr $ra -/* 00B6A0 8000AAA0 00601025 */ move $v0, $v1 - -.L8000AAA4: -/* 00B6A4 8000AAA4 03E00008 */ jr $ra -/* 00B6A8 8000AAA8 00000000 */ nop - -glabel func_8000AAAC -/* 00B6AC 8000AAAC 908F0031 */ lbu $t7, 0x31($a0) -/* 00B6B0 8000AAB0 8CAE0060 */ lw $t6, 0x60($a1) -/* 00B6B4 8000AAB4 000FC080 */ sll $t8, $t7, 2 -/* 00B6B8 8000AAB8 030FC021 */ addu $t8, $t8, $t7 -/* 00B6BC 8000AABC 8C890020 */ lw $t1, 0x20($a0) -/* 00B6C0 8000AAC0 0018C080 */ sll $t8, $t8, 2 -/* 00B6C4 8000AAC4 01D8C821 */ addu $t9, $t6, $t8 -/* 00B6C8 8000AAC8 93280007 */ lbu $t0, 7($t9) -/* 00B6CC 8000AACC 912A000C */ lbu $t2, 0xc($t1) -/* 00B6D0 8000AAD0 00000000 */ nop -/* 00B6D4 8000AAD4 010A1821 */ addu $v1, $t0, $t2 -/* 00B6D8 8000AAD8 2463FFC0 */ addiu $v1, $v1, -0x40 -/* 00B6DC 8000AADC 1C600003 */ bgtz $v1, .L8000AAEC -/* 00B6E0 8000AAE0 2861007F */ slti $at, $v1, 0x7f -/* 00B6E4 8000AAE4 00001825 */ move $v1, $zero -/* 00B6E8 8000AAE8 2861007F */ slti $at, $v1, 0x7f -.L8000AAEC: -/* 00B6EC 8000AAEC 14200002 */ bnez $at, .L8000AAF8 -/* 00B6F0 8000AAF0 00000000 */ nop -/* 00B6F4 8000AAF4 2403007F */ li $v1, 127 -.L8000AAF8: -/* 00B6F8 8000AAF8 03E00008 */ jr $ra -/* 00B6FC 8000AAFC 306200FF */ andi $v0, $v1, 0xff - -glabel func_8000AB00 -/* 00B700 8000AB00 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 00B704 8000AB04 AFBF0034 */ sw $ra, 0x34($sp) -/* 00B708 8000AB08 AFB60030 */ sw $s6, 0x30($sp) -/* 00B70C 8000AB0C AFB5002C */ sw $s5, 0x2c($sp) -/* 00B710 8000AB10 AFB40028 */ sw $s4, 0x28($sp) -/* 00B714 8000AB14 AFB30024 */ sw $s3, 0x24($sp) -/* 00B718 8000AB18 AFB20020 */ sw $s2, 0x20($sp) -/* 00B71C 8000AB1C AFB1001C */ sw $s1, 0x1c($sp) -/* 00B720 8000AB20 AFB00018 */ sw $s0, 0x18($sp) -/* 00B724 8000AB24 AFA60068 */ sw $a2, 0x68($sp) -/* 00B728 8000AB28 8CB60010 */ lw $s6, 0x10($a1) -/* 00B72C 8000AB2C 0080A025 */ move $s4, $a0 -/* 00B730 8000AB30 92CE0034 */ lbu $t6, 0x34($s6) -/* 00B734 8000AB34 00A0A825 */ move $s5, $a1 -/* 00B738 8000AB38 15C0001C */ bnez $t6, .L8000ABAC -/* 00B73C 8000AB3C 240A0003 */ li $t2, 3 -/* 00B740 8000AB40 8C900050 */ lw $s0, 0x50($a0) -/* 00B744 8000AB44 24130006 */ li $s3, 6 -/* 00B748 8000AB48 12000018 */ beqz $s0, .L8000ABAC -/* 00B74C 8000AB4C 240A0003 */ li $t2, 3 -.L8000AB50: -/* 00B750 8000AB50 860F000C */ lh $t7, 0xc($s0) -/* 00B754 8000AB54 8E110000 */ lw $s1, ($s0) -/* 00B758 8000AB58 166F0011 */ bne $s3, $t7, .L8000ABA0 -/* 00B75C 8000AB5C 00000000 */ nop -/* 00B760 8000AB60 8E180010 */ lw $t8, 0x10($s0) -/* 00B764 8000AB64 00000000 */ nop -/* 00B768 8000AB68 16B8000D */ bne $s5, $t8, .L8000ABA0 -/* 00B76C 8000AB6C 00000000 */ nop -/* 00B770 8000AB70 12200006 */ beqz $s1, .L8000AB8C -/* 00B774 8000AB74 26920048 */ addiu $s2, $s4, 0x48 -/* 00B778 8000AB78 8E390008 */ lw $t9, 8($s1) -/* 00B77C 8000AB7C 8E080008 */ lw $t0, 8($s0) -/* 00B780 8000AB80 00000000 */ nop -/* 00B784 8000AB84 03284821 */ addu $t1, $t9, $t0 -/* 00B788 8000AB88 AE290008 */ sw $t1, 8($s1) -.L8000AB8C: -/* 00B78C 8000AB8C 0C0321D8 */ jal func_800C8760 -/* 00B790 8000AB90 02002025 */ move $a0, $s0 -/* 00B794 8000AB94 02002025 */ move $a0, $s0 -/* 00B798 8000AB98 0C0321E4 */ jal func_800C8790 -/* 00B79C 8000AB9C 02402825 */ move $a1, $s2 -.L8000ABA0: -/* 00B7A0 8000ABA0 1620FFEB */ bnez $s1, .L8000AB50 -/* 00B7A4 8000ABA4 02208025 */ move $s0, $s1 -/* 00B7A8 8000ABA8 240A0003 */ li $t2, 3 -.L8000ABAC: -/* 00B7AC 8000ABAC A2C00033 */ sb $zero, 0x33($s6) -/* 00B7B0 8000ABB0 A2CA0034 */ sb $t2, 0x34($s6) -/* 00B7B4 8000ABB4 A2C00030 */ sb $zero, 0x30($s6) -/* 00B7B8 8000ABB8 8FAC0068 */ lw $t4, 0x68($sp) -/* 00B7BC 8000ABBC 8E8B001C */ lw $t3, 0x1c($s4) -/* 00B7C0 8000ABC0 02A02825 */ move $a1, $s5 -/* 00B7C4 8000ABC4 016C6821 */ addu $t5, $t3, $t4 -/* 00B7C8 8000ABC8 AECD0024 */ sw $t5, 0x24($s6) -/* 00B7CC 8000ABCC 8E840014 */ lw $a0, 0x14($s4) -/* 00B7D0 8000ABD0 00003025 */ move $a2, $zero -/* 00B7D4 8000ABD4 0C0326B8 */ jal func_800C9AE0 -/* 00B7D8 8000ABD8 26920048 */ addiu $s2, $s4, 0x48 -/* 00B7DC 8000ABDC 8E840014 */ lw $a0, 0x14($s4) -/* 00B7E0 8000ABE0 8FA70068 */ lw $a3, 0x68($sp) -/* 00B7E4 8000ABE4 02A02825 */ move $a1, $s5 -/* 00B7E8 8000ABE8 0C032594 */ jal func_800C9650 -/* 00B7EC 8000ABEC 00003025 */ move $a2, $zero -/* 00B7F0 8000ABF0 240E0005 */ li $t6, 5 -/* 00B7F4 8000ABF4 8FA60068 */ lw $a2, 0x68($sp) -/* 00B7F8 8000ABF8 A7AE0050 */ sh $t6, 0x50($sp) -/* 00B7FC 8000ABFC AFB50054 */ sw $s5, 0x54($sp) -/* 00B800 8000AC00 02402025 */ move $a0, $s2 -/* 00B804 8000AC04 0C03246B */ jal func_800C91AC -/* 00B808 8000AC08 27A50050 */ addiu $a1, $sp, 0x50 -/* 00B80C 8000AC0C 8FBF0034 */ lw $ra, 0x34($sp) -/* 00B810 8000AC10 8FB00018 */ lw $s0, 0x18($sp) -/* 00B814 8000AC14 8FB1001C */ lw $s1, 0x1c($sp) -/* 00B818 8000AC18 8FB20020 */ lw $s2, 0x20($sp) -/* 00B81C 8000AC1C 8FB30024 */ lw $s3, 0x24($sp) -/* 00B820 8000AC20 8FB40028 */ lw $s4, 0x28($sp) -/* 00B824 8000AC24 8FB5002C */ lw $s5, 0x2c($sp) -/* 00B828 8000AC28 8FB60030 */ lw $s6, 0x30($sp) -/* 00B82C 8000AC2C 03E00008 */ jr $ra -/* 00B830 8000AC30 27BD0060 */ addiu $sp, $sp, 0x60 - -glabel func_8000AC34 -/* 00B834 8000AC34 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 00B838 8000AC38 AFBF0014 */ sw $ra, 0x14($sp) -/* 00B83C 8000AC3C AFA40030 */ sw $a0, 0x30($sp) -/* 00B840 8000AC40 8C870050 */ lw $a3, 0x50($a0) -/* 00B844 8000AC44 00004025 */ move $t0, $zero -/* 00B848 8000AC48 10E00021 */ beqz $a3, .L8000ACD0 -/* 00B84C 8000AC4C 24090001 */ li $t1, 1 -/* 00B850 8000AC50 24040005 */ li $a0, 5 -.L8000AC54: -/* 00B854 8000AC54 8CE30008 */ lw $v1, 8($a3) -/* 00B858 8000AC58 84EF000C */ lh $t7, 0xc($a3) -/* 00B85C 8000AC5C 8CE20000 */ lw $v0, ($a3) -/* 00B860 8000AC60 148F0019 */ bne $a0, $t7, .L8000ACC8 -/* 00B864 8000AC64 01034021 */ addu $t0, $t0, $v1 -/* 00B868 8000AC68 8CF80010 */ lw $t8, 0x10($a3) -/* 00B86C 8000AC6C 00000000 */ nop -/* 00B870 8000AC70 14B80015 */ bne $a1, $t8, .L8000ACC8 -/* 00B874 8000AC74 00C8082A */ slt $at, $a2, $t0 -/* 00B878 8000AC78 10200011 */ beqz $at, .L8000ACC0 -/* 00B87C 8000AC7C 00E02025 */ move $a0, $a3 -/* 00B880 8000AC80 10400005 */ beqz $v0, .L8000AC98 -/* 00B884 8000AC84 00000000 */ nop -/* 00B888 8000AC88 8C590008 */ lw $t9, 8($v0) -/* 00B88C 8000AC8C 00000000 */ nop -/* 00B890 8000AC90 03235021 */ addu $t2, $t9, $v1 -/* 00B894 8000AC94 AC4A0008 */ sw $t2, 8($v0) -.L8000AC98: -/* 00B898 8000AC98 AFA7002C */ sw $a3, 0x2c($sp) -/* 00B89C 8000AC9C 0C0321D8 */ jal func_800C8760 -/* 00B8A0 8000ACA0 A3A9001F */ sb $t1, 0x1f($sp) -/* 00B8A4 8000ACA4 8FA50030 */ lw $a1, 0x30($sp) -/* 00B8A8 8000ACA8 8FA4002C */ lw $a0, 0x2c($sp) -/* 00B8AC 8000ACAC 0C0321E4 */ jal func_800C8790 -/* 00B8B0 8000ACB0 24A50048 */ addiu $a1, $a1, 0x48 -/* 00B8B4 8000ACB4 93A9001F */ lbu $t1, 0x1f($sp) -/* 00B8B8 8000ACB8 10000006 */ b .L8000ACD4 -/* 00B8BC 8000ACBC 8FBF0014 */ lw $ra, 0x14($sp) -.L8000ACC0: -/* 00B8C0 8000ACC0 10000003 */ b .L8000ACD0 -/* 00B8C4 8000ACC4 00004825 */ move $t1, $zero -.L8000ACC8: -/* 00B8C8 8000ACC8 1440FFE2 */ bnez $v0, .L8000AC54 -/* 00B8CC 8000ACCC 00403825 */ move $a3, $v0 -.L8000ACD0: -/* 00B8D0 8000ACD0 8FBF0014 */ lw $ra, 0x14($sp) -.L8000ACD4: -/* 00B8D4 8000ACD4 27BD0030 */ addiu $sp, $sp, 0x30 -/* 00B8D8 8000ACD8 03E00008 */ jr $ra -/* 00B8DC 8000ACDC 01201025 */ move $v0, $t1 - -glabel func_8000ACE0 -/* 00B8E0 8000ACE0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 00B8E4 8000ACE4 AFB20020 */ sw $s2, 0x20($sp) -/* 00B8E8 8000ACE8 00809025 */ move $s2, $a0 -/* 00B8EC 8000ACEC AFBF0024 */ sw $ra, 0x24($sp) -/* 00B8F0 8000ACF0 AFB1001C */ sw $s1, 0x1c($sp) -/* 00B8F4 8000ACF4 AFB00018 */ sw $s0, 0x18($sp) -/* 00B8F8 8000ACF8 AFA5002C */ sw $a1, 0x2c($sp) -/* 00B8FC 8000ACFC 00A01025 */ move $v0, $a1 -.L8000AD00: -/* 00B900 8000AD00 8C51000C */ lw $s1, 0xc($v0) -/* 00B904 8000AD04 24420004 */ addiu $v0, $v0, 4 -/* 00B908 8000AD08 1220FFFD */ beqz $s1, .L8000AD00 -/* 00B90C 8000AD0C 00000000 */ nop -/* 00B910 8000AD10 924E0034 */ lbu $t6, 0x34($s2) -/* 00B914 8000AD14 00008025 */ move $s0, $zero -/* 00B918 8000AD18 19C0000C */ blez $t6, .L8000AD4C -/* 00B91C 8000AD1C 02402025 */ move $a0, $s2 -.L8000AD20: -/* 00B920 8000AD20 0C002B7D */ jal func_8000ADF4 -/* 00B924 8000AD24 02002825 */ move $a1, $s0 -/* 00B928 8000AD28 02402025 */ move $a0, $s2 -/* 00B92C 8000AD2C 02202825 */ move $a1, $s1 -/* 00B930 8000AD30 0C002B66 */ jal func_8000AD98 -/* 00B934 8000AD34 02003025 */ move $a2, $s0 -/* 00B938 8000AD38 924F0034 */ lbu $t7, 0x34($s2) -/* 00B93C 8000AD3C 26100001 */ addiu $s0, $s0, 1 -/* 00B940 8000AD40 020F082A */ slt $at, $s0, $t7 -/* 00B944 8000AD44 1420FFF6 */ bnez $at, .L8000AD20 -/* 00B948 8000AD48 02402025 */ move $a0, $s2 -.L8000AD4C: -/* 00B94C 8000AD4C 8FB8002C */ lw $t8, 0x2c($sp) -/* 00B950 8000AD50 02402025 */ move $a0, $s2 -/* 00B954 8000AD54 8F190008 */ lw $t9, 8($t8) -/* 00B958 8000AD58 00000000 */ nop -/* 00B95C 8000AD5C 13200009 */ beqz $t9, .L8000AD84 -/* 00B960 8000AD60 8FBF0024 */ lw $ra, 0x24($sp) -/* 00B964 8000AD64 0C002B7D */ jal func_8000ADF4 -/* 00B968 8000AD68 02002825 */ move $a1, $s0 -/* 00B96C 8000AD6C 8FA8002C */ lw $t0, 0x2c($sp) -/* 00B970 8000AD70 02402025 */ move $a0, $s2 -/* 00B974 8000AD74 8D050008 */ lw $a1, 8($t0) -/* 00B978 8000AD78 0C002B66 */ jal func_8000AD98 -/* 00B97C 8000AD7C 24060009 */ li $a2, 9 -/* 00B980 8000AD80 8FBF0024 */ lw $ra, 0x24($sp) -.L8000AD84: -/* 00B984 8000AD84 8FB00018 */ lw $s0, 0x18($sp) -/* 00B988 8000AD88 8FB1001C */ lw $s1, 0x1c($sp) -/* 00B98C 8000AD8C 8FB20020 */ lw $s2, 0x20($sp) -/* 00B990 8000AD90 03E00008 */ jr $ra -/* 00B994 8000AD94 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8000AD98 -/* 00B998 8000AD98 00061080 */ sll $v0, $a2, 2 -/* 00B99C 8000AD9C 8C8E0060 */ lw $t6, 0x60($a0) -/* 00B9A0 8000ADA0 00461021 */ addu $v0, $v0, $a2 -/* 00B9A4 8000ADA4 00021080 */ sll $v0, $v0, 2 -/* 00B9A8 8000ADA8 01C27821 */ addu $t7, $t6, $v0 -/* 00B9AC 8000ADAC ADE50000 */ sw $a1, ($t7) -/* 00B9B0 8000ADB0 8C990060 */ lw $t9, 0x60($a0) -/* 00B9B4 8000ADB4 90B80001 */ lbu $t8, 1($a1) -/* 00B9B8 8000ADB8 03224021 */ addu $t0, $t9, $v0 -/* 00B9BC 8000ADBC A1180007 */ sb $t8, 7($t0) -/* 00B9C0 8000ADC0 8C8A0060 */ lw $t2, 0x60($a0) -/* 00B9C4 8000ADC4 90A90000 */ lbu $t1, ($a1) -/* 00B9C8 8000ADC8 01425821 */ addu $t3, $t2, $v0 -/* 00B9CC 8000ADCC A1690009 */ sb $t1, 9($t3) -/* 00B9D0 8000ADD0 8C8D0060 */ lw $t5, 0x60($a0) -/* 00B9D4 8000ADD4 90AC0002 */ lbu $t4, 2($a1) -/* 00B9D8 8000ADD8 01A27021 */ addu $t6, $t5, $v0 -/* 00B9DC 8000ADDC A1CC0008 */ sb $t4, 8($t6) -/* 00B9E0 8000ADE0 8C990060 */ lw $t9, 0x60($a0) -/* 00B9E4 8000ADE4 84AF000C */ lh $t7, 0xc($a1) -/* 00B9E8 8000ADE8 0322C021 */ addu $t8, $t9, $v0 -/* 00B9EC 8000ADEC 03E00008 */ jr $ra -/* 00B9F0 8000ADF0 A70F0004 */ sh $t7, 4($t8) - -glabel func_8000ADF4 -/* 00B9F4 8000ADF4 00051080 */ sll $v0, $a1, 2 -/* 00B9F8 8000ADF8 8C8E0060 */ lw $t6, 0x60($a0) -/* 00B9FC 8000ADFC 00451021 */ addu $v0, $v0, $a1 -/* 00BA00 8000AE00 00021080 */ sll $v0, $v0, 2 -/* 00BA04 8000AE04 01C27821 */ addu $t7, $t6, $v0 -/* 00BA08 8000AE08 A1E00006 */ sb $zero, 6($t7) -/* 00BA0C 8000AE0C 8C980060 */ lw $t8, 0x60($a0) -/* 00BA10 8000AE10 24080040 */ li $t0, 64 -/* 00BA14 8000AE14 0302C821 */ addu $t9, $t8, $v0 -/* 00BA18 8000AE18 A320000A */ sb $zero, 0xa($t9) -/* 00BA1C 8000AE1C 8C890060 */ lw $t1, 0x60($a0) -/* 00BA20 8000AE20 2403007F */ li $v1, 127 -/* 00BA24 8000AE24 01225021 */ addu $t2, $t1, $v0 -/* 00BA28 8000AE28 A1480007 */ sb $t0, 7($t2) -/* 00BA2C 8000AE2C 8C8B0060 */ lw $t3, 0x60($a0) -/* 00BA30 8000AE30 240F0005 */ li $t7, 5 -/* 00BA34 8000AE34 01626021 */ addu $t4, $t3, $v0 -/* 00BA38 8000AE38 A1830009 */ sb $v1, 9($t4) -/* 00BA3C 8000AE3C 8C8D0060 */ lw $t5, 0x60($a0) -/* 00BA40 8000AE40 240A00C8 */ li $t2, 200 -/* 00BA44 8000AE44 01A27021 */ addu $t6, $t5, $v0 -/* 00BA48 8000AE48 A1C30010 */ sb $v1, 0x10($t6) -/* 00BA4C 8000AE4C 8C980060 */ lw $t8, 0x60($a0) -/* 00BA50 8000AE50 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 00BA54 8000AE54 0302C821 */ addu $t9, $t8, $v0 -/* 00BA58 8000AE58 A32F0008 */ sb $t7, 8($t9) -/* 00BA5C 8000AE5C 8C890060 */ lw $t1, 0x60($a0) -/* 00BA60 8000AE60 44812000 */ mtc1 $at, $f4 -/* 00BA64 8000AE64 01224021 */ addu $t0, $t1, $v0 -/* 00BA68 8000AE68 A100000B */ sb $zero, 0xb($t0) -/* 00BA6C 8000AE6C 8C8B0060 */ lw $t3, 0x60($a0) -/* 00BA70 8000AE70 00000000 */ nop -/* 00BA74 8000AE74 01626021 */ addu $t4, $t3, $v0 -/* 00BA78 8000AE78 A58A0004 */ sh $t2, 4($t4) -/* 00BA7C 8000AE7C 8C8D0060 */ lw $t5, 0x60($a0) -/* 00BA80 8000AE80 00000000 */ nop -/* 00BA84 8000AE84 01A27021 */ addu $t6, $t5, $v0 -/* 00BA88 8000AE88 03E00008 */ jr $ra -/* 00BA8C 8000AE8C E5C4000C */ swc1 $f4, 0xc($t6) - -glabel func_8000AE90 -/* 00BA90 8000AE90 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 00BA94 8000AE94 AFBF0024 */ sw $ra, 0x24($sp) -/* 00BA98 8000AE98 AFB20020 */ sw $s2, 0x20($sp) -/* 00BA9C 8000AE9C AFB1001C */ sw $s1, 0x1c($sp) -/* 00BAA0 8000AEA0 AFB00018 */ sw $s0, 0x18($sp) -/* 00BAA4 8000AEA4 908E0034 */ lbu $t6, 0x34($a0) -/* 00BAA8 8000AEA8 00808825 */ move $s1, $a0 -/* 00BAAC 8000AEAC 19C0000D */ blez $t6, .L8000AEE4 -/* 00BAB0 8000AEB0 00008025 */ move $s0, $zero -/* 00BAB4 8000AEB4 00009025 */ move $s2, $zero -.L8000AEB8: -/* 00BAB8 8000AEB8 8E2F0060 */ lw $t7, 0x60($s1) -/* 00BABC 8000AEBC 02202025 */ move $a0, $s1 -/* 00BAC0 8000AEC0 01F2C021 */ addu $t8, $t7, $s2 -/* 00BAC4 8000AEC4 AF000000 */ sw $zero, ($t8) -/* 00BAC8 8000AEC8 0C002B7D */ jal func_8000ADF4 -/* 00BACC 8000AECC 02002825 */ move $a1, $s0 -/* 00BAD0 8000AED0 92390034 */ lbu $t9, 0x34($s1) -/* 00BAD4 8000AED4 26100001 */ addiu $s0, $s0, 1 -/* 00BAD8 8000AED8 0219082A */ slt $at, $s0, $t9 -/* 00BADC 8000AEDC 1420FFF6 */ bnez $at, .L8000AEB8 -/* 00BAE0 8000AEE0 26520014 */ addiu $s2, $s2, 0x14 -.L8000AEE4: -/* 00BAE4 8000AEE4 8FBF0024 */ lw $ra, 0x24($sp) -/* 00BAE8 8000AEE8 8FB00018 */ lw $s0, 0x18($sp) -/* 00BAEC 8000AEEC 8FB1001C */ lw $s1, 0x1c($sp) -/* 00BAF0 8000AEF0 8FB20020 */ lw $s2, 0x20($sp) -/* 00BAF4 8000AEF4 03E00008 */ jr $ra -/* 00BAF8 8000AEF8 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8000AEFC -/* 00BAFC 8000AEFC 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 00BB00 8000AF00 AFBF0034 */ sw $ra, 0x34($sp) -/* 00BB04 8000AF04 AFB70030 */ sw $s7, 0x30($sp) -/* 00BB08 8000AF08 AFB6002C */ sw $s6, 0x2c($sp) -/* 00BB0C 8000AF0C AFB50028 */ sw $s5, 0x28($sp) -/* 00BB10 8000AF10 AFB40024 */ sw $s4, 0x24($sp) -/* 00BB14 8000AF14 AFB30020 */ sw $s3, 0x20($sp) -/* 00BB18 8000AF18 AFB2001C */ sw $s2, 0x1c($sp) -/* 00BB1C 8000AF1C AFB10018 */ sw $s1, 0x18($sp) -/* 00BB20 8000AF20 AFB00014 */ sw $s0, 0x14($sp) -/* 00BB24 8000AF24 8C900050 */ lw $s0, 0x50($a0) -/* 00BB28 8000AF28 00A09025 */ move $s2, $a1 -/* 00BB2C 8000AF2C 1200002D */ beqz $s0, .L8000AFE4 -/* 00BB30 8000AF30 0080A825 */ move $s5, $a0 -/* 00BB34 8000AF34 24170017 */ li $s7, 23 -/* 00BB38 8000AF38 24160016 */ li $s6, 22 -.L8000AF3C: -/* 00BB3C 8000AF3C 8613000C */ lh $s3, 0xc($s0) -/* 00BB40 8000AF40 8E110000 */ lw $s1, ($s0) -/* 00BB44 8000AF44 12760003 */ beq $s3, $s6, .L8000AF54 -/* 00BB48 8000AF48 00000000 */ nop -/* 00BB4C 8000AF4C 16770023 */ bne $s3, $s7, .L8000AFDC -/* 00BB50 8000AF50 00000000 */ nop -.L8000AF54: -/* 00BB54 8000AF54 8E0E0010 */ lw $t6, 0x10($s0) -/* 00BB58 8000AF58 00000000 */ nop -/* 00BB5C 8000AF5C 164E001F */ bne $s2, $t6, .L8000AFDC -/* 00BB60 8000AF60 00000000 */ nop -/* 00BB64 8000AF64 8EB9007C */ lw $t9, 0x7c($s5) -/* 00BB68 8000AF68 8E040014 */ lw $a0, 0x14($s0) -/* 00BB6C 8000AF6C 0320F809 */ jalr $t9 -/* 00BB70 8000AF70 26B40048 */ addiu $s4, $s5, 0x48 -/* 00BB74 8000AF74 0C0321D8 */ jal func_800C8760 -/* 00BB78 8000AF78 02002025 */ move $a0, $s0 -/* 00BB7C 8000AF7C 12200006 */ beqz $s1, .L8000AF98 -/* 00BB80 8000AF80 02002025 */ move $a0, $s0 -/* 00BB84 8000AF84 8E2F0008 */ lw $t7, 8($s1) -/* 00BB88 8000AF88 8E180008 */ lw $t8, 8($s0) -/* 00BB8C 8000AF8C 00000000 */ nop -/* 00BB90 8000AF90 01F84021 */ addu $t0, $t7, $t8 -/* 00BB94 8000AF94 AE280008 */ sw $t0, 8($s1) -.L8000AF98: -/* 00BB98 8000AF98 0C0321E4 */ jal func_800C8790 -/* 00BB9C 8000AF9C 02802825 */ move $a1, $s4 -/* 00BBA0 8000AFA0 16760006 */ bne $s3, $s6, .L8000AFBC -/* 00BBA4 8000AFA4 00000000 */ nop -/* 00BBA8 8000AFA8 92490037 */ lbu $t1, 0x37($s2) -/* 00BBAC 8000AFAC 00000000 */ nop -/* 00BBB0 8000AFB0 312A00FE */ andi $t2, $t1, 0xfe -/* 00BBB4 8000AFB4 10000005 */ b .L8000AFCC -/* 00BBB8 8000AFB8 A24A0037 */ sb $t2, 0x37($s2) -.L8000AFBC: -/* 00BBBC 8000AFBC 924B0037 */ lbu $t3, 0x37($s2) -/* 00BBC0 8000AFC0 00000000 */ nop -/* 00BBC4 8000AFC4 316C00FD */ andi $t4, $t3, 0xfd -/* 00BBC8 8000AFC8 A24C0037 */ sb $t4, 0x37($s2) -.L8000AFCC: -/* 00BBCC 8000AFCC 924D0037 */ lbu $t5, 0x37($s2) -/* 00BBD0 8000AFD0 00000000 */ nop -/* 00BBD4 8000AFD4 11A00004 */ beqz $t5, .L8000AFE8 -/* 00BBD8 8000AFD8 8FBF0034 */ lw $ra, 0x34($sp) -.L8000AFDC: -/* 00BBDC 8000AFDC 1620FFD7 */ bnez $s1, .L8000AF3C -/* 00BBE0 8000AFE0 02208025 */ move $s0, $s1 -.L8000AFE4: -/* 00BBE4 8000AFE4 8FBF0034 */ lw $ra, 0x34($sp) -.L8000AFE8: -/* 00BBE8 8000AFE8 8FB00014 */ lw $s0, 0x14($sp) -/* 00BBEC 8000AFEC 8FB10018 */ lw $s1, 0x18($sp) -/* 00BBF0 8000AFF0 8FB2001C */ lw $s2, 0x1c($sp) -/* 00BBF4 8000AFF4 8FB30020 */ lw $s3, 0x20($sp) -/* 00BBF8 8000AFF8 8FB40024 */ lw $s4, 0x24($sp) -/* 00BBFC 8000AFFC 8FB50028 */ lw $s5, 0x28($sp) -/* 00BC00 8000B000 8FB6002C */ lw $s6, 0x2c($sp) -/* 00BC04 8000B004 8FB70030 */ lw $s7, 0x30($sp) -/* 00BC08 8000B008 03E00008 */ jr $ra -/* 00BC0C 8000B00C 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_8000B010 -/* 00BC10 8000B010 AFA50004 */ sw $a1, 4($sp) -/* 00BC14 8000B014 03E00008 */ jr $ra -/* 00BC18 8000B018 A0850070 */ sb $a1, 0x70($a0) - -/* 00BC1C 8000B01C 00000000 */ nop -glabel func_8000B020 -/* 00BC20 8000B020 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 00BC24 8000B024 AFB10020 */ sw $s1, 0x20($sp) -/* 00BC28 8000B028 00048880 */ sll $s1, $a0, 2 -/* 00BC2C 8000B02C AFB30028 */ sw $s3, 0x28($sp) -/* 00BC30 8000B030 AFB0001C */ sw $s0, 0x1c($sp) -/* 00BC34 8000B034 02248821 */ addu $s1, $s1, $a0 -/* 00BC38 8000B038 00809825 */ move $s3, $a0 -/* 00BC3C 8000B03C 00118840 */ sll $s1, $s1, 1 -/* 00BC40 8000B040 00058100 */ sll $s0, $a1, 4 -/* 00BC44 8000B044 AFB20024 */ sw $s2, 0x24($sp) -/* 00BC48 8000B048 02112021 */ addu $a0, $s0, $s1 -/* 00BC4C 8000B04C 00A09025 */ move $s2, $a1 -/* 00BC50 8000B050 AFBF003C */ sw $ra, 0x3c($sp) -/* 00BC54 8000B054 00047040 */ sll $t6, $a0, 1 -/* 00BC58 8000B058 AFB70038 */ sw $s7, 0x38($sp) -/* 00BC5C 8000B05C AFB60034 */ sw $s6, 0x34($sp) -/* 00BC60 8000B060 AFB50030 */ sw $s5, 0x30($sp) -/* 00BC64 8000B064 AFB4002C */ sw $s4, 0x2c($sp) -/* 00BC68 8000B068 E7B50010 */ swc1 $f21, 0x10($sp) -/* 00BC6C 8000B06C E7B40014 */ swc1 $f20, 0x14($sp) -/* 00BC70 8000B070 01C02025 */ move $a0, $t6 -/* 00BC74 8000B074 0C01C327 */ jal func_80070C9C -/* 00BC78 8000B078 3405FFFF */ li $a1, 65535 -/* 00BC7C 8000B07C 3C03800E */ lui $v1, %hi(D_800DC754) # $v1, 0x800e -/* 00BC80 8000B080 3C05800E */ lui $a1, %hi(D_800DC74C) # $a1, 0x800e -/* 00BC84 8000B084 0050C021 */ addu $t8, $v0, $s0 -/* 00BC88 8000B088 24A5C74C */ addiu $a1, %lo(D_800DC74C) # addiu $a1, $a1, -0x38b4 -/* 00BC8C 8000B08C 2463C754 */ addiu $v1, %lo(D_800DC754) # addiu $v1, $v1, -0x38ac -/* 00BC90 8000B090 03104021 */ addu $t0, $t8, $s0 -/* 00BC94 8000B094 01115021 */ addu $t2, $t0, $s1 -/* 00BC98 8000B098 AC620000 */ sw $v0, ($v1) -/* 00BC9C 8000B09C AC780004 */ sw $t8, 4($v1) -/* 00BCA0 8000B0A0 ACA80000 */ sw $t0, ($a1) -/* 00BCA4 8000B0A4 ACAA0004 */ sw $t2, 4($a1) -/* 00BCA8 8000B0A8 3C018012 */ lui $at, %hi(D_8011AFF8) # $at, 0x8012 -/* 00BCAC 8000B0AC AC33AFF8 */ sw $s3, %lo(D_8011AFF8)($at) -/* 00BCB0 8000B0B0 3C018012 */ lui $at, %hi(D_8011AFFC) # $at, 0x8012 -/* 00BCB4 8000B0B4 AC20AFFC */ sw $zero, %lo(D_8011AFFC)($at) -/* 00BCB8 8000B0B8 3C018012 */ lui $at, %hi(D_8011B000) # $at, 0x8012 -/* 00BCBC 8000B0BC AC32B000 */ sw $s2, %lo(D_8011B000)($at) -/* 00BCC0 8000B0C0 3C018012 */ lui $at, %hi(D_8011B004) # $at, 0x8012 -/* 00BCC4 8000B0C4 AC20B004 */ sw $zero, %lo(D_8011B004)($at) -/* 00BCC8 8000B0C8 3C018012 */ lui $at, %hi(D_8011B008) # $at, 0x8012 -/* 00BCCC 8000B0CC AC20B008 */ sw $zero, %lo(D_8011B008)($at) -/* 00BCD0 8000B0D0 0C0078A7 */ jal func_8001E29C -/* 00BCD4 8000B0D4 24040014 */ li $a0, 20 -/* 00BCD8 8000B0D8 3C118012 */ lui $s1, %hi(D_8011B020) # $s1, 0x8012 -/* 00BCDC 8000B0DC 3C138012 */ lui $s3, %hi(D_8011B068) # $s3, 0x8012 -/* 00BCE0 8000B0E0 4480A000 */ mtc1 $zero, $f20 -/* 00BCE4 8000B0E4 0040A825 */ move $s5, $v0 -/* 00BCE8 8000B0E8 2673B068 */ addiu $s3, %lo(D_8011B068) # addiu $s3, $s3, -0x4f98 -/* 00BCEC 8000B0EC 2631B020 */ addiu $s1, %lo(D_8011B020) # addiu $s1, $s1, -0x4fe0 -/* 00BCF0 8000B0F0 00009025 */ move $s2, $zero -/* 00BCF4 8000B0F4 27B70058 */ addiu $s7, $sp, 0x58 -/* 00BCF8 8000B0F8 24160001 */ li $s6, 1 -.L8000B0FC: -/* 00BCFC 8000B0FC 240B007E */ li $t3, 126 -/* 00BD00 8000B100 240C000A */ li $t4, 10 -/* 00BD04 8000B104 A3AB0058 */ sb $t3, 0x58($sp) -/* 00BD08 8000B108 A3AC0059 */ sb $t4, 0x59($sp) -/* 00BD0C 8000B10C A7A0005A */ sh $zero, 0x5a($sp) -/* 00BD10 8000B110 A7A0005C */ sh $zero, 0x5c($sp) -/* 00BD14 8000B114 A7A0005E */ sh $zero, 0x5e($sp) -/* 00BD18 8000B118 A3B20060 */ sb $s2, 0x60($sp) -/* 00BD1C 8000B11C 02E02025 */ move $a0, $s7 -/* 00BD20 8000B120 0C003A95 */ jal func_8000EA54 -/* 00BD24 8000B124 24050001 */ li $a1, 1 -/* 00BD28 8000B128 1040001B */ beqz $v0, .L8000B198 -/* 00BD2C 8000B12C AE220000 */ sw $v0, ($s1) -/* 00BD30 8000B130 AC400078 */ sw $zero, 0x78($v0) -/* 00BD34 8000B134 8E2E0000 */ lw $t6, ($s1) -/* 00BD38 8000B138 001279C0 */ sll $t7, $s2, 7 -/* 00BD3C 8000B13C 02AF8021 */ addu $s0, $s5, $t7 -/* 00BD40 8000B140 3C188012 */ lui $t8, %hi(D_8011B010) # $t8, 0x8012 -/* 00BD44 8000B144 ADC0007C */ sw $zero, 0x7c($t6) -/* 00BD48 8000B148 8604006C */ lh $a0, 0x6c($s0) -/* 00BD4C 8000B14C 2718B010 */ addiu $t8, %lo(D_8011B010) # addiu $t8, $t8, -0x4ff0 -/* 00BD50 8000B150 A2000070 */ sb $zero, 0x70($s0) -/* 00BD54 8000B154 E6140074 */ swc1 $f20, 0x74($s0) -/* 00BD58 8000B158 0258A021 */ addu $s4, $s2, $t8 -/* 00BD5C 8000B15C 0C01F04B */ jal func_8007C12C -/* 00BD60 8000B160 00002825 */ move $a1, $zero -/* 00BD64 8000B164 8604006E */ lh $a0, 0x6e($s0) -/* 00BD68 8000B168 0C01EB9D */ jal func_8007AE74 -/* 00BD6C 8000B16C AE020078 */ sw $v0, 0x78($s0) -/* 00BD70 8000B170 AE02007C */ sw $v0, 0x7c($s0) -/* 00BD74 8000B174 00002025 */ move $a0, $zero -/* 00BD78 8000B178 0C01BE53 */ jal func_8006F94C -/* 00BD7C 8000B17C 240500FF */ li $a1, 255 -/* 00BD80 8000B180 A2020072 */ sb $v0, 0x72($s0) -/* 00BD84 8000B184 A2000073 */ sb $zero, 0x73($s0) -/* 00BD88 8000B188 00002025 */ move $a0, $zero -/* 00BD8C 8000B18C 0C01BE53 */ jal func_8006F94C -/* 00BD90 8000B190 240500FF */ li $a1, 255 -/* 00BD94 8000B194 A2820000 */ sb $v0, ($s4) -.L8000B198: -/* 00BD98 8000B198 26520001 */ addiu $s2, $s2, 1 -/* 00BD9C 8000B19C 2A41000A */ slti $at, $s2, 0xa -/* 00BDA0 8000B1A0 26310004 */ addiu $s1, $s1, 4 -/* 00BDA4 8000B1A4 26730001 */ addiu $s3, $s3, 1 -/* 00BDA8 8000B1A8 1420FFD4 */ bnez $at, .L8000B0FC -/* 00BDAC 8000B1AC A276FFFF */ sb $s6, -1($s3) -/* 00BDB0 8000B1B0 24190009 */ li $t9, 9 -/* 00BDB4 8000B1B4 3C01800E */ lui $at, %hi(D_800DC760) # $at, 0x800e -/* 00BDB8 8000B1B8 2408008D */ li $t0, 141 -/* 00BDBC 8000B1BC 2409000A */ li $t1, 10 -/* 00BDC0 8000B1C0 AC39C760 */ sw $t9, %lo(D_800DC760)($at) -/* 00BDC4 8000B1C4 A3A80058 */ sb $t0, 0x58($sp) -/* 00BDC8 8000B1C8 A3A90059 */ sb $t1, 0x59($sp) -/* 00BDCC 8000B1CC A7A0005A */ sh $zero, 0x5a($sp) -/* 00BDD0 8000B1D0 A7A0005C */ sh $zero, 0x5c($sp) -/* 00BDD4 8000B1D4 A7A0005E */ sh $zero, 0x5e($sp) -/* 00BDD8 8000B1D8 02E02025 */ move $a0, $s7 -/* 00BDDC 8000B1DC 0C003A95 */ jal func_8000EA54 -/* 00BDE0 8000B1E0 00002825 */ move $a1, $zero -/* 00BDE4 8000B1E4 3C01800E */ lui $at, %hi(D_800DC75C) # $at, 0x800e -/* 00BDE8 8000B1E8 3C108012 */ lui $s0, %hi(D_8011B078) # $s0, 0x8012 -/* 00BDEC 8000B1EC 3C118012 */ lui $s1, %hi(D_8011B0A0) # $s1, 0x8012 -/* 00BDF0 8000B1F0 AC22C75C */ sw $v0, %lo(D_800DC75C)($at) -/* 00BDF4 8000B1F4 2631B0A0 */ addiu $s1, %lo(D_8011B0A0) # addiu $s1, $s1, -0x4f60 -/* 00BDF8 8000B1F8 2610B078 */ addiu $s0, %lo(D_8011B078) # addiu $s0, $s0, -0x4f88 -.L8000B1FC: -/* 00BDFC 8000B1FC A2000000 */ sb $zero, ($s0) -/* 00BE00 8000B200 00002025 */ move $a0, $zero -/* 00BE04 8000B204 0C01BE53 */ jal func_8006F94C -/* 00BE08 8000B208 240500FF */ li $a1, 255 -/* 00BE0C 8000B20C A2020001 */ sb $v0, 1($s0) -/* 00BE10 8000B210 00002025 */ move $a0, $zero -/* 00BE14 8000B214 0C01BE53 */ jal func_8006F94C -/* 00BE18 8000B218 240500FF */ li $a1, 255 -/* 00BE1C 8000B21C 26100004 */ addiu $s0, $s0, 4 -/* 00BE20 8000B220 A202FFFE */ sb $v0, -2($s0) -/* 00BE24 8000B224 1611FFF5 */ bne $s0, $s1, .L8000B1FC -/* 00BE28 8000B228 A200FFFF */ sb $zero, -1($s0) -/* 00BE2C 8000B22C 240A001B */ li $t2, 27 -/* 00BE30 8000B230 240B008A */ li $t3, 138 -/* 00BE34 8000B234 A3AA0058 */ sb $t2, 0x58($sp) -/* 00BE38 8000B238 A3AB0059 */ sb $t3, 0x59($sp) -/* 00BE3C 8000B23C A7A0005A */ sh $zero, 0x5a($sp) -/* 00BE40 8000B240 A7A0005C */ sh $zero, 0x5c($sp) -/* 00BE44 8000B244 A7A0005E */ sh $zero, 0x5e($sp) -/* 00BE48 8000B248 02E02025 */ move $a0, $s7 -/* 00BE4C 8000B24C 0C003A95 */ jal func_8000EA54 -/* 00BE50 8000B250 00002825 */ move $a1, $zero -/* 00BE54 8000B254 8FBF003C */ lw $ra, 0x3c($sp) -/* 00BE58 8000B258 3C01800E */ lui $at, %hi(D_800DC764) # $at, 0x800e -/* 00BE5C 8000B25C C7B50010 */ lwc1 $f21, 0x10($sp) -/* 00BE60 8000B260 C7B40014 */ lwc1 $f20, 0x14($sp) -/* 00BE64 8000B264 8FB0001C */ lw $s0, 0x1c($sp) -/* 00BE68 8000B268 8FB10020 */ lw $s1, 0x20($sp) -/* 00BE6C 8000B26C 8FB20024 */ lw $s2, 0x24($sp) -/* 00BE70 8000B270 8FB30028 */ lw $s3, 0x28($sp) -/* 00BE74 8000B274 8FB4002C */ lw $s4, 0x2c($sp) -/* 00BE78 8000B278 8FB50030 */ lw $s5, 0x30($sp) -/* 00BE7C 8000B27C 8FB60034 */ lw $s6, 0x34($sp) -/* 00BE80 8000B280 8FB70038 */ lw $s7, 0x38($sp) -/* 00BE84 8000B284 AC22C764 */ sw $v0, %lo(D_800DC764)($at) -/* 00BE88 8000B288 03E00008 */ jr $ra -/* 00BE8C 8000B28C 27BD0068 */ addiu $sp, $sp, 0x68 - -glabel func_8000B290 -/* 00BE90 8000B290 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 00BE94 8000B294 AFB00018 */ sw $s0, 0x18($sp) -/* 00BE98 8000B298 3C10800E */ lui $s0, %hi(D_800DC754) # $s0, 0x800e -/* 00BE9C 8000B29C 2610C754 */ addiu $s0, %lo(D_800DC754) # addiu $s0, $s0, -0x38ac -/* 00BEA0 8000B2A0 8E040000 */ lw $a0, ($s0) -/* 00BEA4 8000B2A4 AFBF0024 */ sw $ra, 0x24($sp) -/* 00BEA8 8000B2A8 AFB20020 */ sw $s2, 0x20($sp) -/* 00BEAC 8000B2AC 10800009 */ beqz $a0, .L8000B2D4 -/* 00BEB0 8000B2B0 AFB1001C */ sw $s1, 0x1c($sp) -/* 00BEB4 8000B2B4 0C01C450 */ jal func_80071140 -/* 00BEB8 8000B2B8 00000000 */ nop -/* 00BEBC 8000B2BC 3C02800E */ lui $v0, %hi(D_800DC74C) # $v0, 0x800e -/* 00BEC0 8000B2C0 2442C74C */ addiu $v0, %lo(D_800DC74C) # addiu $v0, $v0, -0x38b4 -/* 00BEC4 8000B2C4 AE000000 */ sw $zero, ($s0) -/* 00BEC8 8000B2C8 AE000004 */ sw $zero, 4($s0) -/* 00BECC 8000B2CC AC400000 */ sw $zero, ($v0) -/* 00BED0 8000B2D0 AC400004 */ sw $zero, 4($v0) -.L8000B2D4: -/* 00BED4 8000B2D4 0C0078A7 */ jal func_8001E29C -/* 00BED8 8000B2D8 24040014 */ li $a0, 20 -/* 00BEDC 8000B2DC 00008825 */ move $s1, $zero -/* 00BEE0 8000B2E0 00408025 */ move $s0, $v0 -/* 00BEE4 8000B2E4 24120500 */ li $s2, 1280 -.L8000B2E8: -/* 00BEE8 8000B2E8 8E040078 */ lw $a0, 0x78($s0) -/* 00BEEC 8000B2EC 00000000 */ nop -/* 00BEF0 8000B2F0 10800004 */ beqz $a0, .L8000B304 -/* 00BEF4 8000B2F4 00000000 */ nop -/* 00BEF8 8000B2F8 0C01F32C */ jal func_8007CCB0 -/* 00BEFC 8000B2FC 00000000 */ nop -/* 00BF00 8000B300 AE000078 */ sw $zero, 0x78($s0) -.L8000B304: -/* 00BF04 8000B304 8E04007C */ lw $a0, 0x7c($s0) -/* 00BF08 8000B308 00000000 */ nop -/* 00BF0C 8000B30C 10800004 */ beqz $a0, .L8000B320 -/* 00BF10 8000B310 00000000 */ nop -/* 00BF14 8000B314 0C01ECAF */ jal func_8007B2BC -/* 00BF18 8000B318 00000000 */ nop -/* 00BF1C 8000B31C AE00007C */ sw $zero, 0x7c($s0) -.L8000B320: -/* 00BF20 8000B320 26310080 */ addiu $s1, $s1, 0x80 -/* 00BF24 8000B324 1632FFF0 */ bne $s1, $s2, .L8000B2E8 -/* 00BF28 8000B328 26100080 */ addiu $s0, $s0, 0x80 -/* 00BF2C 8000B32C 3C10800E */ lui $s0, %hi(D_800DC75C) # $s0, 0x800e -/* 00BF30 8000B330 2610C75C */ addiu $s0, %lo(D_800DC75C) # addiu $s0, $s0, -0x38a4 -/* 00BF34 8000B334 8E040000 */ lw $a0, ($s0) -/* 00BF38 8000B338 00000000 */ nop -/* 00BF3C 8000B33C 10800003 */ beqz $a0, .L8000B34C -/* 00BF40 8000B340 00000000 */ nop -/* 00BF44 8000B344 0C003FEE */ jal func_8000FFB8 -/* 00BF48 8000B348 00000000 */ nop -.L8000B34C: -/* 00BF4C 8000B34C 3C11800E */ lui $s1, %hi(D_800DC764) # $s1, 0x800e -/* 00BF50 8000B350 2631C764 */ addiu $s1, %lo(D_800DC764) # addiu $s1, $s1, -0x389c -/* 00BF54 8000B354 8E240000 */ lw $a0, ($s1) -/* 00BF58 8000B358 AE000000 */ sw $zero, ($s0) -/* 00BF5C 8000B35C 10800003 */ beqz $a0, .L8000B36C -/* 00BF60 8000B360 00000000 */ nop -/* 00BF64 8000B364 0C003FEE */ jal func_8000FFB8 -/* 00BF68 8000B368 00000000 */ nop -.L8000B36C: -/* 00BF6C 8000B36C 0C004013 */ jal func_8001004C -/* 00BF70 8000B370 AE200000 */ sw $zero, ($s1) -/* 00BF74 8000B374 8FBF0024 */ lw $ra, 0x24($sp) -/* 00BF78 8000B378 8FB00018 */ lw $s0, 0x18($sp) -/* 00BF7C 8000B37C 8FB1001C */ lw $s1, 0x1c($sp) -/* 00BF80 8000B380 8FB20020 */ lw $s2, 0x20($sp) -/* 00BF84 8000B384 03E00008 */ jr $ra -/* 00BF88 8000B388 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8000B38C -/* 00BF8C 8000B38C 27BDFF60 */ addiu $sp, $sp, -0xa0 -/* 00BF90 8000B390 C7A400B0 */ lwc1 $f4, 0xb0($sp) -/* 00BF94 8000B394 AFB60040 */ sw $s6, 0x40($sp) -/* 00BF98 8000B398 AFB5003C */ sw $s5, 0x3c($sp) -/* 00BF9C 8000B39C E7B4001C */ swc1 $f20, 0x1c($sp) -/* 00BFA0 8000B3A0 4487A000 */ mtc1 $a3, $f20 -/* 00BFA4 8000B3A4 27B50064 */ addiu $s5, $sp, 0x64 -/* 00BFA8 8000B3A8 0080B025 */ move $s6, $a0 -/* 00BFAC 8000B3AC AFBF0044 */ sw $ra, 0x44($sp) -/* 00BFB0 8000B3B0 AFB30034 */ sw $s3, 0x34($sp) -/* 00BFB4 8000B3B4 AFA500A4 */ sw $a1, 0xa4($sp) -/* 00BFB8 8000B3B8 46002187 */ neg.s $f6, $f4 -/* 00BFBC 8000B3BC 00C09825 */ move $s3, $a2 -/* 00BFC0 8000B3C0 AFB40038 */ sw $s4, 0x38($sp) -/* 00BFC4 8000B3C4 AFB20030 */ sw $s2, 0x30($sp) -/* 00BFC8 8000B3C8 AFB1002C */ sw $s1, 0x2c($sp) -/* 00BFCC 8000B3CC AFB00028 */ sw $s0, 0x28($sp) -/* 00BFD0 8000B3D0 E7B70020 */ swc1 $f23, 0x20($sp) -/* 00BFD4 8000B3D4 E7B60024 */ swc1 $f22, 0x24($sp) -/* 00BFD8 8000B3D8 E7B50018 */ swc1 $f21, 0x18($sp) -/* 00BFDC 8000B3DC E7A6006C */ swc1 $f6, 0x6c($sp) -/* 00BFE0 8000B3E0 02A02825 */ move $a1, $s5 -/* 00BFE4 8000B3E4 0C01C124 */ jal func_80070490 -/* 00BFE8 8000B3E8 00C02025 */ move $a0, $a2 -/* 00BFEC 8000B3EC C7A80064 */ lwc1 $f8, 0x64($sp) -/* 00BFF0 8000B3F0 C66A000C */ lwc1 $f10, 0xc($s3) -/* 00BFF4 8000B3F4 02C08025 */ move $s0, $s6 -/* 00BFF8 8000B3F8 460A4400 */ add.s $f16, $f8, $f10 -/* 00BFFC 8000B3FC 2414FFFF */ li $s4, -1 -/* 00C000 8000B400 444EF800 */ cfc1 $t6, $31 -/* 00C004 8000B404 3C12800E */ lui $s2, %hi(D_800DC768) # $s2, 0x800e -/* 00C008 8000B408 35C10003 */ ori $at, $t6, 3 -/* 00C00C 8000B40C 38210002 */ xori $at, $at, 2 -/* 00C010 8000B410 44C1F800 */ ctc1 $at, $31 -/* 00C014 8000B414 4480B000 */ mtc1 $zero, $f22 -/* 00C018 8000B418 460084A4 */ cvt.w.s $f18, $f16 -/* 00C01C 8000B41C 2610000A */ addiu $s0, $s0, 0xa -/* 00C020 8000B420 440F9000 */ mfc1 $t7, $f18 -/* 00C024 8000B424 44CEF800 */ ctc1 $t6, $31 -/* 00C028 8000B428 A6CF0000 */ sh $t7, ($s6) -/* 00C02C 8000B42C C6660010 */ lwc1 $f6, 0x10($s3) -/* 00C030 8000B430 C7A40068 */ lwc1 $f4, 0x68($sp) -/* 00C034 8000B434 2652C768 */ addiu $s2, %lo(D_800DC768) # addiu $s2, $s2, -0x3898 -/* 00C038 8000B438 46062200 */ add.s $f8, $f4, $f6 -/* 00C03C 8000B43C 00008825 */ move $s1, $zero -/* 00C040 8000B440 4458F800 */ cfc1 $t8, $31 -/* 00C044 8000B444 00000000 */ nop -/* 00C048 8000B448 37010003 */ ori $at, $t8, 3 -/* 00C04C 8000B44C 38210002 */ xori $at, $at, 2 -/* 00C050 8000B450 44C1F800 */ ctc1 $at, $31 -/* 00C054 8000B454 35C10003 */ ori $at, $t6, 3 -/* 00C058 8000B458 460042A4 */ cvt.w.s $f10, $f8 -/* 00C05C 8000B45C 38210002 */ xori $at, $at, 2 -/* 00C060 8000B460 44195000 */ mfc1 $t9, $f10 -/* 00C064 8000B464 44D8F800 */ ctc1 $t8, $31 -/* 00C068 8000B468 A619FFF8 */ sh $t9, -8($s0) -/* 00C06C 8000B46C C6720014 */ lwc1 $f18, 0x14($s3) -/* 00C070 8000B470 C7B0006C */ lwc1 $f16, 0x6c($sp) -/* 00C074 8000B474 A614FFFC */ sh $s4, -4($s0) -/* 00C078 8000B478 46128100 */ add.s $f4, $f16, $f18 -/* 00C07C 8000B47C A614FFFE */ sh $s4, -2($s0) -/* 00C080 8000B480 44C1F800 */ ctc1 $at, $31 -/* 00C084 8000B484 00000000 */ nop -/* 00C088 8000B488 460021A4 */ cvt.w.s $f6, $f4 -/* 00C08C 8000B48C 440F3000 */ mfc1 $t7, $f6 -/* 00C090 8000B490 44CEF800 */ ctc1 $t6, $31 -/* 00C094 8000B494 A60FFFFA */ sh $t7, -6($s0) -/* 00C098 8000B498 00000000 */ nop -.L8000B49C: -/* 00C09C 8000B49C C6480000 */ lwc1 $f8, ($s2) -/* 00C0A0 8000B4A0 26520008 */ addiu $s2, $s2, 8 -/* 00C0A4 8000B4A4 46144282 */ mul.s $f10, $f8, $f20 -/* 00C0A8 8000B4A8 02602025 */ move $a0, $s3 -/* 00C0AC 8000B4AC 02A02825 */ move $a1, $s5 -/* 00C0B0 8000B4B0 E7AA0064 */ swc1 $f10, 0x64($sp) -/* 00C0B4 8000B4B4 C650FFFC */ lwc1 $f16, -4($s2) -/* 00C0B8 8000B4B8 E7B6006C */ swc1 $f22, 0x6c($sp) -/* 00C0BC 8000B4BC 46148482 */ mul.s $f18, $f16, $f20 -/* 00C0C0 8000B4C0 0C01C0C8 */ jal func_80070320 -/* 00C0C4 8000B4C4 E7B20068 */ swc1 $f18, 0x68($sp) -/* 00C0C8 8000B4C8 C7A40064 */ lwc1 $f4, 0x64($sp) -/* 00C0CC 8000B4CC C666000C */ lwc1 $f6, 0xc($s3) -/* 00C0D0 8000B4D0 26310001 */ addiu $s1, $s1, 1 -/* 00C0D4 8000B4D4 46062200 */ add.s $f8, $f4, $f6 -/* 00C0D8 8000B4D8 2610000A */ addiu $s0, $s0, 0xa -/* 00C0DC 8000B4DC 4458F800 */ cfc1 $t8, $31 -/* 00C0E0 8000B4E0 00000000 */ nop -/* 00C0E4 8000B4E4 37010003 */ ori $at, $t8, 3 -/* 00C0E8 8000B4E8 38210002 */ xori $at, $at, 2 -/* 00C0EC 8000B4EC 44C1F800 */ ctc1 $at, $31 -/* 00C0F0 8000B4F0 00000000 */ nop -/* 00C0F4 8000B4F4 460042A4 */ cvt.w.s $f10, $f8 -/* 00C0F8 8000B4F8 44195000 */ mfc1 $t9, $f10 -/* 00C0FC 8000B4FC 44D8F800 */ ctc1 $t8, $31 -/* 00C100 8000B500 A619FFF6 */ sh $t9, -0xa($s0) -/* 00C104 8000B504 C6720010 */ lwc1 $f18, 0x10($s3) -/* 00C108 8000B508 C7B00068 */ lwc1 $f16, 0x68($sp) -/* 00C10C 8000B50C 00000000 */ nop -/* 00C110 8000B510 46128100 */ add.s $f4, $f16, $f18 -/* 00C114 8000B514 444EF800 */ cfc1 $t6, $31 -/* 00C118 8000B518 00000000 */ nop -/* 00C11C 8000B51C 35C10003 */ ori $at, $t6, 3 -/* 00C120 8000B520 38210002 */ xori $at, $at, 2 -/* 00C124 8000B524 44C1F800 */ ctc1 $at, $31 -/* 00C128 8000B528 37010003 */ ori $at, $t8, 3 -/* 00C12C 8000B52C 460021A4 */ cvt.w.s $f6, $f4 -/* 00C130 8000B530 38210002 */ xori $at, $at, 2 -/* 00C134 8000B534 440F3000 */ mfc1 $t7, $f6 -/* 00C138 8000B538 44CEF800 */ ctc1 $t6, $31 -/* 00C13C 8000B53C A60FFFF8 */ sh $t7, -8($s0) -/* 00C140 8000B540 C66A0014 */ lwc1 $f10, 0x14($s3) -/* 00C144 8000B544 C7A8006C */ lwc1 $f8, 0x6c($sp) -/* 00C148 8000B548 A614FFFC */ sh $s4, -4($s0) -/* 00C14C 8000B54C 460A4400 */ add.s $f16, $f8, $f10 -/* 00C150 8000B550 A614FFFE */ sh $s4, -2($s0) -/* 00C154 8000B554 44C1F800 */ ctc1 $at, $31 -/* 00C158 8000B558 2A210008 */ slti $at, $s1, 8 -/* 00C15C 8000B55C 460084A4 */ cvt.w.s $f18, $f16 -/* 00C160 8000B560 44199000 */ mfc1 $t9, $f18 -/* 00C164 8000B564 44D8F800 */ ctc1 $t8, $31 -/* 00C168 8000B568 1420FFCC */ bnez $at, .L8000B49C -/* 00C16C 8000B56C A619FFFA */ sh $t9, -6($s0) -/* 00C170 8000B570 8FA200B8 */ lw $v0, 0xb8($sp) -/* 00C174 8000B574 87B100B6 */ lh $s1, 0xb6($sp) -/* 00C178 8000B578 90560001 */ lbu $s6, 1($v0) -/* 00C17C 8000B57C 90520000 */ lbu $s2, ($v0) -/* 00C180 8000B580 26D6FFFF */ addiu $s6, $s6, -1 -/* 00C184 8000B584 00167900 */ sll $t7, $s6, 4 -/* 00C188 8000B588 2652FFFF */ addiu $s2, $s2, -1 -/* 00C18C 8000B58C 00127100 */ sll $t6, $s2, 4 -/* 00C190 8000B590 01C09025 */ move $s2, $t6 -/* 00C194 8000B594 01E0B025 */ move $s6, $t7 -/* 00C198 8000B598 000F9C00 */ sll $s3, $t7, 0x10 -/* 00C19C 8000B59C 27B00080 */ addiu $s0, $sp, 0x80 -/* 00C1A0 8000B5A0 27B500A0 */ addiu $s5, $sp, 0xa0 -/* 00C1A4 8000B5A4 3C14FFFF */ lui $s4, 0xffff -.L8000B5A8: -/* 00C1A8 8000B5A8 00112400 */ sll $a0, $s1, 0x10 -/* 00C1AC 8000B5AC 0004C403 */ sra $t8, $a0, 0x10 -/* 00C1B0 8000B5B0 0C01C20C */ jal func_80070830 -/* 00C1B4 8000B5B4 03002025 */ move $a0, $t8 -/* 00C1B8 8000B5B8 00520019 */ multu $v0, $s2 -/* 00C1BC 8000B5BC 00112400 */ sll $a0, $s1, 0x10 -/* 00C1C0 8000B5C0 0004C403 */ sra $t8, $a0, 0x10 -/* 00C1C4 8000B5C4 03002025 */ move $a0, $t8 -/* 00C1C8 8000B5C8 0000C812 */ mflo $t9 -/* 00C1CC 8000B5CC 00197403 */ sra $t6, $t9, 0x10 -/* 00C1D0 8000B5D0 01D27821 */ addu $t7, $t6, $s2 -/* 00C1D4 8000B5D4 0C01C20B */ jal func_8007082C -/* 00C1D8 8000B5D8 AE0F0000 */ sw $t7, ($s0) -/* 00C1DC 8000B5DC 02C20019 */ multu $s6, $v0 -/* 00C1E0 8000B5E0 8E190000 */ lw $t9, ($s0) -/* 00C1E4 8000B5E4 26312000 */ addiu $s1, $s1, 0x2000 -/* 00C1E8 8000B5E8 26100004 */ addiu $s0, $s0, 4 -/* 00C1EC 8000B5EC 0215082B */ sltu $at, $s0, $s5 -/* 00C1F0 8000B5F0 00007012 */ mflo $t6 -/* 00C1F4 8000B5F4 026E7821 */ addu $t7, $s3, $t6 -/* 00C1F8 8000B5F8 01F4C024 */ and $t8, $t7, $s4 -/* 00C1FC 8000B5FC 00117C00 */ sll $t7, $s1, 0x10 -/* 00C200 8000B600 03387025 */ or $t6, $t9, $t8 -/* 00C204 8000B604 000FCC03 */ sra $t9, $t7, 0x10 -/* 00C208 8000B608 AE0EFFFC */ sw $t6, -4($s0) -/* 00C20C 8000B60C 1420FFE6 */ bnez $at, .L8000B5A8 -/* 00C210 8000B610 03208825 */ move $s1, $t9 -/* 00C214 8000B614 00127400 */ sll $t6, $s2, 0x10 -/* 00C218 8000B618 32CFFFFF */ andi $t7, $s6, 0xffff -/* 00C21C 8000B61C 8FA200A4 */ lw $v0, 0xa4($sp) -/* 00C220 8000B620 A7B900B6 */ sh $t9, 0xb6($sp) -/* 00C224 8000B624 01CF6025 */ or $t4, $t6, $t7 -/* 00C228 8000B628 00008825 */ move $s1, $zero -/* 00C22C 8000B62C 27B00080 */ addiu $s0, $sp, 0x80 -/* 00C230 8000B630 240D0008 */ li $t5, 8 -/* 00C234 8000B634 27A40080 */ addiu $a0, $sp, 0x80 -.L8000B638: -/* 00C238 8000B638 26250001 */ addiu $a1, $s1, 1 -/* 00C23C 8000B63C 30A60007 */ andi $a2, $a1, 7 -/* 00C240 8000B640 24D80001 */ addiu $t8, $a2, 1 -/* 00C244 8000B644 0005CA00 */ sll $t9, $a1, 8 -/* 00C248 8000B648 03387025 */ or $t6, $t9, $t8 -/* 00C24C 8000B64C AC4E0000 */ sw $t6, ($v0) -/* 00C250 8000B650 AC4C0004 */ sw $t4, 4($v0) -/* 00C254 8000B654 8E0F0000 */ lw $t7, ($s0) -/* 00C258 8000B658 0006C880 */ sll $t9, $a2, 2 -/* 00C25C 8000B65C 0099C021 */ addu $t8, $a0, $t9 -/* 00C260 8000B660 AC4F0008 */ sw $t7, 8($v0) -/* 00C264 8000B664 8F0E0000 */ lw $t6, ($t8) -/* 00C268 8000B668 26270002 */ addiu $a3, $s1, 2 -/* 00C26C 8000B66C 30E80007 */ andi $t0, $a3, 7 -/* 00C270 8000B670 25190001 */ addiu $t9, $t0, 1 -/* 00C274 8000B674 00077A00 */ sll $t7, $a3, 8 -/* 00C278 8000B678 01F9C025 */ or $t8, $t7, $t9 -/* 00C27C 8000B67C AC580010 */ sw $t8, 0x10($v0) -/* 00C280 8000B680 AC4C0014 */ sw $t4, 0x14($v0) -/* 00C284 8000B684 AC4E000C */ sw $t6, 0xc($v0) -/* 00C288 8000B688 8E0E0004 */ lw $t6, 4($s0) -/* 00C28C 8000B68C 00087880 */ sll $t7, $t0, 2 -/* 00C290 8000B690 008FC821 */ addu $t9, $a0, $t7 -/* 00C294 8000B694 AC4E0018 */ sw $t6, 0x18($v0) -/* 00C298 8000B698 8F380000 */ lw $t8, ($t9) -/* 00C29C 8000B69C 26290003 */ addiu $t1, $s1, 3 -/* 00C2A0 8000B6A0 312A0007 */ andi $t2, $t1, 7 -/* 00C2A4 8000B6A4 254F0001 */ addiu $t7, $t2, 1 -/* 00C2A8 8000B6A8 00097200 */ sll $t6, $t1, 8 -/* 00C2AC 8000B6AC 01CFC825 */ or $t9, $t6, $t7 -/* 00C2B0 8000B6B0 AC590020 */ sw $t9, 0x20($v0) -/* 00C2B4 8000B6B4 AC4C0024 */ sw $t4, 0x24($v0) -/* 00C2B8 8000B6B8 AC58001C */ sw $t8, 0x1c($v0) -/* 00C2BC 8000B6BC 8E180008 */ lw $t8, 8($s0) -/* 00C2C0 8000B6C0 000A7080 */ sll $t6, $t2, 2 -/* 00C2C4 8000B6C4 008E7821 */ addu $t7, $a0, $t6 -/* 00C2C8 8000B6C8 AC580028 */ sw $t8, 0x28($v0) -/* 00C2CC 8000B6CC 8DF90000 */ lw $t9, ($t7) -/* 00C2D0 8000B6D0 26230004 */ addiu $v1, $s1, 4 -/* 00C2D4 8000B6D4 306B0007 */ andi $t3, $v1, 7 -/* 00C2D8 8000B6D8 256E0001 */ addiu $t6, $t3, 1 -/* 00C2DC 8000B6DC 0003C200 */ sll $t8, $v1, 8 -/* 00C2E0 8000B6E0 030E7825 */ or $t7, $t8, $t6 -/* 00C2E4 8000B6E4 AC4F0030 */ sw $t7, 0x30($v0) -/* 00C2E8 8000B6E8 AC4C0034 */ sw $t4, 0x34($v0) -/* 00C2EC 8000B6EC AC59002C */ sw $t9, 0x2c($v0) -/* 00C2F0 8000B6F0 8E19000C */ lw $t9, 0xc($s0) -/* 00C2F4 8000B6F4 000BC080 */ sll $t8, $t3, 2 -/* 00C2F8 8000B6F8 00987021 */ addu $t6, $a0, $t8 -/* 00C2FC 8000B6FC AC590038 */ sw $t9, 0x38($v0) -/* 00C300 8000B700 8DCF0000 */ lw $t7, ($t6) -/* 00C304 8000B704 00608825 */ move $s1, $v1 -/* 00C308 8000B708 24420040 */ addiu $v0, $v0, 0x40 -/* 00C30C 8000B70C 26100010 */ addiu $s0, $s0, 0x10 -/* 00C310 8000B710 146DFFC9 */ bne $v1, $t5, .L8000B638 -/* 00C314 8000B714 AC4FFFFC */ sw $t7, -4($v0) -/* 00C318 8000B718 8FBF0044 */ lw $ra, 0x44($sp) -/* 00C31C 8000B71C C7B50018 */ lwc1 $f21, 0x18($sp) -/* 00C320 8000B720 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 00C324 8000B724 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 00C328 8000B728 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 00C32C 8000B72C 8FB00028 */ lw $s0, 0x28($sp) -/* 00C330 8000B730 8FB1002C */ lw $s1, 0x2c($sp) -/* 00C334 8000B734 8FB20030 */ lw $s2, 0x30($sp) -/* 00C338 8000B738 8FB30034 */ lw $s3, 0x34($sp) -/* 00C33C 8000B73C 8FB40038 */ lw $s4, 0x38($sp) -/* 00C340 8000B740 8FB5003C */ lw $s5, 0x3c($sp) -/* 00C344 8000B744 8FB60040 */ lw $s6, 0x40($sp) -/* 00C348 8000B748 03E00008 */ jr $ra -/* 00C34C 8000B74C 27BD00A0 */ addiu $sp, $sp, 0xa0 - -glabel func_8000B750 -/* 00C350 8000B750 27BDFF80 */ addiu $sp, $sp, -0x80 -/* 00C354 8000B754 AFB00028 */ sw $s0, 0x28($sp) -/* 00C358 8000B758 2401FFFF */ li $at, -1 -/* 00C35C 8000B75C 00A08025 */ move $s0, $a1 -/* 00C360 8000B760 AFBF002C */ sw $ra, 0x2c($sp) -/* 00C364 8000B764 AFA40080 */ sw $a0, 0x80($sp) -/* 00C368 8000B768 14A10007 */ bne $a1, $at, .L8000B788 -/* 00C36C 8000B76C AFA7008C */ sw $a3, 0x8c($sp) -/* 00C370 8000B770 3C03800E */ lui $v1, %hi(D_800DC760) # $v1, 0x800e -/* 00C374 8000B774 2463C760 */ addiu $v1, %lo(D_800DC760) # addiu $v1, $v1, -0x38a0 -/* 00C378 8000B778 8C700000 */ lw $s0, ($v1) -/* 00C37C 8000B77C 00000000 */ nop -/* 00C380 8000B780 260EFFFF */ addiu $t6, $s0, -1 -/* 00C384 8000B784 AC6E0000 */ sw $t6, ($v1) -.L8000B788: -/* 00C388 8000B788 3C03800E */ lui $v1, %hi(D_800DC760) # $v1, 0x800e -/* 00C38C 8000B78C 2463C760 */ addiu $v1, %lo(D_800DC760) # addiu $v1, $v1, -0x38a0 -/* 00C390 8000B790 8C6F0000 */ lw $t7, ($v1) -/* 00C394 8000B794 2A01000A */ slti $at, $s0, 0xa -/* 00C398 8000B798 05E10002 */ bgez $t7, .L8000B7A4 -/* 00C39C 8000B79C 00000000 */ nop -/* 00C3A0 8000B7A0 AC600000 */ sw $zero, ($v1) -.L8000B7A4: -/* 00C3A4 8000B7A4 060000CA */ bltz $s0, .L8000BAD0 -/* 00C3A8 8000B7A8 8FBF002C */ lw $ra, 0x2c($sp) -/* 00C3AC 8000B7AC 102000C7 */ beqz $at, .L8000BACC -/* 00C3B0 8000B7B0 24040014 */ li $a0, 20 -/* 00C3B4 8000B7B4 0C0078A7 */ jal func_8001E29C -/* 00C3B8 8000B7B8 AFA60088 */ sw $a2, 0x88($sp) -/* 00C3BC 8000B7BC 3C0E8012 */ lui $t6, %hi(D_8011B020) # $t6, 0x8012 -/* 00C3C0 8000B7C0 25CEB020 */ addiu $t6, %lo(D_8011B020) # addiu $t6, $t6, -0x4fe0 -/* 00C3C4 8000B7C4 00106880 */ sll $t5, $s0, 2 -/* 00C3C8 8000B7C8 8FA5008C */ lw $a1, 0x8c($sp) -/* 00C3CC 8000B7CC 01AE5021 */ addu $t2, $t5, $t6 -/* 00C3D0 8000B7D0 8D470000 */ lw $a3, ($t2) -/* 00C3D4 8000B7D4 0010C9C0 */ sll $t9, $s0, 7 -/* 00C3D8 8000B7D8 8FA60088 */ lw $a2, 0x88($sp) -/* 00C3DC 8000B7DC 03221821 */ addu $v1, $t9, $v0 -/* 00C3E0 8000B7E0 0005C1C0 */ sll $t8, $a1, 7 -/* 00C3E4 8000B7E4 03026021 */ addu $t4, $t8, $v0 -/* 00C3E8 8000B7E8 10E000B8 */ beqz $a3, .L8000BACC -/* 00C3EC 8000B7EC 00605825 */ move $t3, $v1 -/* 00C3F0 8000B7F0 10C00009 */ beqz $a2, .L8000B818 -/* 00C3F4 8000B7F4 24010001 */ li $at, 1 -/* 00C3F8 8000B7F8 10C10009 */ beq $a2, $at, .L8000B820 -/* 00C3FC 8000B7FC 24010002 */ li $at, 2 -/* 00C400 8000B800 10C10009 */ beq $a2, $at, .L8000B828 -/* 00C404 8000B804 2401000D */ li $at, 13 -/* 00C408 8000B808 10C10009 */ beq $a2, $at, .L8000B830 -/* 00C40C 8000B80C 24620048 */ addiu $v0, $v1, 0x48 -/* 00C410 8000B810 10000007 */ b .L8000B830 -/* 00C414 8000B814 00001025 */ move $v0, $zero -.L8000B818: -/* 00C418 8000B818 10000005 */ b .L8000B830 -/* 00C41C 8000B81C 00601025 */ move $v0, $v1 -.L8000B820: -/* 00C420 8000B820 10000003 */ b .L8000B830 -/* 00C424 8000B824 24620024 */ addiu $v0, $v1, 0x24 -.L8000B828: -/* 00C428 8000B828 10000001 */ b .L8000B830 -/* 00C42C 8000B82C 24620048 */ addiu $v0, $v1, 0x48 -.L8000B830: -/* 00C430 8000B830 104000A1 */ beqz $v0, .L8000BAB8 -/* 00C434 8000B834 3C018012 */ lui $at, 0x8012 -/* 00C438 8000B838 00300821 */ addu $at, $at, $s0 -/* 00C43C 8000B83C A026B048 */ sb $a2, -0x4fb8($at) -/* 00C440 8000B840 3C018012 */ lui $at, 0x8012 -/* 00C444 8000B844 00300821 */ addu $at, $at, $s0 -/* 00C448 8000B848 A025B058 */ sb $a1, -0x4fa8($at) -/* 00C44C 8000B84C 906F0070 */ lbu $t7, 0x70($v1) -/* 00C450 8000B850 24010002 */ li $at, 2 -/* 00C454 8000B854 15E10070 */ bne $t7, $at, .L8000BA18 -/* 00C458 8000B858 8FA40080 */ lw $a0, 0x80($sp) -/* 00C45C 8000B85C 91780072 */ lbu $t8, 0x72($t3) -/* 00C460 8000B860 AFAC0048 */ sw $t4, 0x48($sp) -/* 00C464 8000B864 0018CF00 */ sll $t9, $t8, 0x1c -/* 00C468 8000B868 00192403 */ sra $a0, $t9, 0x10 -/* 00C46C 8000B86C AFAB004C */ sw $t3, 0x4c($sp) -/* 00C470 8000B870 AFAA0038 */ sw $t2, 0x38($sp) -/* 00C474 8000B874 0C01C1FE */ jal func_800707F8 -/* 00C478 8000B878 AFA20044 */ sw $v0, 0x44($sp) -/* 00C47C 8000B87C 8FA20044 */ lw $v0, 0x44($sp) -/* 00C480 8000B880 8FAB004C */ lw $t3, 0x4c($sp) -/* 00C484 8000B884 C4460018 */ lwc1 $f6, 0x18($v0) -/* 00C488 8000B888 C4440014 */ lwc1 $f4, 0x14($v0) -/* 00C48C 8000B88C 46060202 */ mul.s $f8, $f0, $f6 -/* 00C490 8000B890 C56C0074 */ lwc1 $f12, 0x74($t3) -/* 00C494 8000B894 C4520020 */ lwc1 $f18, 0x20($v0) -/* 00C498 8000B898 C450001C */ lwc1 $f16, 0x1c($v0) -/* 00C49C 8000B89C 46082280 */ add.s $f10, $f4, $f8 -/* 00C4A0 8000B8A0 8FA5008C */ lw $a1, 0x8c($sp) -/* 00C4A4 8000B8A4 460C5082 */ mul.s $f2, $f10, $f12 -/* 00C4A8 8000B8A8 8FAA0038 */ lw $t2, 0x38($sp) -/* 00C4AC 8000B8AC 8FAC0048 */ lw $t4, 0x48($sp) -/* 00C4B0 8000B8B0 24010001 */ li $at, 1 -/* 00C4B4 8000B8B4 46120182 */ mul.s $f6, $f0, $f18 -/* 00C4B8 8000B8B8 3C088012 */ lui $t0, %hi(D_8011AFFC) # $t0, 0x8012 -/* 00C4BC 8000B8BC 3C098012 */ lui $t1, %hi(D_8011B004) # $t1, 0x8012 -/* 00C4C0 8000B8C0 30A30003 */ andi $v1, $a1, 3 -/* 00C4C4 8000B8C4 46068100 */ add.s $f4, $f16, $f6 -/* 00C4C8 8000B8C8 2529B004 */ addiu $t1, %lo(D_8011B004) # addiu $t1, $t1, -0x4ffc -/* 00C4CC 8000B8CC 460C2382 */ mul.s $f14, $f4, $f12 -/* 00C4D0 8000B8D0 14610008 */ bne $v1, $at, .L8000B8F4 -/* 00C4D4 8000B8D4 2508AFFC */ addiu $t0, %lo(D_8011AFFC) # addiu $t0, $t0, -0x5004 -/* 00C4D8 8000B8D8 3C01800E */ lui $at, %hi(D_800E5130) # $at, 0x800e -/* 00C4DC 8000B8DC C4205130 */ lwc1 $f0, %lo(D_800E5130)($at) -/* 00C4E0 8000B8E0 00000000 */ nop -/* 00C4E4 8000B8E4 46001082 */ mul.s $f2, $f2, $f0 -/* 00C4E8 8000B8E8 00000000 */ nop -/* 00C4EC 8000B8EC 46007382 */ mul.s $f14, $f14, $f0 -/* 00C4F0 8000B8F0 00000000 */ nop -.L8000B8F4: -/* 00C4F4 8000B8F4 28610002 */ slti $at, $v1, 2 -/* 00C4F8 8000B8F8 14200008 */ bnez $at, .L8000B91C -/* 00C4FC 8000B8FC 240E8000 */ li $t6, -32768 -/* 00C500 8000B900 3C01800E */ lui $at, %hi(D_800E5134) # $at, 0x800e -/* 00C504 8000B904 C4205134 */ lwc1 $f0, %lo(D_800E5134)($at) -/* 00C508 8000B908 00000000 */ nop -/* 00C50C 8000B90C 46001082 */ mul.s $f2, $f2, $f0 -/* 00C510 8000B910 00000000 */ nop -/* 00C514 8000B914 46007382 */ mul.s $f14, $f14, $f0 -/* 00C518 8000B918 00000000 */ nop -.L8000B91C: -/* 00C51C 8000B91C C4480000 */ lwc1 $f8, ($v0) -/* 00C520 8000B920 3C038012 */ lui $v1, %hi(D_8011B008) # $v1, 0x8012 -/* 00C524 8000B924 E7A8005C */ swc1 $f8, 0x5c($sp) -/* 00C528 8000B928 C44A0004 */ lwc1 $f10, 4($v0) -/* 00C52C 8000B92C 8C63B008 */ lw $v1, %lo(D_8011B008)($v1) -/* 00C530 8000B930 E7AA0060 */ swc1 $f10, 0x60($sp) -/* 00C534 8000B934 C4520008 */ lwc1 $f18, 8($v0) -/* 00C538 8000B938 8D190000 */ lw $t9, ($t0) -/* 00C53C 8000B93C 3C18800E */ lui $t8, 0x800e -/* 00C540 8000B940 00037880 */ sll $t7, $v1, 2 -/* 00C544 8000B944 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 00C548 8000B948 030FC021 */ addu $t8, $t8, $t7 -/* 00C54C 8000B94C 00196880 */ sll $t5, $t9, 2 -/* 00C550 8000B950 44818000 */ mtc1 $at, $f16 -/* 00C554 8000B954 8F18C74C */ lw $t8, -0x38b4($t8) -/* 00C558 8000B958 01B96821 */ addu $t5, $t5, $t9 -/* 00C55C 8000B95C A7AE0050 */ sh $t6, 0x50($sp) -/* 00C560 8000B960 000D6840 */ sll $t5, $t5, 1 -/* 00C564 8000B964 A7A00052 */ sh $zero, 0x52($sp) -/* 00C568 8000B968 A7A00054 */ sh $zero, 0x54($sp) -/* 00C56C 8000B96C 3C0E800E */ lui $t6, 0x800e -/* 00C570 8000B970 E7AE0010 */ swc1 $f14, 0x10($sp) -/* 00C574 8000B974 E7B20064 */ swc1 $f18, 0x64($sp) -/* 00C578 8000B978 E7B00058 */ swc1 $f16, 0x58($sp) -/* 00C57C 8000B97C 030D2021 */ addu $a0, $t8, $t5 -/* 00C580 8000B980 91780072 */ lbu $t8, 0x72($t3) -/* 00C584 8000B984 01CF7021 */ addu $t6, $t6, $t7 -/* 00C588 8000B988 01E01825 */ move $v1, $t7 -/* 00C58C 8000B98C 8D2F0000 */ lw $t7, ($t1) -/* 00C590 8000B990 00186B00 */ sll $t5, $t8, 0xc -/* 00C594 8000B994 AFAD0014 */ sw $t5, 0x14($sp) -/* 00C598 8000B998 000FC900 */ sll $t9, $t7, 4 -/* 00C59C 8000B99C 8D8F007C */ lw $t7, 0x7c($t4) -/* 00C5A0 8000B9A0 8DCEC754 */ lw $t6, -0x38ac($t6) -/* 00C5A4 8000B9A4 44071000 */ mfc1 $a3, $f2 -/* 00C5A8 8000B9A8 AFAA0038 */ sw $t2, 0x38($sp) -/* 00C5AC 8000B9AC AFA20044 */ sw $v0, 0x44($sp) -/* 00C5B0 8000B9B0 27A60050 */ addiu $a2, $sp, 0x50 -/* 00C5B4 8000B9B4 AFAF0018 */ sw $t7, 0x18($sp) -/* 00C5B8 8000B9B8 0C002CE3 */ jal func_8000B38C -/* 00C5BC 8000B9BC 01D92821 */ addu $a1, $t6, $t9 -/* 00C5C0 8000B9C0 3C088012 */ lui $t0, %hi(D_8011AFFC) # $t0, 0x8012 -/* 00C5C4 8000B9C4 2508AFFC */ addiu $t0, %lo(D_8011AFFC) # addiu $t0, $t0, -0x5004 -/* 00C5C8 8000B9C8 8D190000 */ lw $t9, ($t0) -/* 00C5CC 8000B9CC 3C098012 */ lui $t1, %hi(D_8011B004) # $t1, 0x8012 -/* 00C5D0 8000B9D0 8FAA0038 */ lw $t2, 0x38($sp) -/* 00C5D4 8000B9D4 2529B004 */ addiu $t1, %lo(D_8011B004) # addiu $t1, $t1, -0x4ffc -/* 00C5D8 8000B9D8 00107700 */ sll $t6, $s0, 0x1c -/* 00C5DC 8000B9DC 0019C380 */ sll $t8, $t9, 0xe -/* 00C5E0 8000B9E0 8D2F0000 */ lw $t7, ($t1) -/* 00C5E4 8000B9E4 01D86825 */ or $t5, $t6, $t8 -/* 00C5E8 8000B9E8 8D4E0000 */ lw $t6, ($t2) -/* 00C5EC 8000B9EC 8FA20044 */ lw $v0, 0x44($sp) -/* 00C5F0 8000B9F0 01AFC825 */ or $t9, $t5, $t7 -/* 00C5F4 8000B9F4 ADD9007C */ sw $t9, 0x7c($t6) -/* 00C5F8 8000B9F8 8D180000 */ lw $t8, ($t0) -/* 00C5FC 8000B9FC 8D2F0000 */ lw $t7, ($t1) -/* 00C600 8000BA00 270D0009 */ addiu $t5, $t8, 9 -/* 00C604 8000BA04 25F90008 */ addiu $t9, $t7, 8 -/* 00C608 8000BA08 8D470000 */ lw $a3, ($t2) -/* 00C60C 8000BA0C AD0D0000 */ sw $t5, ($t0) -/* 00C610 8000BA10 AD390000 */ sw $t9, ($t1) -/* 00C614 8000BA14 8FA40080 */ lw $a0, 0x80($sp) -.L8000BA18: -/* 00C618 8000BA18 44800000 */ mtc1 $zero, $f0 -/* 00C61C 8000BA1C ACE40078 */ sw $a0, 0x78($a3) -/* 00C620 8000BA20 8D4E0000 */ lw $t6, ($t2) -/* 00C624 8000BA24 27A50074 */ addiu $a1, $sp, 0x74 -/* 00C628 8000BA28 E5C0000C */ swc1 $f0, 0xc($t6) -/* 00C62C 8000BA2C 8D580000 */ lw $t8, ($t2) -/* 00C630 8000BA30 00000000 */ nop -/* 00C634 8000BA34 E7000010 */ swc1 $f0, 0x10($t8) -/* 00C638 8000BA38 8D4D0000 */ lw $t5, ($t2) -/* 00C63C 8000BA3C 00000000 */ nop -/* 00C640 8000BA40 E5A00014 */ swc1 $f0, 0x14($t5) -/* 00C644 8000BA44 C4460000 */ lwc1 $f6, ($v0) -/* 00C648 8000BA48 00000000 */ nop -/* 00C64C 8000BA4C E7A60074 */ swc1 $f6, 0x74($sp) -/* 00C650 8000BA50 C4440004 */ lwc1 $f4, 4($v0) -/* 00C654 8000BA54 00000000 */ nop -/* 00C658 8000BA58 E7A40078 */ swc1 $f4, 0x78($sp) -/* 00C65C 8000BA5C C4480008 */ lwc1 $f8, 8($v0) -/* 00C660 8000BA60 AFAA0038 */ sw $t2, 0x38($sp) -/* 00C664 8000BA64 0C01C0C8 */ jal func_80070320 -/* 00C668 8000BA68 E7A8007C */ swc1 $f8, 0x7c($sp) -/* 00C66C 8000BA6C 0C004558 */ jal func_80011560 -/* 00C670 8000BA70 00000000 */ nop -/* 00C674 8000BA74 8FA20080 */ lw $v0, 0x80($sp) -/* 00C678 8000BA78 C7AA0074 */ lwc1 $f10, 0x74($sp) -/* 00C67C 8000BA7C C452000C */ lwc1 $f18, 0xc($v0) -/* 00C680 8000BA80 C7A60078 */ lwc1 $f6, 0x78($sp) -/* 00C684 8000BA84 46125400 */ add.s $f16, $f10, $f18 -/* 00C688 8000BA88 C7AA007C */ lwc1 $f10, 0x7c($sp) -/* 00C68C 8000BA8C C4520014 */ lwc1 $f18, 0x14($v0) -/* 00C690 8000BA90 C4440010 */ lwc1 $f4, 0x10($v0) -/* 00C694 8000BA94 44058000 */ mfc1 $a1, $f16 -/* 00C698 8000BA98 8FAA0038 */ lw $t2, 0x38($sp) -/* 00C69C 8000BA9C 46125400 */ add.s $f16, $f10, $f18 -/* 00C6A0 8000BAA0 8D440000 */ lw $a0, ($t2) -/* 00C6A4 8000BAA4 46043200 */ add.s $f8, $f6, $f4 -/* 00C6A8 8000BAA8 44078000 */ mfc1 $a3, $f16 -/* 00C6AC 8000BAAC 44064000 */ mfc1 $a2, $f8 -/* 00C6B0 8000BAB0 0C00455C */ jal func_80011570 -/* 00C6B4 8000BAB4 00000000 */ nop -.L8000BAB8: -/* 00C6B8 8000BAB8 8FAF0090 */ lw $t7, 0x90($sp) -/* 00C6BC 8000BABC 3C018012 */ lui $at, 0x8012 -/* 00C6C0 8000BAC0 11E00002 */ beqz $t7, .L8000BACC -/* 00C6C4 8000BAC4 00300821 */ addu $at, $at, $s0 -/* 00C6C8 8000BAC8 A020B068 */ sb $zero, -0x4f98($at) -.L8000BACC: -/* 00C6CC 8000BACC 8FBF002C */ lw $ra, 0x2c($sp) -.L8000BAD0: -/* 00C6D0 8000BAD0 8FB00028 */ lw $s0, 0x28($sp) -/* 00C6D4 8000BAD4 03E00008 */ jr $ra -/* 00C6D8 8000BAD8 27BD0080 */ addiu $sp, $sp, 0x80 - -glabel func_8000BADC -/* 00C6DC 8000BADC 3C028012 */ lui $v0, %hi(D_8011B008) # $v0, 0x8012 -/* 00C6E0 8000BAE0 2442B008 */ addiu $v0, %lo(D_8011B008) # addiu $v0, $v0, -0x4ff8 -/* 00C6E4 8000BAE4 8C4E0000 */ lw $t6, ($v0) -/* 00C6E8 8000BAE8 240F0001 */ li $t7, 1 -/* 00C6EC 8000BAEC 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 00C6F0 8000BAF0 01EEC023 */ subu $t8, $t7, $t6 -/* 00C6F4 8000BAF4 AC580000 */ sw $t8, ($v0) -/* 00C6F8 8000BAF8 3C018012 */ lui $at, %hi(D_8011AFFC) # $at, 0x8012 -/* 00C6FC 8000BAFC AFB10020 */ sw $s1, 0x20($sp) -/* 00C700 8000BB00 AC20AFFC */ sw $zero, %lo(D_8011AFFC)($at) -/* 00C704 8000BB04 00808825 */ move $s1, $a0 -/* 00C708 8000BB08 AFBF002C */ sw $ra, 0x2c($sp) -/* 00C70C 8000BB0C 3C018012 */ lui $at, %hi(D_8011B004) # $at, 0x8012 -/* 00C710 8000BB10 AFB30028 */ sw $s3, 0x28($sp) -/* 00C714 8000BB14 AFB20024 */ sw $s2, 0x24($sp) -/* 00C718 8000BB18 AFB0001C */ sw $s0, 0x1c($sp) -/* 00C71C 8000BB1C AC20B004 */ sw $zero, %lo(D_8011B004)($at) -/* 00C720 8000BB20 0C0078A7 */ jal func_8001E29C -/* 00C724 8000BB24 24040014 */ li $a0, 20 -/* 00C728 8000BB28 24190009 */ li $t9, 9 -/* 00C72C 8000BB2C 3C01800E */ lui $at, %hi(D_800DC760) # $at, 0x800e -/* 00C730 8000BB30 3C038012 */ lui $v1, %hi(D_8011B068) # $v1, 0x8012 -/* 00C734 8000BB34 3C048012 */ lui $a0, %hi(D_8011B020) # $a0, 0x8012 -/* 00C738 8000BB38 00405825 */ move $t3, $v0 -/* 00C73C 8000BB3C AC39C760 */ sw $t9, %lo(D_800DC760)($at) -/* 00C740 8000BB40 2484B020 */ addiu $a0, %lo(D_8011B020) # addiu $a0, $a0, -0x4fe0 -/* 00C744 8000BB44 2463B068 */ addiu $v1, %lo(D_8011B068) # addiu $v1, $v1, -0x4f98 -/* 00C748 8000BB48 00004025 */ move $t0, $zero -/* 00C74C 8000BB4C 240A0001 */ li $t2, 1 -.L8000BB50: -/* 00C750 8000BB50 906C0000 */ lbu $t4, ($v1) -/* 00C754 8000BB54 00086880 */ sll $t5, $t0, 2 -/* 00C758 8000BB58 11800006 */ beqz $t4, .L8000BB74 -/* 00C75C 8000BB5C 008D7821 */ addu $t7, $a0, $t5 -/* 00C760 8000BB60 8DE20000 */ lw $v0, ($t7) -/* 00C764 8000BB64 00000000 */ nop -/* 00C768 8000BB68 10400002 */ beqz $v0, .L8000BB74 -/* 00C76C 8000BB6C 00000000 */ nop -/* 00C770 8000BB70 AC400078 */ sw $zero, 0x78($v0) -.L8000BB74: -/* 00C774 8000BB74 25080001 */ addiu $t0, $t0, 1 -/* 00C778 8000BB78 2901000A */ slti $at, $t0, 0xa -/* 00C77C 8000BB7C 24630001 */ addiu $v1, $v1, 1 -/* 00C780 8000BB80 1420FFF3 */ bnez $at, .L8000BB50 -/* 00C784 8000BB84 A06AFFFF */ sb $t2, -1($v1) -/* 00C788 8000BB88 3C0E8012 */ lui $t6, %hi(D_8011AEF0) # $t6, 0x8012 -/* 00C78C 8000BB8C 8DCEAEF0 */ lw $t6, %lo(D_8011AEF0)($t6) -/* 00C790 8000BB90 00004025 */ move $t0, $zero -/* 00C794 8000BB94 19C000DD */ blez $t6, .L8000BF0C -/* 00C798 8000BB98 00009025 */ move $s2, $zero -/* 00C79C 8000BB9C 3C013E80 */ li $at, 0x3E800000 # 0.250000 -/* 00C7A0 8000BBA0 44819000 */ mtc1 $at, $f18 -/* 00C7A4 8000BBA4 44912000 */ mtc1 $s1, $f4 -/* 00C7A8 8000BBA8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 00C7AC 8000BBAC 3C138012 */ lui $s3, %hi(D_8011AEE4) # $s3, 0x8012 -/* 00C7B0 8000BBB0 44817000 */ mtc1 $at, $f14 -/* 00C7B4 8000BBB4 44806000 */ mtc1 $zero, $f12 -/* 00C7B8 8000BBB8 2673AEE4 */ addiu $s3, %lo(D_8011AEE4) # addiu $s3, $s3, -0x511c -/* 00C7BC 8000BBBC 24090002 */ li $t1, 2 -/* 00C7C0 8000BBC0 46802420 */ cvt.s.w $f16, $f4 -.L8000BBC4: -/* 00C7C4 8000BBC4 3C188000 */ lui $t8, %hi(D_80000300) # $t8, 0x8000 -/* 00C7C8 8000BBC8 8F180300 */ lw $t8, %lo(D_80000300)($t8) -/* 00C7CC 8000BBCC 46008086 */ mov.s $f2, $f16 -/* 00C7D0 8000BBD0 17000005 */ bnez $t8, .L8000BBE8 -/* 00C7D4 8000BBD4 3C01800E */ lui $at, %hi(D_800E5138) # $at, 0x800e -/* 00C7D8 8000BBD8 C4265138 */ lwc1 $f6, %lo(D_800E5138)($at) -/* 00C7DC 8000BBDC 00000000 */ nop -/* 00C7E0 8000BBE0 46068082 */ mul.s $f2, $f16, $f6 -/* 00C7E4 8000BBE4 00000000 */ nop -.L8000BBE8: -/* 00C7E8 8000BBE8 8E790000 */ lw $t9, ($s3) -/* 00C7EC 8000BBEC 3C188012 */ lui $t8, %hi(D_8011B010) # $t8, 0x8012 -/* 00C7F0 8000BBF0 03326021 */ addu $t4, $t9, $s2 -/* 00C7F4 8000BBF4 8D8D0000 */ lw $t5, ($t4) -/* 00C7F8 8000BBF8 2718B010 */ addiu $t8, %lo(D_8011B010) # addiu $t8, $t8, -0x4ff0 -/* 00C7FC 8000BBFC 8DB00064 */ lw $s0, 0x64($t5) -/* 00C800 8000BC00 00000000 */ nop -/* 00C804 8000BC04 82040002 */ lb $a0, 2($s0) -/* 00C808 8000BC08 860E018E */ lh $t6, 0x18e($s0) -/* 00C80C 8000BC0C 000479C0 */ sll $t7, $a0, 7 -/* 00C810 8000BC10 11C00006 */ beqz $t6, .L8000BC2C -/* 00C814 8000BC14 01EB1021 */ addu $v0, $t7, $t3 -/* 00C818 8000BC18 00981821 */ addu $v1, $a0, $t8 -/* 00C81C 8000BC1C 90790000 */ lbu $t9, ($v1) -/* 00C820 8000BC20 00000000 */ nop -/* 00C824 8000BC24 03316021 */ addu $t4, $t9, $s1 -/* 00C828 8000BC28 A06C0000 */ sb $t4, ($v1) -.L8000BC2C: -/* 00C82C 8000BC2C 904D0072 */ lbu $t5, 0x72($v0) -/* 00C830 8000BC30 00000000 */ nop -/* 00C834 8000BC34 01B17821 */ addu $t7, $t5, $s1 -/* 00C838 8000BC38 A04F0072 */ sb $t7, 0x72($v0) -/* 00C83C 8000BC3C 820E01D3 */ lb $t6, 0x1d3($s0) -/* 00C840 8000BC40 00000000 */ nop -/* 00C844 8000BC44 11C00041 */ beqz $t6, .L8000BD4C -/* 00C848 8000BC48 00000000 */ nop -/* 00C84C 8000BC4C 90590070 */ lbu $t9, 0x70($v0) -/* 00C850 8000BC50 24180014 */ li $t8, 20 -/* 00C854 8000BC54 17200011 */ bnez $t9, .L8000BC9C -/* 00C858 8000BC58 A0580073 */ sb $t8, 0x73($v0) -/* 00C85C 8000BC5C 46121282 */ mul.s $f10, $f2, $f18 -/* 00C860 8000BC60 C4480074 */ lwc1 $f8, 0x74($v0) -/* 00C864 8000BC64 3C01800E */ lui $at, %hi(D_800E513C) # $at, 0x800e -/* 00C868 8000BC68 460A4100 */ add.s $f4, $f8, $f10 -/* 00C86C 8000BC6C E4440074 */ swc1 $f4, 0x74($v0) -/* 00C870 8000BC70 C426513C */ lwc1 $f6, %lo(D_800E513C)($at) -/* 00C874 8000BC74 C4400074 */ lwc1 $f0, 0x74($v0) -/* 00C878 8000BC78 46006086 */ mov.s $f2, $f12 -/* 00C87C 8000BC7C 4600303C */ c.lt.s $f6, $f0 -/* 00C880 8000BC80 3C01800E */ lui $at, %hi(D_800E5140) # $at, 0x800e -/* 00C884 8000BC84 45000005 */ bc1f .L8000BC9C -/* 00C888 8000BC88 00000000 */ nop -/* 00C88C 8000BC8C C4285140 */ lwc1 $f8, %lo(D_800E5140)($at) -/* 00C890 8000BC90 A04A0070 */ sb $t2, 0x70($v0) -/* 00C894 8000BC94 46004281 */ sub.s $f10, $f8, $f0 -/* 00C898 8000BC98 E44A0074 */ swc1 $f10, 0x74($v0) -.L8000BC9C: -/* 00C89C 8000BC9C 904C0070 */ lbu $t4, 0x70($v0) -/* 00C8A0 8000BCA0 24010001 */ li $at, 1 -/* 00C8A4 8000BCA4 15810010 */ bne $t4, $at, .L8000BCE8 -/* 00C8A8 8000BCA8 00000000 */ nop -/* 00C8AC 8000BCAC 46121182 */ mul.s $f6, $f2, $f18 -/* 00C8B0 8000BCB0 C4440074 */ lwc1 $f4, 0x74($v0) -/* 00C8B4 8000BCB4 46006086 */ mov.s $f2, $f12 -/* 00C8B8 8000BCB8 240D0002 */ li $t5, 2 -/* 00C8BC 8000BCBC 46062201 */ sub.s $f8, $f4, $f6 -/* 00C8C0 8000BCC0 E4480074 */ swc1 $f8, 0x74($v0) -/* 00C8C4 8000BCC4 C4400074 */ lwc1 $f0, 0x74($v0) -/* 00C8C8 8000BCC8 00000000 */ nop -/* 00C8CC 8000BCCC 460E003C */ c.lt.s $f0, $f14 -/* 00C8D0 8000BCD0 00000000 */ nop -/* 00C8D4 8000BCD4 45000004 */ bc1f .L8000BCE8 -/* 00C8D8 8000BCD8 00000000 */ nop -/* 00C8DC 8000BCDC 46007281 */ sub.s $f10, $f14, $f0 -/* 00C8E0 8000BCE0 A04D0070 */ sb $t5, 0x70($v0) -/* 00C8E4 8000BCE4 E44A0074 */ swc1 $f10, 0x74($v0) -.L8000BCE8: -/* 00C8E8 8000BCE8 904F0070 */ lbu $t7, 0x70($v0) -/* 00C8EC 8000BCEC 00000000 */ nop -/* 00C8F0 8000BCF0 152F0013 */ bne $t1, $t7, .L8000BD40 -/* 00C8F4 8000BCF4 00000000 */ nop -/* 00C8F8 8000BCF8 C4400074 */ lwc1 $f0, 0x74($v0) -/* 00C8FC 8000BCFC 3C013E00 */ li $at, 0x3E000000 # 0.125000 -/* 00C900 8000BD00 460E003C */ c.lt.s $f0, $f14 -/* 00C904 8000BD04 00000000 */ nop -/* 00C908 8000BD08 4500000D */ bc1f .L8000BD40 -/* 00C90C 8000BD0C 00000000 */ nop -/* 00C910 8000BD10 44812000 */ mtc1 $at, $f4 -/* 00C914 8000BD14 00000000 */ nop -/* 00C918 8000BD18 46041182 */ mul.s $f6, $f2, $f4 -/* 00C91C 8000BD1C 46060200 */ add.s $f8, $f0, $f6 -/* 00C920 8000BD20 E4480074 */ swc1 $f8, 0x74($v0) -/* 00C924 8000BD24 C44A0074 */ lwc1 $f10, 0x74($v0) -/* 00C928 8000BD28 00000000 */ nop -/* 00C92C 8000BD2C 460A703C */ c.lt.s $f14, $f10 -/* 00C930 8000BD30 00000000 */ nop -/* 00C934 8000BD34 45000002 */ bc1f .L8000BD40 -/* 00C938 8000BD38 00000000 */ nop -/* 00C93C 8000BD3C E44E0074 */ swc1 $f14, 0x74($v0) -.L8000BD40: -/* 00C940 8000BD40 90430070 */ lbu $v1, 0x70($v0) -/* 00C944 8000BD44 1000002E */ b .L8000BE00 -/* 00C948 8000BD48 00000000 */ nop -.L8000BD4C: -/* 00C94C 8000BD4C 80440073 */ lb $a0, 0x73($v0) -/* 00C950 8000BD50 00000000 */ nop -/* 00C954 8000BD54 18800004 */ blez $a0, .L8000BD68 -/* 00C958 8000BD58 00917023 */ subu $t6, $a0, $s1 -/* 00C95C 8000BD5C 90430070 */ lbu $v1, 0x70($v0) -/* 00C960 8000BD60 10000027 */ b .L8000BE00 -/* 00C964 8000BD64 A04E0073 */ sb $t6, 0x73($v0) -.L8000BD68: -/* 00C968 8000BD68 90580070 */ lbu $t8, 0x70($v0) -/* 00C96C 8000BD6C 3C01800E */ lui $at, %hi(D_800E5144) # $at, 0x800e -/* 00C970 8000BD70 15380010 */ bne $t1, $t8, .L8000BDB4 -/* 00C974 8000BD74 00000000 */ nop -/* 00C978 8000BD78 C4265144 */ lwc1 $f6, %lo(D_800E5144)($at) -/* 00C97C 8000BD7C C4440074 */ lwc1 $f4, 0x74($v0) -/* 00C980 8000BD80 46061202 */ mul.s $f8, $f2, $f6 -/* 00C984 8000BD84 46006086 */ mov.s $f2, $f12 -/* 00C988 8000BD88 46082281 */ sub.s $f10, $f4, $f8 -/* 00C98C 8000BD8C E44A0074 */ swc1 $f10, 0x74($v0) -/* 00C990 8000BD90 C4400074 */ lwc1 $f0, 0x74($v0) -/* 00C994 8000BD94 00000000 */ nop -/* 00C998 8000BD98 460C003C */ c.lt.s $f0, $f12 -/* 00C99C 8000BD9C 00000000 */ nop -/* 00C9A0 8000BDA0 45000004 */ bc1f .L8000BDB4 -/* 00C9A4 8000BDA4 00000000 */ nop -/* 00C9A8 8000BDA8 460E0180 */ add.s $f6, $f0, $f14 -/* 00C9AC 8000BDAC A0400070 */ sb $zero, 0x70($v0) -/* 00C9B0 8000BDB0 E4460074 */ swc1 $f6, 0x74($v0) -.L8000BDB4: -/* 00C9B4 8000BDB4 90430070 */ lbu $v1, 0x70($v0) -/* 00C9B8 8000BDB8 00000000 */ nop -/* 00C9BC 8000BDBC 28610002 */ slti $at, $v1, 2 -/* 00C9C0 8000BDC0 1020000F */ beqz $at, .L8000BE00 -/* 00C9C4 8000BDC4 3C01800E */ lui $at, %hi(D_800E5148) # $at, 0x800e -/* 00C9C8 8000BDC8 C4285148 */ lwc1 $f8, %lo(D_800E5148)($at) -/* 00C9CC 8000BDCC C4440074 */ lwc1 $f4, 0x74($v0) -/* 00C9D0 8000BDD0 46081282 */ mul.s $f10, $f2, $f8 -/* 00C9D4 8000BDD4 300300FF */ andi $v1, $zero, 0xff -/* 00C9D8 8000BDD8 460A2181 */ sub.s $f6, $f4, $f10 -/* 00C9DC 8000BDDC E4460074 */ swc1 $f6, 0x74($v0) -/* 00C9E0 8000BDE0 C4480074 */ lwc1 $f8, 0x74($v0) -/* 00C9E4 8000BDE4 00000000 */ nop -/* 00C9E8 8000BDE8 460C403C */ c.lt.s $f8, $f12 -/* 00C9EC 8000BDEC 00000000 */ nop -/* 00C9F0 8000BDF0 45000002 */ bc1f .L8000BDFC -/* 00C9F4 8000BDF4 00000000 */ nop -/* 00C9F8 8000BDF8 E44C0074 */ swc1 $f12, 0x74($v0) -.L8000BDFC: -/* 00C9FC 8000BDFC A0400070 */ sb $zero, 0x70($v0) -.L8000BE00: -/* 00CA00 8000BE00 1C600007 */ bgtz $v1, .L8000BE20 -/* 00CA04 8000BE04 00000000 */ nop -/* 00CA08 8000BE08 C4440074 */ lwc1 $f4, 0x74($v0) -/* 00CA0C 8000BE0C 00000000 */ nop -/* 00CA10 8000BE10 4604603C */ c.lt.s $f12, $f4 -/* 00CA14 8000BE14 00000000 */ nop -/* 00CA18 8000BE18 45000016 */ bc1f .L8000BE74 -/* 00CA1C 8000BE1C 00000000 */ nop -.L8000BE20: -/* 00CA20 8000BE20 8E790000 */ lw $t9, ($s3) -/* 00CA24 8000BE24 82050002 */ lb $a1, 2($s0) -/* 00CA28 8000BE28 03326021 */ addu $t4, $t9, $s2 -/* 00CA2C 8000BE2C 8D840000 */ lw $a0, ($t4) -/* 00CA30 8000BE30 820601D7 */ lb $a2, 0x1d7($s0) -/* 00CA34 8000BE34 82070203 */ lb $a3, 0x203($s0) -/* 00CA38 8000BE38 E7B00030 */ swc1 $f16, 0x30($sp) -/* 00CA3C 8000BE3C AFAB0040 */ sw $t3, 0x40($sp) -/* 00CA40 8000BE40 AFA8004C */ sw $t0, 0x4c($sp) -/* 00CA44 8000BE44 0C002DD4 */ jal func_8000B750 -/* 00CA48 8000BE48 AFA00010 */ sw $zero, 0x10($sp) -/* 00CA4C 8000BE4C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 00CA50 8000BE50 44817000 */ mtc1 $at, $f14 -/* 00CA54 8000BE54 3C013E80 */ li $at, 0x3E800000 # 0.250000 -/* 00CA58 8000BE58 44819000 */ mtc1 $at, $f18 -/* 00CA5C 8000BE5C 8FA8004C */ lw $t0, 0x4c($sp) -/* 00CA60 8000BE60 8FAB0040 */ lw $t3, 0x40($sp) -/* 00CA64 8000BE64 44806000 */ mtc1 $zero, $f12 -/* 00CA68 8000BE68 C7B00030 */ lwc1 $f16, 0x30($sp) -/* 00CA6C 8000BE6C 24090002 */ li $t1, 2 -/* 00CA70 8000BE70 240A0001 */ li $t2, 1 -.L8000BE74: -/* 00CA74 8000BE74 82030002 */ lb $v1, 2($s0) -/* 00CA78 8000BE78 3C0F8012 */ lui $t7, %hi(D_8011B078) # $t7, 0x8012 -/* 00CA7C 8000BE7C 25EFB078 */ addiu $t7, %lo(D_8011B078) # addiu $t7, $t7, -0x4f88 -/* 00CA80 8000BE80 00036880 */ sll $t5, $v1, 2 -/* 00CA84 8000BE84 01AF1021 */ addu $v0, $t5, $t7 -/* 00CA88 8000BE88 904E0001 */ lbu $t6, 1($v0) -/* 00CA8C 8000BE8C 90590002 */ lbu $t9, 2($v0) -/* 00CA90 8000BE90 01D1C021 */ addu $t8, $t6, $s1 -/* 00CA94 8000BE94 03316021 */ addu $t4, $t9, $s1 -/* 00CA98 8000BE98 A0580001 */ sb $t8, 1($v0) -/* 00CA9C 8000BE9C A04C0002 */ sb $t4, 2($v0) -/* 00CAA0 8000BEA0 820D0175 */ lb $t5, 0x175($s0) -/* 00CAA4 8000BEA4 3C0C8012 */ lui $t4, %hi(D_8011AEF0) # $t4, 0x8012 -/* 00CAA8 8000BEA8 11A0000B */ beqz $t5, .L8000BED8 -/* 00CAAC 8000BEAC 00000000 */ nop -/* 00CAB0 8000BEB0 904F0003 */ lbu $t7, 3($v0) -/* 00CAB4 8000BEB4 00117080 */ sll $t6, $s1, 2 -/* 00CAB8 8000BEB8 01EE1821 */ addu $v1, $t7, $t6 -/* 00CABC 8000BEBC 28610020 */ slti $at, $v1, 0x20 -/* 00CAC0 8000BEC0 10200003 */ beqz $at, .L8000BED0 -/* 00CAC4 8000BEC4 24180020 */ li $t8, 32 -/* 00CAC8 8000BEC8 1000000B */ b .L8000BEF8 -/* 00CACC 8000BECC A0430003 */ sb $v1, 3($v0) -.L8000BED0: -/* 00CAD0 8000BED0 10000009 */ b .L8000BEF8 -/* 00CAD4 8000BED4 A0580003 */ sb $t8, 3($v0) -.L8000BED8: -/* 00CAD8 8000BED8 90590003 */ lbu $t9, 3($v0) -/* 00CADC 8000BEDC 00000000 */ nop -/* 00CAE0 8000BEE0 03311823 */ subu $v1, $t9, $s1 -/* 00CAE4 8000BEE4 18600003 */ blez $v1, .L8000BEF4 -/* 00CAE8 8000BEE8 00000000 */ nop -/* 00CAEC 8000BEEC 10000002 */ b .L8000BEF8 -/* 00CAF0 8000BEF0 A0430003 */ sb $v1, 3($v0) -.L8000BEF4: -/* 00CAF4 8000BEF4 A0400003 */ sb $zero, 3($v0) -.L8000BEF8: -/* 00CAF8 8000BEF8 8D8CAEF0 */ lw $t4, %lo(D_8011AEF0)($t4) -/* 00CAFC 8000BEFC 25080001 */ addiu $t0, $t0, 1 -/* 00CB00 8000BF00 010C082A */ slt $at, $t0, $t4 -/* 00CB04 8000BF04 1420FF2F */ bnez $at, .L8000BBC4 -/* 00CB08 8000BF08 26520004 */ addiu $s2, $s2, 4 -.L8000BF0C: -/* 00CB0C 8000BF0C 3C04800E */ lui $a0, %hi(D_800DC764) # $a0, 0x800e -/* 00CB10 8000BF10 8C84C764 */ lw $a0, %lo(D_800DC764)($a0) -/* 00CB14 8000BF14 00000000 */ nop -/* 00CB18 8000BF18 10800004 */ beqz $a0, .L8000BF2C -/* 00CB1C 8000BF1C 8FBF002C */ lw $ra, 0x2c($sp) -/* 00CB20 8000BF20 0C00444D */ jal func_80011134 -/* 00CB24 8000BF24 02202825 */ move $a1, $s1 -/* 00CB28 8000BF28 8FBF002C */ lw $ra, 0x2c($sp) -.L8000BF2C: -/* 00CB2C 8000BF2C 8FB0001C */ lw $s0, 0x1c($sp) -/* 00CB30 8000BF30 8FB10020 */ lw $s1, 0x20($sp) -/* 00CB34 8000BF34 8FB20024 */ lw $s2, 0x24($sp) -/* 00CB38 8000BF38 8FB30028 */ lw $s3, 0x28($sp) -/* 00CB3C 8000BF3C 03E00008 */ jr $ra -/* 00CB40 8000BF40 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_8000BF44 -/* 00CB44 8000BF44 2401FFFF */ li $at, -1 -/* 00CB48 8000BF48 14810004 */ bne $a0, $at, .L8000BF5C -/* 00CB4C 8000BF4C 00000000 */ nop -/* 00CB50 8000BF50 3C04800E */ lui $a0, %hi(D_800DC760) # $a0, 0x800e -/* 00CB54 8000BF54 8C84C760 */ lw $a0, %lo(D_800DC760)($a0) -/* 00CB58 8000BF58 00000000 */ nop -.L8000BF5C: -/* 00CB5C 8000BF5C 04800003 */ bltz $a0, .L8000BF6C -/* 00CB60 8000BF60 2881000A */ slti $at, $a0, 0xa -/* 00CB64 8000BF64 14200003 */ bnez $at, .L8000BF74 -/* 00CB68 8000BF68 00047080 */ sll $t6, $a0, 2 -.L8000BF6C: -/* 00CB6C 8000BF6C 03E00008 */ jr $ra -/* 00CB70 8000BF70 00001025 */ move $v0, $zero - -.L8000BF74: -/* 00CB74 8000BF74 3C028012 */ lui $v0, 0x8012 -/* 00CB78 8000BF78 004E1021 */ addu $v0, $v0, $t6 -/* 00CB7C 8000BF7C 8C42B020 */ lw $v0, -0x4fe0($v0) -/* 00CB80 8000BF80 00000000 */ nop -/* 00CB84 8000BF84 03E00008 */ jr $ra -/* 00CB88 8000BF88 00000000 */ nop - -glabel func_8000BF8C -/* 00CB8C 8000BF8C 3C01800E */ lui $at, %hi(D_800E514C) # $at, 0x800e -/* 00CB90 8000BF90 C42C514C */ lwc1 $f12, %lo(D_800E514C)($at) -/* 00CB94 8000BF94 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 00CB98 8000BF98 3C01800E */ lui $at, %hi(D_800E5150) # $at, 0x800e -/* 00CB9C 8000BF9C AFBF001C */ sw $ra, 0x1c($sp) -/* 00CBA0 8000BFA0 C42E5150 */ lwc1 $f14, %lo(D_800E5150)($at) -/* 00CBA4 8000BFA4 AFA00010 */ sw $zero, 0x10($sp) -/* 00CBA8 8000BFA8 00003025 */ move $a2, $zero -/* 00CBAC 8000BFAC 0C007496 */ jal func_8001D258 -/* 00CBB0 8000BFB0 2407E000 */ li $a3, -8192 -/* 00CBB4 8000BFB4 3C040001 */ lui $a0, (0x00015800 >> 16) # lui $a0, 1 -/* 00CBB8 8000BFB8 34845800 */ ori $a0, (0x00015800 & 0xFFFF) # ori $a0, $a0, 0x5800 -/* 00CBBC 8000BFBC 0C01C2DE */ jal func_80070B78 -/* 00CBC0 8000BFC0 24050200 */ li $a1, 512 -/* 00CBC4 8000BFC4 3C018012 */ lui $at, %hi(D_8011AE68) # $at, 0x8012 -/* 00CBC8 8000BFC8 AC22AE68 */ sw $v0, %lo(D_8011AE68)($at) -/* 00CBCC 8000BFCC 24040320 */ li $a0, 800 -/* 00CBD0 8000BFD0 0C01C327 */ jal func_80070C9C -/* 00CBD4 8000BFD4 3405FFFF */ li $a1, 65535 -/* 00CBD8 8000BFD8 3C018012 */ lui $at, %hi(D_8011AEC4) # $at, 0x8012 -/* 00CBDC 8000BFDC AC22AEC4 */ sw $v0, %lo(D_8011AEC4)($at) -/* 00CBE0 8000BFE0 24040050 */ li $a0, 80 -/* 00CBE4 8000BFE4 0C01C327 */ jal func_80070C9C -/* 00CBE8 8000BFE8 3405FFFF */ li $a1, 65535 -/* 00CBEC 8000BFEC 3C018012 */ lui $at, %hi(D_8011AE6C) # $at, 0x8012 -/* 00CBF0 8000BFF0 AC22AE6C */ sw $v0, %lo(D_8011AE6C)($at) -/* 00CBF4 8000BFF4 24040200 */ li $a0, 512 -/* 00CBF8 8000BFF8 0C01C327 */ jal func_80070C9C -/* 00CBFC 8000BFFC 3405FFFF */ li $a1, 65535 -/* 00CC00 8000C000 3C018012 */ lui $at, %hi(D_8011AE74) # $at, 0x8012 -/* 00CC04 8000C004 AC22AE74 */ sw $v0, %lo(D_8011AE74)($at) -/* 00CC08 8000C008 24040E10 */ li $a0, 3600 -/* 00CC0C 8000C00C 0C01C327 */ jal func_80070C9C -/* 00CC10 8000C010 3405FFFF */ li $a1, 65535 -/* 00CC14 8000C014 3C018012 */ lui $at, %hi(D_8011AECC) # $at, 0x8012 -/* 00CC18 8000C018 AC22AECC */ sw $v0, %lo(D_8011AECC)($at) -/* 00CC1C 8000C01C 24040050 */ li $a0, 80 -/* 00CC20 8000C020 0C01C327 */ jal func_80070C9C -/* 00CC24 8000C024 3405FFFF */ li $a1, 65535 -/* 00CC28 8000C028 3C018012 */ lui $at, %hi(D_8011AEDC) # $at, 0x8012 -/* 00CC2C 8000C02C AC22AEDC */ sw $v0, %lo(D_8011AEDC)($at) -/* 00CC30 8000C030 24040028 */ li $a0, 40 -/* 00CC34 8000C034 0C01C327 */ jal func_80070C9C -/* 00CC38 8000C038 3405FFFF */ li $a1, 65535 -/* 00CC3C 8000C03C 3C018012 */ lui $at, %hi(D_8011AEE4) # $at, 0x8012 -/* 00CC40 8000C040 AC22AEE4 */ sw $v0, %lo(D_8011AEE4)($at) -/* 00CC44 8000C044 24040028 */ li $a0, 40 -/* 00CC48 8000C048 0C01C327 */ jal func_80070C9C -/* 00CC4C 8000C04C 3405FFFF */ li $a1, 65535 -/* 00CC50 8000C050 3C018012 */ lui $at, %hi(D_8011AEEC) # $at, 0x8012 -/* 00CC54 8000C054 AC22AEEC */ sw $v0, %lo(D_8011AEEC)($at) -/* 00CC58 8000C058 24040028 */ li $a0, 40 -/* 00CC5C 8000C05C 0C01C327 */ jal func_80070C9C -/* 00CC60 8000C060 3405FFFF */ li $a1, 65535 -/* 00CC64 8000C064 3C018012 */ lui $at, %hi(D_8011AEE8) # $at, 0x8012 -/* 00CC68 8000C068 AC22AEE8 */ sw $v0, %lo(D_8011AEE8)($at) -/* 00CC6C 8000C06C 24040200 */ li $a0, 512 -/* 00CC70 8000C070 0C01C327 */ jal func_80070C9C -/* 00CC74 8000C074 3405FFFF */ li $a1, 65535 -/* 00CC78 8000C078 3C018012 */ lui $at, %hi(D_8011AF04) # $at, 0x8012 -/* 00CC7C 8000C07C AC22AF04 */ sw $v0, %lo(D_8011AF04)($at) -/* 00CC80 8000C080 24040008 */ li $a0, 8 -/* 00CC84 8000C084 0C01C327 */ jal func_80070C9C -/* 00CC88 8000C088 3405FFFF */ li $a1, 65535 -/* 00CC8C 8000C08C 3C018012 */ lui $at, %hi(D_8011ADCC) # $at, 0x8012 -/* 00CC90 8000C090 AC22ADCC */ sw $v0, %lo(D_8011ADCC)($at) -/* 00CC94 8000C094 24040400 */ li $a0, 1024 -/* 00CC98 8000C098 0C01C327 */ jal func_80070C9C -/* 00CC9C 8000C09C 3405FFFF */ li $a1, 65535 -/* 00CCA0 8000C0A0 3C018012 */ lui $at, %hi(D_8011AFF4) # $at, 0x8012 -/* 00CCA4 8000C0A4 AC22AFF4 */ sw $v0, %lo(D_8011AFF4)($at) -/* 00CCA8 8000C0A8 0C01DB16 */ jal func_80076C58 -/* 00CCAC 8000C0AC 24040023 */ li $a0, 35 -/* 00CCB0 8000C0B0 3C018012 */ lui $at, %hi(D_8011AEB8) # $at, 0x8012 -/* 00CCB4 8000C0B4 AC22AEB8 */ sw $v0, %lo(D_8011AEB8)($at) -/* 00CCB8 8000C0B8 0C01DBCC */ jal func_80076F30 -/* 00CCBC 8000C0BC 24040023 */ li $a0, 35 -/* 00CCC0 8000C0C0 3C048012 */ lui $a0, %hi(D_8011AEBC) # $a0, 0x8012 -/* 00CCC4 8000C0C4 00027043 */ sra $t6, $v0, 1 -/* 00CCC8 8000C0C8 25C3FFFF */ addiu $v1, $t6, -1 -/* 00CCCC 8000C0CC 2484AEBC */ addiu $a0, %lo(D_8011AEBC) # addiu $a0, $a0, -0x5144 -/* 00CCD0 8000C0D0 AC830000 */ sw $v1, ($a0) -/* 00CCD4 8000C0D4 3C058012 */ lui $a1, %hi(D_8011AEB8) # $a1, 0x8012 -/* 00CCD8 8000C0D8 8CA5AEB8 */ lw $a1, %lo(D_8011AEB8)($a1) -/* 00CCDC 8000C0DC 0003C040 */ sll $t8, $v1, 1 -/* 00CCE0 8000C0E0 00B8C821 */ addu $t9, $a1, $t8 -/* 00CCE4 8000C0E4 87280000 */ lh $t0, ($t9) -/* 00CCE8 8000C0E8 00000000 */ nop -/* 00CCEC 8000C0EC 15000008 */ bnez $t0, .L8000C110 -/* 00CCF0 8000C0F0 2469FFFF */ addiu $t1, $v1, -1 -.L8000C0F4: -/* 00CCF4 8000C0F4 00095040 */ sll $t2, $t1, 1 -/* 00CCF8 8000C0F8 00AA5821 */ addu $t3, $a1, $t2 -/* 00CCFC 8000C0FC AC890000 */ sw $t1, ($a0) -/* 00CD00 8000C100 856C0000 */ lh $t4, ($t3) -/* 00CD04 8000C104 01201825 */ move $v1, $t1 -/* 00CD08 8000C108 1180FFFA */ beqz $t4, .L8000C0F4 -/* 00CD0C 8000C10C 2469FFFF */ addiu $t1, $v1, -1 -.L8000C110: -/* 00CD10 8000C110 24040800 */ li $a0, 2048 -/* 00CD14 8000C114 0C01C327 */ jal func_80070C9C -/* 00CD18 8000C118 3405FFFF */ li $a1, 65535 -/* 00CD1C 8000C11C 3C018012 */ lui $at, %hi(D_8011AD58) # $at, 0x8012 -/* 00CD20 8000C120 AC22AD58 */ sw $v0, %lo(D_8011AD58)($at) -/* 00CD24 8000C124 0C01DB16 */ jal func_80076C58 -/* 00CD28 8000C128 24040021 */ li $a0, 33 -/* 00CD2C 8000C12C 3C058012 */ lui $a1, %hi(D_8011AD64) # $a1, 0x8012 -/* 00CD30 8000C130 3C068012 */ lui $a2, %hi(D_8011AD68) # $a2, 0x8012 -/* 00CD34 8000C134 24C6AD68 */ addiu $a2, %lo(D_8011AD68) # addiu $a2, $a2, -0x5298 -/* 00CD38 8000C138 24A5AD64 */ addiu $a1, %lo(D_8011AD64) # addiu $a1, $a1, -0x529c -/* 00CD3C 8000C13C 00006880 */ sll $t5, $zero, 2 -/* 00CD40 8000C140 ACA20000 */ sw $v0, ($a1) -/* 00CD44 8000C144 ACC00000 */ sw $zero, ($a2) -/* 00CD48 8000C148 004D7021 */ addu $t6, $v0, $t5 -/* 00CD4C 8000C14C 8DCF0000 */ lw $t7, ($t6) -/* 00CD50 8000C150 2407FFFF */ li $a3, -1 -/* 00CD54 8000C154 00402025 */ move $a0, $v0 -/* 00CD58 8000C158 10EF0009 */ beq $a3, $t7, .L8000C180 -/* 00CD5C 8000C15C 00001825 */ move $v1, $zero -/* 00CD60 8000C160 24780001 */ addiu $t8, $v1, 1 -.L8000C164: -/* 00CD64 8000C164 0018C880 */ sll $t9, $t8, 2 -/* 00CD68 8000C168 00994021 */ addu $t0, $a0, $t9 -/* 00CD6C 8000C16C ACD80000 */ sw $t8, ($a2) -/* 00CD70 8000C170 8D090000 */ lw $t1, ($t0) -/* 00CD74 8000C174 03001825 */ move $v1, $t8 -/* 00CD78 8000C178 14E9FFFA */ bne $a3, $t1, .L8000C164 -/* 00CD7C 8000C17C 24780001 */ addiu $t8, $v1, 1 -.L8000C180: -/* 00CD80 8000C180 246AFFFF */ addiu $t2, $v1, -1 -/* 00CD84 8000C184 ACCA0000 */ sw $t2, ($a2) -/* 00CD88 8000C188 000A2080 */ sll $a0, $t2, 2 -/* 00CD8C 8000C18C 0C01C327 */ jal func_80070C9C -/* 00CD90 8000C190 2405FFFF */ li $a1, -1 -/* 00CD94 8000C194 3C068012 */ lui $a2, %hi(D_8011AD68) # $a2, 0x8012 -/* 00CD98 8000C198 3C018012 */ lui $at, %hi(D_8011AE48) # $at, 0x8012 -/* 00CD9C 8000C19C AC22AE48 */ sw $v0, %lo(D_8011AE48)($at) -/* 00CDA0 8000C1A0 24C6AD68 */ addiu $a2, %lo(D_8011AD68) # addiu $a2, $a2, -0x5298 -/* 00CDA4 8000C1A4 8CC40000 */ lw $a0, ($a2) -/* 00CDA8 8000C1A8 0C01C327 */ jal func_80070C9C -/* 00CDAC 8000C1AC 2405FFFF */ li $a1, -1 -/* 00CDB0 8000C1B0 3C068012 */ lui $a2, %hi(D_8011AD68) # $a2, 0x8012 -/* 00CDB4 8000C1B4 24C6AD68 */ addiu $a2, %lo(D_8011AD68) # addiu $a2, $a2, -0x5298 -/* 00CDB8 8000C1B8 8CCC0000 */ lw $t4, ($a2) -/* 00CDBC 8000C1BC 3C048012 */ lui $a0, %hi(D_8011AE4C) # $a0, 0x8012 -/* 00CDC0 8000C1C0 2484AE4C */ addiu $a0, %lo(D_8011AE4C) # addiu $a0, $a0, -0x51b4 -/* 00CDC4 8000C1C4 AC820000 */ sw $v0, ($a0) -/* 00CDC8 8000C1C8 1980000A */ blez $t4, .L8000C1F4 -/* 00CDCC 8000C1CC 00001825 */ move $v1, $zero -.L8000C1D0: -/* 00CDD0 8000C1D0 8C8D0000 */ lw $t5, ($a0) -/* 00CDD4 8000C1D4 00000000 */ nop -/* 00CDD8 8000C1D8 01A37021 */ addu $t6, $t5, $v1 -/* 00CDDC 8000C1DC A1C00000 */ sb $zero, ($t6) -/* 00CDE0 8000C1E0 8CCF0000 */ lw $t7, ($a2) -/* 00CDE4 8000C1E4 24630001 */ addiu $v1, $v1, 1 -/* 00CDE8 8000C1E8 006F082A */ slt $at, $v1, $t7 -/* 00CDEC 8000C1EC 1420FFF8 */ bnez $at, .L8000C1D0 -/* 00CDF0 8000C1F0 00000000 */ nop -.L8000C1F4: -/* 00CDF4 8000C1F4 0C01DB16 */ jal func_80076C58 -/* 00CDF8 8000C1F8 2404000F */ li $a0, 15 -/* 00CDFC 8000C1FC 3C018012 */ lui $at, %hi(D_8011AD6C) # $at, 0x8012 -/* 00CE00 8000C200 AC22AD6C */ sw $v0, %lo(D_8011AD6C)($at) -/* 00CE04 8000C204 0C01DB16 */ jal func_80076C58 -/* 00CE08 8000C208 24040010 */ li $a0, 16 -/* 00CE0C 8000C20C 3C048012 */ lui $a0, %hi(D_8011ADA0) # $a0, 0x8012 -/* 00CE10 8000C210 3C058012 */ lui $a1, %hi(D_8011AD70) # $a1, 0x8012 -/* 00CE14 8000C214 24A5AD70 */ addiu $a1, %lo(D_8011AD70) # addiu $a1, $a1, -0x5290 -/* 00CE18 8000C218 2484ADA0 */ addiu $a0, %lo(D_8011ADA0) # addiu $a0, $a0, -0x5260 -/* 00CE1C 8000C21C 0000C080 */ sll $t8, $zero, 2 -/* 00CE20 8000C220 ACA20000 */ sw $v0, ($a1) -/* 00CE24 8000C224 AC800000 */ sw $zero, ($a0) -/* 00CE28 8000C228 0058C821 */ addu $t9, $v0, $t8 -/* 00CE2C 8000C22C 8F280000 */ lw $t0, ($t9) -/* 00CE30 8000C230 2407FFFF */ li $a3, -1 -/* 00CE34 8000C234 00403025 */ move $a2, $v0 -/* 00CE38 8000C238 10E80009 */ beq $a3, $t0, .L8000C260 -/* 00CE3C 8000C23C 00001825 */ move $v1, $zero -/* 00CE40 8000C240 24690001 */ addiu $t1, $v1, 1 -.L8000C244: -/* 00CE44 8000C244 00095080 */ sll $t2, $t1, 2 -/* 00CE48 8000C248 00CA5821 */ addu $t3, $a2, $t2 -/* 00CE4C 8000C24C AC890000 */ sw $t1, ($a0) -/* 00CE50 8000C250 8D6C0000 */ lw $t4, ($t3) -/* 00CE54 8000C254 01201825 */ move $v1, $t1 -/* 00CE58 8000C258 14ECFFFA */ bne $a3, $t4, .L8000C244 -/* 00CE5C 8000C25C 24690001 */ addiu $t1, $v1, 1 -.L8000C260: -/* 00CE60 8000C260 8CC20104 */ lw $v0, 0x104($a2) -/* 00CE64 8000C264 8CCF0108 */ lw $t7, 0x108($a2) -/* 00CE68 8000C268 3C0E8012 */ lui $t6, %hi(D_8011AD6C) # $t6, 0x8012 -/* 00CE6C 8000C26C 8DCEAD6C */ lw $t6, %lo(D_8011AD6C)($t6) -/* 00CE70 8000C270 01E22823 */ subu $a1, $t7, $v0 -/* 00CE74 8000C274 0005C080 */ sll $t8, $a1, 2 -/* 00CE78 8000C278 00026880 */ sll $t5, $v0, 2 -/* 00CE7C 8000C27C 03002825 */ move $a1, $t8 -/* 00CE80 8000C280 0C0030B6 */ jal func_8000C2D8 -/* 00CE84 8000C284 01AE2021 */ addu $a0, $t5, $t6 -/* 00CE88 8000C288 24040800 */ li $a0, 2048 -/* 00CE8C 8000C28C 0C01C327 */ jal func_80070C9C -/* 00CE90 8000C290 3405FFFF */ li $a1, 65535 -/* 00CE94 8000C294 3C018012 */ lui $at, %hi(D_8011AE58) # $at, 0x8012 -/* 00CE98 8000C298 AC22AE58 */ sw $v0, %lo(D_8011AE58)($at) -/* 00CE9C 8000C29C 3C018012 */ lui $at, %hi(D_8011ADC4) # $at, 0x8012 -/* 00CEA0 8000C2A0 A020ADC4 */ sb $zero, %lo(D_8011ADC4)($at) -/* 00CEA4 8000C2A4 3C018012 */ lui $at, %hi(D_8011AEF4) # $at, 0x8012 -/* 00CEA8 8000C2A8 A020AEF4 */ sb $zero, %lo(D_8011AEF4)($at) -/* 00CEAC 8000C2AC 3C018012 */ lui $at, %hi(D_8011AEF5) # $at, 0x8012 -/* 00CEB0 8000C2B0 A020AEF5 */ sb $zero, %lo(D_8011AEF5)($at) -/* 00CEB4 8000C2B4 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 00CEB8 8000C2B8 44812000 */ mtc1 $at, $f4 -/* 00CEBC 8000C2BC 3C018012 */ lui $at, %hi(D_8011ADA8) # $at, 0x8012 -/* 00CEC0 8000C2C0 0C003118 */ jal func_8000C460 -/* 00CEC4 8000C2C4 E424ADA8 */ swc1 $f4, %lo(D_8011ADA8)($at) -/* 00CEC8 8000C2C8 8FBF001C */ lw $ra, 0x1c($sp) -/* 00CECC 8000C2CC 27BD0020 */ addiu $sp, $sp, 0x20 -/* 00CED0 8000C2D0 03E00008 */ jr $ra -/* 00CED4 8000C2D4 00000000 */ nop - -glabel func_8000C2D8 -/* 00CED8 8000C2D8 00053083 */ sra $a2, $a1, 2 -/* 00CEDC 8000C2DC 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 00CEE0 8000C2E0 00801025 */ move $v0, $a0 -/* 00CEE4 8000C2E4 18C0005C */ blez $a2, .L8000C458 -/* 00CEE8 8000C2E8 00001825 */ move $v1, $zero -.L8000C2EC: -/* 00CEEC 8000C2EC 904E0003 */ lbu $t6, 3($v0) -/* 00CEF0 8000C2F0 90590000 */ lbu $t9, ($v0) -/* 00CEF4 8000C2F4 31CF00C0 */ andi $t7, $t6, 0xc0 -/* 00CEF8 8000C2F8 904B0001 */ lbu $t3, 1($v0) -/* 00CEFC 8000C2FC 000FC183 */ sra $t8, $t7, 6 -/* 00CF00 8000C300 904F0002 */ lbu $t7, 2($v0) -/* 00CF04 8000C304 332900C0 */ andi $t1, $t9, 0xc0 -/* 00CF08 8000C308 03095025 */ or $t2, $t8, $t1 -/* 00CF0C 8000C30C 316C00C0 */ andi $t4, $t3, 0xc0 -/* 00CF10 8000C310 000C6883 */ sra $t5, $t4, 2 -/* 00CF14 8000C314 31F900C0 */ andi $t9, $t7, 0xc0 -/* 00CF18 8000C318 0019C103 */ sra $t8, $t9, 4 -/* 00CF1C 8000C31C 014D7025 */ or $t6, $t2, $t5 -/* 00CF20 8000C320 01D84825 */ or $t1, $t6, $t8 -/* 00CF24 8000C324 A3A90000 */ sb $t1, ($sp) -/* 00CF28 8000C328 904B0003 */ lbu $t3, 3($v0) -/* 00CF2C 8000C32C 904D0000 */ lbu $t5, ($v0) -/* 00CF30 8000C330 316C0030 */ andi $t4, $t3, 0x30 -/* 00CF34 8000C334 000C5103 */ sra $t2, $t4, 4 -/* 00CF38 8000C338 904C0002 */ lbu $t4, 2($v0) -/* 00CF3C 8000C33C 90580001 */ lbu $t8, 1($v0) -/* 00CF40 8000C340 31AF0030 */ andi $t7, $t5, 0x30 -/* 00CF44 8000C344 000FC880 */ sll $t9, $t7, 2 -/* 00CF48 8000C348 01597025 */ or $t6, $t2, $t9 -/* 00CF4C 8000C34C 318D0030 */ andi $t5, $t4, 0x30 -/* 00CF50 8000C350 33090030 */ andi $t1, $t8, 0x30 -/* 00CF54 8000C354 01C95825 */ or $t3, $t6, $t1 -/* 00CF58 8000C358 000D7883 */ sra $t7, $t5, 2 -/* 00CF5C 8000C35C 016F5025 */ or $t2, $t3, $t7 -/* 00CF60 8000C360 A3AA0001 */ sb $t2, 1($sp) -/* 00CF64 8000C364 90490000 */ lbu $t1, ($v0) -/* 00CF68 8000C368 90590003 */ lbu $t9, 3($v0) -/* 00CF6C 8000C36C 904F0001 */ lbu $t7, 1($v0) -/* 00CF70 8000C370 312C000C */ andi $t4, $t1, 0xc -/* 00CF74 8000C374 3338000C */ andi $t8, $t9, 0xc -/* 00CF78 8000C378 90490002 */ lbu $t1, 2($v0) -/* 00CF7C 8000C37C 00187083 */ sra $t6, $t8, 2 -/* 00CF80 8000C380 000C6900 */ sll $t5, $t4, 4 -/* 00CF84 8000C384 31EA000C */ andi $t2, $t7, 0xc -/* 00CF88 8000C388 000AC880 */ sll $t9, $t2, 2 -/* 00CF8C 8000C38C 01CD5825 */ or $t3, $t6, $t5 -/* 00CF90 8000C390 0179C025 */ or $t8, $t3, $t9 -/* 00CF94 8000C394 312C000C */ andi $t4, $t1, 0xc -/* 00CF98 8000C398 030C7025 */ or $t6, $t8, $t4 -/* 00CF9C 8000C39C A3AE0002 */ sb $t6, 2($sp) -/* 00CFA0 8000C3A0 904D0003 */ lbu $t5, 3($v0) -/* 00CFA4 8000C3A4 90580001 */ lbu $t8, 1($v0) -/* 00CFA8 8000C3A8 904B0000 */ lbu $t3, ($v0) -/* 00CFAC 8000C3AC 31AF0003 */ andi $t7, $t5, 3 -/* 00CFB0 8000C3B0 330C0003 */ andi $t4, $t8, 3 -/* 00CFB4 8000C3B4 000BC980 */ sll $t9, $t3, 6 -/* 00CFB8 8000C3B8 904A0002 */ lbu $t2, 2($v0) -/* 00CFBC 8000C3BC 93A40000 */ lbu $a0, ($sp) -/* 00CFC0 8000C3C0 01F94825 */ or $t1, $t7, $t9 -/* 00CFC4 8000C3C4 000C7100 */ sll $t6, $t4, 4 -/* 00CFC8 8000C3C8 012E6825 */ or $t5, $t1, $t6 -/* 00CFCC 8000C3CC 314B0003 */ andi $t3, $t2, 3 -/* 00CFD0 8000C3D0 000B7880 */ sll $t7, $t3, 2 -/* 00CFD4 8000C3D4 308900AA */ andi $t1, $a0, 0xaa -/* 00CFD8 8000C3D8 30980055 */ andi $t8, $a0, 0x55 -/* 00CFDC 8000C3DC 01AFC825 */ or $t9, $t5, $t7 -/* 00CFE0 8000C3E0 00186040 */ sll $t4, $t8, 1 -/* 00CFE4 8000C3E4 00097043 */ sra $t6, $t1, 1 -/* 00CFE8 8000C3E8 A3B90003 */ sb $t9, 3($sp) -/* 00CFEC 8000C3EC 018E5025 */ or $t2, $t4, $t6 -/* 00CFF0 8000C3F0 A04A0000 */ sb $t2, ($v0) -/* 00CFF4 8000C3F4 93A50001 */ lbu $a1, 1($sp) -/* 00CFF8 8000C3F8 24630001 */ addiu $v1, $v1, 1 -/* 00CFFC 8000C3FC 30AB0055 */ andi $t3, $a1, 0x55 -/* 00D000 8000C400 30AF00AA */ andi $t7, $a1, 0xaa -/* 00D004 8000C404 000FC843 */ sra $t9, $t7, 1 -/* 00D008 8000C408 000B6840 */ sll $t5, $t3, 1 -/* 00D00C 8000C40C 01B9C025 */ or $t8, $t5, $t9 -/* 00D010 8000C410 A0580001 */ sb $t8, 1($v0) -/* 00D014 8000C414 93A70002 */ lbu $a3, 2($sp) -/* 00D018 8000C418 24420004 */ addiu $v0, $v0, 4 -/* 00D01C 8000C41C 30E90055 */ andi $t1, $a3, 0x55 -/* 00D020 8000C420 30EE00AA */ andi $t6, $a3, 0xaa -/* 00D024 8000C424 000E5043 */ sra $t2, $t6, 1 -/* 00D028 8000C428 00096040 */ sll $t4, $t1, 1 -/* 00D02C 8000C42C 018A5825 */ or $t3, $t4, $t2 -/* 00D030 8000C430 A04BFFFE */ sb $t3, -2($v0) -/* 00D034 8000C434 93A80003 */ lbu $t0, 3($sp) -/* 00D038 8000C438 00000000 */ nop -/* 00D03C 8000C43C 310F0055 */ andi $t7, $t0, 0x55 -/* 00D040 8000C440 311900AA */ andi $t9, $t0, 0xaa -/* 00D044 8000C444 0019C043 */ sra $t8, $t9, 1 -/* 00D048 8000C448 000F6840 */ sll $t5, $t7, 1 -/* 00D04C 8000C44C 01B84825 */ or $t1, $t5, $t8 -/* 00D050 8000C450 1466FFA6 */ bne $v1, $a2, .L8000C2EC -/* 00D054 8000C454 A049FFFF */ sb $t1, -1($v0) -.L8000C458: -/* 00D058 8000C458 03E00008 */ jr $ra -/* 00D05C 8000C45C 27BD0010 */ addiu $sp, $sp, 0x10 - -glabel func_8000C460 -/* 00D060 8000C460 24020001 */ li $v0, 1 -/* 00D064 8000C464 3C018012 */ lui $at, %hi(D_8011AD26) # $at, 0x8012 -/* 00D068 8000C468 A022AD26 */ sb $v0, %lo(D_8011AD26)($at) -/* 00D06C 8000C46C 3C018012 */ lui $at, %hi(D_8011AD5C) # $at, 0x8012 -/* 00D070 8000C470 AC20AD5C */ sw $zero, %lo(D_8011AD5C)($at) -/* 00D074 8000C474 3C018012 */ lui $at, %hi(D_8011AD60) # $at, 0x8012 -/* 00D078 8000C478 AC20AD60 */ sw $zero, %lo(D_8011AD60)($at) -/* 00D07C 8000C47C 3C018012 */ lui $at, %hi(D_8011AEC8) # $at, 0x8012 -/* 00D080 8000C480 AC20AEC8 */ sw $zero, %lo(D_8011AEC8)($at) -/* 00D084 8000C484 3C018012 */ lui $at, %hi(D_8011AE70) # $at, 0x8012 -/* 00D088 8000C488 AC20AE70 */ sw $zero, %lo(D_8011AE70)($at) -/* 00D08C 8000C48C 3C018012 */ lui $at, %hi(D_8011AED0) # $at, 0x8012 -/* 00D090 8000C490 AC20AED0 */ sw $zero, %lo(D_8011AED0)($at) -/* 00D094 8000C494 3C018012 */ lui $at, %hi(D_8011AED4) # $at, 0x8012 -/* 00D098 8000C498 AC20AED4 */ sw $zero, %lo(D_8011AED4)($at) -/* 00D09C 8000C49C 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 -/* 00D0A0 8000C4A0 AC20AEF0 */ sw $zero, %lo(D_8011AEF0)($at) -/* 00D0A4 8000C4A4 3C018012 */ lui $at, %hi(D_8011AE78) # $at, 0x8012 -/* 00D0A8 8000C4A8 A420AE78 */ sh $zero, %lo(D_8011AE78)($at) -/* 00D0AC 8000C4AC 3C058012 */ lui $a1, %hi(D_8011AD22) # $a1, 0x8012 -/* 00D0B0 8000C4B0 3C018012 */ lui $at, %hi(D_8011AD21) # $at, 0x8012 -/* 00D0B4 8000C4B4 24A5AD22 */ addiu $a1, %lo(D_8011AD22) # addiu $a1, $a1, -0x52de -/* 00D0B8 8000C4B8 A020AD21 */ sb $zero, %lo(D_8011AD21)($at) -/* 00D0BC 8000C4BC 3C038012 */ lui $v1, %hi(D_8011AF04) # $v1, 0x8012 -/* 00D0C0 8000C4C0 A0A00000 */ sb $zero, ($a1) -/* 00D0C4 8000C4C4 A0A00001 */ sb $zero, 1($a1) -/* 00D0C8 8000C4C8 2463AF04 */ addiu $v1, %lo(D_8011AF04) # addiu $v1, $v1, -0x50fc -/* 00D0CC 8000C4CC 00002025 */ move $a0, $zero -.L8000C4D0: -/* 00D0D0 8000C4D0 8C6E0000 */ lw $t6, ($v1) -/* 00D0D4 8000C4D4 00000000 */ nop -/* 00D0D8 8000C4D8 01C47821 */ addu $t7, $t6, $a0 -/* 00D0DC 8000C4DC 24840004 */ addiu $a0, $a0, 4 -/* 00D0E0 8000C4E0 28810200 */ slti $at, $a0, 0x200 -/* 00D0E4 8000C4E4 1420FFFA */ bnez $at, .L8000C4D0 -/* 00D0E8 8000C4E8 ADE00000 */ sw $zero, ($t7) -/* 00D0EC 8000C4EC 3C048012 */ lui $a0, %hi(D_8011ADCC) # $a0, 0x8012 -/* 00D0F0 8000C4F0 2484ADCC */ addiu $a0, %lo(D_8011ADCC) # addiu $a0, $a0, -0x5234 -/* 00D0F4 8000C4F4 00001825 */ move $v1, $zero -.L8000C4F8: -/* 00D0F8 8000C4F8 8C980000 */ lw $t8, ($a0) -/* 00D0FC 8000C4FC 00000000 */ nop -/* 00D100 8000C500 0303C821 */ addu $t9, $t8, $v1 -/* 00D104 8000C504 24630001 */ addiu $v1, $v1, 1 -/* 00D108 8000C508 28610008 */ slti $at, $v1, 8 -/* 00D10C 8000C50C 1420FFFA */ bnez $at, .L8000C4F8 -/* 00D110 8000C510 A3200000 */ sb $zero, ($t9) -/* 00D114 8000C514 3C038012 */ lui $v1, %hi(D_8011AFF4) # $v1, 0x8012 -/* 00D118 8000C518 2463AFF4 */ addiu $v1, %lo(D_8011AFF4) # addiu $v1, $v1, -0x500c -/* 00D11C 8000C51C 00002025 */ move $a0, $zero -/* 00D120 8000C520 24050400 */ li $a1, 1024 -.L8000C524: -/* 00D124 8000C524 8C680000 */ lw $t0, ($v1) -/* 00D128 8000C528 00000000 */ nop -/* 00D12C 8000C52C 01044821 */ addu $t1, $t0, $a0 -/* 00D130 8000C530 AD200000 */ sw $zero, ($t1) -/* 00D134 8000C534 8C6A0000 */ lw $t2, ($v1) -/* 00D138 8000C538 00000000 */ nop -/* 00D13C 8000C53C 01445821 */ addu $t3, $t2, $a0 -/* 00D140 8000C540 AD600040 */ sw $zero, 0x40($t3) -/* 00D144 8000C544 8C6C0000 */ lw $t4, ($v1) -/* 00D148 8000C548 00000000 */ nop -/* 00D14C 8000C54C 01846821 */ addu $t5, $t4, $a0 -/* 00D150 8000C550 ADA00080 */ sw $zero, 0x80($t5) -/* 00D154 8000C554 8C6E0000 */ lw $t6, ($v1) -/* 00D158 8000C558 00000000 */ nop -/* 00D15C 8000C55C 01C47821 */ addu $t7, $t6, $a0 -/* 00D160 8000C560 24840100 */ addiu $a0, $a0, 0x100 -/* 00D164 8000C564 1485FFEF */ bne $a0, $a1, .L8000C524 -/* 00D168 8000C568 ADE000C0 */ sw $zero, 0xc0($t7) -/* 00D16C 8000C56C 3C038012 */ lui $v1, %hi(D_8011AF08) # $v1, 0x8012 -/* 00D170 8000C570 2463AF08 */ addiu $v1, %lo(D_8011AF08) # addiu $v1, $v1, -0x50f8 -/* 00D174 8000C574 240400FF */ li $a0, 255 -/* 00D178 8000C578 AC640000 */ sw $a0, ($v1) -/* 00D17C 8000C57C AC640004 */ sw $a0, 4($v1) -/* 00D180 8000C580 3C018012 */ lui $at, %hi(D_8011AE5C) # $at, 0x8012 -/* 00D184 8000C584 AC20AE5C */ sw $zero, %lo(D_8011AE5C)($at) -/* 00D188 8000C588 3C018012 */ lui $at, %hi(D_8011AE60) # $at, 0x8012 -/* 00D18C 8000C58C AC20AE60 */ sw $zero, %lo(D_8011AE60)($at) -/* 00D190 8000C590 3C018012 */ lui $at, %hi(D_8011AE64) # $at, 0x8012 -/* 00D194 8000C594 AC20AE64 */ sw $zero, %lo(D_8011AE64)($at) -/* 00D198 8000C598 3C018012 */ lui $at, %hi(D_8011AE88) # $at, 0x8012 -/* 00D19C 8000C59C AC20AE88 */ sw $zero, %lo(D_8011AE88)($at) -/* 00D1A0 8000C5A0 3C018012 */ lui $at, %hi(D_8011ADD4) # $at, 0x8012 -/* 00D1A4 8000C5A4 A020ADD4 */ sb $zero, %lo(D_8011ADD4)($at) -/* 00D1A8 8000C5A8 3C018012 */ lui $at, %hi(D_8011AE7A) # $at, 0x8012 -/* 00D1AC 8000C5AC A420AE7A */ sh $zero, %lo(D_8011AE7A)($at) -/* 00D1B0 8000C5B0 3C018012 */ lui $at, %hi(D_8011AE7E) # $at, 0x8012 -/* 00D1B4 8000C5B4 A022AE7E */ sb $v0, %lo(D_8011AE7E)($at) -/* 00D1B8 8000C5B8 3C018012 */ lui $at, %hi(D_8011AE7C) # $at, 0x8012 -/* 00D1BC 8000C5BC A420AE7C */ sh $zero, %lo(D_8011AE7C)($at) -/* 00D1C0 8000C5C0 3C018012 */ lui $at, %hi(D_8011AD44) # $at, 0x8012 -/* 00D1C4 8000C5C4 A020AD44 */ sb $zero, %lo(D_8011AD44)($at) -/* 00D1C8 8000C5C8 3C018012 */ lui $at, %hi(D_8011AEF6) # $at, 0x8012 -/* 00D1CC 8000C5CC A020AEF6 */ sb $zero, %lo(D_8011AEF6)($at) -/* 00D1D0 8000C5D0 3C018012 */ lui $at, %hi(D_8011AEF7) # $at, 0x8012 -/* 00D1D4 8000C5D4 A020AEF7 */ sb $zero, %lo(D_8011AEF7)($at) -/* 00D1D8 8000C5D8 3C018012 */ lui $at, %hi(D_8011AF60) # $at, 0x8012 -/* 00D1DC 8000C5DC AC20AF60 */ sw $zero, %lo(D_8011AF60)($at) -/* 00D1E0 8000C5E0 3C018012 */ lui $at, %hi(D_8011AE00) # $at, 0x8012 -/* 00D1E4 8000C5E4 A020AE00 */ sb $zero, %lo(D_8011AE00)($at) -/* 00D1E8 8000C5E8 3C018012 */ lui $at, %hi(D_8011AE01) # $at, 0x8012 -/* 00D1EC 8000C5EC A022AE01 */ sb $v0, %lo(D_8011AE01)($at) -/* 00D1F0 8000C5F0 3C018012 */ lui $at, %hi(D_8011AD53) # $at, 0x8012 -/* 00D1F4 8000C5F4 A020AD53 */ sb $zero, %lo(D_8011AD53)($at) -/* 00D1F8 8000C5F8 3C018012 */ lui $at, 0x8012 -/* 00D1FC 8000C5FC 03E00008 */ jr $ra -/* 00D200 8000C600 A020ADD5 */ sb $zero, -0x522b($at) - -glabel func_8000C604 -/* 00D204 8000C604 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 00D208 8000C608 AFBF0024 */ sw $ra, 0x24($sp) -/* 00D20C 8000C60C AFB30020 */ sw $s3, 0x20($sp) -/* 00D210 8000C610 AFB2001C */ sw $s2, 0x1c($sp) -/* 00D214 8000C614 AFB10018 */ sw $s1, 0x18($sp) -/* 00D218 8000C618 0C0166D3 */ jal func_80059B4C -/* 00D21C 8000C61C AFB00014 */ sw $s0, 0x14($sp) -/* 00D220 8000C620 3C10800E */ lui $s0, %hi(D_800DC71C) # $s0, 0x800e -/* 00D224 8000C624 3C01800E */ lui $at, %hi(D_800DC748) # $at, 0x800e -/* 00D228 8000C628 2610C71C */ addiu $s0, %lo(D_800DC71C) # addiu $s0, $s0, -0x38e4 -/* 00D22C 8000C62C A020C748 */ sb $zero, %lo(D_800DC748)($at) -/* 00D230 8000C630 820E0000 */ lb $t6, ($s0) -/* 00D234 8000C634 00000000 */ nop -/* 00D238 8000C638 11C00003 */ beqz $t6, .L8000C648 -/* 00D23C 8000C63C 00000000 */ nop -/* 00D240 8000C640 0C01C8A6 */ jal func_80072298 -/* 00D244 8000C644 24040001 */ li $a0, 1 -.L8000C648: -/* 00D248 8000C648 3C11800E */ lui $s1, %hi(D_800DC744) # $s1, 0x800e -/* 00D24C 8000C64C 2631C744 */ addiu $s1, %lo(D_800DC744) # addiu $s1, $s1, -0x38bc -/* 00D250 8000C650 822F0000 */ lb $t7, ($s1) -/* 00D254 8000C654 A2000000 */ sb $zero, ($s0) -/* 00D258 8000C658 11E00007 */ beqz $t7, .L8000C678 -/* 00D25C 8000C65C 00000000 */ nop -/* 00D260 8000C660 0C027B20 */ jal func_8009EC80 -/* 00D264 8000C664 00000000 */ nop -/* 00D268 8000C668 10400003 */ beqz $v0, .L8000C678 -/* 00D26C 8000C66C 00000000 */ nop -/* 00D270 8000C670 0C01BCE6 */ jal func_8006F398 -/* 00D274 8000C674 A2200000 */ sb $zero, ($s1) -.L8000C678: -/* 00D278 8000C678 0C004013 */ jal func_8001004C -/* 00D27C 8000C67C 00000000 */ nop -/* 00D280 8000C680 3C128012 */ lui $s2, %hi(D_8011AE5C) # $s2, 0x8012 -/* 00D284 8000C684 8E52AE5C */ lw $s2, %lo(D_8011AE5C)($s2) -/* 00D288 8000C688 00008025 */ move $s0, $zero -/* 00D28C 8000C68C 1A40000C */ blez $s2, .L8000C6C0 -/* 00D290 8000C690 00008825 */ move $s1, $zero -/* 00D294 8000C694 3C138012 */ lui $s3, %hi(D_8011AE58) # $s3, 0x8012 -/* 00D298 8000C698 2673AE58 */ addiu $s3, %lo(D_8011AE58) # addiu $s3, $s3, -0x51a8 -.L8000C69C: -/* 00D29C 8000C69C 8E780000 */ lw $t8, ($s3) -/* 00D2A0 8000C6A0 24050001 */ li $a1, 1 -/* 00D2A4 8000C6A4 0311C821 */ addu $t9, $t8, $s1 -/* 00D2A8 8000C6A8 8F240000 */ lw $a0, ($t9) -/* 00D2AC 8000C6AC 0C00406B */ jal func_800101AC -/* 00D2B0 8000C6B0 00000000 */ nop -/* 00D2B4 8000C6B4 26100001 */ addiu $s0, $s0, 1 -/* 00D2B8 8000C6B8 1612FFF8 */ bne $s0, $s2, .L8000C69C -/* 00D2BC 8000C6BC 26310004 */ addiu $s1, $s1, 4 -.L8000C6C0: -/* 00D2C0 8000C6C0 3C018012 */ lui $at, %hi(D_8011AEC8) # $at, 0x8012 -/* 00D2C4 8000C6C4 AC20AEC8 */ sw $zero, %lo(D_8011AEC8)($at) -/* 00D2C8 8000C6C8 3C018012 */ lui $at, %hi(D_8011AE5C) # $at, 0x8012 -/* 00D2CC 8000C6CC AC20AE5C */ sw $zero, %lo(D_8011AE5C)($at) -/* 00D2D0 8000C6D0 3C018012 */ lui $at, %hi(D_8011AE60) # $at, 0x8012 -/* 00D2D4 8000C6D4 0C003118 */ jal func_8000C460 -/* 00D2D8 8000C6D8 AC20AE60 */ sw $zero, %lo(D_8011AE60)($at) -/* 00D2DC 8000C6DC 3C108012 */ lui $s0, %hi(D_8011AEB0) # $s0, 0x8012 -/* 00D2E0 8000C6E0 2610AEB0 */ addiu $s0, %lo(D_8011AEB0) # addiu $s0, $s0, -0x5150 -/* 00D2E4 8000C6E4 8E040000 */ lw $a0, ($s0) -/* 00D2E8 8000C6E8 0C01C450 */ jal func_80071140 -/* 00D2EC 8000C6EC 00000000 */ nop -/* 00D2F0 8000C6F0 8E040004 */ lw $a0, 4($s0) -/* 00D2F4 8000C6F4 0C01C450 */ jal func_80071140 -/* 00D2F8 8000C6F8 00000000 */ nop -/* 00D2FC 8000C6FC 8FBF0024 */ lw $ra, 0x24($sp) -/* 00D300 8000C700 8FB00014 */ lw $s0, 0x14($sp) -/* 00D304 8000C704 8FB10018 */ lw $s1, 0x18($sp) -/* 00D308 8000C708 8FB2001C */ lw $s2, 0x1c($sp) -/* 00D30C 8000C70C 8FB30020 */ lw $s3, 0x20($sp) -/* 00D310 8000C710 03E00008 */ jr $ra -/* 00D314 8000C714 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8000C718 -/* 00D318 8000C718 3C0E8012 */ lui $t6, %hi(D_8011AE4C) # $t6, 0x8012 -/* 00D31C 8000C71C 8DCEAE4C */ lw $t6, %lo(D_8011AE4C)($t6) -/* 00D320 8000C720 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 00D324 8000C724 AFBF0014 */ sw $ra, 0x14($sp) -/* 00D328 8000C728 AFA40028 */ sw $a0, 0x28($sp) -/* 00D32C 8000C72C 01C41821 */ addu $v1, $t6, $a0 -/* 00D330 8000C730 90650000 */ lbu $a1, ($v1) -/* 00D334 8000C734 3C0C8012 */ lui $t4, %hi(D_8011AD64) # $t4, 0x8012 -/* 00D338 8000C738 10A0000B */ beqz $a1, .L8000C768 -/* 00D33C 8000C73C 3C048012 */ lui $a0, %hi(D_8011AE68) # $a0, 0x8012 -/* 00D340 8000C740 24B80001 */ addiu $t8, $a1, 1 -/* 00D344 8000C744 A0780000 */ sb $t8, ($v1) -/* 00D348 8000C748 8FA80028 */ lw $t0, 0x28($sp) -/* 00D34C 8000C74C 3C198012 */ lui $t9, %hi(D_8011AE48) # $t9, 0x8012 -/* 00D350 8000C750 8F39AE48 */ lw $t9, %lo(D_8011AE48)($t9) -/* 00D354 8000C754 00084880 */ sll $t1, $t0, 2 -/* 00D358 8000C758 03295021 */ addu $t2, $t9, $t1 -/* 00D35C 8000C75C 8D420000 */ lw $v0, ($t2) -/* 00D360 8000C760 10000035 */ b .L8000C838 -/* 00D364 8000C764 8FBF0014 */ lw $ra, 0x14($sp) -.L8000C768: -/* 00D368 8000C768 8FA30028 */ lw $v1, 0x28($sp) -/* 00D36C 8000C76C 8D8CAD64 */ lw $t4, %lo(D_8011AD64)($t4) -/* 00D370 8000C770 00035880 */ sll $t3, $v1, 2 -/* 00D374 8000C774 018B1021 */ addu $v0, $t4, $t3 -/* 00D378 8000C778 8C460000 */ lw $a2, ($v0) -/* 00D37C 8000C77C 8C4D0004 */ lw $t5, 4($v0) -/* 00D380 8000C780 8C84AE68 */ lw $a0, %lo(D_8011AE68)($a0) -/* 00D384 8000C784 01A62823 */ subu $a1, $t5, $a2 -/* 00D388 8000C788 AFA50020 */ sw $a1, 0x20($sp) -/* 00D38C 8000C78C AFAB0018 */ sw $t3, 0x18($sp) -/* 00D390 8000C790 0C01C3A4 */ jal func_80070E90 -/* 00D394 8000C794 AFA60024 */ sw $a2, 0x24($sp) -/* 00D398 8000C798 8FA60024 */ lw $a2, 0x24($sp) -/* 00D39C 8000C79C 8FA70020 */ lw $a3, 0x20($sp) -/* 00D3A0 8000C7A0 10400021 */ beqz $v0, .L8000C828 -/* 00D3A4 8000C7A4 00402825 */ move $a1, $v0 -/* 00D3A8 8000C7A8 24040022 */ li $a0, 34 -/* 00D3AC 8000C7AC 0C01DB9A */ jal func_80076E68 -/* 00D3B0 8000C7B0 AFA2001C */ sw $v0, 0x1c($sp) -/* 00D3B4 8000C7B4 8FA5001C */ lw $a1, 0x1c($sp) -/* 00D3B8 8000C7B8 00000000 */ nop -/* 00D3BC 8000C7BC 8CAE0024 */ lw $t6, 0x24($a1) -/* 00D3C0 8000C7C0 8CB8001C */ lw $t8, 0x1c($a1) -/* 00D3C4 8000C7C4 8CB90014 */ lw $t9, 0x14($a1) -/* 00D3C8 8000C7C8 8CAA0018 */ lw $t2, 0x18($a1) -/* 00D3CC 8000C7CC 8CAC0010 */ lw $t4, 0x10($a1) -/* 00D3D0 8000C7D0 00AE7821 */ addu $t7, $a1, $t6 -/* 00D3D4 8000C7D4 00B84021 */ addu $t0, $a1, $t8 -/* 00D3D8 8000C7D8 00B94821 */ addu $t1, $a1, $t9 -/* 00D3DC 8000C7DC 00AA5821 */ addu $t3, $a1, $t2 -/* 00D3E0 8000C7E0 00AC6821 */ addu $t5, $a1, $t4 -/* 00D3E4 8000C7E4 ACAF0024 */ sw $t7, 0x24($a1) -/* 00D3E8 8000C7E8 ACA8001C */ sw $t0, 0x1c($a1) -/* 00D3EC 8000C7EC ACA90014 */ sw $t1, 0x14($a1) -/* 00D3F0 8000C7F0 ACAB0018 */ sw $t3, 0x18($a1) -/* 00D3F4 8000C7F4 ACAD0010 */ sw $t5, 0x10($a1) -/* 00D3F8 8000C7F8 3C0E8012 */ lui $t6, %hi(D_8011AE48) # $t6, 0x8012 -/* 00D3FC 8000C7FC 8DCEAE48 */ lw $t6, %lo(D_8011AE48)($t6) -/* 00D400 8000C800 8FAF0018 */ lw $t7, 0x18($sp) -/* 00D404 8000C804 3C198012 */ lui $t9, %hi(D_8011AE4C) # $t9, 0x8012 -/* 00D408 8000C808 01CFC021 */ addu $t8, $t6, $t7 -/* 00D40C 8000C80C AF050000 */ sw $a1, ($t8) -/* 00D410 8000C810 8FA90028 */ lw $t1, 0x28($sp) -/* 00D414 8000C814 8F39AE4C */ lw $t9, %lo(D_8011AE4C)($t9) -/* 00D418 8000C818 24080001 */ li $t0, 1 -/* 00D41C 8000C81C 03295021 */ addu $t2, $t9, $t1 -/* 00D420 8000C820 10000003 */ b .L8000C830 -/* 00D424 8000C824 A1480000 */ sb $t0, ($t2) -.L8000C828: -/* 00D428 8000C828 10000002 */ b .L8000C834 -/* 00D42C 8000C82C 00001025 */ move $v0, $zero -.L8000C830: -/* 00D430 8000C830 00A01025 */ move $v0, $a1 -.L8000C834: -/* 00D434 8000C834 8FBF0014 */ lw $ra, 0x14($sp) -.L8000C838: -/* 00D438 8000C838 27BD0028 */ addiu $sp, $sp, 0x28 -/* 00D43C 8000C83C 03E00008 */ jr $ra -/* 00D440 8000C840 00000000 */ nop - -glabel func_8000C844 -/* 00D444 8000C844 3C068012 */ lui $a2, %hi(D_8011AE4C) # $a2, 0x8012 -/* 00D448 8000C848 24C6AE4C */ addiu $a2, %lo(D_8011AE4C) # addiu $a2, $a2, -0x51b4 -/* 00D44C 8000C84C 8CCE0000 */ lw $t6, ($a2) -/* 00D450 8000C850 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 00D454 8000C854 AFBF0014 */ sw $ra, 0x14($sp) -/* 00D458 8000C858 01C41021 */ addu $v0, $t6, $a0 -/* 00D45C 8000C85C 90430000 */ lbu $v1, ($v0) -/* 00D460 8000C860 00000000 */ nop -/* 00D464 8000C864 1060000F */ beqz $v1, .L8000C8A4 -/* 00D468 8000C868 246FFFFF */ addiu $t7, $v1, -1 -/* 00D46C 8000C86C A04F0000 */ sb $t7, ($v0) -/* 00D470 8000C870 8CD80000 */ lw $t8, ($a2) -/* 00D474 8000C874 3C098012 */ lui $t1, %hi(D_8011AE48) # $t1, 0x8012 -/* 00D478 8000C878 0304C821 */ addu $t9, $t8, $a0 -/* 00D47C 8000C87C 93280000 */ lbu $t0, ($t9) -/* 00D480 8000C880 00000000 */ nop -/* 00D484 8000C884 15000008 */ bnez $t0, .L8000C8A8 -/* 00D488 8000C888 8FBF0014 */ lw $ra, 0x14($sp) -/* 00D48C 8000C88C 8D29AE48 */ lw $t1, %lo(D_8011AE48)($t1) -/* 00D490 8000C890 00045080 */ sll $t2, $a0, 2 -/* 00D494 8000C894 012A5821 */ addu $t3, $t1, $t2 -/* 00D498 8000C898 8D640000 */ lw $a0, ($t3) -/* 00D49C 8000C89C 0C01C450 */ jal func_80071140 -/* 00D4A0 8000C8A0 00000000 */ nop -.L8000C8A4: -/* 00D4A4 8000C8A4 8FBF0014 */ lw $ra, 0x14($sp) -.L8000C8A8: -/* 00D4A8 8000C8A8 27BD0018 */ addiu $sp, $sp, 0x18 -/* 00D4AC 8000C8AC 03E00008 */ jr $ra -/* 00D4B0 8000C8B0 00000000 */ nop - -glabel func_8000C8B4 -/* 00D4B4 8000C8B4 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 00D4B8 8000C8B8 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 00D4BC 8000C8BC 00000000 */ nop -/* 00D4C0 8000C8C0 15C00003 */ bnez $t6, .L8000C8D0 -/* 00D4C4 8000C8C4 00000000 */ nop -/* 00D4C8 8000C8C8 04810003 */ bgez $a0, .L8000C8D8 -/* 00D4CC 8000C8CC 00041080 */ sll $v0, $a0, 2 -.L8000C8D0: -/* 00D4D0 8000C8D0 03E00008 */ jr $ra -/* 00D4D4 8000C8D4 00801025 */ move $v0, $a0 - -.L8000C8D8: -/* 00D4D8 8000C8D8 00441021 */ addu $v0, $v0, $a0 -/* 00D4DC 8000C8DC 24010006 */ li $at, 6 -/* 00D4E0 8000C8E0 0041001A */ div $zero, $v0, $at -/* 00D4E4 8000C8E4 00001012 */ mflo $v0 -/* 00D4E8 8000C8E8 00000000 */ nop -/* 00D4EC 8000C8EC 00000000 */ nop -/* 00D4F0 8000C8F0 03E00008 */ jr $ra -/* 00D4F4 8000C8F4 00000000 */ nop - -glabel func_8000C8F8 -/* 00D4F8 8000C8F8 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 00D4FC 8000C8FC AFBF0024 */ sw $ra, 0x24($sp) -/* 00D500 8000C900 AFB20020 */ sw $s2, 0x20($sp) -/* 00D504 8000C904 AFB1001C */ sw $s1, 0x1c($sp) -/* 00D508 8000C908 AFB00018 */ sw $s0, 0x18($sp) -/* 00D50C 8000C90C AFA40058 */ sw $a0, 0x58($sp) -/* 00D510 8000C910 0C01BAA4 */ jal func_8006EA90 -/* 00D514 8000C914 AFA5005C */ sw $a1, 0x5c($sp) -/* 00D518 8000C918 90580049 */ lbu $t8, 0x49($v0) -/* 00D51C 8000C91C 8C4F0004 */ lw $t7, 4($v0) -/* 00D520 8000C920 0018C880 */ sll $t9, $t8, 2 -/* 00D524 8000C924 01F94021 */ addu $t0, $t7, $t9 -/* 00D528 8000C928 8D030000 */ lw $v1, ($t0) -/* 00D52C 8000C92C 9450000C */ lhu $s0, 0xc($v0) -/* 00D530 8000C930 30690004 */ andi $t1, $v1, 4 -/* 00D534 8000C934 2D230001 */ sltiu $v1, $t1, 1 -/* 00D538 8000C938 10600007 */ beqz $v1, .L8000C958 -/* 00D53C 8000C93C 360E0820 */ ori $t6, $s0, 0x820 -/* 00D540 8000C940 904B0048 */ lbu $t3, 0x48($v0) -/* 00D544 8000C944 240C0001 */ li $t4, 1 -/* 00D548 8000C948 016C6804 */ sllv $t5, $t4, $t3 -/* 00D54C 8000C94C 01AE1824 */ and $v1, $t5, $t6 -/* 00D550 8000C950 0003702B */ sltu $t6, $zero, $v1 -/* 00D554 8000C954 01C01825 */ move $v1, $t6 -.L8000C958: -/* 00D558 8000C958 3C108012 */ lui $s0, %hi(D_8011AE03) # $s0, 0x8012 -/* 00D55C 8000C95C 2610AE03 */ addiu $s0, %lo(D_8011AE03) # addiu $s0, $s0, -0x51fd -/* 00D560 8000C960 A2030000 */ sb $v1, ($s0) -/* 00D564 8000C964 904F0049 */ lbu $t7, 0x49($v0) -/* 00D568 8000C968 8C580004 */ lw $t8, 4($v0) -/* 00D56C 8000C96C 000FC880 */ sll $t9, $t7, 2 -/* 00D570 8000C970 03194021 */ addu $t0, $t8, $t9 -/* 00D574 8000C974 8D090000 */ lw $t1, ($t0) -/* 00D578 8000C978 00000000 */ nop -/* 00D57C 8000C97C 312A0002 */ andi $t2, $t1, 2 -/* 00D580 8000C980 15400002 */ bnez $t2, .L8000C98C -/* 00D584 8000C984 00000000 */ nop -/* 00D588 8000C988 A2000000 */ sb $zero, ($s0) -.L8000C98C: -/* 00D58C 8000C98C 0C0270B4 */ jal func_8009C2D0 -/* 00D590 8000C990 00000000 */ nop -/* 00D594 8000C994 10400002 */ beqz $v0, .L8000C9A0 -/* 00D598 8000C998 00000000 */ nop -/* 00D59C 8000C99C A2000000 */ sb $zero, ($s0) -.L8000C9A0: -/* 00D5A0 8000C9A0 0C01AF66 */ jal func_8006BD98 -/* 00D5A4 8000C9A4 00000000 */ nop -/* 00D5A8 8000C9A8 10400002 */ beqz $v0, .L8000C9B4 -/* 00D5AC 8000C9AC 3C018012 */ lui $at, %hi(D_8011AD3E) # $at, 0x8012 -/* 00D5B0 8000C9B0 A2000000 */ sb $zero, ($s0) -.L8000C9B4: -/* 00D5B4 8000C9B4 A020AD3E */ sb $zero, %lo(D_8011AD3E)($at) -/* 00D5B8 8000C9B8 24043000 */ li $a0, 12288 -/* 00D5BC 8000C9BC 0C01C327 */ jal func_80070C9C -/* 00D5C0 8000C9C0 3405FFFF */ li $a1, 65535 -/* 00D5C4 8000C9C4 8FA3005C */ lw $v1, 0x5c($sp) -/* 00D5C8 8000C9C8 3C0B8012 */ lui $t3, %hi(D_8011AEB0) # $t3, 0x8012 -/* 00D5CC 8000C9CC 00036080 */ sll $t4, $v1, 2 -/* 00D5D0 8000C9D0 3C0D8012 */ lui $t5, %hi(D_8011AE98) # $t5, 0x8012 -/* 00D5D4 8000C9D4 3C0F8012 */ lui $t7, %hi(D_8011AEA0) # $t7, 0x8012 -/* 00D5D8 8000C9D8 256BAEB0 */ addiu $t3, %lo(D_8011AEB0) # addiu $t3, $t3, -0x5150 -/* 00D5DC 8000C9DC 25ADAE98 */ addiu $t5, %lo(D_8011AE98) # addiu $t5, $t5, -0x5168 -/* 00D5E0 8000C9E0 25EFAEA0 */ addiu $t7, %lo(D_8011AEA0) # addiu $t7, $t7, -0x5160 -/* 00D5E4 8000C9E4 8FB80058 */ lw $t8, 0x58($sp) -/* 00D5E8 8000C9E8 018B2821 */ addu $a1, $t4, $t3 -/* 00D5EC 8000C9EC 018D8821 */ addu $s1, $t4, $t5 -/* 00D5F0 8000C9F0 244E0010 */ addiu $t6, $v0, 0x10 -/* 00D5F4 8000C9F4 018F9021 */ addu $s2, $t4, $t7 -/* 00D5F8 8000C9F8 3C018012 */ lui $at, 0x8012 -/* 00D5FC 8000C9FC ACA20000 */ sw $v0, ($a1) -/* 00D600 8000CA00 AE2E0000 */ sw $t6, ($s1) -/* 00D604 8000CA04 AE400000 */ sw $zero, ($s2) -/* 00D608 8000CA08 002C0821 */ addu $at, $at, $t4 -/* 00D60C 8000CA0C AFA20048 */ sw $v0, 0x48($sp) -/* 00D610 8000CA10 AFA50028 */ sw $a1, 0x28($sp) -/* 00D614 8000CA14 24040014 */ li $a0, 20 -/* 00D618 8000CA18 0C01DB16 */ jal func_80076C58 -/* 00D61C 8000CA1C AC38AEA8 */ sw $t8, -0x5158($at) -/* 00D620 8000CA20 8C590000 */ lw $t9, ($v0) -/* 00D624 8000CA24 2405FFFF */ li $a1, -1 -/* 00D628 8000CA28 00403025 */ move $a2, $v0 -/* 00D62C 8000CA2C 10B90006 */ beq $a1, $t9, .L8000CA48 -/* 00D630 8000CA30 00002025 */ move $a0, $zero -/* 00D634 8000CA34 00C01825 */ move $v1, $a2 -.L8000CA38: -/* 00D638 8000CA38 8C680004 */ lw $t0, 4($v1) -/* 00D63C 8000CA3C 24840001 */ addiu $a0, $a0, 1 -/* 00D640 8000CA40 14A8FFFD */ bne $a1, $t0, .L8000CA38 -/* 00D644 8000CA44 24630004 */ addiu $v1, $v1, 4 -.L8000CA48: -/* 00D648 8000CA48 8FA90058 */ lw $t1, 0x58($sp) -/* 00D64C 8000CA4C 2484FFFF */ addiu $a0, $a0, -1 -/* 00D650 8000CA50 0124082A */ slt $at, $t1, $a0 -/* 00D654 8000CA54 14200002 */ bnez $at, .L8000CA60 -/* 00D658 8000CA58 24040015 */ li $a0, 21 -/* 00D65C 8000CA5C AFA00058 */ sw $zero, 0x58($sp) -.L8000CA60: -/* 00D660 8000CA60 8FAA0058 */ lw $t2, 0x58($sp) -/* 00D664 8000CA64 00000000 */ nop -/* 00D668 8000CA68 000A6080 */ sll $t4, $t2, 2 -/* 00D66C 8000CA6C 004C1821 */ addu $v1, $v0, $t4 -/* 00D670 8000CA70 8C700000 */ lw $s0, ($v1) -/* 00D674 8000CA74 8C6B0004 */ lw $t3, 4($v1) -/* 00D678 8000CA78 02002825 */ move $a1, $s0 -/* 00D67C 8000CA7C 01703823 */ subu $a3, $t3, $s0 -/* 00D680 8000CA80 10E0004A */ beqz $a3, .L8000CBAC -/* 00D684 8000CA84 8FBF0024 */ lw $ra, 0x24($sp) -/* 00D688 8000CA88 AFA6003C */ sw $a2, 0x3c($sp) -/* 00D68C 8000CA8C 0C031877 */ jal func_800C61DC -/* 00D690 8000CA90 AFA70054 */ sw $a3, 0x54($sp) -/* 00D694 8000CA94 8FAD0048 */ lw $t5, 0x48($sp) -/* 00D698 8000CA98 8FA70054 */ lw $a3, 0x54($sp) -/* 00D69C 8000CA9C 01A27021 */ addu $t6, $t5, $v0 -/* 00D6A0 8000CAA0 01C72823 */ subu $a1, $t6, $a3 -/* 00D6A4 8000CAA4 24A50020 */ addiu $a1, $a1, 0x20 -/* 00D6A8 8000CAA8 AFA50034 */ sw $a1, 0x34($sp) -/* 00D6AC 8000CAAC 24040015 */ li $a0, 21 -/* 00D6B0 8000CAB0 0C01DB9A */ jal func_80076E68 -/* 00D6B4 8000CAB4 02003025 */ move $a2, $s0 -/* 00D6B8 8000CAB8 8FA40034 */ lw $a0, 0x34($sp) -/* 00D6BC 8000CABC 8FA50048 */ lw $a1, 0x48($sp) -/* 00D6C0 8000CAC0 0C031886 */ jal func_800C6218 -/* 00D6C4 8000CAC4 00000000 */ nop -/* 00D6C8 8000CAC8 8FA4003C */ lw $a0, 0x3c($sp) -/* 00D6CC 8000CACC 0C01C450 */ jal func_80071140 -/* 00D6D0 8000CAD0 00000000 */ nop -/* 00D6D4 8000CAD4 8FAF0028 */ lw $t7, 0x28($sp) -/* 00D6D8 8000CAD8 8FA80048 */ lw $t0, 0x48($sp) -/* 00D6DC 8000CADC 8DF80000 */ lw $t8, ($t7) -/* 00D6E0 8000CAE0 8FAA005C */ lw $t2, 0x5c($sp) -/* 00D6E4 8000CAE4 27190010 */ addiu $t9, $t8, 0x10 -/* 00D6E8 8000CAE8 AE390000 */ sw $t9, ($s1) -/* 00D6EC 8000CAEC 8D090000 */ lw $t1, ($t0) -/* 00D6F0 8000CAF0 3C018012 */ lui $at, %hi(D_8011AEC0) # $at, 0x8012 -/* 00D6F4 8000CAF4 AE490000 */ sw $t1, ($s2) -/* 00D6F8 8000CAF8 AC2AAEC0 */ sw $t2, %lo(D_8011AEC0)($at) -/* 00D6FC 8000CAFC 8E4C0000 */ lw $t4, ($s2) -/* 00D700 8000CB00 00008025 */ move $s0, $zero -/* 00D704 8000CB04 19800014 */ blez $t4, .L8000CB58 -/* 00D708 8000CB08 00000000 */ nop -.L8000CB0C: -/* 00D70C 8000CB0C 8E240000 */ lw $a0, ($s1) -/* 00D710 8000CB10 0C003A95 */ jal func_8000EA54 -/* 00D714 8000CB14 24050001 */ li $a1, 1 -/* 00D718 8000CB18 8E230000 */ lw $v1, ($s1) -/* 00D71C 8000CB1C 8E4E0000 */ lw $t6, ($s2) -/* 00D720 8000CB20 90640001 */ lbu $a0, 1($v1) -/* 00D724 8000CB24 00000000 */ nop -/* 00D728 8000CB28 308B003F */ andi $t3, $a0, 0x3f -/* 00D72C 8000CB2C 020B8021 */ addu $s0, $s0, $t3 -/* 00D730 8000CB30 01636821 */ addu $t5, $t3, $v1 -/* 00D734 8000CB34 020E082A */ slt $at, $s0, $t6 -/* 00D738 8000CB38 1420FFF4 */ bnez $at, .L8000CB0C -/* 00D73C 8000CB3C AE2D0000 */ sw $t5, ($s1) -/* 00D740 8000CB40 8FAF0028 */ lw $t7, 0x28($sp) -/* 00D744 8000CB44 00000000 */ nop -/* 00D748 8000CB48 8DF80000 */ lw $t8, ($t7) -/* 00D74C 8000CB4C 00000000 */ nop -/* 00D750 8000CB50 27190010 */ addiu $t9, $t8, 0x10 -/* 00D754 8000CB54 AE390000 */ sw $t9, ($s1) -.L8000CB58: -/* 00D758 8000CB58 3C018012 */ lui $at, %hi(D_8011AE70) # $at, 0x8012 -/* 00D75C 8000CB5C AC20AE70 */ sw $zero, %lo(D_8011AE70)($at) -/* 00D760 8000CB60 24100001 */ li $s0, 1 -/* 00D764 8000CB64 3C118012 */ lui $s1, %hi(D_8011ADAC) # $s1, 0x8012 -/* 00D768 8000CB68 3C018012 */ lui $at, %hi(D_8011ADC0) # $at, 0x8012 -/* 00D76C 8000CB6C 2631ADAC */ addiu $s1, %lo(D_8011ADAC) # addiu $s1, $s1, -0x5254 -/* 00D770 8000CB70 AC30ADC0 */ sw $s0, %lo(D_8011ADC0)($at) -/* 00D774 8000CB74 8E280000 */ lw $t0, ($s1) -/* 00D778 8000CB78 00000000 */ nop -/* 00D77C 8000CB7C 15000009 */ bnez $t0, .L8000CBA4 -/* 00D780 8000CB80 00000000 */ nop -/* 00D784 8000CB84 0C004013 */ jal func_8001004C -/* 00D788 8000CB88 00000000 */ nop -/* 00D78C 8000CB8C 0C005FA6 */ jal func_80017E98 -/* 00D790 8000CB90 00000000 */ nop -/* 00D794 8000CB94 0C006F15 */ jal func_8001BC54 -/* 00D798 8000CB98 00000000 */ nop -/* 00D79C 8000CB9C 0C007A4F */ jal func_8001E93C -/* 00D7A0 8000CBA0 00000000 */ nop -.L8000CBA4: -/* 00D7A4 8000CBA4 AE300000 */ sw $s0, ($s1) -/* 00D7A8 8000CBA8 8FBF0024 */ lw $ra, 0x24($sp) -.L8000CBAC: -/* 00D7AC 8000CBAC 8FB00018 */ lw $s0, 0x18($sp) -/* 00D7B0 8000CBB0 8FB1001C */ lw $s1, 0x1c($sp) -/* 00D7B4 8000CBB4 8FB20020 */ lw $s2, 0x20($sp) -/* 00D7B8 8000CBB8 03E00008 */ jr $ra -/* 00D7BC 8000CBBC 27BD0058 */ addiu $sp, $sp, 0x58 - -glabel func_8000CBC0 -/* 00D7C0 8000CBC0 3C038012 */ lui $v1, %hi(D_8011AE08) # $v1, 0x8012 -/* 00D7C4 8000CBC4 3C028012 */ lui $v0, %hi(D_8011AE48) # $v0, 0x8012 -/* 00D7C8 8000CBC8 2442AE48 */ addiu $v0, %lo(D_8011AE48) # addiu $v0, $v0, -0x51b8 -/* 00D7CC 8000CBCC 2463AE08 */ addiu $v1, %lo(D_8011AE08) # addiu $v1, $v1, -0x51f8 -.L8000CBD0: -/* 00D7D0 8000CBD0 24630010 */ addiu $v1, $v1, 0x10 -/* 00D7D4 8000CBD4 AC60FFF0 */ sw $zero, -0x10($v1) -/* 00D7D8 8000CBD8 AC60FFF4 */ sw $zero, -0xc($v1) -/* 00D7DC 8000CBDC AC60FFF8 */ sw $zero, -8($v1) -/* 00D7E0 8000CBE0 1462FFFB */ bne $v1, $v0, .L8000CBD0 -/* 00D7E4 8000CBE4 AC60FFFC */ sw $zero, -4($v1) -/* 00D7E8 8000CBE8 03E00008 */ jr $ra -/* 00D7EC 8000CBEC 00000000 */ nop - -glabel func_8000CBF0 -/* 00D7F0 8000CBF0 3C0F8012 */ lui $t7, %hi(D_8011AE08) # $t7, 0x8012 -/* 00D7F4 8000CBF4 25EFAE08 */ addiu $t7, %lo(D_8011AE08) # addiu $t7, $t7, -0x51f8 -/* 00D7F8 8000CBF8 00057080 */ sll $t6, $a1, 2 -/* 00D7FC 8000CBFC 01CF1021 */ addu $v0, $t6, $t7 -/* 00D800 8000CC00 8C430000 */ lw $v1, ($v0) -/* 00D804 8000CC04 00000000 */ nop -/* 00D808 8000CC08 14600003 */ bnez $v1, .L8000CC18 -/* 00D80C 8000CC0C 00000000 */ nop -/* 00D810 8000CC10 03E00008 */ jr $ra -/* 00D814 8000CC14 AC440000 */ sw $a0, ($v0) - -.L8000CC18: -/* 00D818 8000CC18 03E00008 */ jr $ra -/* 00D81C 8000CC1C 00000000 */ nop - -glabel func_8000CC20 -/* 00D820 8000CC20 3C058012 */ lui $a1, %hi(D_8011AE08) # $a1, 0x8012 -/* 00D824 8000CC24 2403FFFF */ li $v1, -1 -/* 00D828 8000CC28 24A5AE08 */ addiu $a1, %lo(D_8011AE08) # addiu $a1, $a1, -0x51f8 -/* 00D82C 8000CC2C 00001025 */ move $v0, $zero -/* 00D830 8000CC30 00027080 */ sll $t6, $v0, 2 -.L8000CC34: -/* 00D834 8000CC34 00AE7821 */ addu $t7, $a1, $t6 -/* 00D838 8000CC38 8DF80000 */ lw $t8, ($t7) -/* 00D83C 8000CC3C 00000000 */ nop -/* 00D840 8000CC40 17000003 */ bnez $t8, .L8000CC50 -/* 00D844 8000CC44 00000000 */ nop -/* 00D848 8000CC48 00401825 */ move $v1, $v0 -/* 00D84C 8000CC4C 24020010 */ li $v0, 16 -.L8000CC50: -/* 00D850 8000CC50 24420001 */ addiu $v0, $v0, 1 -/* 00D854 8000CC54 28410010 */ slti $at, $v0, 0x10 -/* 00D858 8000CC58 1420FFF6 */ bnez $at, .L8000CC34 -/* 00D85C 8000CC5C 00027080 */ sll $t6, $v0, 2 -/* 00D860 8000CC60 2401FFFF */ li $at, -1 -/* 00D864 8000CC64 10610003 */ beq $v1, $at, .L8000CC74 -/* 00D868 8000CC68 0003C880 */ sll $t9, $v1, 2 -/* 00D86C 8000CC6C 00B94021 */ addu $t0, $a1, $t9 -/* 00D870 8000CC70 AD040000 */ sw $a0, ($t0) -.L8000CC74: -/* 00D874 8000CC74 03E00008 */ jr $ra -/* 00D878 8000CC78 00601025 */ move $v0, $v1 - -glabel func_8000CC7C -/* 00D87C 8000CC7C 27BDFEB0 */ addiu $sp, $sp, -0x150 -/* 00D880 8000CC80 3C018012 */ lui $at, %hi(D_8011AD20) # $at, 0x8012 -/* 00D884 8000CC84 A020AD20 */ sb $zero, %lo(D_8011AD20)($at) -/* 00D888 8000CC88 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012 -/* 00D88C 8000CC8C AC20ADB0 */ sw $zero, %lo(D_8011ADB0)($at) -/* 00D890 8000CC90 3C018012 */ lui $at, %hi(D_8011ADC4) # $at, 0x8012 -/* 00D894 8000CC94 AFB1001C */ sw $s1, 0x1c($sp) -/* 00D898 8000CC98 A020ADC4 */ sb $zero, %lo(D_8011ADC4)($at) -/* 00D89C 8000CC9C 3C118012 */ lui $s1, %hi(D_8011AF00) # $s1, 0x8012 -/* 00D8A0 8000CCA0 AFBE0038 */ sw $fp, 0x38($sp) -/* 00D8A4 8000CCA4 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 -/* 00D8A8 8000CCA8 0080F025 */ move $fp, $a0 -/* 00D8AC 8000CCAC 2631AF00 */ addiu $s1, %lo(D_8011AF00) # addiu $s1, $s1, -0x5100 -/* 00D8B0 8000CCB0 AFBF003C */ sw $ra, 0x3c($sp) -/* 00D8B4 8000CCB4 AFB30024 */ sw $s3, 0x24($sp) -/* 00D8B8 8000CCB8 AFB00018 */ sw $s0, 0x18($sp) -/* 00D8BC 8000CCBC AC20AEF0 */ sw $zero, %lo(D_8011AEF0)($at) -/* 00D8C0 8000CCC0 00A08025 */ move $s0, $a1 -/* 00D8C4 8000CCC4 00C09825 */ move $s3, $a2 -/* 00D8C8 8000CCC8 AFB70034 */ sw $s7, 0x34($sp) -/* 00D8CC 8000CCCC AFB60030 */ sw $s6, 0x30($sp) -/* 00D8D0 8000CCD0 AFB5002C */ sw $s5, 0x2c($sp) -/* 00D8D4 8000CCD4 AFB40028 */ sw $s4, 0x28($sp) -/* 00D8D8 8000CCD8 AFB20020 */ sw $s2, 0x20($sp) -/* 00D8DC 8000CCDC A2200000 */ sb $zero, ($s1) -/* 00D8E0 8000CCE0 0C01486E */ jal func_800521B8 -/* 00D8E4 8000CCE4 00002025 */ move $a0, $zero -/* 00D8E8 8000CCE8 0C01AF6C */ jal func_8006BDB0 -/* 00D8EC 8000CCEC 00000000 */ nop -/* 00D8F0 8000CCF0 AFA20078 */ sw $v0, 0x78($sp) -/* 00D8F4 8000CCF4 9043004C */ lbu $v1, 0x4c($v0) -/* 00D8F8 8000CCF8 24160006 */ li $s6, 6 -/* 00D8FC 8000CCFC 12C304E0 */ beq $s6, $v1, .L8000E080 -/* 00D900 8000CD00 00602025 */ move $a0, $v1 -/* 00D904 8000CD04 24010007 */ li $at, 7 -/* 00D908 8000CD08 106104DD */ beq $v1, $at, .L8000E080 -/* 00D90C 8000CD0C 240FFFFF */ li $t7, -1 -/* 00D910 8000CD10 24010008 */ li $at, 8 -/* 00D914 8000CD14 10610002 */ beq $v1, $at, .L8000CD20 -/* 00D918 8000CD18 306E0040 */ andi $t6, $v1, 0x40 -/* 00D91C 8000CD1C 11C00005 */ beqz $t6, .L8000CD34 -.L8000CD20: -/* 00D920 8000CD20 3C148012 */ lui $s4, %hi(D_8011AEF4) # $s4, 0x8012 -/* 00D924 8000CD24 3C018012 */ lui $at, %hi(D_8011AEF5) # $at, 0x8012 -/* 00D928 8000CD28 2694AEF4 */ addiu $s4, %lo(D_8011AEF4) # addiu $s4, $s4, -0x510c -/* 00D92C 8000CD2C A020AEF5 */ sb $zero, %lo(D_8011AEF5)($at) -/* 00D930 8000CD30 A2800000 */ sb $zero, ($s4) -.L8000CD34: -/* 00D934 8000CD34 3C148012 */ lui $s4, %hi(D_8011AEF4) # $s4, 0x8012 -/* 00D938 8000CD38 2694AEF4 */ addiu $s4, %lo(D_8011AEF4) # addiu $s4, $s4, -0x510c -/* 00D93C 8000CD3C AFAF0130 */ sw $t7, 0x130($sp) -/* 00D940 8000CD40 0C003932 */ jal func_8000E4C8 -/* 00D944 8000CD44 AFA40068 */ sw $a0, 0x68($sp) -/* 00D948 8000CD48 1040000C */ beqz $v0, .L8000CD7C -/* 00D94C 8000CD4C 00000000 */ nop -/* 00D950 8000CD50 8FB80068 */ lw $t8, 0x68($sp) -/* 00D954 8000CD54 00000000 */ nop -/* 00D958 8000CD58 17000008 */ bnez $t8, .L8000CD7C -/* 00D95C 8000CD5C 00000000 */ nop -/* 00D960 8000CD60 0C01A75F */ jal func_80069D7C -/* 00D964 8000CD64 00000000 */ nop -/* 00D968 8000CD68 AFA20074 */ sw $v0, 0x74($sp) -/* 00D96C 8000CD6C 9059003B */ lbu $t9, 0x3b($v0) -/* 00D970 8000CD70 240D0001 */ li $t5, 1 -/* 00D974 8000CD74 AFB90130 */ sw $t9, 0x130($sp) -/* 00D978 8000CD78 A04D003B */ sb $t5, 0x3b($v0) -.L8000CD7C: -/* 00D97C 8000CD7C 0C01B683 */ jal func_8006DA0C -/* 00D980 8000CD80 00000000 */ nop -/* 00D984 8000CD84 0C01BAA4 */ jal func_8006EA90 -/* 00D988 8000CD88 AFA20138 */ sw $v0, 0x138($sp) -/* 00D98C 8000CD8C 0040B825 */ move $s7, $v0 -/* 00D990 8000CD90 0C0078A7 */ jal func_8001E29C -/* 00D994 8000CD94 24040003 */ li $a0, 3 -/* 00D998 8000CD98 3C0B8012 */ lui $t3, %hi(D_8011ADC5) # $t3, 0x8012 -/* 00D99C 8000CD9C 256BADC5 */ addiu $t3, %lo(D_8011ADC5) # addiu $t3, $t3, -0x523b -/* 00D9A0 8000CDA0 816E0000 */ lb $t6, ($t3) -/* 00D9A4 8000CDA4 3C0C8012 */ lui $t4, %hi(D_8011AE82) # $t4, 0x8012 -/* 00D9A8 8000CDA8 258CAE82 */ addiu $t4, %lo(D_8011AE82) # addiu $t4, $t4, -0x517e -/* 00D9AC 8000CDAC AFA20128 */ sw $v0, 0x128($sp) -/* 00D9B0 8000CDB0 A58E0000 */ sh $t6, ($t4) -/* 00D9B4 8000CDB4 92F80049 */ lbu $t8, 0x49($s7) -/* 00D9B8 8000CDB8 8EEF0004 */ lw $t7, 4($s7) -/* 00D9BC 8000CDBC 0018C880 */ sll $t9, $t8, 2 -/* 00D9C0 8000CDC0 01F91821 */ addu $v1, $t7, $t9 -/* 00D9C4 8000CDC4 8C640000 */ lw $a0, ($v1) -/* 00D9C8 8000CDC8 27A200B4 */ addiu $v0, $sp, 0xb4 -/* 00D9CC 8000CDCC 308D0001 */ andi $t5, $a0, 1 -/* 00D9D0 8000CDD0 15A00005 */ bnez $t5, .L8000CDE8 -/* 00D9D4 8000CDD4 27A500D4 */ addiu $a1, $sp, 0xd4 -/* 00D9D8 8000CDD8 348E0001 */ ori $t6, $a0, 1 -/* 00D9DC 8000CDDC AC6E0000 */ sw $t6, ($v1) -/* 00D9E0 8000CDE0 24180002 */ li $t8, 2 -/* 00D9E4 8000CDE4 A2380000 */ sb $t8, ($s1) -.L8000CDE8: -/* 00D9E8 8000CDE8 8FAF0068 */ lw $t7, 0x68($sp) -/* 00D9EC 8000CDEC 27A300F4 */ addiu $v1, $sp, 0xf4 -/* 00D9F0 8000CDF0 11E00003 */ beqz $t7, .L8000CE00 -/* 00D9F4 8000CDF4 27A400D4 */ addiu $a0, $sp, 0xd4 -/* 00D9F8 8000CDF8 24190002 */ li $t9, 2 -/* 00D9FC 8000CDFC A2390000 */ sb $t9, ($s1) -.L8000CE00: -/* 00DA00 8000CE00 24420004 */ addiu $v0, $v0, 4 -/* 00DA04 8000CE04 0045082B */ sltu $at, $v0, $a1 -/* 00DA08 8000CE08 24630004 */ addiu $v1, $v1, 4 -/* 00DA0C 8000CE0C 24840004 */ addiu $a0, $a0, 4 -/* 00DA10 8000CE10 AC60FFFC */ sw $zero, -4($v1) -/* 00DA14 8000CE14 AC80FFFC */ sw $zero, -4($a0) -/* 00DA18 8000CE18 1420FFF9 */ bnez $at, .L8000CE00 -/* 00DA1C 8000CE1C AC40FFFC */ sw $zero, -4($v0) -/* 00DA20 8000CE20 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 -/* 00DA24 8000CE24 8C42AE5C */ lw $v0, %lo(D_8011AE5C)($v0) -/* 00DA28 8000CE28 00009025 */ move $s2, $zero -/* 00DA2C 8000CE2C 18400050 */ blez $v0, .L8000CF70 -/* 00DA30 8000CE30 0000A825 */ move $s5, $zero -/* 00DA34 8000CE34 3C048012 */ lui $a0, %hi(D_8011AE58) # $a0, 0x8012 -/* 00DA38 8000CE38 8C84AE58 */ lw $a0, %lo(D_8011AE58)($a0) -/* 00DA3C 8000CE3C 00022880 */ sll $a1, $v0, 2 -/* 00DA40 8000CE40 27AA0094 */ addiu $t2, $sp, 0x94 -/* 00DA44 8000CE44 27A900B4 */ addiu $t1, $sp, 0xb4 -/* 00DA48 8000CE48 27A800D4 */ addiu $t0, $sp, 0xd4 -/* 00DA4C 8000CE4C 27A700F4 */ addiu $a3, $sp, 0xf4 -/* 00DA50 8000CE50 2406000B */ li $a2, 11 -.L8000CE54: -/* 00DA54 8000CE54 8C910000 */ lw $s1, ($a0) -/* 00DA58 8000CE58 26B50004 */ addiu $s5, $s5, 4 -/* 00DA5C 8000CE5C 862D0006 */ lh $t5, 6($s1) -/* 00DA60 8000CE60 00000000 */ nop -/* 00DA64 8000CE64 31AE8000 */ andi $t6, $t5, 0x8000 -/* 00DA68 8000CE68 15C0003E */ bnez $t6, .L8000CF64 -/* 00DA6C 8000CE6C 02A5082A */ slt $at, $s5, $a1 -/* 00DA70 8000CE70 86380048 */ lh $t8, 0x48($s1) -/* 00DA74 8000CE74 00000000 */ nop -/* 00DA78 8000CE78 14D8003A */ bne $a2, $t8, .L8000CF64 -/* 00DA7C 8000CE7C 02A5082A */ slt $at, $s5, $a1 -/* 00DA80 8000CE80 8E2F007C */ lw $t7, 0x7c($s1) -/* 00DA84 8000CE84 00000000 */ nop -/* 00DA88 8000CE88 160F0036 */ bne $s0, $t7, .L8000CF64 -/* 00DA8C 8000CE8C 02A5082A */ slt $at, $s5, $a1 -/* 00DA90 8000CE90 8E220078 */ lw $v0, 0x78($s1) -/* 00DA94 8000CE94 00000000 */ nop -/* 00DA98 8000CE98 28410008 */ slti $at, $v0, 8 -/* 00DA9C 8000CE9C 10200029 */ beqz $at, .L8000CF44 -/* 00DAA0 8000CEA0 00000000 */ nop -/* 00DAA4 8000CEA4 4459F800 */ cfc1 $t9, $31 -/* 00DAA8 8000CEA8 C624000C */ lwc1 $f4, 0xc($s1) -/* 00DAAC 8000CEAC 37210003 */ ori $at, $t9, 3 -/* 00DAB0 8000CEB0 38210002 */ xori $at, $at, 2 -/* 00DAB4 8000CEB4 44C1F800 */ ctc1 $at, $31 -/* 00DAB8 8000CEB8 00027080 */ sll $t6, $v0, 2 -/* 00DABC 8000CEBC 460021A4 */ cvt.w.s $f6, $f4 -/* 00DAC0 8000CEC0 00EEC021 */ addu $t8, $a3, $t6 -/* 00DAC4 8000CEC4 44D9F800 */ ctc1 $t9, $31 -/* 00DAC8 8000CEC8 440D3000 */ mfc1 $t5, $f6 -/* 00DACC 8000CECC 00000000 */ nop -/* 00DAD0 8000CED0 444FF800 */ cfc1 $t7, $31 -/* 00DAD4 8000CED4 AF0D0000 */ sw $t5, ($t8) -/* 00DAD8 8000CED8 35E10003 */ ori $at, $t7, 3 -/* 00DADC 8000CEDC 38210002 */ xori $at, $at, 2 -/* 00DAE0 8000CEE0 44C1F800 */ ctc1 $at, $31 -/* 00DAE4 8000CEE4 C6280010 */ lwc1 $f8, 0x10($s1) -/* 00DAE8 8000CEE8 8E2E0078 */ lw $t6, 0x78($s1) -/* 00DAEC 8000CEEC 460042A4 */ cvt.w.s $f10, $f8 -/* 00DAF0 8000CEF0 000E6880 */ sll $t5, $t6, 2 -/* 00DAF4 8000CEF4 44195000 */ mfc1 $t9, $f10 -/* 00DAF8 8000CEF8 010DC021 */ addu $t8, $t0, $t5 -/* 00DAFC 8000CEFC 35E10003 */ ori $at, $t7, 3 -/* 00DB00 8000CF00 38210002 */ xori $at, $at, 2 -/* 00DB04 8000CF04 44CFF800 */ ctc1 $t7, $31 -/* 00DB08 8000CF08 AF190000 */ sw $t9, ($t8) -/* 00DB0C 8000CF0C C6300014 */ lwc1 $f16, 0x14($s1) -/* 00DB10 8000CF10 44C1F800 */ ctc1 $at, $31 -/* 00DB14 8000CF14 8E2D0078 */ lw $t5, 0x78($s1) -/* 00DB18 8000CF18 460084A4 */ cvt.w.s $f18, $f16 -/* 00DB1C 8000CF1C 000DC880 */ sll $t9, $t5, 2 -/* 00DB20 8000CF20 440E9000 */ mfc1 $t6, $f18 -/* 00DB24 8000CF24 0139C021 */ addu $t8, $t1, $t9 -/* 00DB28 8000CF28 AF0E0000 */ sw $t6, ($t8) -/* 00DB2C 8000CF2C 8E2D0078 */ lw $t5, 0x78($s1) -/* 00DB30 8000CF30 44CFF800 */ ctc1 $t7, $31 -/* 00DB34 8000CF34 862F0000 */ lh $t7, ($s1) -/* 00DB38 8000CF38 000DC880 */ sll $t9, $t5, 2 -/* 00DB3C 8000CF3C 01597021 */ addu $t6, $t2, $t9 -/* 00DB40 8000CF40 ADCF0000 */ sw $t7, ($t6) -.L8000CF44: -/* 00DB44 8000CF44 8E22003C */ lw $v0, 0x3c($s1) -/* 00DB48 8000CF48 2401FFFF */ li $at, -1 -/* 00DB4C 8000CF4C 8043000B */ lb $v1, 0xb($v0) -/* 00DB50 8000CF50 00000000 */ nop -/* 00DB54 8000CF54 10610003 */ beq $v1, $at, .L8000CF64 -/* 00DB58 8000CF58 02A5082A */ slt $at, $s5, $a1 -/* 00DB5C 8000CF5C 0060F025 */ move $fp, $v1 -/* 00DB60 8000CF60 02A5082A */ slt $at, $s5, $a1 -.L8000CF64: -/* 00DB64 8000CF64 1420FFBB */ bnez $at, .L8000CE54 -/* 00DB68 8000CF68 24840004 */ addiu $a0, $a0, 4 -/* 00DB6C 8000CF6C 00009025 */ move $s2, $zero -.L8000CF70: -/* 00DB70 8000CF70 A17E0000 */ sb $fp, ($t3) -/* 00DB74 8000CF74 81780000 */ lb $t8, ($t3) -/* 00DB78 8000CF78 3C10800E */ lui $s0, %hi(D_800DC740) # $s0, 0x800e -/* 00DB7C 8000CF7C 240D0008 */ li $t5, 8 -/* 00DB80 8000CF80 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 -/* 00DB84 8000CF84 A5980000 */ sh $t8, ($t4) -/* 00DB88 8000CF88 2610C740 */ addiu $s0, %lo(D_800DC740) # addiu $s0, $s0, -0x38c0 -/* 00DB8C 8000CF8C 26620001 */ addiu $v0, $s3, 1 -/* 00DB90 8000CF90 AC2DAEF0 */ sw $t5, %lo(D_8011AEF0)($at) -/* 00DB94 8000CF94 AFA20144 */ sw $v0, 0x144($sp) -/* 00DB98 8000CF98 A2000000 */ sb $zero, ($s0) -/* 00DB9C 8000CF9C 0C01B067 */ jal func_8006C19C -/* 00DBA0 8000CFA0 AFA20058 */ sw $v0, 0x58($sp) -/* 00DBA4 8000CFA4 10400006 */ beqz $v0, .L8000CFC0 -/* 00DBA8 8000CFA8 24190002 */ li $t9, 2 -/* 00DBAC 8000CFAC 240F0001 */ li $t7, 1 -/* 00DBB0 8000CFB0 AFB90144 */ sw $t9, 0x144($sp) -/* 00DBB4 8000CFB4 A20F0000 */ sb $t7, ($s0) -/* 00DBB8 8000CFB8 0C009278 */ jal func_800249E0 -/* 00DBBC 8000CFBC 24040001 */ li $a0, 1 -.L8000CFC0: -/* 00DBC0 8000CFC0 8FAE0068 */ lw $t6, 0x68($sp) -/* 00DBC4 8000CFC4 24010005 */ li $at, 5 -/* 00DBC8 8000CFC8 15C10002 */ bne $t6, $at, .L8000CFD4 -/* 00DBCC 8000CFCC 3C0D8012 */ lui $t5, %hi(D_8011AEF5) # $t5, 0x8012 -/* 00DBD0 8000CFD0 A2800000 */ sb $zero, ($s4) -.L8000CFD4: -/* 00DBD4 8000CFD4 92980000 */ lbu $t8, ($s4) -/* 00DBD8 8000CFD8 3C018012 */ lui $at, %hi(D_8011AEF5) # $at, 0x8012 -/* 00DBDC 8000CFDC A038AEF5 */ sb $t8, %lo(D_8011AEF5)($at) -/* 00DBE0 8000CFE0 91ADAEF5 */ lbu $t5, %lo(D_8011AEF5)($t5) -/* 00DBE4 8000CFE4 24190005 */ li $t9, 5 -/* 00DBE8 8000CFE8 11A00003 */ beqz $t5, .L8000CFF8 -/* 00DBEC 8000CFEC 8FAF0068 */ lw $t7, 0x68($sp) -/* 00DBF0 8000CFF0 AFB90068 */ sw $t9, 0x68($sp) -/* 00DBF4 8000CFF4 8FAF0068 */ lw $t7, 0x68($sp) -.L8000CFF8: -/* 00DBF8 8000CFF8 24010005 */ li $at, 5 -/* 00DBFC 8000CFFC 31EE0040 */ andi $t6, $t7, 0x40 -/* 00DC00 8000D000 11E10006 */ beq $t7, $at, .L8000D01C -/* 00DC04 8000D004 AFAE0064 */ sw $t6, 0x64($sp) -/* 00DC08 8000D008 8FB80144 */ lw $t8, 0x144($sp) -/* 00DC0C 8000D00C 8FAF0144 */ lw $t7, 0x144($sp) -/* 00DC10 8000D010 2B010003 */ slti $at, $t8, 3 -/* 00DC14 8000D014 14200010 */ bnez $at, .L8000D058 -/* 00DC18 8000D018 24010002 */ li $at, 2 -.L8000D01C: -/* 00DC1C 8000D01C 8FAD0144 */ lw $t5, 0x144($sp) -/* 00DC20 8000D020 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 -/* 00DC24 8000D024 0C01B0BC */ jal func_8006C2F0 -/* 00DC28 8000D028 AC2DAEF0 */ sw $t5, %lo(D_8011AEF0)($at) -/* 00DC2C 8000D02C 14400010 */ bnez $v0, .L8000D070 -/* 00DC30 8000D030 3C03800E */ lui $v1, %hi(D_800DC708) # $v1, 0x800e -/* 00DC34 8000D034 2463C708 */ addiu $v1, %lo(D_800DC708) # addiu $v1, $v1, -0x38f8 -/* 00DC38 8000D038 84620000 */ lh $v0, ($v1) -/* 00DC3C 8000D03C 8FB90094 */ lw $t9, 0x94($sp) -/* 00DC40 8000D040 1040000B */ beqz $v0, .L8000D070 -/* 00DC44 8000D044 03227021 */ addu $t6, $t9, $v0 -/* 00DC48 8000D048 AFAE0094 */ sw $t6, 0x94($sp) -/* 00DC4C 8000D04C 10000008 */ b .L8000D070 -/* 00DC50 8000D050 A4600000 */ sh $zero, ($v1) -/* 00DC54 8000D054 24010002 */ li $at, 2 -.L8000D058: -/* 00DC58 8000D058 15E10006 */ bne $t7, $at, .L8000D074 -/* 00DC5C 8000D05C 8FB80064 */ lw $t8, 0x64($sp) -/* 00DC60 8000D060 0C027110 */ jal func_8009C440 -/* 00DC64 8000D064 00000000 */ nop -/* 00DC68 8000D068 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 -/* 00DC6C 8000D06C AC22AEF0 */ sw $v0, %lo(D_8011AEF0)($at) -.L8000D070: -/* 00DC70 8000D070 8FB80064 */ lw $t8, 0x64($sp) -.L8000D074: -/* 00DC74 8000D074 3C058012 */ lui $a1, %hi(D_8011AD3C) # $a1, 0x8012 -/* 00DC78 8000D078 13000005 */ beqz $t8, .L8000D090 -/* 00DC7C 8000D07C 24A5AD3C */ addiu $a1, %lo(D_8011AD3C) # addiu $a1, $a1, -0x52c4 -/* 00DC80 8000D080 3C068012 */ lui $a2, %hi(D_8011AEF0) # $a2, 0x8012 -/* 00DC84 8000D084 24C6AEF0 */ addiu $a2, %lo(D_8011AEF0) # addiu $a2, $a2, -0x5110 -/* 00DC88 8000D088 240D0004 */ li $t5, 4 -/* 00DC8C 8000D08C ACCD0000 */ sw $t5, ($a2) -.L8000D090: -/* 00DC90 8000D090 8FB90068 */ lw $t9, 0x68($sp) -/* 00DC94 8000D094 3C068012 */ lui $a2, %hi(D_8011AEF0) # $a2, 0x8012 -/* 00DC98 8000D098 24010008 */ li $at, 8 -/* 00DC9C 8000D09C 24C6AEF0 */ addiu $a2, %lo(D_8011AEF0) # addiu $a2, $a2, -0x5110 -/* 00DCA0 8000D0A0 17210006 */ bne $t9, $at, .L8000D0BC -/* 00DCA4 8000D0A4 A0A00000 */ sb $zero, ($a1) -/* 00DCA8 8000D0A8 24070001 */ li $a3, 1 -/* 00DCAC 8000D0AC 240E0002 */ li $t6, 2 -/* 00DCB0 8000D0B0 ACCE0000 */ sw $t6, ($a2) -/* 00DCB4 8000D0B4 AFA70144 */ sw $a3, 0x144($sp) -/* 00DCB8 8000D0B8 A0A70000 */ sb $a3, ($a1) -.L8000D0BC: -/* 00DCBC 8000D0BC 8FAF0138 */ lw $t7, 0x138($sp) -/* 00DCC0 8000D0C0 3C02800E */ lui $v0, %hi(D_800DC71C) # $v0, 0x800e -/* 00DCC4 8000D0C4 2442C71C */ addiu $v0, %lo(D_800DC71C) # addiu $v0, $v0, -0x38e4 -/* 00DCC8 8000D0C8 24070001 */ li $a3, 1 -/* 00DCCC 8000D0CC 15E70008 */ bne $t7, $a3, .L8000D0F0 -/* 00DCD0 8000D0D0 A0400000 */ sb $zero, ($v0) -/* 00DCD4 8000D0D4 8FB80068 */ lw $t8, 0x68($sp) -/* 00DCD8 8000D0D8 240D0002 */ li $t5, 2 -/* 00DCDC 8000D0DC 17000004 */ bnez $t8, .L8000D0F0 -/* 00DCE0 8000D0E0 00000000 */ nop -/* 00DCE4 8000D0E4 ACD60000 */ sw $s6, ($a2) -/* 00DCE8 8000D0E8 A0470000 */ sb $a3, ($v0) -/* 00DCEC 8000D0EC A0AD0000 */ sb $t5, ($a1) -.L8000D0F0: -/* 00DCF0 8000D0F0 8CC30000 */ lw $v1, ($a2) -/* 00DCF4 8000D0F4 00008025 */ move $s0, $zero -/* 00DCF8 8000D0F8 18600007 */ blez $v1, .L8000D118 -/* 00DCFC 8000D0FC 27A2011C */ addiu $v0, $sp, 0x11c -/* 00DD00 8000D100 00622021 */ addu $a0, $v1, $v0 -.L8000D104: -/* 00DD04 8000D104 24420001 */ addiu $v0, $v0, 1 -/* 00DD08 8000D108 0044082B */ sltu $at, $v0, $a0 -/* 00DD0C 8000D10C 1420FFFD */ bnez $at, .L8000D104 -/* 00DD10 8000D110 A040FFFF */ sb $zero, -1($v0) -/* 00DD14 8000D114 00008025 */ move $s0, $zero -.L8000D118: -/* 00DD18 8000D118 8FAE0144 */ lw $t6, 0x144($sp) -/* 00DD1C 8000D11C 00002825 */ move $a1, $zero -/* 00DD20 8000D120 19C0006F */ blez $t6, .L8000D2E0 -/* 00DD24 8000D124 01C01025 */ move $v0, $t6 -/* 00DD28 8000D128 31C20003 */ andi $v0, $t6, 3 -/* 00DD2C 8000D12C 1040001D */ beqz $v0, .L8000D1A4 -/* 00DD30 8000D130 00404825 */ move $t1, $v0 -/* 00DD34 8000D134 00107880 */ sll $t7, $s0, 2 -/* 00DD38 8000D138 01F07823 */ subu $t7, $t7, $s0 -/* 00DD3C 8000D13C 000F78C0 */ sll $t7, $t7, 3 -/* 00DD40 8000D140 02EF3021 */ addu $a2, $s7, $t7 -/* 00DD44 8000D144 27A80114 */ addiu $t0, $sp, 0x114 -/* 00DD48 8000D148 27A7011C */ addiu $a3, $sp, 0x11c -.L8000D14C: -/* 00DD4C 8000D14C 80C2005A */ lb $v0, 0x5a($a2) -/* 00DD50 8000D150 00000000 */ nop -/* 00DD54 8000D154 0043082A */ slt $at, $v0, $v1 -/* 00DD58 8000D158 10200007 */ beqz $at, .L8000D178 -/* 00DD5C 8000D15C 00E22021 */ addu $a0, $a3, $v0 -/* 00DD60 8000D160 80980000 */ lb $t8, ($a0) -/* 00DD64 8000D164 240D0001 */ li $t5, 1 -/* 00DD68 8000D168 17000004 */ bnez $t8, .L8000D17C -/* 00DD6C 8000D16C 0105C821 */ addu $t9, $t0, $a1 -/* 00DD70 8000D170 10000006 */ b .L8000D18C -/* 00DD74 8000D174 A08D0000 */ sb $t5, ($a0) -.L8000D178: -/* 00DD78 8000D178 0105C821 */ addu $t9, $t0, $a1 -.L8000D17C: -/* 00DD7C 8000D17C 24A50001 */ addiu $a1, $a1, 1 -/* 00DD80 8000D180 30AE00FF */ andi $t6, $a1, 0xff -/* 00DD84 8000D184 01C02825 */ move $a1, $t6 -/* 00DD88 8000D188 A3300000 */ sb $s0, ($t9) -.L8000D18C: -/* 00DD8C 8000D18C 26100001 */ addiu $s0, $s0, 1 -/* 00DD90 8000D190 1530FFEE */ bne $t1, $s0, .L8000D14C -/* 00DD94 8000D194 24C60018 */ addiu $a2, $a2, 0x18 -/* 00DD98 8000D198 8FAF0144 */ lw $t7, 0x144($sp) -/* 00DD9C 8000D19C 00000000 */ nop -/* 00DDA0 8000D1A0 120F004D */ beq $s0, $t7, .L8000D2D8 -.L8000D1A4: -/* 00DDA4 8000D1A4 0010C080 */ sll $t8, $s0, 2 -/* 00DDA8 8000D1A8 0310C023 */ subu $t8, $t8, $s0 -/* 00DDAC 8000D1AC 0018C0C0 */ sll $t8, $t8, 3 -/* 00DDB0 8000D1B0 02F83021 */ addu $a2, $s7, $t8 -/* 00DDB4 8000D1B4 27A7011C */ addiu $a3, $sp, 0x11c -/* 00DDB8 8000D1B8 27A80114 */ addiu $t0, $sp, 0x114 -.L8000D1BC: -/* 00DDBC 8000D1BC 80C2005A */ lb $v0, 0x5a($a2) -/* 00DDC0 8000D1C0 00000000 */ nop -/* 00DDC4 8000D1C4 0043082A */ slt $at, $v0, $v1 -/* 00DDC8 8000D1C8 10200007 */ beqz $at, .L8000D1E8 -/* 00DDCC 8000D1CC 00E22021 */ addu $a0, $a3, $v0 -/* 00DDD0 8000D1D0 808D0000 */ lb $t5, ($a0) -/* 00DDD4 8000D1D4 24190001 */ li $t9, 1 -/* 00DDD8 8000D1D8 15A00004 */ bnez $t5, .L8000D1EC -/* 00DDDC 8000D1DC 01057021 */ addu $t6, $t0, $a1 -/* 00DDE0 8000D1E0 10000006 */ b .L8000D1FC -/* 00DDE4 8000D1E4 A0990000 */ sb $t9, ($a0) -.L8000D1E8: -/* 00DDE8 8000D1E8 01057021 */ addu $t6, $t0, $a1 -.L8000D1EC: -/* 00DDEC 8000D1EC 24A50001 */ addiu $a1, $a1, 1 -/* 00DDF0 8000D1F0 30AF00FF */ andi $t7, $a1, 0xff -/* 00DDF4 8000D1F4 01E02825 */ move $a1, $t7 -/* 00DDF8 8000D1F8 A1D00000 */ sb $s0, ($t6) -.L8000D1FC: -/* 00DDFC 8000D1FC 80C20072 */ lb $v0, 0x72($a2) -/* 00DE00 8000D200 00000000 */ nop -/* 00DE04 8000D204 0043082A */ slt $at, $v0, $v1 -/* 00DE08 8000D208 10200007 */ beqz $at, .L8000D228 -/* 00DE0C 8000D20C 00E22021 */ addu $a0, $a3, $v0 -/* 00DE10 8000D210 80980000 */ lb $t8, ($a0) -/* 00DE14 8000D214 240D0001 */ li $t5, 1 -/* 00DE18 8000D218 17000004 */ bnez $t8, .L8000D22C -/* 00DE1C 8000D21C 01057021 */ addu $t6, $t0, $a1 -/* 00DE20 8000D220 10000007 */ b .L8000D240 -/* 00DE24 8000D224 A08D0000 */ sb $t5, ($a0) -.L8000D228: -/* 00DE28 8000D228 01057021 */ addu $t6, $t0, $a1 -.L8000D22C: -/* 00DE2C 8000D22C 24A50001 */ addiu $a1, $a1, 1 -/* 00DE30 8000D230 30AF00FF */ andi $t7, $a1, 0xff -/* 00DE34 8000D234 26190001 */ addiu $t9, $s0, 1 -/* 00DE38 8000D238 A1D90000 */ sb $t9, ($t6) -/* 00DE3C 8000D23C 01E02825 */ move $a1, $t7 -.L8000D240: -/* 00DE40 8000D240 80C2008A */ lb $v0, 0x8a($a2) -/* 00DE44 8000D244 00000000 */ nop -/* 00DE48 8000D248 0043082A */ slt $at, $v0, $v1 -/* 00DE4C 8000D24C 10200007 */ beqz $at, .L8000D26C -/* 00DE50 8000D250 00E22021 */ addu $a0, $a3, $v0 -/* 00DE54 8000D254 80980000 */ lb $t8, ($a0) -/* 00DE58 8000D258 240D0001 */ li $t5, 1 -/* 00DE5C 8000D25C 17000004 */ bnez $t8, .L8000D270 -/* 00DE60 8000D260 01057021 */ addu $t6, $t0, $a1 -/* 00DE64 8000D264 10000007 */ b .L8000D284 -/* 00DE68 8000D268 A08D0000 */ sb $t5, ($a0) -.L8000D26C: -/* 00DE6C 8000D26C 01057021 */ addu $t6, $t0, $a1 -.L8000D270: -/* 00DE70 8000D270 24A50001 */ addiu $a1, $a1, 1 -/* 00DE74 8000D274 30AF00FF */ andi $t7, $a1, 0xff -/* 00DE78 8000D278 26190002 */ addiu $t9, $s0, 2 -/* 00DE7C 8000D27C A1D90000 */ sb $t9, ($t6) -/* 00DE80 8000D280 01E02825 */ move $a1, $t7 -.L8000D284: -/* 00DE84 8000D284 80C200A2 */ lb $v0, 0xa2($a2) -/* 00DE88 8000D288 00000000 */ nop -/* 00DE8C 8000D28C 0043082A */ slt $at, $v0, $v1 -/* 00DE90 8000D290 10200007 */ beqz $at, .L8000D2B0 -/* 00DE94 8000D294 00E22021 */ addu $a0, $a3, $v0 -/* 00DE98 8000D298 80980000 */ lb $t8, ($a0) -/* 00DE9C 8000D29C 240D0001 */ li $t5, 1 -/* 00DEA0 8000D2A0 17000004 */ bnez $t8, .L8000D2B4 -/* 00DEA4 8000D2A4 01057021 */ addu $t6, $t0, $a1 -/* 00DEA8 8000D2A8 10000007 */ b .L8000D2C8 -/* 00DEAC 8000D2AC A08D0000 */ sb $t5, ($a0) -.L8000D2B0: -/* 00DEB0 8000D2B0 01057021 */ addu $t6, $t0, $a1 -.L8000D2B4: -/* 00DEB4 8000D2B4 24A50001 */ addiu $a1, $a1, 1 -/* 00DEB8 8000D2B8 30AF00FF */ andi $t7, $a1, 0xff -/* 00DEBC 8000D2BC 26190003 */ addiu $t9, $s0, 3 -/* 00DEC0 8000D2C0 A1D90000 */ sb $t9, ($t6) -/* 00DEC4 8000D2C4 01E02825 */ move $a1, $t7 -.L8000D2C8: -/* 00DEC8 8000D2C8 8FB80144 */ lw $t8, 0x144($sp) -/* 00DECC 8000D2CC 26100004 */ addiu $s0, $s0, 4 -/* 00DED0 8000D2D0 1618FFBA */ bne $s0, $t8, .L8000D1BC -/* 00DED4 8000D2D4 24C60060 */ addiu $a2, $a2, 0x60 -.L8000D2D8: -/* 00DED8 8000D2D8 8FA20144 */ lw $v0, 0x144($sp) -/* 00DEDC 8000D2DC 00000000 */ nop -.L8000D2E0: -/* 00DEE0 8000D2E0 0043082A */ slt $at, $v0, $v1 -/* 00DEE4 8000D2E4 27A7011C */ addiu $a3, $sp, 0x11c -/* 00DEE8 8000D2E8 27A80114 */ addiu $t0, $sp, 0x114 -/* 00DEEC 8000D2EC 10200019 */ beqz $at, .L8000D354 -/* 00DEF0 8000D2F0 00408025 */ move $s0, $v0 -/* 00DEF4 8000D2F4 00026880 */ sll $t5, $v0, 2 -/* 00DEF8 8000D2F8 01A26823 */ subu $t5, $t5, $v0 -/* 00DEFC 8000D2FC 000D68C0 */ sll $t5, $t5, 3 -/* 00DF00 8000D300 02ED3021 */ addu $a2, $s7, $t5 -.L8000D304: -/* 00DF04 8000D304 80C2005A */ lb $v0, 0x5a($a2) -/* 00DF08 8000D308 00000000 */ nop -/* 00DF0C 8000D30C 0043082A */ slt $at, $v0, $v1 -/* 00DF10 8000D310 10200007 */ beqz $at, .L8000D330 -/* 00DF14 8000D314 00E22021 */ addu $a0, $a3, $v0 -/* 00DF18 8000D318 80990000 */ lb $t9, ($a0) -/* 00DF1C 8000D31C 240E0001 */ li $t6, 1 -/* 00DF20 8000D320 17200004 */ bnez $t9, .L8000D334 -/* 00DF24 8000D324 01057821 */ addu $t7, $t0, $a1 -/* 00DF28 8000D328 10000006 */ b .L8000D344 -/* 00DF2C 8000D32C A08E0000 */ sb $t6, ($a0) -.L8000D330: -/* 00DF30 8000D330 01057821 */ addu $t7, $t0, $a1 -.L8000D334: -/* 00DF34 8000D334 24A50001 */ addiu $a1, $a1, 1 -/* 00DF38 8000D338 30B800FF */ andi $t8, $a1, 0xff -/* 00DF3C 8000D33C 03002825 */ move $a1, $t8 -/* 00DF40 8000D340 A1F00000 */ sb $s0, ($t7) -.L8000D344: -/* 00DF44 8000D344 26100001 */ addiu $s0, $s0, 1 -/* 00DF48 8000D348 0203082A */ slt $at, $s0, $v1 -/* 00DF4C 8000D34C 1420FFED */ bnez $at, .L8000D304 -/* 00DF50 8000D350 24C60018 */ addiu $a2, $a2, 0x18 -.L8000D354: -/* 00DF54 8000D354 00008025 */ move $s0, $zero -/* 00DF58 8000D358 18A0001C */ blez $a1, .L8000D3CC -/* 00DF5C 8000D35C 00A02025 */ move $a0, $a1 -/* 00DF60 8000D360 24150018 */ li $s5, 24 -.L8000D364: -/* 00DF64 8000D364 18600015 */ blez $v1, .L8000D3BC -/* 00DF68 8000D368 00F21021 */ addu $v0, $a3, $s2 -.L8000D36C: -/* 00DF6C 8000D36C 804D0000 */ lb $t5, ($v0) -/* 00DF70 8000D370 01107021 */ addu $t6, $t0, $s0 -/* 00DF74 8000D374 15A0000C */ bnez $t5, .L8000D3A8 -/* 00DF78 8000D378 00000000 */ nop -/* 00DF7C 8000D37C 81CF0000 */ lb $t7, ($t6) -/* 00DF80 8000D380 24190001 */ li $t9, 1 -/* 00DF84 8000D384 01F50019 */ multu $t7, $s5 -/* 00DF88 8000D388 A0590000 */ sb $t9, ($v0) -/* 00DF8C 8000D38C 3C038012 */ lui $v1, %hi(D_8011AEF0) # $v1, 0x8012 -/* 00DF90 8000D390 0000C012 */ mflo $t8 -/* 00DF94 8000D394 02F86821 */ addu $t5, $s7, $t8 -/* 00DF98 8000D398 A1B2005A */ sb $s2, 0x5a($t5) -/* 00DF9C 8000D39C 8C63AEF0 */ lw $v1, %lo(D_8011AEF0)($v1) -/* 00DFA0 8000D3A0 00000000 */ nop -/* 00DFA4 8000D3A4 00609025 */ move $s2, $v1 -.L8000D3A8: -/* 00DFA8 8000D3A8 26520001 */ addiu $s2, $s2, 1 -/* 00DFAC 8000D3AC 0243082A */ slt $at, $s2, $v1 -/* 00DFB0 8000D3B0 1420FFEE */ bnez $at, .L8000D36C -/* 00DFB4 8000D3B4 00F21021 */ addu $v0, $a3, $s2 -/* 00DFB8 8000D3B8 00009025 */ move $s2, $zero -.L8000D3BC: -/* 00DFBC 8000D3BC 26100001 */ addiu $s0, $s0, 1 -/* 00DFC0 8000D3C0 1604FFE8 */ bne $s0, $a0, .L8000D364 -/* 00DFC4 8000D3C4 00000000 */ nop -/* 00DFC8 8000D3C8 00008025 */ move $s0, $zero -.L8000D3CC: -/* 00DFCC 8000D3CC 3C05FFFF */ lui $a1, (0xFFFF00FF >> 16) # lui $a1, 0xffff -/* 00DFD0 8000D3D0 24150018 */ li $s5, 24 -/* 00DFD4 8000D3D4 34A500FF */ ori $a1, (0xFFFF00FF & 0xFFFF) # ori $a1, $a1, 0xff -/* 00DFD8 8000D3D8 0C01C327 */ jal func_80070C9C -/* 00DFDC 8000D3DC 24040010 */ li $a0, 16 -/* 00DFE0 8000D3E0 A440000C */ sh $zero, 0xc($v0) -/* 00DFE4 8000D3E4 A440000A */ sh $zero, 0xa($v0) -/* 00DFE8 8000D3E8 A4400008 */ sh $zero, 8($v0) -/* 00DFEC 8000D3EC 8FB90078 */ lw $t9, 0x78($sp) -/* 00DFF0 8000D3F0 0040B025 */ move $s6, $v0 -/* 00DFF4 8000D3F4 832E004D */ lb $t6, 0x4d($t9) -/* 00DFF8 8000D3F8 2419FFFF */ li $t9, -1 -/* 00DFFC 8000D3FC 15C00004 */ bnez $t6, .L8000D410 -/* 00E000 8000D400 3C038012 */ lui $v1, %hi(D_8011AEF0) # $v1, 0x8012 -/* 00E004 8000D404 3C018012 */ lui $at, %hi(D_8011AE02) # $at, 0x8012 -/* 00E008 8000D408 10000004 */ b .L8000D41C -/* 00E00C 8000D40C A020AE02 */ sb $zero, %lo(D_8011AE02)($at) -.L8000D410: -/* 00E010 8000D410 240F0001 */ li $t7, 1 -/* 00E014 8000D414 3C018012 */ lui $at, %hi(D_8011AE02) # $at, 0x8012 -/* 00E018 8000D418 A02FAE02 */ sb $t7, %lo(D_8011AE02)($at) -.L8000D41C: -/* 00E01C 8000D41C 8FB80078 */ lw $t8, 0x78($sp) -/* 00E020 8000D420 8C63AEF0 */ lw $v1, %lo(D_8011AEF0)($v1) -/* 00E024 8000D424 830D00B8 */ lb $t5, 0xb8($t8) -/* 00E028 8000D428 3C018012 */ lui $at, %hi(D_8011AD25) # $at, 0x8012 -/* 00E02C 8000D42C A3B90127 */ sb $t9, 0x127($sp) -/* 00E030 8000D430 1860015E */ blez $v1, .L8000D9AC -/* 00E034 8000D434 A02DAD25 */ sb $t5, %lo(D_8011AD25)($at) -/* 00E038 8000D438 8FA40068 */ lw $a0, 0x68($sp) -/* 00E03C 8000D43C 24020005 */ li $v0, 5 -.L8000D440: -/* 00E040 8000D440 10440019 */ beq $v0, $a0, .L8000D4A8 -/* 00E044 8000D444 0200A025 */ move $s4, $s0 -/* 00E048 8000D448 8FAE0064 */ lw $t6, 0x64($sp) -/* 00E04C 8000D44C 3C0F8012 */ lui $t7, %hi(D_8011AD3C) # $t7, 0x8012 -/* 00E050 8000D450 15C00015 */ bnez $t6, .L8000D4A8 -/* 00E054 8000D454 00000000 */ nop -/* 00E058 8000D458 81EFAD3C */ lb $t7, %lo(D_8011AD3C)($t7) -/* 00E05C 8000D45C 00000000 */ nop -/* 00E060 8000D460 15E00011 */ bnez $t7, .L8000D4A8 -/* 00E064 8000D464 00000000 */ nop -/* 00E068 8000D468 0000A025 */ move $s4, $zero -.L8000D46C: -/* 00E06C 8000D46C 02550019 */ multu $s2, $s5 -/* 00E070 8000D470 0000C012 */ mflo $t8 -/* 00E074 8000D474 02F86821 */ addu $t5, $s7, $t8 -/* 00E078 8000D478 81B9005A */ lb $t9, 0x5a($t5) -/* 00E07C 8000D47C 00000000 */ nop -/* 00E080 8000D480 16190003 */ bne $s0, $t9, .L8000D490 -/* 00E084 8000D484 00000000 */ nop -/* 00E088 8000D488 0240A025 */ move $s4, $s2 -/* 00E08C 8000D48C 00609025 */ move $s2, $v1 -.L8000D490: -/* 00E090 8000D490 26520001 */ addiu $s2, $s2, 1 -/* 00E094 8000D494 0243082A */ slt $at, $s2, $v1 -/* 00E098 8000D498 1420FFF4 */ bnez $at, .L8000D46C -/* 00E09C 8000D49C 00000000 */ nop -/* 00E0A0 8000D4A0 10000001 */ b .L8000D4A8 -/* 00E0A4 8000D4A4 00009025 */ move $s2, $zero -.L8000D4A8: -/* 00E0A8 8000D4A8 8FAE0144 */ lw $t6, 0x144($sp) -/* 00E0AC 8000D4AC 240F0004 */ li $t7, 4 -/* 00E0B0 8000D4B0 028E082A */ slt $at, $s4, $t6 -/* 00E0B4 8000D4B4 10200003 */ beqz $at, .L8000D4C4 -/* 00E0B8 8000D4B8 00103080 */ sll $a2, $s0, 2 -/* 00E0BC 8000D4BC 10000002 */ b .L8000D4C8 -/* 00E0C0 8000D4C0 A6D4000E */ sh $s4, 0xe($s6) -.L8000D4C4: -/* 00E0C4 8000D4C4 A6CF000E */ sh $t7, 0xe($s6) -.L8000D4C8: -/* 00E0C8 8000D4C8 14440005 */ bne $v0, $a0, .L8000D4E0 -/* 00E0CC 8000D4CC 27AD00F4 */ addiu $t5, $sp, 0xf4 -/* 00E0D0 8000D4D0 86D8000E */ lh $t8, 0xe($s6) -/* 00E0D4 8000D4D4 24010004 */ li $at, 4 -/* 00E0D8 8000D4D8 1301012E */ beq $t8, $at, .L8000D994 -/* 00E0DC 8000D4DC 00000000 */ nop -.L8000D4E0: -/* 00E0E0 8000D4E0 3C028012 */ lui $v0, %hi(D_8011AD3C) # $v0, 0x8012 -/* 00E0E4 8000D4E4 00CD9821 */ addu $s3, $a2, $t5 -/* 00E0E8 8000D4E8 27B900D4 */ addiu $t9, $sp, 0xd4 -/* 00E0EC 8000D4EC 8042AD3C */ lb $v0, %lo(D_8011AD3C)($v0) -/* 00E0F0 8000D4F0 00D97021 */ addu $t6, $a2, $t9 -/* 00E0F4 8000D4F4 27AD0094 */ addiu $t5, $sp, 0x94 -/* 00E0F8 8000D4F8 27AF00B4 */ addiu $t7, $sp, 0xb4 -/* 00E0FC 8000D4FC 00CFC021 */ addu $t8, $a2, $t7 -/* 00E100 8000D500 00CDC821 */ addu $t9, $a2, $t5 -/* 00E104 8000D504 24010001 */ li $at, 1 -/* 00E108 8000D508 AFB90044 */ sw $t9, 0x44($sp) -/* 00E10C 8000D50C AFB80048 */ sw $t8, 0x48($sp) -/* 00E110 8000D510 AFAE004C */ sw $t6, 0x4c($sp) -/* 00E114 8000D514 14410012 */ bne $v0, $at, .L8000D560 -/* 00E118 8000D518 24110001 */ li $s1, 1 -/* 00E11C 8000D51C 16000009 */ bnez $s0, .L8000D544 -/* 00E120 8000D520 3C188012 */ lui $t8, %hi(D_8011AD25) # $t8, 0x8012 -/* 00E124 8000D524 3C0E8012 */ lui $t6, %hi(D_8011AD25) # $t6, 0x8012 -/* 00E128 8000D528 81CEAD25 */ lb $t6, %lo(D_8011AD25)($t6) -/* 00E12C 8000D52C 3C1E800E */ lui $fp, 0x800e -/* 00E130 8000D530 000E7840 */ sll $t7, $t6, 1 -/* 00E134 8000D534 03CFF021 */ addu $fp, $fp, $t7 -/* 00E138 8000D538 83DEC820 */ lb $fp, -0x37e0($fp) -/* 00E13C 8000D53C 10000028 */ b .L8000D5E0 -/* 00E140 8000D540 00000000 */ nop -.L8000D544: -/* 00E144 8000D544 8318AD25 */ lb $t8, %lo(D_8011AD25)($t8) -/* 00E148 8000D548 3C1E800E */ lui $fp, 0x800e -/* 00E14C 8000D54C 00186840 */ sll $t5, $t8, 1 -/* 00E150 8000D550 03CDF021 */ addu $fp, $fp, $t5 -/* 00E154 8000D554 83DEC821 */ lb $fp, -0x37df($fp) -/* 00E158 8000D558 10000021 */ b .L8000D5E0 -/* 00E15C 8000D55C 00000000 */ nop -.L8000D560: -/* 00E160 8000D560 24010002 */ li $at, 2 -/* 00E164 8000D564 14410006 */ bne $v0, $at, .L8000D580 -/* 00E168 8000D568 00000000 */ nop -/* 00E16C 8000D56C 8FB90078 */ lw $t9, 0x78($sp) -/* 00E170 8000D570 00000000 */ nop -/* 00E174 8000D574 833E004D */ lb $fp, 0x4d($t9) -/* 00E178 8000D578 10000019 */ b .L8000D5E0 -/* 00E17C 8000D57C 00000000 */ nop -.L8000D580: -/* 00E180 8000D580 86CE000E */ lh $t6, 0xe($s6) -/* 00E184 8000D584 24010004 */ li $at, 4 -/* 00E188 8000D588 11C10006 */ beq $t6, $at, .L8000D5A4 -/* 00E18C 8000D58C 00002025 */ move $a0, $zero -/* 00E190 8000D590 0C01B067 */ jal func_8006C19C -/* 00E194 8000D594 AFA60054 */ sw $a2, 0x54($sp) -/* 00E198 8000D598 8FA60054 */ lw $a2, 0x54($sp) -/* 00E19C 8000D59C 10400006 */ beqz $v0, .L8000D5B8 -/* 00E1A0 8000D5A0 00002025 */ move $a0, $zero -.L8000D5A4: -/* 00E1A4 8000D5A4 0C027094 */ jal func_8009C250 -/* 00E1A8 8000D5A8 AFA60054 */ sw $a2, 0x54($sp) -/* 00E1AC 8000D5AC 8FA60054 */ lw $a2, 0x54($sp) -/* 00E1B0 8000D5B0 1000000B */ b .L8000D5E0 -/* 00E1B4 8000D5B4 0040F025 */ move $fp, $v0 -.L8000D5B8: -/* 00E1B8 8000D5B8 8FAF0144 */ lw $t7, 0x144($sp) -/* 00E1BC 8000D5BC 00000000 */ nop -/* 00E1C0 8000D5C0 29E10002 */ slti $at, $t7, 2 -/* 00E1C4 8000D5C4 14200006 */ bnez $at, .L8000D5E0 -/* 00E1C8 8000D5C8 00000000 */ nop -/* 00E1CC 8000D5CC 86C4000E */ lh $a0, 0xe($s6) -/* 00E1D0 8000D5D0 0C027094 */ jal func_8009C250 -/* 00E1D4 8000D5D4 AFA60054 */ sw $a2, 0x54($sp) -/* 00E1D8 8000D5D8 8FA60054 */ lw $a2, 0x54($sp) -/* 00E1DC 8000D5DC 0040F025 */ move $fp, $v0 -.L8000D5E0: -/* 00E1E0 8000D5E0 3C188012 */ lui $t8, %hi(D_8011AD3C) # $t8, 0x8012 -/* 00E1E4 8000D5E4 8318AD3C */ lb $t8, %lo(D_8011AD3C)($t8) -/* 00E1E8 8000D5E8 86C3000E */ lh $v1, 0xe($s6) -/* 00E1EC 8000D5EC 24010002 */ li $at, 2 -/* 00E1F0 8000D5F0 17010010 */ bne $t8, $at, .L8000D634 -/* 00E1F4 8000D5F4 3C0D800E */ lui $t5, 0x800e -/* 00E1F8 8000D5F8 01B06821 */ addu $t5, $t5, $s0 -/* 00E1FC 8000D5FC 81ADC840 */ lb $t5, -0x37c0($t5) -/* 00E200 8000D600 001E7080 */ sll $t6, $fp, 2 -/* 00E204 8000D604 01DE7021 */ addu $t6, $t6, $fp -/* 00E208 8000D608 000DC840 */ sll $t9, $t5, 1 -/* 00E20C 8000D60C 000E7880 */ sll $t7, $t6, 2 -/* 00E210 8000D610 032FC021 */ addu $t8, $t9, $t7 -/* 00E214 8000D614 00146880 */ sll $t5, $s4, 2 -/* 00E218 8000D618 3C02800E */ lui $v0, 0x800e -/* 00E21C 8000D61C 00581021 */ addu $v0, $v0, $t8 -/* 00E220 8000D620 01B46823 */ subu $t5, $t5, $s4 -/* 00E224 8000D624 000D68C0 */ sll $t5, $t5, 3 -/* 00E228 8000D628 8442C7A8 */ lh $v0, -0x3858($v0) -/* 00E22C 8000D62C 1000001A */ b .L8000D698 -/* 00E230 8000D630 02ED3821 */ addu $a3, $s7, $t5 -.L8000D634: -/* 00E234 8000D634 2BC10005 */ slti $at, $fp, 5 -/* 00E238 8000D638 10200010 */ beqz $at, .L8000D67C -/* 00E23C 8000D63C 001EC840 */ sll $t9, $fp, 1 -/* 00E240 8000D640 02950019 */ multu $s4, $s5 -/* 00E244 8000D644 001EC080 */ sll $t8, $fp, 2 -/* 00E248 8000D648 031EC021 */ addu $t8, $t8, $fp -/* 00E24C 8000D64C 00186880 */ sll $t5, $t8, 2 -/* 00E250 8000D650 3C02800E */ lui $v0, 0x800e -/* 00E254 8000D654 00007012 */ mflo $t6 -/* 00E258 8000D658 02EE3821 */ addu $a3, $s7, $t6 -/* 00E25C 8000D65C 80F90059 */ lb $t9, 0x59($a3) -/* 00E260 8000D660 00000000 */ nop -/* 00E264 8000D664 00197840 */ sll $t7, $t9, 1 -/* 00E268 8000D668 01ED7021 */ addu $t6, $t7, $t5 -/* 00E26C 8000D66C 004E1021 */ addu $v0, $v0, $t6 -/* 00E270 8000D670 8442C7A8 */ lh $v0, -0x3858($v0) -/* 00E274 8000D674 10000009 */ b .L8000D69C -/* 00E278 8000D678 304F0100 */ andi $t7, $v0, 0x100 -.L8000D67C: -/* 00E27C 8000D67C 3C02800E */ lui $v0, 0x800e -/* 00E280 8000D680 0014C080 */ sll $t8, $s4, 2 -/* 00E284 8000D684 0314C023 */ subu $t8, $t8, $s4 -/* 00E288 8000D688 00591021 */ addu $v0, $v0, $t9 -/* 00E28C 8000D68C 0018C0C0 */ sll $t8, $t8, 3 -/* 00E290 8000D690 8442C802 */ lh $v0, -0x37fe($v0) -/* 00E294 8000D694 02F83821 */ addu $a3, $s7, $t8 -.L8000D698: -/* 00E298 8000D698 304F0100 */ andi $t7, $v0, 0x100 -.L8000D69C: -/* 00E29C 8000D69C 000F6843 */ sra $t5, $t7, 1 -/* 00E2A0 8000D6A0 35AE0010 */ ori $t6, $t5, 0x10 -/* 00E2A4 8000D6A4 A2C20000 */ sb $v0, ($s6) -/* 00E2A8 8000D6A8 A2CE0001 */ sb $t6, 1($s6) -/* 00E2AC 8000D6AC 8E790000 */ lw $t9, ($s3) -/* 00E2B0 8000D6B0 24010004 */ li $at, 4 -/* 00E2B4 8000D6B4 A6D90002 */ sh $t9, 2($s6) -/* 00E2B8 8000D6B8 8FB8004C */ lw $t8, 0x4c($sp) -/* 00E2BC 8000D6BC 24040001 */ li $a0, 1 -/* 00E2C0 8000D6C0 8F0F0000 */ lw $t7, ($t8) -/* 00E2C4 8000D6C4 00000000 */ nop -/* 00E2C8 8000D6C8 A6CF0004 */ sh $t7, 4($s6) -/* 00E2CC 8000D6CC 8FAD0048 */ lw $t5, 0x48($sp) -/* 00E2D0 8000D6D0 00000000 */ nop -/* 00E2D4 8000D6D4 8DAE0000 */ lw $t6, ($t5) -/* 00E2D8 8000D6D8 00000000 */ nop -/* 00E2DC 8000D6DC A6CE0006 */ sh $t6, 6($s6) -/* 00E2E0 8000D6E0 8FB90044 */ lw $t9, 0x44($sp) -/* 00E2E4 8000D6E4 00000000 */ nop -/* 00E2E8 8000D6E8 8F380000 */ lw $t8, ($t9) -/* 00E2EC 8000D6EC 14610008 */ bne $v1, $at, .L8000D710 -/* 00E2F0 8000D6F0 A6D8000C */ sh $t8, 0xc($s6) -/* 00E2F4 8000D6F4 AFA60054 */ sw $a2, 0x54($sp) -/* 00E2F8 8000D6F8 0C01867D */ jal func_800619F4 -/* 00E2FC 8000D6FC AFA7005C */ sw $a3, 0x5c($sp) -/* 00E300 8000D700 8FA60054 */ lw $a2, 0x54($sp) -/* 00E304 8000D704 8FA7005C */ lw $a3, 0x5c($sp) -/* 00E308 8000D708 86C3000E */ lh $v1, 0xe($s6) -/* 00E30C 8000D70C 00000000 */ nop -.L8000D710: -/* 00E310 8000D710 24010004 */ li $at, 4 -/* 00E314 8000D714 14610007 */ bne $v1, $at, .L8000D734 -/* 00E318 8000D718 00002025 */ move $a0, $zero -/* 00E31C 8000D71C 8FAF0144 */ lw $t7, 0x144($sp) -/* 00E320 8000D720 24110005 */ li $s1, 5 -/* 00E324 8000D724 29E10002 */ slti $at, $t7, 2 -/* 00E328 8000D728 14200002 */ bnez $at, .L8000D734 -/* 00E32C 8000D72C 362D0008 */ ori $t5, $s1, 8 -/* 00E330 8000D730 01A08825 */ move $s1, $t5 -.L8000D734: -/* 00E334 8000D734 24010004 */ li $at, 4 -/* 00E338 8000D738 10610007 */ beq $v1, $at, .L8000D758 -/* 00E33C 8000D73C 2BC10005 */ slti $at, $fp, 5 -/* 00E340 8000D740 8FAE0144 */ lw $t6, 0x144($sp) -/* 00E344 8000D744 24010001 */ li $at, 1 -/* 00E348 8000D748 15C10002 */ bne $t6, $at, .L8000D754 -/* 00E34C 8000D74C 36390010 */ ori $t9, $s1, 0x10 -/* 00E350 8000D750 03208825 */ move $s1, $t9 -.L8000D754: -/* 00E354 8000D754 2BC10005 */ slti $at, $fp, 5 -.L8000D758: -/* 00E358 8000D758 14200008 */ bnez $at, .L8000D77C -/* 00E35C 8000D75C 00000000 */ nop -/* 00E360 8000D760 24110001 */ li $s1, 1 -/* 00E364 8000D764 AFA60054 */ sw $a2, 0x54($sp) -/* 00E368 8000D768 0C01867D */ jal func_800619F4 -/* 00E36C 8000D76C AFA7005C */ sw $a3, 0x5c($sp) -/* 00E370 8000D770 8FA60054 */ lw $a2, 0x54($sp) -/* 00E374 8000D774 8FA7005C */ lw $a3, 0x5c($sp) -/* 00E378 8000D778 00000000 */ nop -.L8000D77C: -/* 00E37C 8000D77C 02C02025 */ move $a0, $s6 -/* 00E380 8000D780 02202825 */ move $a1, $s1 -/* 00E384 8000D784 AFA60054 */ sw $a2, 0x54($sp) -/* 00E388 8000D788 0C003A95 */ jal func_8000EA54 -/* 00E38C 8000D78C AFA7005C */ sw $a3, 0x5c($sp) -/* 00E390 8000D790 8FB80044 */ lw $t8, 0x44($sp) -/* 00E394 8000D794 8FA60054 */ lw $a2, 0x54($sp) -/* 00E398 8000D798 8F0F0000 */ lw $t7, ($t8) -/* 00E39C 8000D79C 8FA7005C */ lw $a3, 0x5c($sp) -/* 00E3A0 8000D7A0 3C0D8012 */ lui $t5, %hi(D_8011AEE4) # $t5, 0x8012 -/* 00E3A4 8000D7A4 A44F0000 */ sh $t7, ($v0) -/* 00E3A8 8000D7A8 8DADAEE4 */ lw $t5, %lo(D_8011AEE4)($t5) -/* 00E3AC 8000D7AC 3C198012 */ lui $t9, %hi(D_8011AEE8) # $t9, 0x8012 -/* 00E3B0 8000D7B0 01A67021 */ addu $t6, $t5, $a2 -/* 00E3B4 8000D7B4 ADC20000 */ sw $v0, ($t6) -/* 00E3B8 8000D7B8 8F39AEE8 */ lw $t9, %lo(D_8011AEE8)($t9) -/* 00E3BC 8000D7BC 3C0F8012 */ lui $t7, %hi(D_8011AEEC) # $t7, 0x8012 -/* 00E3C0 8000D7C0 0326C021 */ addu $t8, $t9, $a2 -/* 00E3C4 8000D7C4 AF020000 */ sw $v0, ($t8) -/* 00E3C8 8000D7C8 8DEFAEEC */ lw $t7, %lo(D_8011AEEC)($t7) -/* 00E3CC 8000D7CC 00146880 */ sll $t5, $s4, 2 -/* 00E3D0 8000D7D0 01ED7021 */ addu $t6, $t7, $t5 -/* 00E3D4 8000D7D4 ADC20000 */ sw $v0, ($t6) -/* 00E3D8 8000D7D8 8C530064 */ lw $s3, 0x64($v0) -/* 00E3DC 8000D7DC AC40003C */ sw $zero, 0x3c($v0) -/* 00E3E0 8000D7E0 A27E01D6 */ sb $fp, 0x1d6($s3) -/* 00E3E4 8000D7E4 A27E01D7 */ sb $fp, 0x1d7($s3) -/* 00E3E8 8000D7E8 83B90127 */ lb $t9, 0x127($sp) -/* 00E3EC 8000D7EC 2401FFFF */ li $at, -1 -/* 00E3F0 8000D7F0 13210005 */ beq $t9, $at, .L8000D808 -/* 00E3F4 8000D7F4 00408825 */ move $s1, $v0 -/* 00E3F8 8000D7F8 133E0003 */ beq $t9, $fp, .L8000D808 -/* 00E3FC 8000D7FC 24180001 */ li $t8, 1 -/* 00E400 8000D800 3C018012 */ lui $at, %hi(D_8011AD20) # $at, 0x8012 -/* 00E404 8000D804 A038AD20 */ sb $t8, %lo(D_8011AD20)($at) -.L8000D808: -/* 00E408 8000D808 A3BE0127 */ sb $fp, 0x127($sp) -/* 00E40C 8000D80C 826201D6 */ lb $v0, 0x1d6($s3) -/* 00E410 8000D810 24010002 */ li $at, 2 -/* 00E414 8000D814 10410005 */ beq $v0, $at, .L8000D82C -/* 00E418 8000D818 240F0001 */ li $t7, 1 -/* 00E41C 8000D81C 24010007 */ li $at, 7 -/* 00E420 8000D820 10410002 */ beq $v0, $at, .L8000D82C -/* 00E424 8000D824 24010008 */ li $at, 8 -/* 00E428 8000D828 14410002 */ bne $v0, $at, .L8000D834 -.L8000D82C: -/* 00E42C 8000D82C 3C018012 */ lui $at, %hi(D_8011AE02) # $at, 0x8012 -/* 00E430 8000D830 A02FAE02 */ sb $t7, %lo(D_8011AE02)($at) -.L8000D834: -/* 00E434 8000D834 A27E01CB */ sb $fp, 0x1cb($s3) -/* 00E438 8000D838 826201CB */ lb $v0, 0x1cb($s3) -/* 00E43C 8000D83C 3C19800E */ lui $t9, 0x800e -/* 00E440 8000D840 04400003 */ bltz $v0, .L8000D850 -/* 00E444 8000D844 28410003 */ slti $at, $v0, 3 -/* 00E448 8000D848 14200002 */ bnez $at, .L8000D854 -/* 00E44C 8000D84C 00000000 */ nop -.L8000D850: -/* 00E450 8000D850 A26001CB */ sb $zero, 0x1cb($s3) -.L8000D854: -/* 00E454 8000D854 A2740002 */ sb $s4, 2($s3) -/* 00E458 8000D858 80ED0059 */ lb $t5, 0x59($a3) -/* 00E45C 8000D85C 3C0E8012 */ lui $t6, %hi(D_8011AD3C) # $t6, 0x8012 -/* 00E460 8000D860 A26D0003 */ sb $t5, 3($s3) -/* 00E464 8000D864 81CEAD3C */ lb $t6, %lo(D_8011AD3C)($t6) -/* 00E468 8000D868 24010002 */ li $at, 2 -/* 00E46C 8000D86C 15C10004 */ bne $t6, $at, .L8000D880 -/* 00E470 8000D870 0330C821 */ addu $t9, $t9, $s0 -/* 00E474 8000D874 8339C840 */ lb $t9, -0x37c0($t9) -/* 00E478 8000D878 10000004 */ b .L8000D88C -/* 00E47C 8000D87C A2790003 */ sb $t9, 3($s3) -.L8000D880: -/* 00E480 8000D880 80F80059 */ lb $t8, 0x59($a3) -/* 00E484 8000D884 00000000 */ nop -/* 00E488 8000D888 A2780003 */ sb $t8, 3($s3) -.L8000D88C: -/* 00E48C 8000D88C 8FAF0068 */ lw $t7, 0x68($sp) -/* 00E490 8000D890 24010040 */ li $at, 64 -/* 00E494 8000D894 15E10003 */ bne $t7, $at, .L8000D8A4 -/* 00E498 8000D898 240D0008 */ li $t5, 8 -/* 00E49C 8000D89C 10000002 */ b .L8000D8A8 -/* 00E4A0 8000D8A0 A26D0185 */ sb $t5, 0x185($s3) -.L8000D8A4: -/* 00E4A4 8000D8A4 A2600185 */ sb $zero, 0x185($s3) -.L8000D8A8: -/* 00E4A8 8000D8A8 0C0270C3 */ jal func_8009C30C -/* 00E4AC 8000D8AC 00000000 */ nop -/* 00E4B0 8000D8B0 304E0080 */ andi $t6, $v0, 0x80 -/* 00E4B4 8000D8B4 11C0000B */ beqz $t6, .L8000D8E4 -/* 00E4B8 8000D8B8 8FAD0138 */ lw $t5, 0x138($sp) -/* 00E4BC 8000D8BC 8FB90064 */ lw $t9, 0x64($sp) -/* 00E4C0 8000D8C0 00000000 */ nop -/* 00E4C4 8000D8C4 17200007 */ bnez $t9, .L8000D8E4 -/* 00E4C8 8000D8C8 8FAD0138 */ lw $t5, 0x138($sp) -/* 00E4CC 8000D8CC 86780000 */ lh $t8, ($s3) -/* 00E4D0 8000D8D0 2401FFFF */ li $at, -1 -/* 00E4D4 8000D8D4 13010002 */ beq $t8, $at, .L8000D8E0 -/* 00E4D8 8000D8D8 240F000A */ li $t7, 10 -/* 00E4DC 8000D8DC A26F0185 */ sb $t7, 0x185($s3) -.L8000D8E0: -/* 00E4E0 8000D8E0 8FAD0138 */ lw $t5, 0x138($sp) -.L8000D8E4: -/* 00E4E4 8000D8E4 24010001 */ li $at, 1 -/* 00E4E8 8000D8E8 15A10004 */ bne $t5, $at, .L8000D8FC -/* 00E4EC 8000D8EC 3C0E8012 */ lui $t6, %hi(D_8011AD3C) # $t6, 0x8012 -/* 00E4F0 8000D8F0 81CEAD3C */ lb $t6, %lo(D_8011AD3C)($t6) -/* 00E4F4 8000D8F4 24010002 */ li $at, 2 -/* 00E4F8 8000D8F8 15C10009 */ bne $t6, $at, .L8000D920 -.L8000D8FC: -/* 00E4FC 8000D8FC 2BC10005 */ slti $at, $fp, 5 -/* 00E500 8000D900 10200007 */ beqz $at, .L8000D920 -/* 00E504 8000D904 00000000 */ nop -/* 00E508 8000D908 82640003 */ lb $a0, 3($s3) -/* 00E50C 8000D90C 826501D6 */ lb $a1, 0x1d6($s3) -/* 00E510 8000D910 0C0012D0 */ jal func_80004B40 -/* 00E514 8000D914 00000000 */ nop -/* 00E518 8000D918 10000002 */ b .L8000D924 -/* 00E51C 8000D91C AE620118 */ sw $v0, 0x118($s3) -.L8000D920: -/* 00E520 8000D920 AE600118 */ sw $zero, 0x118($s3) -.L8000D924: -/* 00E524 8000D924 82790003 */ lb $t9, 3($s3) -/* 00E528 8000D928 8FB80128 */ lw $t8, 0x128($sp) -/* 00E52C 8000D92C 00000000 */ nop -/* 00E530 8000D930 03387821 */ addu $t7, $t9, $t8 -/* 00E534 8000D934 81ED0000 */ lb $t5, ($t7) -/* 00E538 8000D938 8E39004C */ lw $t9, 0x4c($s1) -/* 00E53C 8000D93C 25AE0001 */ addiu $t6, $t5, 1 -/* 00E540 8000D940 A32E0012 */ sb $t6, 0x12($t9) -/* 00E544 8000D944 827801D6 */ lb $t8, 0x1d6($s3) -/* 00E548 8000D948 00000000 */ nop -/* 00E54C 8000D94C 270FFFFB */ addiu $t7, $t8, -5 -/* 00E550 8000D950 2DE10009 */ sltiu $at, $t7, 9 -/* 00E554 8000D954 1020000D */ beqz $at, .L8000D98C -/* 00E558 8000D958 000F7880 */ sll $t7, $t7, 2 -/* 00E55C 8000D95C 3C01800E */ lui $at, 0x800e -/* 00E560 8000D960 002F0821 */ addu $at, $at, $t7 -/* 00E564 8000D964 8C2F5154 */ lw $t7, 0x5154($at) -/* 00E568 8000D968 00000000 */ nop -/* 00E56C 8000D96C 01E00008 */ jr $t7 -/* 00E570 8000D970 00000000 */ nop -/* 00E574 8000D974 02202025 */ move $a0, $s1 -/* 00E578 8000D978 0C0170BC */ jal func_8005C2F0 -/* 00E57C 8000D97C 02602825 */ move $a1, $s3 -/* 00E580 8000D980 8FA40068 */ lw $a0, 0x68($sp) -/* 00E584 8000D984 10000003 */ b .L8000D994 -/* 00E588 8000D988 24020005 */ li $v0, 5 -.L8000D98C: -/* 00E58C 8000D98C 8FA40068 */ lw $a0, 0x68($sp) -/* 00E590 8000D990 24020005 */ li $v0, 5 -.L8000D994: -/* 00E594 8000D994 3C038012 */ lui $v1, %hi(D_8011AEF0) # $v1, 0x8012 -/* 00E598 8000D998 8C63AEF0 */ lw $v1, %lo(D_8011AEF0)($v1) -/* 00E59C 8000D99C 26100001 */ addiu $s0, $s0, 1 -/* 00E5A0 8000D9A0 0203082A */ slt $at, $s0, $v1 -/* 00E5A4 8000D9A4 1420FEA6 */ bnez $at, .L8000D440 -/* 00E5A8 8000D9A8 00000000 */ nop -.L8000D9AC: -/* 00E5AC 8000D9AC 8FA40068 */ lw $a0, 0x68($sp) -/* 00E5B0 8000D9B0 24010008 */ li $at, 8 -/* 00E5B4 8000D9B4 10810003 */ beq $a0, $at, .L8000D9C4 -/* 00E5B8 8000D9B8 0000A025 */ move $s4, $zero -/* 00E5BC 8000D9BC 3C018012 */ lui $at, %hi(D_8011AD3C) # $at, 0x8012 -/* 00E5C0 8000D9C0 A020AD3C */ sb $zero, %lo(D_8011AD3C)($at) -.L8000D9C4: -/* 00E5C4 8000D9C4 3C0D8012 */ lui $t5, %hi(D_8011AD3C) # $t5, 0x8012 -/* 00E5C8 8000D9C8 81ADAD3C */ lb $t5, %lo(D_8011AD3C)($t5) -/* 00E5CC 8000D9CC 00000000 */ nop -/* 00E5D0 8000D9D0 11A00002 */ beqz $t5, .L8000D9DC -/* 00E5D4 8000D9D4 3C018012 */ lui $at, %hi(D_8011AD20) # $at, 0x8012 -/* 00E5D8 8000D9D8 A020AD20 */ sb $zero, %lo(D_8011AD20)($at) -.L8000D9DC: -/* 00E5DC 8000D9DC 0C01B683 */ jal func_8006DA0C -/* 00E5E0 8000D9E0 00000000 */ nop -/* 00E5E4 8000D9E4 1440002D */ bnez $v0, .L8000DA9C -/* 00E5E8 8000D9E8 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 -/* 00E5EC 8000D9EC 8C42AE5C */ lw $v0, %lo(D_8011AE5C)($v0) -/* 00E5F0 8000D9F0 0000A825 */ move $s5, $zero -/* 00E5F4 8000D9F4 18400029 */ blez $v0, .L8000DA9C -/* 00E5F8 8000D9F8 3C138012 */ lui $s3, %hi(D_8011AE58) # $s3, 0x8012 -/* 00E5FC 8000D9FC 2673AE58 */ addiu $s3, %lo(D_8011AE58) # addiu $s3, $s3, -0x51a8 -.L8000DA00: -/* 00E600 8000DA00 8E6E0000 */ lw $t6, ($s3) -/* 00E604 8000DA04 3C0D8012 */ lui $t5, %hi(D_8011AEF5) # $t5, 0x8012 -/* 00E608 8000DA08 01D5C821 */ addu $t9, $t6, $s5 -/* 00E60C 8000DA0C 8F310000 */ lw $s1, ($t9) -/* 00E610 8000DA10 00000000 */ nop -/* 00E614 8000DA14 8E380040 */ lw $t8, 0x40($s1) -/* 00E618 8000DA18 00000000 */ nop -/* 00E61C 8000DA1C 97100030 */ lhu $s0, 0x30($t8) -/* 00E620 8000DA20 00000000 */ nop -/* 00E624 8000DA24 320F0020 */ andi $t7, $s0, 0x20 -/* 00E628 8000DA28 11E0000B */ beqz $t7, .L8000DA58 -/* 00E62C 8000DA2C 320E0040 */ andi $t6, $s0, 0x40 -/* 00E630 8000DA30 91ADAEF5 */ lbu $t5, %lo(D_8011AEF5)($t5) -/* 00E634 8000DA34 00000000 */ nop -/* 00E638 8000DA38 11A00007 */ beqz $t5, .L8000DA58 -/* 00E63C 8000DA3C 00000000 */ nop -/* 00E640 8000DA40 0C003FEE */ jal func_8000FFB8 -/* 00E644 8000DA44 02202025 */ move $a0, $s1 -/* 00E648 8000DA48 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 -/* 00E64C 8000DA4C 8C42AE5C */ lw $v0, %lo(D_8011AE5C)($v0) -/* 00E650 8000DA50 1000000E */ b .L8000DA8C -/* 00E654 8000DA54 26520001 */ addiu $s2, $s2, 1 -.L8000DA58: -/* 00E658 8000DA58 11C0000B */ beqz $t6, .L8000DA88 -/* 00E65C 8000DA5C 00000000 */ nop -/* 00E660 8000DA60 8FB90144 */ lw $t9, 0x144($sp) -/* 00E664 8000DA64 00000000 */ nop -/* 00E668 8000DA68 2B210002 */ slti $at, $t9, 2 -/* 00E66C 8000DA6C 14200006 */ bnez $at, .L8000DA88 -/* 00E670 8000DA70 00000000 */ nop -/* 00E674 8000DA74 0C003FEE */ jal func_8000FFB8 -/* 00E678 8000DA78 02202025 */ move $a0, $s1 -/* 00E67C 8000DA7C 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 -/* 00E680 8000DA80 8C42AE5C */ lw $v0, %lo(D_8011AE5C)($v0) -/* 00E684 8000DA84 00000000 */ nop -.L8000DA88: -/* 00E688 8000DA88 26520001 */ addiu $s2, $s2, 1 -.L8000DA8C: -/* 00E68C 8000DA8C 0242082A */ slt $at, $s2, $v0 -/* 00E690 8000DA90 1420FFDB */ bnez $at, .L8000DA00 -/* 00E694 8000DA94 26B50004 */ addiu $s5, $s5, 4 -/* 00E698 8000DA98 00009025 */ move $s2, $zero -.L8000DA9C: -/* 00E69C 8000DA9C 3C15800E */ lui $s5, %hi(D_800DC718) # $s5, 0x800e -/* 00E6A0 8000DAA0 26B5C718 */ addiu $s5, %lo(D_800DC718) # addiu $s5, $s5, -0x38e8 -/* 00E6A4 8000DAA4 0C0166D3 */ jal func_80059B4C -/* 00E6A8 8000DAA8 AEA00000 */ sw $zero, ($s5) -/* 00E6AC 8000DAAC 3C118012 */ lui $s1, %hi(D_8011AD38) # $s1, 0x8012 -/* 00E6B0 8000DAB0 2631AD38 */ addiu $s1, %lo(D_8011AD38) # addiu $s1, $s1, -0x52c8 -/* 00E6B4 8000DAB4 2418FFFF */ li $t8, -1 -/* 00E6B8 8000DAB8 AE380000 */ sw $t8, ($s1) -/* 00E6BC 8000DABC 3C0F8012 */ lui $t7, %hi(D_8011AEF5) # $t7, 0x8012 -/* 00E6C0 8000DAC0 91EFAEF5 */ lbu $t7, %lo(D_8011AEF5)($t7) -/* 00E6C4 8000DAC4 00000000 */ nop -/* 00E6C8 8000DAC8 11E00071 */ beqz $t7, .L8000DC90 -/* 00E6CC 8000DACC 00000000 */ nop -/* 00E6D0 8000DAD0 8FAD0144 */ lw $t5, 0x144($sp) -/* 00E6D4 8000DAD4 24010001 */ li $at, 1 -/* 00E6D8 8000DAD8 15A1006D */ bne $t5, $at, .L8000DC90 -/* 00E6DC 8000DADC 00000000 */ nop -/* 00E6E0 8000DAE0 0C016651 */ jal func_80059944 -/* 00E6E4 8000DAE4 00000000 */ nop -/* 00E6E8 8000DAE8 0C006D9A */ jal func_8001B668 -/* 00E6EC 8000DAEC 00002025 */ move $a0, $zero -/* 00E6F0 8000DAF0 3C10800E */ lui $s0, %hi(D_800DC728) # $s0, 0x800e -/* 00E6F4 8000DAF4 AE220000 */ sw $v0, ($s1) -/* 00E6F8 8000DAF8 3C01800E */ lui $at, %hi(D_800DC730) # $at, 0x800e -/* 00E6FC 8000DAFC 2610C728 */ addiu $s0, %lo(D_800DC728) # addiu $s0, $s0, -0x38d8 -/* 00E700 8000DB00 A020C730 */ sb $zero, %lo(D_800DC730)($at) -/* 00E704 8000DB04 860E0000 */ lh $t6, ($s0) -/* 00E708 8000DB08 00000000 */ nop -/* 00E70C 8000DB0C 29C10005 */ slti $at, $t6, 5 -/* 00E710 8000DB10 14200002 */ bnez $at, .L8000DB1C -/* 00E714 8000DB14 00000000 */ nop -/* 00E718 8000DB18 A6000000 */ sh $zero, ($s0) -.L8000DB1C: -/* 00E71C 8000DB1C 0C006CA2 */ jal func_8001B288 -/* 00E720 8000DB20 00000000 */ nop -/* 00E724 8000DB24 1040002C */ beqz $v0, .L8000DBD8 -/* 00E728 8000DB28 3C19800E */ lui $t9, %hi(D_800DC72C) # $t9, 0x800e -/* 00E72C 8000DB2C 860F0000 */ lh $t7, ($s0) -/* 00E730 8000DB30 8739C72C */ lh $t9, %lo(D_800DC72C)($t9) -/* 00E734 8000DB34 000F6880 */ sll $t5, $t7, 2 -/* 00E738 8000DB38 01AF6821 */ addu $t5, $t5, $t7 -/* 00E73C 8000DB3C 000D7080 */ sll $t6, $t5, 2 -/* 00E740 8000DB40 0019C040 */ sll $t8, $t9, 1 -/* 00E744 8000DB44 030EC821 */ addu $t9, $t8, $t6 -/* 00E748 8000DB48 3C02800E */ lui $v0, 0x800e -/* 00E74C 8000DB4C 00591021 */ addu $v0, $v0, $t9 -/* 00E750 8000DB50 8442C7A8 */ lh $v0, -0x3858($v0) -/* 00E754 8000DB54 02C02025 */ move $a0, $s6 -/* 00E758 8000DB58 304F0100 */ andi $t7, $v0, 0x100 -/* 00E75C 8000DB5C 000F6843 */ sra $t5, $t7, 1 -/* 00E760 8000DB60 35B80010 */ ori $t8, $t5, 0x10 -/* 00E764 8000DB64 A2D80001 */ sb $t8, 1($s6) -/* 00E768 8000DB68 A2C20000 */ sb $v0, ($s6) -/* 00E76C 8000DB6C 8FAE00F4 */ lw $t6, 0xf4($sp) -/* 00E770 8000DB70 24050001 */ li $a1, 1 -/* 00E774 8000DB74 A6CE0002 */ sh $t6, 2($s6) -/* 00E778 8000DB78 8FB900D4 */ lw $t9, 0xd4($sp) -/* 00E77C 8000DB7C 00000000 */ nop -/* 00E780 8000DB80 A6D90004 */ sh $t9, 4($s6) -/* 00E784 8000DB84 8FAF00B4 */ lw $t7, 0xb4($sp) -/* 00E788 8000DB88 00000000 */ nop -/* 00E78C 8000DB8C A6CF0006 */ sh $t7, 6($s6) -/* 00E790 8000DB90 8FAD0094 */ lw $t5, 0x94($sp) -/* 00E794 8000DB94 0C003A95 */ jal func_8000EA54 -/* 00E798 8000DB98 A6CD000C */ sh $t5, 0xc($s6) -/* 00E79C 8000DB9C 2418003A */ li $t8, 58 -/* 00E7A0 8000DBA0 AC40003C */ sw $zero, 0x3c($v0) -/* 00E7A4 8000DBA4 A4580048 */ sh $t8, 0x48($v0) -/* 00E7A8 8000DBA8 3C01800E */ lui $at, %hi(D_800E5178) # $at, 0x800e -/* 00E7AC 8000DBAC C4245178 */ lwc1 $f4, %lo(D_800E5178)($at) -/* 00E7B0 8000DBB0 8C4E0050 */ lw $t6, 0x50($v0) -/* 00E7B4 8000DBB4 3C038012 */ lui $v1, %hi(D_8011AD34) # $v1, 0x8012 -/* 00E7B8 8000DBB8 E5C40000 */ swc1 $f4, ($t6) -/* 00E7BC 8000DBBC 8C59004C */ lw $t9, 0x4c($v0) -/* 00E7C0 8000DBC0 2463AD34 */ addiu $v1, %lo(D_8011AD34) # addiu $v1, $v1, -0x52cc -/* 00E7C4 8000DBC4 A7200014 */ sh $zero, 0x14($t9) -/* 00E7C8 8000DBC8 AC620000 */ sw $v0, ($v1) -/* 00E7CC 8000DBCC 8C530064 */ lw $s3, 0x64($v0) -/* 00E7D0 8000DBD0 240D0060 */ li $t5, 96 -/* 00E7D4 8000DBD4 A26D01F7 */ sb $t5, 0x1f7($s3) -.L8000DBD8: -/* 00E7D8 8000DBD8 0C01AF62 */ jal func_8006BD88 -/* 00E7DC 8000DBDC 00000000 */ nop -/* 00E7E0 8000DBE0 0C006D3F */ jal func_8001B4FC -/* 00E7E4 8000DBE4 00402025 */ move $a0, $v0 -/* 00E7E8 8000DBE8 10400029 */ beqz $v0, .L8000DC90 -/* 00E7EC 8000DBEC 3C188012 */ lui $t8, %hi(D_8011AE84) # $t8, 0x8012 -/* 00E7F0 8000DBF0 8718AE84 */ lh $t8, %lo(D_8011AE84)($t8) -/* 00E7F4 8000DBF4 3C02800E */ lui $v0, 0x800e -/* 00E7F8 8000DBF8 00187080 */ sll $t6, $t8, 2 -/* 00E7FC 8000DBFC 01D87021 */ addu $t6, $t6, $t8 -/* 00E800 8000DC00 000EC880 */ sll $t9, $t6, 2 -/* 00E804 8000DC04 00591021 */ addu $v0, $v0, $t9 -/* 00E808 8000DC08 8442C7B8 */ lh $v0, -0x3848($v0) -/* 00E80C 8000DC0C 02C02025 */ move $a0, $s6 -/* 00E810 8000DC10 304F0100 */ andi $t7, $v0, 0x100 -/* 00E814 8000DC14 000F6843 */ sra $t5, $t7, 1 -/* 00E818 8000DC18 35B80010 */ ori $t8, $t5, 0x10 -/* 00E81C 8000DC1C A2D80001 */ sb $t8, 1($s6) -/* 00E820 8000DC20 A2C20000 */ sb $v0, ($s6) -/* 00E824 8000DC24 8FAE00F4 */ lw $t6, 0xf4($sp) -/* 00E828 8000DC28 24050001 */ li $a1, 1 -/* 00E82C 8000DC2C A6CE0002 */ sh $t6, 2($s6) -/* 00E830 8000DC30 8FB900D4 */ lw $t9, 0xd4($sp) -/* 00E834 8000DC34 00000000 */ nop -/* 00E838 8000DC38 A6D90004 */ sh $t9, 4($s6) -/* 00E83C 8000DC3C 8FAF00B4 */ lw $t7, 0xb4($sp) -/* 00E840 8000DC40 00000000 */ nop -/* 00E844 8000DC44 A6CF0006 */ sh $t7, 6($s6) -/* 00E848 8000DC48 8FAD0094 */ lw $t5, 0x94($sp) -/* 00E84C 8000DC4C 0C003A95 */ jal func_8000EA54 -/* 00E850 8000DC50 A6CD000C */ sh $t5, 0xc($s6) -/* 00E854 8000DC54 2418003A */ li $t8, 58 -/* 00E858 8000DC58 AC40003C */ sw $zero, 0x3c($v0) -/* 00E85C 8000DC5C A4580048 */ sh $t8, 0x48($v0) -/* 00E860 8000DC60 3C01800E */ lui $at, %hi(D_800E517C) # $at, 0x800e -/* 00E864 8000DC64 C426517C */ lwc1 $f6, %lo(D_800E517C)($at) -/* 00E868 8000DC68 8C4E0050 */ lw $t6, 0x50($v0) -/* 00E86C 8000DC6C 240D0060 */ li $t5, 96 -/* 00E870 8000DC70 E5C60000 */ swc1 $f6, ($t6) -/* 00E874 8000DC74 8C59004C */ lw $t9, 0x4c($v0) -/* 00E878 8000DC78 00000000 */ nop -/* 00E87C 8000DC7C A7200014 */ sh $zero, 0x14($t9) -/* 00E880 8000DC80 AEA20000 */ sw $v0, ($s5) -/* 00E884 8000DC84 8C530064 */ lw $s3, 0x64($v0) -/* 00E888 8000DC88 00000000 */ nop -/* 00E88C 8000DC8C A26D01F7 */ sb $t5, 0x1f7($s3) -.L8000DC90: -/* 00E890 8000DC90 3C0E8012 */ lui $t6, %hi(D_8011AEF0) # $t6, 0x8012 -/* 00E894 8000DC94 8DCEAEF0 */ lw $t6, %lo(D_8011AEF0)($t6) -/* 00E898 8000DC98 24180064 */ li $t8, 100 -/* 00E89C 8000DC9C 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012 -/* 00E8A0 8000DCA0 19C00068 */ blez $t6, .L8000DE44 -/* 00E8A4 8000DCA4 AC38ADB0 */ sw $t8, %lo(D_8011ADB0)($at) -/* 00E8A8 8000DCA8 0000A825 */ move $s5, $zero -.L8000DCAC: -/* 00E8AC 8000DCAC 3C198012 */ lui $t9, %hi(D_8011AEE4) # $t9, 0x8012 -/* 00E8B0 8000DCB0 8F39AEE4 */ lw $t9, %lo(D_8011AEE4)($t9) -/* 00E8B4 8000DCB4 00008025 */ move $s0, $zero -/* 00E8B8 8000DCB8 03357821 */ addu $t7, $t9, $s5 -/* 00E8BC 8000DCBC 8DF10000 */ lw $s1, ($t7) -/* 00E8C0 8000DCC0 00000000 */ nop -/* 00E8C4 8000DCC4 8E330064 */ lw $s3, 0x64($s1) -/* 00E8C8 8000DCC8 00000000 */ nop -/* 00E8CC 8000DCCC 02202025 */ move $a0, $s1 -.L8000DCD0: -/* 00E8D0 8000DCD0 0C01378E */ jal func_8004DE38 -/* 00E8D4 8000DCD4 24050002 */ li $a1, 2 -/* 00E8D8 8000DCD8 26100001 */ addiu $s0, $s0, 1 -/* 00E8DC 8000DCDC 2A01000A */ slti $at, $s0, 0xa -/* 00E8E0 8000DCE0 1420FFFB */ bnez $at, .L8000DCD0 -/* 00E8E4 8000DCE4 02202025 */ move $a0, $s1 -/* 00E8E8 8000DCE8 866D0000 */ lh $t5, ($s3) -/* 00E8EC 8000DCEC 2401FFFF */ li $at, -1 -/* 00E8F0 8000DCF0 15A1001D */ bne $t5, $at, .L8000DD68 -/* 00E8F4 8000DCF4 00008025 */ move $s0, $zero -/* 00E8F8 8000DCF8 8E2E0040 */ lw $t6, 0x40($s1) -/* 00E8FC 8000DCFC 26940001 */ addiu $s4, $s4, 1 -/* 00E900 8000DD00 81C40055 */ lb $a0, 0x55($t6) -/* 00E904 8000DD04 32980001 */ andi $t8, $s4, 1 -/* 00E908 8000DD08 18800030 */ blez $a0, .L8000DDCC -/* 00E90C 8000DD0C 0300A025 */ move $s4, $t8 -/* 00E910 8000DD10 00001825 */ move $v1, $zero -.L8000DD14: -/* 00E914 8000DD14 8E390068 */ lw $t9, 0x68($s1) -/* 00E918 8000DD18 26100001 */ addiu $s0, $s0, 1 -/* 00E91C 8000DD1C 03237821 */ addu $t7, $t9, $v1 -/* 00E920 8000DD20 8DE20000 */ lw $v0, ($t7) -/* 00E924 8000DD24 00000000 */ nop -/* 00E928 8000DD28 1040000B */ beqz $v0, .L8000DD58 -/* 00E92C 8000DD2C 0204082A */ slt $at, $s0, $a0 -/* 00E930 8000DD30 804D0020 */ lb $t5, 0x20($v0) -/* 00E934 8000DD34 0014C040 */ sll $t8, $s4, 1 -/* 00E938 8000DD38 11A00007 */ beqz $t5, .L8000DD58 -/* 00E93C 8000DD3C 0204082A */ slt $at, $s0, $a0 -/* 00E940 8000DD40 A0580020 */ sb $t8, 0x20($v0) -/* 00E944 8000DD44 8E2E0040 */ lw $t6, 0x40($s1) -/* 00E948 8000DD48 00000000 */ nop -/* 00E94C 8000DD4C 81C40055 */ lb $a0, 0x55($t6) -/* 00E950 8000DD50 00000000 */ nop -/* 00E954 8000DD54 0204082A */ slt $at, $s0, $a0 -.L8000DD58: -/* 00E958 8000DD58 1420FFEE */ bnez $at, .L8000DD14 -/* 00E95C 8000DD5C 24630004 */ addiu $v1, $v1, 4 -/* 00E960 8000DD60 1000001A */ b .L8000DDCC -/* 00E964 8000DD64 00000000 */ nop -.L8000DD68: -/* 00E968 8000DD68 8E390040 */ lw $t9, 0x40($s1) -/* 00E96C 8000DD6C 00008025 */ move $s0, $zero -/* 00E970 8000DD70 83240055 */ lb $a0, 0x55($t9) -/* 00E974 8000DD74 00001825 */ move $v1, $zero -/* 00E978 8000DD78 18800014 */ blez $a0, .L8000DDCC -/* 00E97C 8000DD7C 00000000 */ nop -.L8000DD80: -/* 00E980 8000DD80 8E2F0068 */ lw $t7, 0x68($s1) -/* 00E984 8000DD84 26100001 */ addiu $s0, $s0, 1 -/* 00E988 8000DD88 01E36821 */ addu $t5, $t7, $v1 -/* 00E98C 8000DD8C 8DA20000 */ lw $v0, ($t5) -/* 00E990 8000DD90 00000000 */ nop -/* 00E994 8000DD94 1040000B */ beqz $v0, .L8000DDC4 -/* 00E998 8000DD98 0204082A */ slt $at, $s0, $a0 -/* 00E99C 8000DD9C 80580020 */ lb $t8, 0x20($v0) -/* 00E9A0 8000DDA0 00000000 */ nop -/* 00E9A4 8000DDA4 13000007 */ beqz $t8, .L8000DDC4 -/* 00E9A8 8000DDA8 0204082A */ slt $at, $s0, $a0 -/* 00E9AC 8000DDAC A0400020 */ sb $zero, 0x20($v0) -/* 00E9B0 8000DDB0 8E2E0040 */ lw $t6, 0x40($s1) -/* 00E9B4 8000DDB4 00000000 */ nop -/* 00E9B8 8000DDB8 81C40055 */ lb $a0, 0x55($t6) -/* 00E9BC 8000DDBC 00000000 */ nop -/* 00E9C0 8000DDC0 0204082A */ slt $at, $s0, $a0 -.L8000DDC4: -/* 00E9C4 8000DDC4 1420FFEE */ bnez $at, .L8000DD80 -/* 00E9C8 8000DDC8 24630004 */ addiu $v1, $v1, 4 -.L8000DDCC: -/* 00E9CC 8000DDCC 0C0270C3 */ jal func_8009C30C -/* 00E9D0 8000DDD0 00000000 */ nop -/* 00E9D4 8000DDD4 30590010 */ andi $t9, $v0, 0x10 -/* 00E9D8 8000DDD8 13200006 */ beqz $t9, .L8000DDF4 -/* 00E9DC 8000DDDC 3C01800E */ lui $at, %hi(D_800E5180) # $at, 0x800e -/* 00E9E0 8000DDE0 C6280008 */ lwc1 $f8, 8($s1) -/* 00E9E4 8000DDE4 C42A5180 */ lwc1 $f10, %lo(D_800E5180)($at) -/* 00E9E8 8000DDE8 00000000 */ nop -/* 00E9EC 8000DDEC 460A4402 */ mul.s $f16, $f8, $f10 -/* 00E9F0 8000DDF0 E6300008 */ swc1 $f16, 8($s1) -.L8000DDF4: -/* 00E9F4 8000DDF4 0C0270C3 */ jal func_8009C30C -/* 00E9F8 8000DDF8 00000000 */ nop -/* 00E9FC 8000DDFC 304F0020 */ andi $t7, $v0, 0x20 -/* 00EA00 8000DE00 11E00006 */ beqz $t7, .L8000DE1C -/* 00EA04 8000DE04 3C01800E */ lui $at, %hi(D_800E5184) # $at, 0x800e -/* 00EA08 8000DE08 C6320008 */ lwc1 $f18, 8($s1) -/* 00EA0C 8000DE0C C4245184 */ lwc1 $f4, %lo(D_800E5184)($at) -/* 00EA10 8000DE10 00000000 */ nop -/* 00EA14 8000DE14 46049182 */ mul.s $f6, $f18, $f4 -/* 00EA18 8000DE18 E6260008 */ swc1 $f6, 8($s1) -.L8000DE1C: -/* 00EA1C 8000DE1C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 00EA20 8000DE20 44810000 */ mtc1 $at, $f0 -/* 00EA24 8000DE24 3C0D8012 */ lui $t5, %hi(D_8011AEF0) # $t5, 0x8012 -/* 00EA28 8000DE28 E6600090 */ swc1 $f0, 0x90($s3) -/* 00EA2C 8000DE2C E660008C */ swc1 $f0, 0x8c($s3) -/* 00EA30 8000DE30 8DADAEF0 */ lw $t5, %lo(D_8011AEF0)($t5) -/* 00EA34 8000DE34 26520001 */ addiu $s2, $s2, 1 -/* 00EA38 8000DE38 024D082A */ slt $at, $s2, $t5 -/* 00EA3C 8000DE3C 1420FF9B */ bnez $at, .L8000DCAC -/* 00EA40 8000DE40 26B50004 */ addiu $s5, $s5, 4 -.L8000DE44: -/* 00EA44 8000DE44 8FB80068 */ lw $t8, 0x68($sp) -/* 00EA48 8000DE48 8FAE0064 */ lw $t6, 0x64($sp) -/* 00EA4C 8000DE4C 1300000B */ beqz $t8, .L8000DE7C -/* 00EA50 8000DE50 240D0050 */ li $t5, 80 -/* 00EA54 8000DE54 15C00009 */ bnez $t6, .L8000DE7C -/* 00EA58 8000DE58 3C198012 */ lui $t9, %hi(D_8011AEF5) # $t9, 0x8012 -/* 00EA5C 8000DE5C 9339AEF5 */ lbu $t9, %lo(D_8011AEF5)($t9) -/* 00EA60 8000DE60 3C0F8012 */ lui $t7, %hi(D_8011AD3C) # $t7, 0x8012 -/* 00EA64 8000DE64 17200005 */ bnez $t9, .L8000DE7C -/* 00EA68 8000DE68 00000000 */ nop -/* 00EA6C 8000DE6C 81EFAD3C */ lb $t7, %lo(D_8011AD3C)($t7) -/* 00EA70 8000DE70 3C018012 */ lui $at, 0x8012 -/* 00EA74 8000DE74 11E00004 */ beqz $t7, .L8000DE88 -/* 00EA78 8000DE78 00000000 */ nop -.L8000DE7C: -/* 00EA7C 8000DE7C 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012 -/* 00EA80 8000DE80 10000002 */ b .L8000DE8C -/* 00EA84 8000DE84 AC2DADB0 */ sw $t5, %lo(D_8011ADB0)($at) -.L8000DE88: -/* 00EA88 8000DE88 AC20ADB0 */ sw $zero, %lo(D_8011ADB0)($at) -.L8000DE8C: -/* 00EA8C 8000DE8C 8FB80068 */ lw $t8, 0x68($sp) -/* 00EA90 8000DE90 8FAE0058 */ lw $t6, 0x58($sp) -/* 00EA94 8000DE94 1700001A */ bnez $t8, .L8000DF00 -/* 00EA98 8000DE98 24010001 */ li $at, 1 -/* 00EA9C 8000DE9C 15C10018 */ bne $t6, $at, .L8000DF00 -/* 00EAA0 8000DEA0 00000000 */ nop -/* 00EAA4 8000DEA4 0C027B1C */ jal func_8009EC70 -/* 00EAA8 8000DEA8 00000000 */ nop -/* 00EAAC 8000DEAC 14400014 */ bnez $v0, .L8000DF00 -/* 00EAB0 8000DEB0 00000000 */ nop -/* 00EAB4 8000DEB4 0C01B067 */ jal func_8006C19C -/* 00EAB8 8000DEB8 00000000 */ nop -/* 00EABC 8000DEBC 14400010 */ bnez $v0, .L8000DF00 -/* 00EAC0 8000DEC0 00009025 */ move $s2, $zero -/* 00EAC4 8000DEC4 24130003 */ li $s3, 3 -/* 00EAC8 8000DEC8 24110008 */ li $s1, 8 -/* 00EACC 8000DECC 24100032 */ li $s0, 50 -.L8000DED0: -/* 00EAD0 8000DED0 A2D00000 */ sb $s0, ($s6) -/* 00EAD4 8000DED4 A2D10001 */ sb $s1, 1($s6) -/* 00EAD8 8000DED8 A6C00002 */ sh $zero, 2($s6) -/* 00EADC 8000DEDC A6C00004 */ sh $zero, 4($s6) -/* 00EAE0 8000DEE0 A6C00006 */ sh $zero, 6($s6) -/* 00EAE4 8000DEE4 02C02025 */ move $a0, $s6 -/* 00EAE8 8000DEE8 0C003A95 */ jal func_8000EA54 -/* 00EAEC 8000DEEC 24050001 */ li $a1, 1 -/* 00EAF0 8000DEF0 AC520078 */ sw $s2, 0x78($v0) -/* 00EAF4 8000DEF4 26520001 */ addiu $s2, $s2, 1 -/* 00EAF8 8000DEF8 1653FFF5 */ bne $s2, $s3, .L8000DED0 -/* 00EAFC 8000DEFC AC40003C */ sw $zero, 0x3c($v0) -.L8000DF00: -/* 00EB00 8000DF00 3C018012 */ lui $at, %hi(D_8011AD4E) # $at, 0x8012 -/* 00EB04 8000DF04 A420AD4E */ sh $zero, %lo(D_8011AD4E)($at) -/* 00EB08 8000DF08 3C018012 */ lui $at, %hi(D_8011ADB4) # $at, 0x8012 -/* 00EB0C 8000DF0C AC20ADB4 */ sw $zero, %lo(D_8011ADB4)($at) -/* 00EB10 8000DF10 0C0274CC */ jal func_8009D330 -/* 00EB14 8000DF14 00002025 */ move $a0, $zero -/* 00EB18 8000DF18 92F90048 */ lbu $t9, 0x48($s7) -/* 00EB1C 8000DF1C 00000000 */ nop -/* 00EB20 8000DF20 1720003D */ bnez $t9, .L8000E018 -/* 00EB24 8000DF24 8FAE0130 */ lw $t6, 0x130($sp) -/* 00EB28 8000DF28 0C0270B4 */ jal func_8009C2D0 -/* 00EB2C 8000DF2C 00000000 */ nop -/* 00EB30 8000DF30 14400038 */ bnez $v0, .L8000E014 -/* 00EB34 8000DF34 24040010 */ li $a0, 16 -/* 00EB38 8000DF38 0C0078A7 */ jal func_8001E29C -/* 00EB3C 8000DF3C 00009025 */ move $s2, $zero -/* 00EB40 8000DF40 96E30014 */ lhu $v1, 0x14($s7) -/* 00EB44 8000DF44 00000000 */ nop -/* 00EB48 8000DF48 306F0001 */ andi $t7, $v1, 1 -/* 00EB4C 8000DF4C 15E0000A */ bnez $t7, .L8000DF78 -/* 00EB50 8000DF50 30790002 */ andi $t9, $v1, 2 -/* 00EB54 8000DF54 8EED0000 */ lw $t5, ($s7) -/* 00EB58 8000DF58 804E0000 */ lb $t6, ($v0) -/* 00EB5C 8000DF5C 85B80000 */ lh $t8, ($t5) -/* 00EB60 8000DF60 00000000 */ nop -/* 00EB64 8000DF64 030E082A */ slt $at, $t8, $t6 -/* 00EB68 8000DF68 14200003 */ bnez $at, .L8000DF78 -/* 00EB6C 8000DF6C 00000000 */ nop -/* 00EB70 8000DF70 10000016 */ b .L8000DFCC -/* 00EB74 8000DF74 24120001 */ li $s2, 1 -.L8000DF78: -/* 00EB78 8000DF78 1720000A */ bnez $t9, .L8000DFA4 -/* 00EB7C 8000DF7C 306E0004 */ andi $t6, $v1, 4 -/* 00EB80 8000DF80 8EEF0000 */ lw $t7, ($s7) -/* 00EB84 8000DF84 80580001 */ lb $t8, 1($v0) -/* 00EB88 8000DF88 85ED0000 */ lh $t5, ($t7) -/* 00EB8C 8000DF8C 00000000 */ nop -/* 00EB90 8000DF90 01B8082A */ slt $at, $t5, $t8 -/* 00EB94 8000DF94 14200003 */ bnez $at, .L8000DFA4 -/* 00EB98 8000DF98 00000000 */ nop -/* 00EB9C 8000DF9C 1000000B */ b .L8000DFCC -/* 00EBA0 8000DFA0 24120002 */ li $s2, 2 -.L8000DFA4: -/* 00EBA4 8000DFA4 15C00009 */ bnez $t6, .L8000DFCC -/* 00EBA8 8000DFA8 00000000 */ nop -/* 00EBAC 8000DFAC 8EF90000 */ lw $t9, ($s7) -/* 00EBB0 8000DFB0 804D0002 */ lb $t5, 2($v0) -/* 00EBB4 8000DFB4 872F0000 */ lh $t7, ($t9) -/* 00EBB8 8000DFB8 00000000 */ nop -/* 00EBBC 8000DFBC 01ED082A */ slt $at, $t7, $t5 -/* 00EBC0 8000DFC0 14200002 */ bnez $at, .L8000DFCC -/* 00EBC4 8000DFC4 00000000 */ nop -/* 00EBC8 8000DFC8 24120003 */ li $s2, 3 -.L8000DFCC: -/* 00EBCC 8000DFCC 12400012 */ beqz $s2, .L8000E018 -/* 00EBD0 8000DFD0 8FAE0130 */ lw $t6, 0x130($sp) -/* 00EBD4 8000DFD4 0C00E4C8 */ jal func_80039320 -/* 00EBD8 8000DFD8 24040250 */ li $a0, 592 -/* 00EBDC 8000DFDC 96F80014 */ lhu $t8, 0x14($s7) -/* 00EBE0 8000DFE0 264E001F */ addiu $t6, $s2, 0x1f -/* 00EBE4 8000DFE4 24190001 */ li $t9, 1 -/* 00EBE8 8000DFE8 01D97804 */ sllv $t7, $t9, $t6 -/* 00EBEC 8000DFEC 030F6825 */ or $t5, $t8, $t7 -/* 00EBF0 8000DFF0 A6ED0014 */ sh $t5, 0x14($s7) -/* 00EBF4 8000DFF4 0C01486E */ jal func_800521B8 -/* 00EBF8 8000DFF8 24040002 */ li $a0, 2 -/* 00EBFC 8000DFFC 0C0274CC */ jal func_8009D330 -/* 00EC00 8000E000 02402025 */ move $a0, $s2 -/* 00EC04 8000E004 0C027068 */ jal func_8009C1A0 -/* 00EC08 8000E008 00000000 */ nop -/* 00EC0C 8000E00C 0C01BB12 */ jal func_8006EC48 -/* 00EC10 8000E010 00402025 */ move $a0, $v0 -.L8000E014: -/* 00EC14 8000E014 8FAE0130 */ lw $t6, 0x130($sp) -.L8000E018: -/* 00EC18 8000E018 24190001 */ li $t9, 1 -/* 00EC1C 8000E01C 3C018012 */ lui $at, %hi(D_8011AD24) # $at, 0x8012 -/* 00EC20 8000E020 05C00005 */ bltz $t6, .L8000E038 -/* 00EC24 8000E024 A039AD24 */ sb $t9, %lo(D_8011AD24)($at) -/* 00EC28 8000E028 8FB80130 */ lw $t8, 0x130($sp) -/* 00EC2C 8000E02C 8FAF0074 */ lw $t7, 0x74($sp) -/* 00EC30 8000E030 00000000 */ nop -/* 00EC34 8000E034 A1F8003B */ sb $t8, 0x3b($t7) -.L8000E038: -/* 00EC38 8000E038 0C003852 */ jal func_8000E148 -/* 00EC3C 8000E03C 00000000 */ nop -/* 00EC40 8000E040 10400009 */ beqz $v0, .L8000E068 -/* 00EC44 8000E044 00000000 */ nop -/* 00EC48 8000E048 0C01C8A6 */ jal func_80072298 -/* 00EC4C 8000E04C 00002025 */ move $a0, $zero -/* 00EC50 8000E050 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012 -/* 00EC54 8000E054 AC20ADB0 */ sw $zero, %lo(D_8011ADB0)($at) -/* 00EC58 8000E058 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 00EC5C 8000E05C 44816000 */ mtc1 $at, $f12 -/* 00EC60 8000E060 0C01AF44 */ jal func_8006BD10 -/* 00EC64 8000E064 00000000 */ nop -.L8000E068: -/* 00EC68 8000E068 0C01C42C */ jal func_800710B0 -/* 00EC6C 8000E06C 00002025 */ move $a0, $zero -/* 00EC70 8000E070 0C01C450 */ jal func_80071140 -/* 00EC74 8000E074 02C02025 */ move $a0, $s6 -/* 00EC78 8000E078 0C01C42C */ jal func_800710B0 -/* 00EC7C 8000E07C 24040002 */ li $a0, 2 -.L8000E080: -/* 00EC80 8000E080 8FBF003C */ lw $ra, 0x3c($sp) -/* 00EC84 8000E084 8FB00018 */ lw $s0, 0x18($sp) -/* 00EC88 8000E088 8FB1001C */ lw $s1, 0x1c($sp) -/* 00EC8C 8000E08C 8FB20020 */ lw $s2, 0x20($sp) -/* 00EC90 8000E090 8FB30024 */ lw $s3, 0x24($sp) -/* 00EC94 8000E094 8FB40028 */ lw $s4, 0x28($sp) -/* 00EC98 8000E098 8FB5002C */ lw $s5, 0x2c($sp) -/* 00EC9C 8000E09C 8FB60030 */ lw $s6, 0x30($sp) -/* 00ECA0 8000E0A0 8FB70034 */ lw $s7, 0x34($sp) -/* 00ECA4 8000E0A4 8FBE0038 */ lw $fp, 0x38($sp) -/* 00ECA8 8000E0A8 03E00008 */ jr $ra -/* 00ECAC 8000E0AC 27BD0150 */ addiu $sp, $sp, 0x150 - -glabel func_8000E0B0 -/* 00ECB0 8000E0B0 3C0E8012 */ lui $t6, %hi(D_8011AD38) # $t6, 0x8012 -/* 00ECB4 8000E0B4 8DCEAD38 */ lw $t6, %lo(D_8011AD38)($t6) -/* 00ECB8 8000E0B8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 00ECBC 8000E0BC 2DC10009 */ sltiu $at, $t6, 9 -/* 00ECC0 8000E0C0 10200014 */ beqz $at, .L8000E114 -/* 00ECC4 8000E0C4 AFBF0014 */ sw $ra, 0x14($sp) -/* 00ECC8 8000E0C8 000E7080 */ sll $t6, $t6, 2 -/* 00ECCC 8000E0CC 3C01800E */ lui $at, 0x800e -/* 00ECD0 8000E0D0 002E0821 */ addu $at, $at, $t6 -/* 00ECD4 8000E0D4 8C2E5188 */ lw $t6, 0x5188($at) -/* 00ECD8 8000E0D8 00000000 */ nop -/* 00ECDC 8000E0DC 01C00008 */ jr $t6 -/* 00ECE0 8000E0E0 00000000 */ nop -/* 00ECE4 8000E0E4 1000000C */ b .L8000E118 -/* 00ECE8 8000E0E8 2402FFFF */ li $v0, -1 -/* 00ECEC 8000E0EC 1000000A */ b .L8000E118 -/* 00ECF0 8000E0F0 00001025 */ move $v0, $zero -/* 00ECF4 8000E0F4 10000008 */ b .L8000E118 -/* 00ECF8 8000E0F8 24020003 */ li $v0, 3 -/* 00ECFC 8000E0FC 10000006 */ b .L8000E118 -/* 00ED00 8000E100 24020002 */ li $v0, 2 -/* 00ED04 8000E104 0C016788 */ jal func_80059E20 -/* 00ED08 8000E108 00000000 */ nop -/* 00ED0C 8000E10C 10000003 */ b .L8000E11C -/* 00ED10 8000E110 8FBF0014 */ lw $ra, 0x14($sp) -.L8000E114: -/* 00ED14 8000E114 00001025 */ move $v0, $zero -.L8000E118: -/* 00ED18 8000E118 8FBF0014 */ lw $ra, 0x14($sp) -.L8000E11C: -/* 00ED1C 8000E11C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 00ED20 8000E120 03E00008 */ jr $ra -/* 00ED24 8000E124 00000000 */ nop - -glabel func_8000E128 -/* 00ED28 8000E128 240E8000 */ li $t6, -32768 -/* 00ED2C 8000E12C 3C01800E */ lui $at, 0x800e -/* 00ED30 8000E130 03E00008 */ jr $ra -/* 00ED34 8000E134 A42EC708 */ sh $t6, -0x38f8($at) - -glabel func_8000E138 -/* 00ED38 8000E138 3C028012 */ lui $v0, %hi(D_8011AD20) # $v0, 0x8012 -/* 00ED3C 8000E13C 8042AD20 */ lb $v0, %lo(D_8011AD20)($v0) -/* 00ED40 8000E140 03E00008 */ jr $ra -/* 00ED44 8000E144 00000000 */ nop - -glabel func_8000E148 -/* 00ED48 8000E148 3C02800E */ lui $v0, %hi(D_800DC71C) # $v0, 0x800e -/* 00ED4C 8000E14C 8042C71C */ lb $v0, %lo(D_800DC71C)($v0) -/* 00ED50 8000E150 03E00008 */ jr $ra -/* 00ED54 8000E154 00000000 */ nop - -glabel func_8000E158 -/* 00ED58 8000E158 3C0E800E */ lui $t6, %hi(D_800DC740) # $t6, 0x800e -/* 00ED5C 8000E15C 81CEC740 */ lb $t6, %lo(D_800DC740)($t6) -/* 00ED60 8000E160 00001025 */ move $v0, $zero -/* 00ED64 8000E164 11C00005 */ beqz $t6, .L8000E17C -/* 00ED68 8000E168 00000000 */ nop -/* 00ED6C 8000E16C 3C02800E */ lui $v0, %hi(D_800DC73C) # $v0, 0x800e -/* 00ED70 8000E170 8042C73C */ lb $v0, %lo(D_800DC73C)($v0) -/* 00ED74 8000E174 03E00008 */ jr $ra -/* 00ED78 8000E178 00000000 */ nop - -.L8000E17C: -/* 00ED7C 8000E17C 03E00008 */ jr $ra -/* 00ED80 8000E180 00000000 */ nop - -glabel func_8000E184 -/* 00ED84 8000E184 3C02800E */ lui $v0, %hi(D_800DC748) # $v0, 0x800e -/* 00ED88 8000E188 8042C748 */ lb $v0, %lo(D_800DC748)($v0) -/* 00ED8C 8000E18C 03E00008 */ jr $ra -/* 00ED90 8000E190 00000000 */ nop - -glabel func_8000E194 -/* 00ED94 8000E194 3C02800E */ lui $v0, %hi(D_800DC73C) # $v0, 0x800e -/* 00ED98 8000E198 2442C73C */ addiu $v0, %lo(D_800DC73C) # addiu $v0, $v0, -0x38c4 -/* 00ED9C 8000E19C 804E0000 */ lb $t6, ($v0) -/* 00EDA0 8000E1A0 240F0001 */ li $t7, 1 -/* 00EDA4 8000E1A4 01EEC023 */ subu $t8, $t7, $t6 -/* 00EDA8 8000E1A8 A0580000 */ sb $t8, ($v0) -/* 00EDAC 8000E1AC 3C01800E */ lui $at, 0x800e -/* 00EDB0 8000E1B0 03E00008 */ jr $ra -/* 00EDB4 8000E1B4 A020C740 */ sb $zero, -0x38c0($at) - -glabel func_8000E1B8 -/* 00EDB8 8000E1B8 3C01800E */ lui $at, %hi(D_800DC73C) # $at, 0x800e -/* 00EDBC 8000E1BC A020C73C */ sb $zero, %lo(D_800DC73C)($at) -/* 00EDC0 8000E1C0 3C01800E */ lui $at, 0x800e -/* 00EDC4 8000E1C4 03E00008 */ jr $ra -/* 00EDC8 8000E1C8 A020C740 */ sb $zero, -0x38c0($at) - -glabel func_8000E1CC -/* 00EDCC 8000E1CC 3C028012 */ lui $v0, %hi(D_8011AE02) # $v0, 0x8012 -/* 00EDD0 8000E1D0 8042AE02 */ lb $v0, %lo(D_8011AE02)($v0) -/* 00EDD4 8000E1D4 03E00008 */ jr $ra -/* 00EDD8 8000E1D8 00000000 */ nop - -glabel func_8000E1DC -/* 00EDDC 8000E1DC 3C028012 */ lui $v0, %hi(D_8011AE03) # $v0, 0x8012 -/* 00EDE0 8000E1E0 8042AE03 */ lb $v0, %lo(D_8011AE03)($v0) -/* 00EDE4 8000E1E4 03E00008 */ jr $ra -/* 00EDE8 8000E1E8 00000000 */ nop - -glabel func_8000E1EC -/* 00EDEC 8000E1EC 3C018012 */ lui $at, %hi(D_8011AD40) # $at, 0x8012 -/* 00EDF0 8000E1F0 AC24AD40 */ sw $a0, %lo(D_8011AD40)($at) -/* 00EDF4 8000E1F4 3C018012 */ lui $at, %hi(D_8011AD44) # $at, 0x8012 -/* 00EDF8 8000E1F8 240E0004 */ li $t6, 4 -/* 00EDFC 8000E1FC A02EAD44 */ sb $t6, %lo(D_8011AD44)($at) -/* 00EE00 8000E200 444FF800 */ cfc1 $t7, $31 -/* 00EE04 8000E204 3C018012 */ lui $at, %hi(D_8011AD45) # $at, 0x8012 -/* 00EE08 8000E208 A025AD45 */ sb $a1, %lo(D_8011AD45)($at) -/* 00EE0C 8000E20C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 00EE10 8000E210 35E10003 */ ori $at, $t7, 3 -/* 00EE14 8000E214 AFBF0014 */ sw $ra, 0x14($sp) -/* 00EE18 8000E218 38210002 */ xori $at, $at, 2 -/* 00EE1C 8000E21C 44C1F800 */ ctc1 $at, $31 -/* 00EE20 8000E220 C484000C */ lwc1 $f4, 0xc($a0) -/* 00EE24 8000E224 3C018012 */ lui $at, %hi(D_8011AD46) # $at, 0x8012 -/* 00EE28 8000E228 460021A4 */ cvt.w.s $f6, $f4 -/* 00EE2C 8000E22C 44CFF800 */ ctc1 $t7, $31 -/* 00EE30 8000E230 44183000 */ mfc1 $t8, $f6 -/* 00EE34 8000E234 00000000 */ nop -/* 00EE38 8000E238 4459F800 */ cfc1 $t9, $31 -/* 00EE3C 8000E23C A438AD46 */ sh $t8, %lo(D_8011AD46)($at) -/* 00EE40 8000E240 37210003 */ ori $at, $t9, 3 -/* 00EE44 8000E244 38210002 */ xori $at, $at, 2 -/* 00EE48 8000E248 44C1F800 */ ctc1 $at, $31 -/* 00EE4C 8000E24C C4880010 */ lwc1 $f8, 0x10($a0) -/* 00EE50 8000E250 3C018012 */ lui $at, %hi(D_8011AD48) # $at, 0x8012 -/* 00EE54 8000E254 460042A4 */ cvt.w.s $f10, $f8 -/* 00EE58 8000E258 44D9F800 */ ctc1 $t9, $31 -/* 00EE5C 8000E25C 44085000 */ mfc1 $t0, $f10 -/* 00EE60 8000E260 00000000 */ nop -/* 00EE64 8000E264 4449F800 */ cfc1 $t1, $31 -/* 00EE68 8000E268 A428AD48 */ sh $t0, %lo(D_8011AD48)($at) -/* 00EE6C 8000E26C 35210003 */ ori $at, $t1, 3 -/* 00EE70 8000E270 38210002 */ xori $at, $at, 2 -/* 00EE74 8000E274 44C1F800 */ ctc1 $at, $31 -/* 00EE78 8000E278 C4900014 */ lwc1 $f16, 0x14($a0) -/* 00EE7C 8000E27C 3C018012 */ lui $at, %hi(D_8011AD4A) # $at, 0x8012 -/* 00EE80 8000E280 460084A4 */ cvt.w.s $f18, $f16 -/* 00EE84 8000E284 440A9000 */ mfc1 $t2, $f18 -/* 00EE88 8000E288 44C9F800 */ ctc1 $t1, $31 -/* 00EE8C 8000E28C A42AAD4A */ sh $t2, %lo(D_8011AD4A)($at) -/* 00EE90 8000E290 848B0000 */ lh $t3, ($a0) -/* 00EE94 8000E294 3C018012 */ lui $at, %hi(D_8011AD4C) # $at, 0x8012 -/* 00EE98 8000E298 0C003FEE */ jal func_8000FFB8 -/* 00EE9C 8000E29C A42BAD4C */ sh $t3, %lo(D_8011AD4C)($at) -/* 00EEA0 8000E2A0 8FBF0014 */ lw $ra, 0x14($sp) -/* 00EEA4 8000E2A4 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 -/* 00EEA8 8000E2A8 AC20AEF0 */ sw $zero, %lo(D_8011AEF0)($at) -/* 00EEAC 8000E2AC 03E00008 */ jr $ra -/* 00EEB0 8000E2B0 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_8000E2B4 -/* 00EEB4 8000E2B4 3C038012 */ lui $v1, %hi(D_8011AD44) # $v1, 0x8012 -/* 00EEB8 8000E2B8 2463AD44 */ addiu $v1, %lo(D_8011AD44) # addiu $v1, $v1, -0x52bc -/* 00EEBC 8000E2BC 80620000 */ lb $v0, ($v1) -/* 00EEC0 8000E2C0 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 00EEC4 8000E2C4 10400079 */ beqz $v0, .L8000E4AC -/* 00EEC8 8000E2C8 AFBF0014 */ sw $ra, 0x14($sp) -/* 00EECC 8000E2CC 244EFFFF */ addiu $t6, $v0, -1 -/* 00EED0 8000E2D0 A06E0000 */ sb $t6, ($v1) -/* 00EED4 8000E2D4 806F0000 */ lb $t7, ($v1) -/* 00EED8 8000E2D8 00000000 */ nop -/* 00EEDC 8000E2DC 15E00074 */ bnez $t7, .L8000E4B0 -/* 00EEE0 8000E2E0 8FBF0014 */ lw $ra, 0x14($sp) -/* 00EEE4 8000E2E4 0C01BAA4 */ jal func_8006EA90 -/* 00EEE8 8000E2E8 00000000 */ nop -/* 00EEEC 8000E2EC 3C048012 */ lui $a0, %hi(D_8011AD45) # $a0, 0x8012 -/* 00EEF0 8000E2F0 8084AD45 */ lb $a0, %lo(D_8011AD45)($a0) -/* 00EEF4 8000E2F4 24180010 */ li $t8, 16 -/* 00EEF8 8000E2F8 28810005 */ slti $at, $a0, 5 -/* 00EEFC 8000E2FC AFA20028 */ sw $v0, 0x28($sp) -/* 00EF00 8000E300 A7A0003A */ sh $zero, 0x3a($sp) -/* 00EF04 8000E304 1020000C */ beqz $at, .L8000E338 -/* 00EF08 8000E308 A3B8002D */ sb $t8, 0x2d($sp) -/* 00EF0C 8000E30C 80590059 */ lb $t9, 0x59($v0) -/* 00EF10 8000E310 00044880 */ sll $t1, $a0, 2 -/* 00EF14 8000E314 01244821 */ addu $t1, $t1, $a0 -/* 00EF18 8000E318 00095080 */ sll $t2, $t1, 2 -/* 00EF1C 8000E31C 00194040 */ sll $t0, $t9, 1 -/* 00EF20 8000E320 010A5821 */ addu $t3, $t0, $t2 -/* 00EF24 8000E324 3C03800E */ lui $v1, 0x800e -/* 00EF28 8000E328 006B1821 */ addu $v1, $v1, $t3 -/* 00EF2C 8000E32C 8463C7A8 */ lh $v1, -0x3858($v1) -/* 00EF30 8000E330 10000006 */ b .L8000E34C -/* 00EF34 8000E334 00000000 */ nop -.L8000E338: -/* 00EF38 8000E338 00046040 */ sll $t4, $a0, 1 -/* 00EF3C 8000E33C 3C03800E */ lui $v1, 0x800e -/* 00EF40 8000E340 006C1821 */ addu $v1, $v1, $t4 -/* 00EF44 8000E344 8463C802 */ lh $v1, -0x37fe($v1) -/* 00EF48 8000E348 00000000 */ nop -.L8000E34C: -/* 00EF4C 8000E34C 0C01B6C5 */ jal func_8006DB14 -/* 00EF50 8000E350 A7A30022 */ sh $v1, 0x22($sp) -/* 00EF54 8000E354 87A30022 */ lh $v1, 0x22($sp) -/* 00EF58 8000E358 93AD002D */ lbu $t5, 0x2d($sp) -/* 00EF5C 8000E35C 3C198012 */ lui $t9, %hi(D_8011AD46) # $t9, 0x8012 -/* 00EF60 8000E360 3C098012 */ lui $t1, %hi(D_8011AD48) # $t1, 0x8012 -/* 00EF64 8000E364 3C088012 */ lui $t0, %hi(D_8011AD4A) # $t0, 0x8012 -/* 00EF68 8000E368 3C0A8012 */ lui $t2, %hi(D_8011AD4C) # $t2, 0x8012 -/* 00EF6C 8000E36C 306E0100 */ andi $t6, $v1, 0x100 -/* 00EF70 8000E370 8739AD46 */ lh $t9, %lo(D_8011AD46)($t9) -/* 00EF74 8000E374 8529AD48 */ lh $t1, %lo(D_8011AD48)($t1) -/* 00EF78 8000E378 8508AD4A */ lh $t0, %lo(D_8011AD4A)($t0) -/* 00EF7C 8000E37C 854AAD4C */ lh $t2, %lo(D_8011AD4C)($t2) -/* 00EF80 8000E380 000E7843 */ sra $t7, $t6, 1 -/* 00EF84 8000E384 01AFC025 */ or $t8, $t5, $t7 -/* 00EF88 8000E388 A3B8002D */ sb $t8, 0x2d($sp) -/* 00EF8C 8000E38C A7A00036 */ sh $zero, 0x36($sp) -/* 00EF90 8000E390 A7A00034 */ sh $zero, 0x34($sp) -/* 00EF94 8000E394 24040001 */ li $a0, 1 -/* 00EF98 8000E398 A3A3002C */ sb $v1, 0x2c($sp) -/* 00EF9C 8000E39C A7B9002E */ sh $t9, 0x2e($sp) -/* 00EFA0 8000E3A0 A7A90030 */ sh $t1, 0x30($sp) -/* 00EFA4 8000E3A4 A7A80032 */ sh $t0, 0x32($sp) -/* 00EFA8 8000E3A8 0C01486E */ jal func_800521B8 -/* 00EFAC 8000E3AC A7AA0038 */ sh $t2, 0x38($sp) -/* 00EFB0 8000E3B0 27A4002C */ addiu $a0, $sp, 0x2c -/* 00EFB4 8000E3B4 0C003A95 */ jal func_8000EA54 -/* 00EFB8 8000E3B8 24050011 */ li $a1, 17 -/* 00EFBC 8000E3BC 3C0C8012 */ lui $t4, %hi(D_8011AEE4) # $t4, 0x8012 -/* 00EFC0 8000E3C0 8D8CAEE4 */ lw $t4, %lo(D_8011AEE4)($t4) -/* 00EFC4 8000E3C4 240B0001 */ li $t3, 1 -/* 00EFC8 8000E3C8 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 -/* 00EFCC 8000E3CC AC2BAEF0 */ sw $t3, %lo(D_8011AEF0)($at) -/* 00EFD0 8000E3D0 3C0E8012 */ lui $t6, %hi(D_8011AEEC) # $t6, 0x8012 -/* 00EFD4 8000E3D4 AD820000 */ sw $v0, ($t4) -/* 00EFD8 8000E3D8 8DCEAEEC */ lw $t6, %lo(D_8011AEEC)($t6) -/* 00EFDC 8000E3DC 3C0D8012 */ lui $t5, %hi(D_8011AEE8) # $t5, 0x8012 -/* 00EFE0 8000E3E0 ADC20000 */ sw $v0, ($t6) -/* 00EFE4 8000E3E4 8DADAEE8 */ lw $t5, %lo(D_8011AEE8)($t5) -/* 00EFE8 8000E3E8 3C058012 */ lui $a1, %hi(D_8011AD45) # $a1, 0x8012 -/* 00EFEC 8000E3EC ADA20000 */ sw $v0, ($t5) -/* 00EFF0 8000E3F0 24A5AD45 */ addiu $a1, %lo(D_8011AD45) # addiu $a1, $a1, -0x52bb -/* 00EFF4 8000E3F4 8C430064 */ lw $v1, 0x64($v0) -/* 00EFF8 8000E3F8 80AF0000 */ lb $t7, ($a1) -/* 00EFFC 8000E3FC 00000000 */ nop -/* 00F000 8000E400 A06F01D6 */ sb $t7, 0x1d6($v1) -/* 00F004 8000E404 80B80000 */ lb $t8, ($a1) -/* 00F008 8000E408 A0600002 */ sb $zero, 2($v1) -/* 00F00C 8000E40C A07801D7 */ sb $t8, 0x1d7($v1) -/* 00F010 8000E410 8FB90028 */ lw $t9, 0x28($sp) -/* 00F014 8000E414 00000000 */ nop -/* 00F018 8000E418 83290059 */ lb $t1, 0x59($t9) -/* 00F01C 8000E41C A4600000 */ sh $zero, ($v1) -/* 00F020 8000E420 AC600118 */ sw $zero, 0x118($v1) -/* 00F024 8000E424 A0690003 */ sb $t1, 3($v1) -/* 00F028 8000E428 0C0270C3 */ jal func_8009C30C -/* 00F02C 8000E42C AFA2003C */ sw $v0, 0x3c($sp) -/* 00F030 8000E430 8FA4003C */ lw $a0, 0x3c($sp) -/* 00F034 8000E434 30480010 */ andi $t0, $v0, 0x10 -/* 00F038 8000E438 11000006 */ beqz $t0, .L8000E454 -/* 00F03C 8000E43C 3C01800E */ lui $at, %hi(D_800E51AC) # $at, 0x800e -/* 00F040 8000E440 C4840008 */ lwc1 $f4, 8($a0) -/* 00F044 8000E444 C42651AC */ lwc1 $f6, %lo(D_800E51AC)($at) -/* 00F048 8000E448 00000000 */ nop -/* 00F04C 8000E44C 46062202 */ mul.s $f8, $f4, $f6 -/* 00F050 8000E450 E4880008 */ swc1 $f8, 8($a0) -.L8000E454: -/* 00F054 8000E454 0C0270C3 */ jal func_8009C30C -/* 00F058 8000E458 AFA4003C */ sw $a0, 0x3c($sp) -/* 00F05C 8000E45C 8FA4003C */ lw $a0, 0x3c($sp) -/* 00F060 8000E460 304A0020 */ andi $t2, $v0, 0x20 -/* 00F064 8000E464 11400007 */ beqz $t2, .L8000E484 -/* 00F068 8000E468 3C0B8012 */ lui $t3, %hi(D_8011AD4C) # $t3, 0x8012 -/* 00F06C 8000E46C 3C01800E */ lui $at, %hi(D_800E51B0) # $at, 0x800e -/* 00F070 8000E470 C43051B0 */ lwc1 $f16, %lo(D_800E51B0)($at) -/* 00F074 8000E474 C48A0008 */ lwc1 $f10, 8($a0) -/* 00F078 8000E478 00000000 */ nop -/* 00F07C 8000E47C 46105482 */ mul.s $f18, $f10, $f16 -/* 00F080 8000E480 E4920008 */ swc1 $f18, 8($a0) -.L8000E484: -/* 00F084 8000E484 AC80003C */ sw $zero, 0x3c($a0) -/* 00F088 8000E488 856BAD4C */ lh $t3, %lo(D_8011AD4C)($t3) -/* 00F08C 8000E48C 3C0C8012 */ lui $t4, %hi(D_8011AD48) # $t4, 0x8012 -/* 00F090 8000E490 A48B0000 */ sh $t3, ($a0) -/* 00F094 8000E494 858CAD48 */ lh $t4, %lo(D_8011AD48)($t4) -/* 00F098 8000E498 00000000 */ nop -/* 00F09C 8000E49C 448C2000 */ mtc1 $t4, $f4 -/* 00F0A0 8000E4A0 00000000 */ nop -/* 00F0A4 8000E4A4 468021A0 */ cvt.s.w $f6, $f4 -/* 00F0A8 8000E4A8 E4860010 */ swc1 $f6, 0x10($a0) -.L8000E4AC: -/* 00F0AC 8000E4AC 8FBF0014 */ lw $ra, 0x14($sp) -.L8000E4B0: -/* 00F0B0 8000E4B0 27BD0040 */ addiu $sp, $sp, 0x40 -/* 00F0B4 8000E4B4 03E00008 */ jr $ra -/* 00F0B8 8000E4B8 00000000 */ nop - -glabel func_8000E4BC -/* 00F0BC 8000E4BC 3C018012 */ lui $at, 0x8012 -/* 00F0C0 8000E4C0 03E00008 */ jr $ra -/* 00F0C4 8000E4C4 A024AEF4 */ sb $a0, -0x510c($at) - -glabel func_8000E4C8 -/* 00F0C8 8000E4C8 3C028012 */ lui $v0, %hi(D_8011AEF4) # $v0, 0x8012 -/* 00F0CC 8000E4CC 9042AEF4 */ lbu $v0, %lo(D_8011AEF4)($v0) -/* 00F0D0 8000E4D0 03E00008 */ jr $ra -/* 00F0D4 8000E4D4 00000000 */ nop - -glabel func_8000E4D8 -/* 00F0D8 8000E4D8 3C028012 */ lui $v0, %hi(D_8011AEF5) # $v0, 0x8012 -/* 00F0DC 8000E4DC 9042AEF5 */ lbu $v0, %lo(D_8011AEF5)($v0) -/* 00F0E0 8000E4E0 03E00008 */ jr $ra -/* 00F0E4 8000E4E4 00000000 */ nop - -/* 00F0E8 8000E4E8 00041880 */ sll $v1, $a0, 2 -/* 00F0EC 8000E4EC 3C028012 */ lui $v0, 0x8012 -/* 00F0F0 8000E4F0 3C0E8012 */ lui $t6, %hi(D_8011AEA0) # $t6, 0x8012 -/* 00F0F4 8000E4F4 00431021 */ addu $v0, $v0, $v1 -/* 00F0F8 8000E4F8 25CEAEA0 */ addiu $t6, %lo(D_8011AEA0) # addiu $t6, $t6, -0x5160 -/* 00F0FC 8000E4FC 8C42AEB0 */ lw $v0, -0x5150($v0) -/* 00F100 8000E500 006E2821 */ addu $a1, $v1, $t6 -/* 00F104 8000E504 8CAF0000 */ lw $t7, ($a1) -/* 00F108 8000E508 3C198012 */ lui $t9, 0x8012 -/* 00F10C 8000E50C AC40000C */ sw $zero, 0xc($v0) -/* 00F110 8000E510 AC400008 */ sw $zero, 8($v0) -/* 00F114 8000E514 AC400004 */ sw $zero, 4($v0) -/* 00F118 8000E518 AC4F0000 */ sw $t7, ($v0) -/* 00F11C 8000E51C 0323C821 */ addu $t9, $t9, $v1 -/* 00F120 8000E520 8F39AE98 */ lw $t9, -0x5168($t9) -/* 00F124 8000E524 8CB80000 */ lw $t8, ($a1) -/* 00F128 8000E528 24020010 */ li $v0, 16 -/* 00F12C 8000E52C 00003825 */ move $a3, $zero -/* 00F130 8000E530 03194021 */ addu $t0, $t8, $t9 -.L8000E534: -/* 00F134 8000E534 24E70004 */ addiu $a3, $a3, 4 -/* 00F138 8000E538 A1000000 */ sb $zero, ($t0) -/* 00F13C 8000E53C A1000001 */ sb $zero, 1($t0) -/* 00F140 8000E540 A1000002 */ sb $zero, 2($t0) -/* 00F144 8000E544 A1000003 */ sb $zero, 3($t0) -/* 00F148 8000E548 14E2FFFA */ bne $a3, $v0, .L8000E534 -/* 00F14C 8000E54C 25080004 */ addiu $t0, $t0, 4 -/* 00F150 8000E550 03E00008 */ jr $ra -/* 00F154 8000E554 00000000 */ nop - -/* 00F158 8000E558 8C82003C */ lw $v0, 0x3c($a0) -/* 00F15C 8000E55C 3C058012 */ lui $a1, %hi(D_8011AE98) # $a1, 0x8012 -/* 00F160 8000E560 14400003 */ bnez $v0, .L8000E570 -/* 00F164 8000E564 24A5AE98 */ addiu $a1, %lo(D_8011AE98) # addiu $a1, $a1, -0x5168 -/* 00F168 8000E568 03E00008 */ jr $ra -/* 00F16C 8000E56C 24020001 */ li $v0, 1 - -.L8000E570: -/* 00F170 8000E570 8CA40000 */ lw $a0, ($a1) -/* 00F174 8000E574 00401825 */ move $v1, $v0 -/* 00F178 8000E578 0044082A */ slt $at, $v0, $a0 -/* 00F17C 8000E57C 1420000A */ bnez $at, .L8000E5A8 -/* 00F180 8000E580 3C0E8012 */ lui $t6, %hi(D_8011AEA0) # $t6, 0x8012 -/* 00F184 8000E584 8DCEAEA0 */ lw $t6, %lo(D_8011AEA0)($t6) -/* 00F188 8000E588 00000000 */ nop -/* 00F18C 8000E58C 000E78C0 */ sll $t7, $t6, 3 -/* 00F190 8000E590 01E4C021 */ addu $t8, $t7, $a0 -/* 00F194 8000E594 0302082A */ slt $at, $t8, $v0 -/* 00F198 8000E598 14200003 */ bnez $at, .L8000E5A8 -/* 00F19C 8000E59C 00000000 */ nop -/* 00F1A0 8000E5A0 03E00008 */ jr $ra -/* 00F1A4 8000E5A4 00001025 */ move $v0, $zero - -.L8000E5A8: -/* 00F1A8 8000E5A8 8CA20004 */ lw $v0, 4($a1) -/* 00F1AC 8000E5AC 3C198012 */ lui $t9, %hi(D_8011AEA4) # $t9, 0x8012 -/* 00F1B0 8000E5B0 0062082A */ slt $at, $v1, $v0 -/* 00F1B4 8000E5B4 1420000A */ bnez $at, .L8000E5E0 -/* 00F1B8 8000E5B8 00000000 */ nop -/* 00F1BC 8000E5BC 8F39AEA4 */ lw $t9, %lo(D_8011AEA4)($t9) -/* 00F1C0 8000E5C0 00000000 */ nop -/* 00F1C4 8000E5C4 001940C0 */ sll $t0, $t9, 3 -/* 00F1C8 8000E5C8 01024821 */ addu $t1, $t0, $v0 -/* 00F1CC 8000E5CC 0123082A */ slt $at, $t1, $v1 -/* 00F1D0 8000E5D0 14200004 */ bnez $at, .L8000E5E4 -/* 00F1D4 8000E5D4 24020001 */ li $v0, 1 -/* 00F1D8 8000E5D8 03E00008 */ jr $ra -/* 00F1DC 8000E5DC 24020001 */ li $v0, 1 - -.L8000E5E0: -/* 00F1E0 8000E5E0 24020001 */ li $v0, 1 -.L8000E5E4: -/* 00F1E4 8000E5E4 03E00008 */ jr $ra -/* 00F1E8 8000E5E8 00000000 */ nop - -/* 00F1EC 8000E5EC 3C068012 */ lui $a2, %hi(D_8011AE98) # $a2, 0x8012 -/* 00F1F0 8000E5F0 3C0B8012 */ lui $t3, %hi(D_8011AEA0) # $t3, 0x8012 -/* 00F1F4 8000E5F4 256BAEA0 */ addiu $t3, %lo(D_8011AEA0) # addiu $t3, $t3, -0x5160 -/* 00F1F8 8000E5F8 24C6AE98 */ addiu $a2, %lo(D_8011AE98) # addiu $a2, $a2, -0x5168 -/* 00F1FC 8000E5FC 90820001 */ lbu $v0, 1($a0) -/* 00F200 8000E600 8CC30000 */ lw $v1, ($a2) -/* 00F204 8000E604 8D6F0000 */ lw $t7, ($t3) -/* 00F208 8000E608 8CC50004 */ lw $a1, 4($a2) -/* 00F20C 8000E60C 8D790004 */ lw $t9, 4($t3) -/* 00F210 8000E610 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 00F214 8000E614 304E003F */ andi $t6, $v0, 0x3f -/* 00F218 8000E618 0083082A */ slt $at, $a0, $v1 -/* 00F21C 8000E61C 01E3C021 */ addu $t8, $t7, $v1 -/* 00F220 8000E620 03256021 */ addu $t4, $t9, $a1 -/* 00F224 8000E624 01C01025 */ move $v0, $t6 -/* 00F228 8000E628 AFB8002C */ sw $t8, 0x2c($sp) -/* 00F22C 8000E62C 14200006 */ bnez $at, .L8000E648 -/* 00F230 8000E630 AFAC0030 */ sw $t4, 0x30($sp) -/* 00F234 8000E634 0098082A */ slt $at, $a0, $t8 -/* 00F238 8000E638 10200004 */ beqz $at, .L8000E64C -/* 00F23C 8000E63C 0085082A */ slt $at, $a0, $a1 -/* 00F240 8000E640 1000000A */ b .L8000E66C -/* 00F244 8000E644 AFA0001C */ sw $zero, 0x1c($sp) -.L8000E648: -/* 00F248 8000E648 0085082A */ slt $at, $a0, $a1 -.L8000E64C: -/* 00F24C 8000E64C 14200008 */ bnez $at, .L8000E670 -/* 00F250 8000E650 8FA8001C */ lw $t0, 0x1c($sp) -/* 00F254 8000E654 8FAE0030 */ lw $t6, 0x30($sp) -/* 00F258 8000E658 240F0001 */ li $t7, 1 -/* 00F25C 8000E65C 008E082A */ slt $at, $a0, $t6 -/* 00F260 8000E660 10200003 */ beqz $at, .L8000E670 -/* 00F264 8000E664 8FA8001C */ lw $t0, 0x1c($sp) -/* 00F268 8000E668 AFAF001C */ sw $t7, 0x1c($sp) -.L8000E66C: -/* 00F26C 8000E66C 8FA8001C */ lw $t0, 0x1c($sp) -.L8000E670: -/* 00F270 8000E670 00823021 */ addu $a2, $a0, $v0 -/* 00F274 8000E674 0008C080 */ sll $t8, $t0, 2 -/* 00F278 8000E678 03B83821 */ addu $a3, $sp, $t8 -/* 00F27C 8000E67C 8CE7002C */ lw $a3, 0x2c($a3) -/* 00F280 8000E680 00801825 */ move $v1, $a0 -/* 00F284 8000E684 00C7082B */ sltu $at, $a2, $a3 -/* 00F288 8000E688 00C02825 */ move $a1, $a2 -/* 00F28C 8000E68C 10200018 */ beqz $at, .L8000E6F0 -/* 00F290 8000E690 03004025 */ move $t0, $t8 -/* 00F294 8000E694 00E65023 */ subu $t2, $a3, $a2 -/* 00F298 8000E698 31590003 */ andi $t9, $t2, 3 -/* 00F29C 8000E69C 13200008 */ beqz $t9, .L8000E6C0 -/* 00F2A0 8000E6A0 03264821 */ addu $t1, $t9, $a2 -.L8000E6A4: -/* 00F2A4 8000E6A4 90AC0000 */ lbu $t4, ($a1) -/* 00F2A8 8000E6A8 24A50001 */ addiu $a1, $a1, 1 -/* 00F2AC 8000E6AC 24630001 */ addiu $v1, $v1, 1 -/* 00F2B0 8000E6B0 1525FFFC */ bne $t1, $a1, .L8000E6A4 -/* 00F2B4 8000E6B4 A06CFFFF */ sb $t4, -1($v1) -/* 00F2B8 8000E6B8 10A7000D */ beq $a1, $a3, .L8000E6F0 -/* 00F2BC 8000E6BC 00000000 */ nop -.L8000E6C0: -/* 00F2C0 8000E6C0 90AD0000 */ lbu $t5, ($a1) -/* 00F2C4 8000E6C4 24A50004 */ addiu $a1, $a1, 4 -/* 00F2C8 8000E6C8 A06D0000 */ sb $t5, ($v1) -/* 00F2CC 8000E6CC 90AEFFFD */ lbu $t6, -3($a1) -/* 00F2D0 8000E6D0 24630004 */ addiu $v1, $v1, 4 -/* 00F2D4 8000E6D4 A06EFFFD */ sb $t6, -3($v1) -/* 00F2D8 8000E6D8 90AFFFFE */ lbu $t7, -2($a1) -/* 00F2DC 8000E6DC 00000000 */ nop -/* 00F2E0 8000E6E0 A06FFFFE */ sb $t7, -2($v1) -/* 00F2E4 8000E6E4 90B8FFFF */ lbu $t8, -1($a1) -/* 00F2E8 8000E6E8 14A7FFF5 */ bne $a1, $a3, .L8000E6C0 -/* 00F2EC 8000E6EC A078FFFF */ sb $t8, -1($v1) -.L8000E6F0: -/* 00F2F0 8000E6F0 01681821 */ addu $v1, $t3, $t0 -/* 00F2F4 8000E6F4 8C790000 */ lw $t9, ($v1) -/* 00F2F8 8000E6F8 3C068012 */ lui $a2, %hi(D_8011AE5C) # $a2, 0x8012 -/* 00F2FC 8000E6FC 03226023 */ subu $t4, $t9, $v0 -/* 00F300 8000E700 AC6C0000 */ sw $t4, ($v1) -/* 00F304 8000E704 8CC6AE5C */ lw $a2, %lo(D_8011AE5C)($a2) -/* 00F308 8000E708 00004025 */ move $t0, $zero -/* 00F30C 8000E70C 18C00021 */ blez $a2, .L8000E794 -/* 00F310 8000E710 00002825 */ move $a1, $zero -/* 00F314 8000E714 3C0B8012 */ lui $t3, %hi(D_8011AE58) # $t3, 0x8012 -/* 00F318 8000E718 256BAE58 */ addiu $t3, %lo(D_8011AE58) # addiu $t3, $t3, -0x51a8 -.L8000E71C: -/* 00F31C 8000E71C 8D6D0000 */ lw $t5, ($t3) -/* 00F320 8000E720 24A50001 */ addiu $a1, $a1, 1 -/* 00F324 8000E724 01A87021 */ addu $t6, $t5, $t0 -/* 00F328 8000E728 8DC30000 */ lw $v1, ($t6) -/* 00F32C 8000E72C 00000000 */ nop -/* 00F330 8000E730 10600016 */ beqz $v1, .L8000E78C -/* 00F334 8000E734 00A6082A */ slt $at, $a1, $a2 -/* 00F338 8000E738 8C69003C */ lw $t1, 0x3c($v1) -/* 00F33C 8000E73C 00000000 */ nop -/* 00F340 8000E740 11200011 */ beqz $t1, .L8000E788 -/* 00F344 8000E744 0089082A */ slt $at, $a0, $t1 -/* 00F348 8000E748 10200009 */ beqz $at, .L8000E770 -/* 00F34C 8000E74C 01205025 */ move $t2, $t1 -/* 00F350 8000E750 0127082A */ slt $at, $t1, $a3 -/* 00F354 8000E754 10200006 */ beqz $at, .L8000E770 -/* 00F358 8000E758 01227823 */ subu $t7, $t1, $v0 -/* 00F35C 8000E75C AC6F003C */ sw $t7, 0x3c($v1) -/* 00F360 8000E760 3C068012 */ lui $a2, %hi(D_8011AE5C) # $a2, 0x8012 -/* 00F364 8000E764 8CC6AE5C */ lw $a2, %lo(D_8011AE5C)($a2) -/* 00F368 8000E768 10000008 */ b .L8000E78C -/* 00F36C 8000E76C 00A6082A */ slt $at, $a1, $a2 -.L8000E770: -/* 00F370 8000E770 148A0006 */ bne $a0, $t2, .L8000E78C -/* 00F374 8000E774 00A6082A */ slt $at, $a1, $a2 -/* 00F378 8000E778 AC60003C */ sw $zero, 0x3c($v1) -/* 00F37C 8000E77C 3C068012 */ lui $a2, %hi(D_8011AE5C) # $a2, 0x8012 -/* 00F380 8000E780 8CC6AE5C */ lw $a2, %lo(D_8011AE5C)($a2) -/* 00F384 8000E784 00000000 */ nop -.L8000E788: -/* 00F388 8000E788 00A6082A */ slt $at, $a1, $a2 -.L8000E78C: -/* 00F38C 8000E78C 1420FFE3 */ bnez $at, .L8000E71C -/* 00F390 8000E790 25080004 */ addiu $t0, $t0, 4 -.L8000E794: -/* 00F394 8000E794 03E00008 */ jr $ra -/* 00F398 8000E798 27BD0040 */ addiu $sp, $sp, 0x40 - -/* 00F39C 8000E79C 3C068012 */ lui $a2, %hi(D_8011AEC0) # $a2, 0x8012 -/* 00F3A0 8000E7A0 8CC6AEC0 */ lw $a2, %lo(D_8011AEC0)($a2) -/* 00F3A4 8000E7A4 3C188012 */ lui $t8, %hi(D_8011AEA0) # $t8, 0x8012 -/* 00F3A8 8000E7A8 00064080 */ sll $t0, $a2, 2 -/* 00F3AC 8000E7AC 2718AEA0 */ addiu $t8, %lo(D_8011AEA0) # addiu $t8, $t8, -0x5160 -/* 00F3B0 8000E7B0 3C0D8012 */ lui $t5, 0x8012 -/* 00F3B4 8000E7B4 90820001 */ lbu $v0, 1($a0) -/* 00F3B8 8000E7B8 90A30001 */ lbu $v1, 1($a1) -/* 00F3BC 8000E7BC 01A86821 */ addu $t5, $t5, $t0 -/* 00F3C0 8000E7C0 01184821 */ addu $t1, $t0, $t8 -/* 00F3C4 8000E7C4 8D390000 */ lw $t9, ($t1) -/* 00F3C8 8000E7C8 8DADAEB0 */ lw $t5, -0x5150($t5) -/* 00F3CC 8000E7CC 304E003F */ andi $t6, $v0, 0x3f -/* 00F3D0 8000E7D0 306F003F */ andi $t7, $v1, 0x3f -/* 00F3D4 8000E7D4 01EE082A */ slt $at, $t7, $t6 -/* 00F3D8 8000E7D8 032D3821 */ addu $a3, $t9, $t5 -/* 00F3DC 8000E7DC 01C01025 */ move $v0, $t6 -/* 00F3E0 8000E7E0 01E01825 */ move $v1, $t7 -/* 00F3E4 8000E7E4 1020000E */ beqz $at, .L8000E820 -/* 00F3E8 8000E7E8 24E70010 */ addiu $a3, $a3, 0x10 -/* 00F3EC 8000E7EC 008E4021 */ addu $t0, $a0, $t6 -/* 00F3F0 8000E7F0 0107082B */ sltu $at, $t0, $a3 -/* 00F3F4 8000E7F4 008F3021 */ addu $a2, $a0, $t7 -/* 00F3F8 8000E7F8 10200017 */ beqz $at, .L8000E858 -/* 00F3FC 8000E7FC 00E05025 */ move $t2, $a3 -.L8000E800: -/* 00F400 8000E800 910E0000 */ lbu $t6, ($t0) -/* 00F404 8000E804 25080001 */ addiu $t0, $t0, 1 -/* 00F408 8000E808 010A082B */ sltu $at, $t0, $t2 -/* 00F40C 8000E80C 24C60001 */ addiu $a2, $a2, 1 -/* 00F410 8000E810 1420FFFB */ bnez $at, .L8000E800 -/* 00F414 8000E814 A0CEFFFF */ sb $t6, -1($a2) -/* 00F418 8000E818 10000010 */ b .L8000E85C -/* 00F41C 8000E81C 00003025 */ move $a2, $zero -.L8000E820: -/* 00F420 8000E820 0043082A */ slt $at, $v0, $v1 -/* 00F424 8000E824 1020000C */ beqz $at, .L8000E858 -/* 00F428 8000E828 00E37821 */ addu $t7, $a3, $v1 -/* 00F42C 8000E82C 01E23023 */ subu $a2, $t7, $v0 -/* 00F430 8000E830 00835021 */ addu $t2, $a0, $v1 -/* 00F434 8000E834 0146082B */ sltu $at, $t2, $a2 -/* 00F438 8000E838 10200007 */ beqz $at, .L8000E858 -/* 00F43C 8000E83C 00E04025 */ move $t0, $a3 -.L8000E840: -/* 00F440 8000E840 9118FFFF */ lbu $t8, -1($t0) -/* 00F444 8000E844 24C6FFFF */ addiu $a2, $a2, -1 -/* 00F448 8000E848 0146082B */ sltu $at, $t2, $a2 -/* 00F44C 8000E84C 2508FFFF */ addiu $t0, $t0, -1 -/* 00F450 8000E850 1420FFFB */ bnez $at, .L8000E840 -/* 00F454 8000E854 A0D80000 */ sb $t8, ($a2) -.L8000E858: -/* 00F458 8000E858 00003025 */ move $a2, $zero -.L8000E85C: -/* 00F45C 8000E85C 00803825 */ move $a3, $a0 -/* 00F460 8000E860 00A04025 */ move $t0, $a1 -.L8000E864: -/* 00F464 8000E864 91190000 */ lbu $t9, ($t0) -/* 00F468 8000E868 24C60001 */ addiu $a2, $a2, 1 -/* 00F46C 8000E86C 00C3082A */ slt $at, $a2, $v1 -/* 00F470 8000E870 24E70001 */ addiu $a3, $a3, 1 -/* 00F474 8000E874 25080001 */ addiu $t0, $t0, 1 -/* 00F478 8000E878 1420FFFA */ bnez $at, .L8000E864 -/* 00F47C 8000E87C A0F9FFFF */ sb $t9, -1($a3) -/* 00F480 8000E880 8D2D0000 */ lw $t5, ($t1) -/* 00F484 8000E884 00000000 */ nop -/* 00F488 8000E888 01A37021 */ addu $t6, $t5, $v1 -/* 00F48C 8000E88C 01C27823 */ subu $t7, $t6, $v0 -/* 00F490 8000E890 03E00008 */ jr $ra -/* 00F494 8000E894 AD2F0000 */ sw $t7, ($t1) - -/* 00F498 8000E898 3C0F8012 */ lui $t7, %hi(D_8011AEA0) # $t7, 0x8012 -/* 00F49C 8000E89C 25EFAEA0 */ addiu $t7, %lo(D_8011AEA0) # addiu $t7, $t7, -0x5160 -/* 00F4A0 8000E8A0 00053080 */ sll $a2, $a1, 2 -/* 00F4A4 8000E8A4 90820001 */ lbu $v0, 1($a0) -/* 00F4A8 8000E8A8 00CF3821 */ addu $a3, $a2, $t7 -/* 00F4AC 8000E8AC 3C188012 */ lui $t8, 0x8012 -/* 00F4B0 8000E8B0 8CE80000 */ lw $t0, ($a3) -/* 00F4B4 8000E8B4 0306C021 */ addu $t8, $t8, $a2 -/* 00F4B8 8000E8B8 8F18AE98 */ lw $t8, -0x5168($t8) -/* 00F4BC 8000E8BC 304E003F */ andi $t6, $v0, 0x3f -/* 00F4C0 8000E8C0 010EC821 */ addu $t9, $t0, $t6 -/* 00F4C4 8000E8C4 01C01025 */ move $v0, $t6 -/* 00F4C8 8000E8C8 ACF90000 */ sw $t9, ($a3) -/* 00F4CC 8000E8CC 00004825 */ move $t1, $zero -/* 00F4D0 8000E8D0 19C0001B */ blez $t6, .L8000E940 -/* 00F4D4 8000E8D4 01181821 */ addu $v1, $t0, $t8 -/* 00F4D8 8000E8D8 31C80003 */ andi $t0, $t6, 3 -/* 00F4DC 8000E8DC 1100000A */ beqz $t0, .L8000E908 -/* 00F4E0 8000E8E0 01002825 */ move $a1, $t0 -/* 00F4E4 8000E8E4 00603021 */ addu $a2, $v1, $zero -/* 00F4E8 8000E8E8 00803821 */ addu $a3, $a0, $zero -.L8000E8EC: -/* 00F4EC 8000E8EC 90EA0000 */ lbu $t2, ($a3) -/* 00F4F0 8000E8F0 25290001 */ addiu $t1, $t1, 1 -/* 00F4F4 8000E8F4 24C60001 */ addiu $a2, $a2, 1 -/* 00F4F8 8000E8F8 24E70001 */ addiu $a3, $a3, 1 -/* 00F4FC 8000E8FC 14A9FFFB */ bne $a1, $t1, .L8000E8EC -/* 00F500 8000E900 A0CAFFFF */ sb $t2, -1($a2) -/* 00F504 8000E904 1122000E */ beq $t1, $v0, .L8000E940 -.L8000E908: -/* 00F508 8000E908 00693021 */ addu $a2, $v1, $t1 -/* 00F50C 8000E90C 00893821 */ addu $a3, $a0, $t1 -.L8000E910: -/* 00F510 8000E910 90EB0000 */ lbu $t3, ($a3) -/* 00F514 8000E914 25290004 */ addiu $t1, $t1, 4 -/* 00F518 8000E918 A0CB0000 */ sb $t3, ($a2) -/* 00F51C 8000E91C 90EC0001 */ lbu $t4, 1($a3) -/* 00F520 8000E920 24C60004 */ addiu $a2, $a2, 4 -/* 00F524 8000E924 A0CCFFFD */ sb $t4, -3($a2) -/* 00F528 8000E928 90ED0002 */ lbu $t5, 2($a3) -/* 00F52C 8000E92C 24E70004 */ addiu $a3, $a3, 4 -/* 00F530 8000E930 A0CDFFFE */ sb $t5, -2($a2) -/* 00F534 8000E934 90EEFFFF */ lbu $t6, -1($a3) -/* 00F538 8000E938 1522FFF5 */ bne $t1, $v0, .L8000E910 -/* 00F53C 8000E93C A0CEFFFF */ sb $t6, -1($a2) -.L8000E940: -/* 00F540 8000E940 03E00008 */ jr $ra -/* 00F544 8000E944 00601025 */ move $v0, $v1 - -glabel func_8000E948 -/* 00F548 8000E948 04800006 */ bltz $a0, .L8000E964 -/* 00F54C 8000E94C 3C0E8012 */ lui $t6, %hi(D_8011AE5C) # $t6, 0x8012 -/* 00F550 8000E950 8DCEAE5C */ lw $t6, %lo(D_8011AE5C)($t6) -/* 00F554 8000E954 3C0F8012 */ lui $t7, 0x8012 -/* 00F558 8000E958 008E082A */ slt $at, $a0, $t6 -/* 00F55C 8000E95C 14200003 */ bnez $at, .L8000E96C -/* 00F560 8000E960 00000000 */ nop -.L8000E964: -/* 00F564 8000E964 03E00008 */ jr $ra -/* 00F568 8000E968 00001025 */ move $v0, $zero - -.L8000E96C: -/* 00F56C 8000E96C 8DEFAE58 */ lw $t7, -0x51a8($t7) -/* 00F570 8000E970 0004C080 */ sll $t8, $a0, 2 -/* 00F574 8000E974 01F8C821 */ addu $t9, $t7, $t8 -/* 00F578 8000E978 8F220000 */ lw $v0, ($t9) -/* 00F57C 8000E97C 00000000 */ nop -/* 00F580 8000E980 03E00008 */ jr $ra -/* 00F584 8000E984 00000000 */ nop - -glabel func_8000E988 -/* 00F588 8000E988 3C0E8012 */ lui $t6, %hi(D_8011AE60) # $t6, 0x8012 -/* 00F58C 8000E98C 8DCEAE60 */ lw $t6, %lo(D_8011AE60)($t6) -/* 00F590 8000E990 3C0F8012 */ lui $t7, %hi(D_8011AE5C) # $t7, 0x8012 -/* 00F594 8000E994 AC8E0000 */ sw $t6, ($a0) -/* 00F598 8000E998 8DEFAE5C */ lw $t7, %lo(D_8011AE5C)($t7) -/* 00F59C 8000E99C 3C028012 */ lui $v0, %hi(D_8011AE58) # $v0, 0x8012 -/* 00F5A0 8000E9A0 ACAF0000 */ sw $t7, ($a1) -/* 00F5A4 8000E9A4 8C42AE58 */ lw $v0, %lo(D_8011AE58)($v0) -/* 00F5A8 8000E9A8 03E00008 */ jr $ra -/* 00F5AC 8000E9AC 00000000 */ nop - -/* 00F5B0 8000E9B0 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 -/* 00F5B4 8000E9B4 8C42AE5C */ lw $v0, %lo(D_8011AE5C)($v0) -/* 00F5B8 8000E9B8 03E00008 */ jr $ra -/* 00F5BC 8000E9BC 00000000 */ nop - -/* 00F5C0 8000E9C0 3C028012 */ lui $v0, %hi(D_8011AE64) # $v0, 0x8012 -/* 00F5C4 8000E9C4 8C42AE64 */ lw $v0, %lo(D_8011AE64)($v0) -/* 00F5C8 8000E9C8 03E00008 */ jr $ra -/* 00F5CC 8000E9CC 00000000 */ nop - -glabel func_8000E9D0 -/* 00F5D0 8000E9D0 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 00F5D4 8000E9D4 AFBF0014 */ sw $ra, 0x14($sp) -/* 00F5D8 8000E9D8 848E0006 */ lh $t6, 6($a0) -/* 00F5DC 8000E9DC 00802825 */ move $a1, $a0 -/* 00F5E0 8000E9E0 35CF8000 */ ori $t7, $t6, 0x8000 -/* 00F5E4 8000E9E4 A48F0006 */ sh $t7, 6($a0) -/* 00F5E8 8000E9E8 8484002C */ lh $a0, 0x2c($a0) -/* 00F5EC 8000E9EC AFA50018 */ sw $a1, 0x18($sp) -/* 00F5F0 8000E9F0 3498C000 */ ori $t8, $a0, 0xc000 -/* 00F5F4 8000E9F4 0018CC00 */ sll $t9, $t8, 0x10 -/* 00F5F8 8000E9F8 0C00916D */ jal func_800245B4 -/* 00F5FC 8000E9FC 00192403 */ sra $a0, $t9, 0x10 -/* 00F600 8000EA00 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 -/* 00F604 8000EA04 2442AE5C */ addiu $v0, %lo(D_8011AE5C) # addiu $v0, $v0, -0x51a4 -/* 00F608 8000EA08 8C4A0000 */ lw $t2, ($v0) -/* 00F60C 8000EA0C 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 -/* 00F610 8000EA10 8D29AE58 */ lw $t1, %lo(D_8011AE58)($t1) -/* 00F614 8000EA14 8FA50018 */ lw $a1, 0x18($sp) -/* 00F618 8000EA18 000A5880 */ sll $t3, $t2, 2 -/* 00F61C 8000EA1C 012B6021 */ addu $t4, $t1, $t3 -/* 00F620 8000EA20 AD850000 */ sw $a1, ($t4) -/* 00F624 8000EA24 8C4D0000 */ lw $t5, ($v0) -/* 00F628 8000EA28 00000000 */ nop -/* 00F62C 8000EA2C 25AE0001 */ addiu $t6, $t5, 1 -/* 00F630 8000EA30 AC4E0000 */ sw $t6, ($v0) -/* 00F634 8000EA34 3C028012 */ lui $v0, %hi(D_8011AE64) # $v0, 0x8012 -/* 00F638 8000EA38 2442AE64 */ addiu $v0, %lo(D_8011AE64) # addiu $v0, $v0, -0x519c -/* 00F63C 8000EA3C 8C4F0000 */ lw $t7, ($v0) -/* 00F640 8000EA40 8FBF0014 */ lw $ra, 0x14($sp) -/* 00F644 8000EA44 25F80001 */ addiu $t8, $t7, 1 -/* 00F648 8000EA48 AC580000 */ sw $t8, ($v0) -/* 00F64C 8000EA4C 03E00008 */ jr $ra -/* 00F650 8000EA50 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_8000EA54 -/* 00F654 8000EA54 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 00F658 8000EA58 AFBF0024 */ sw $ra, 0x24($sp) -/* 00F65C 8000EA5C AFB30020 */ sw $s3, 0x20($sp) -/* 00F660 8000EA60 AFB2001C */ sw $s2, 0x1c($sp) -/* 00F664 8000EA64 AFB10018 */ sw $s1, 0x18($sp) -/* 00F668 8000EA68 AFB00014 */ sw $s0, 0x14($sp) -/* 00F66C 8000EA6C AFA40068 */ sw $a0, 0x68($sp) -/* 00F670 8000EA70 0C01BAA4 */ jal func_8006EA90 -/* 00F674 8000EA74 AFA5006C */ sw $a1, 0x6c($sp) -/* 00F678 8000EA78 8FA30068 */ lw $v1, 0x68($sp) -/* 00F67C 8000EA7C 00408825 */ move $s1, $v0 -/* 00F680 8000EA80 906F0001 */ lbu $t7, 1($v1) -/* 00F684 8000EA84 906E0000 */ lbu $t6, ($v1) -/* 00F688 8000EA88 31F80080 */ andi $t8, $t7, 0x80 -/* 00F68C 8000EA8C 0018C840 */ sll $t9, $t8, 1 -/* 00F690 8000EA90 01D92825 */ or $a1, $t6, $t9 -/* 00F694 8000EA94 AFA50064 */ sw $a1, 0x64($sp) -/* 00F698 8000EA98 0C02DDAE */ jal func_800B76B8 -/* 00F69C 8000EA9C 00002025 */ move $a0, $zero -/* 00F6A0 8000EAA0 8FA3006C */ lw $v1, 0x6c($sp) -/* 00F6A4 8000EAA4 3C0F8012 */ lui $t7, %hi(D_8011AD68) # $t7, 0x8012 -/* 00F6A8 8000EAA8 30680002 */ andi $t0, $v1, 2 -/* 00F6AC 8000EAAC 11000004 */ beqz $t0, .L8000EAC0 -/* 00F6B0 8000EAB0 01001825 */ move $v1, $t0 -/* 00F6B4 8000EAB4 87A40066 */ lh $a0, 0x66($sp) -/* 00F6B8 8000EAB8 10000009 */ b .L8000EAE0 -/* 00F6BC 8000EABC 00000000 */ nop -.L8000EAC0: -/* 00F6C0 8000EAC0 8FAA0064 */ lw $t2, 0x64($sp) -/* 00F6C4 8000EAC4 3C098012 */ lui $t1, %hi(D_8011AEB8) # $t1, 0x8012 -/* 00F6C8 8000EAC8 8D29AEB8 */ lw $t1, %lo(D_8011AEB8)($t1) -/* 00F6CC 8000EACC 000A5840 */ sll $t3, $t2, 1 -/* 00F6D0 8000EAD0 012B6021 */ addu $t4, $t1, $t3 -/* 00F6D4 8000EAD4 85840000 */ lh $a0, ($t4) -/* 00F6D8 8000EAD8 00000000 */ nop -/* 00F6DC 8000EADC A7A4004E */ sh $a0, 0x4e($sp) -.L8000EAE0: -/* 00F6E0 8000EAE0 8DEFAD68 */ lw $t7, %lo(D_8011AD68)($t7) -/* 00F6E4 8000EAE4 00008025 */ move $s0, $zero -/* 00F6E8 8000EAE8 008F082A */ slt $at, $a0, $t7 -/* 00F6EC 8000EAEC 14200002 */ bnez $at, .L8000EAF8 -/* 00F6F0 8000EAF0 3C028012 */ lui $v0, %hi(D_8011AD58) # $v0, 0x8012 -/* 00F6F4 8000EAF4 00002025 */ move $a0, $zero -.L8000EAF8: -/* 00F6F8 8000EAF8 2442AD58 */ addiu $v0, %lo(D_8011AD58) # addiu $v0, $v0, -0x52a8 -.L8000EAFC: -/* 00F6FC 8000EAFC 8C580000 */ lw $t8, ($v0) -/* 00F700 8000EB00 00000000 */ nop -/* 00F704 8000EB04 03107021 */ addu $t6, $t8, $s0 -/* 00F708 8000EB08 26100004 */ addiu $s0, $s0, 4 -/* 00F70C 8000EB0C 2A010800 */ slti $at, $s0, 0x800 -/* 00F710 8000EB10 1420FFFA */ bnez $at, .L8000EAFC -/* 00F714 8000EB14 ADC00000 */ sw $zero, ($t6) -/* 00F718 8000EB18 8C520000 */ lw $s2, ($v0) -/* 00F71C 8000EB1C 24190002 */ li $t9, 2 -/* 00F720 8000EB20 A6590006 */ sh $t9, 6($s2) -/* 00F724 8000EB24 A7A4004E */ sh $a0, 0x4e($sp) -/* 00F728 8000EB28 0C0031C6 */ jal func_8000C718 -/* 00F72C 8000EB2C AFA3002C */ sw $v1, 0x2c($sp) -/* 00F730 8000EB30 14400003 */ bnez $v0, .L8000EB40 -/* 00F734 8000EB34 AE420040 */ sw $v0, 0x40($s2) -/* 00F738 8000EB38 100002BC */ b .L8000F62C -/* 00F73C 8000EB3C 00001025 */ move $v0, $zero -.L8000EB40: -/* 00F740 8000EB40 8E500040 */ lw $s0, 0x40($s2) -/* 00F744 8000EB44 00000000 */ nop -/* 00F748 8000EB48 96080030 */ lhu $t0, 0x30($s0) -/* 00F74C 8000EB4C 00000000 */ nop -/* 00F750 8000EB50 310A0080 */ andi $t2, $t0, 0x80 -/* 00F754 8000EB54 11400005 */ beqz $t2, .L8000EB6C -/* 00F758 8000EB58 00000000 */ nop -/* 00F75C 8000EB5C 86490006 */ lh $t1, 6($s2) -/* 00F760 8000EB60 8E500040 */ lw $s0, 0x40($s2) -/* 00F764 8000EB64 352B0080 */ ori $t3, $t1, 0x80 -/* 00F768 8000EB68 A64B0006 */ sh $t3, 6($s2) -.L8000EB6C: -/* 00F76C 8000EB6C 820C0054 */ lb $t4, 0x54($s0) -/* 00F770 8000EB70 24010063 */ li $at, 99 -/* 00F774 8000EB74 1581000B */ bne $t4, $at, .L8000EBA4 -/* 00F778 8000EB78 8FA20068 */ lw $v0, 0x68($sp) -/* 00F77C 8000EB7C 8E2D0010 */ lw $t5, 0x10($s1) -/* 00F780 8000EB80 00002025 */ move $a0, $zero -/* 00F784 8000EB84 31AF0001 */ andi $t7, $t5, 1 -/* 00F788 8000EB88 11E00006 */ beqz $t7, .L8000EBA4 -/* 00F78C 8000EB8C 8FA20068 */ lw $v0, 0x68($sp) -/* 00F790 8000EB90 0C02DDAE */ jal func_800B76B8 -/* 00F794 8000EB94 2405FFFF */ li $a1, -1 -/* 00F798 8000EB98 100002A4 */ b .L8000F62C -/* 00F79C 8000EB9C 00001025 */ move $v0, $zero -/* 00F7A0 8000EBA0 8FA20068 */ lw $v0, 0x68($sp) -.L8000EBA4: -/* 00F7A4 8000EBA4 00000000 */ nop -/* 00F7A8 8000EBA8 84580002 */ lh $t8, 2($v0) -/* 00F7AC 8000EBAC 00000000 */ nop -/* 00F7B0 8000EBB0 44982000 */ mtc1 $t8, $f4 -/* 00F7B4 8000EBB4 00000000 */ nop -/* 00F7B8 8000EBB8 468021A0 */ cvt.s.w $f6, $f4 -/* 00F7BC 8000EBBC E646000C */ swc1 $f6, 0xc($s2) -/* 00F7C0 8000EBC0 844E0004 */ lh $t6, 4($v0) -/* 00F7C4 8000EBC4 C64C000C */ lwc1 $f12, 0xc($s2) -/* 00F7C8 8000EBC8 448E4000 */ mtc1 $t6, $f8 -/* 00F7CC 8000EBCC 00000000 */ nop -/* 00F7D0 8000EBD0 468042A0 */ cvt.s.w $f10, $f8 -/* 00F7D4 8000EBD4 E64A0010 */ swc1 $f10, 0x10($s2) -/* 00F7D8 8000EBD8 84590006 */ lh $t9, 6($v0) -/* 00F7DC 8000EBDC C64E0010 */ lwc1 $f14, 0x10($s2) -/* 00F7E0 8000EBE0 44998000 */ mtc1 $t9, $f16 -/* 00F7E4 8000EBE4 00000000 */ nop -/* 00F7E8 8000EBE8 468084A0 */ cvt.s.w $f18, $f16 -/* 00F7EC 8000EBEC E6520014 */ swc1 $f18, 0x14($s2) -/* 00F7F0 8000EBF0 8E460014 */ lw $a2, 0x14($s2) -/* 00F7F4 8000EBF4 0C00A7C6 */ jal func_80029F18 -/* 00F7F8 8000EBF8 00000000 */ nop -/* 00F7FC 8000EBFC A642002E */ sh $v0, 0x2e($s2) -/* 00F800 8000EC00 87A8004E */ lh $t0, 0x4e($sp) -/* 00F804 8000EC04 00000000 */ nop -/* 00F808 8000EC08 A648002C */ sh $t0, 0x2c($s2) -/* 00F80C 8000EC0C 8FAA0068 */ lw $t2, 0x68($sp) -/* 00F810 8000EC10 00000000 */ nop -/* 00F814 8000EC14 AE4A003C */ sw $t2, 0x3c($s2) -/* 00F818 8000EC18 8FA90064 */ lw $t1, 0x64($sp) -/* 00F81C 8000EC1C 00000000 */ nop -/* 00F820 8000EC20 A649004A */ sh $t1, 0x4a($s2) -/* 00F824 8000EC24 87A40066 */ lh $a0, 0x66($sp) -/* 00F828 8000EC28 0C00916D */ jal func_800245B4 -/* 00F82C 8000EC2C 00000000 */ nop -/* 00F830 8000EC30 8E500040 */ lw $s0, 0x40($s2) -/* 00F834 8000EC34 240C00FF */ li $t4, 255 -/* 00F838 8000EC38 C604000C */ lwc1 $f4, 0xc($s0) -/* 00F83C 8000EC3C 00000000 */ nop -/* 00F840 8000EC40 E6440008 */ swc1 $f4, 8($s2) -/* 00F844 8000EC44 860B0050 */ lh $t3, 0x50($s0) -/* 00F848 8000EC48 C64A0008 */ lwc1 $f10, 8($s2) -/* 00F84C 8000EC4C 448B3000 */ mtc1 $t3, $f6 -/* 00F850 8000EC50 A24C0039 */ sb $t4, 0x39($s2) -/* 00F854 8000EC54 46803220 */ cvt.s.w $f8, $f6 -/* 00F858 8000EC58 460A4402 */ mul.s $f16, $f8, $f10 -/* 00F85C 8000EC5C E6500034 */ swc1 $f16, 0x34($s2) -/* 00F860 8000EC60 82040054 */ lb $a0, 0x54($s0) -/* 00F864 8000EC64 0C008F8C */ jal func_80023E30 -/* 00F868 8000EC68 00000000 */ nop -/* 00F86C 8000EC6C AFA20050 */ sw $v0, 0x50($sp) -/* 00F870 8000EC70 8E500040 */ lw $s0, 0x40($s2) -/* 00F874 8000EC74 8FA7006C */ lw $a3, 0x6c($sp) -/* 00F878 8000EC78 820D0052 */ lb $t5, 0x52($s0) -/* 00F87C 8000EC7C 264E0080 */ addiu $t6, $s2, 0x80 -/* 00F880 8000EC80 25AF0001 */ addiu $t7, $t5, 1 -/* 00F884 8000EC84 A20F0052 */ sb $t7, 0x52($s0) -/* 00F888 8000EC88 8E500040 */ lw $s0, 0x40($s2) -/* 00F88C 8000EC8C 30F90010 */ andi $t9, $a3, 0x10 -/* 00F890 8000EC90 82180053 */ lb $t8, 0x53($s0) -/* 00F894 8000EC94 82130055 */ lb $s3, 0x55($s0) -/* 00F898 8000EC98 AFB80064 */ sw $t8, 0x64($sp) -/* 00F89C 8000EC9C 13200002 */ beqz $t9, .L8000ECA8 -/* 00F8A0 8000ECA0 AE4E0068 */ sw $t6, 0x68($s2) -/* 00F8A4 8000ECA4 24130001 */ li $s3, 1 -.L8000ECA8: -/* 00F8A8 8000ECA8 82080054 */ lb $t0, 0x54($s0) -/* 00F8AC 8000ECAC 00003025 */ move $a2, $zero -/* 00F8B0 8000ECB0 250AFFC2 */ addiu $t2, $t0, -0x3e -/* 00F8B4 8000ECB4 2D410027 */ sltiu $at, $t2, 0x27 -/* 00F8B8 8000ECB8 10200049 */ beqz $at, .L8000EDE0 -/* 00F8BC 8000ECBC 000A5080 */ sll $t2, $t2, 2 -/* 00F8C0 8000ECC0 3C01800E */ lui $at, 0x800e -/* 00F8C4 8000ECC4 002A0821 */ addu $at, $at, $t2 -/* 00F8C8 8000ECC8 8C2A51B4 */ lw $t2, 0x51b4($at) -/* 00F8CC 8000ECCC 00000000 */ nop -/* 00F8D0 8000ECD0 01400008 */ jr $t2 -/* 00F8D4 8000ECD4 00000000 */ nop -/* 00F8D8 8000ECD8 24040007 */ li $a0, 7 -/* 00F8DC 8000ECDC 0C01867D */ jal func_800619F4 -/* 00F8E0 8000ECE0 AFA6005C */ sw $a2, 0x5c($sp) -/* 00F8E4 8000ECE4 8FA6005C */ lw $a2, 0x5c($sp) -/* 00F8E8 8000ECE8 8FA7006C */ lw $a3, 0x6c($sp) -/* 00F8EC 8000ECEC 1000003D */ b .L8000EDE4 -/* 00F8F0 8000ECF0 8FAF002C */ lw $t7, 0x2c($sp) -/* 00F8F4 8000ECF4 0C02708A */ jal func_8009C228 -/* 00F8F8 8000ECF8 00002025 */ move $a0, $zero -/* 00F8FC 8000ECFC A242003A */ sb $v0, 0x3a($s2) -/* 00F900 8000ED00 8FA7006C */ lw $a3, 0x6c($sp) -/* 00F904 8000ED04 00403025 */ move $a2, $v0 -/* 00F908 8000ED08 10000035 */ b .L8000EDE0 -/* 00F90C 8000ED0C 24530001 */ addiu $s3, $v0, 1 -/* 00F910 8000ED10 922B0048 */ lbu $t3, 0x48($s1) -/* 00F914 8000ED14 9629000E */ lhu $t1, 0xe($s1) -/* 00F918 8000ED18 256CFFFF */ addiu $t4, $t3, -1 -/* 00F91C 8000ED1C 000C6840 */ sll $t5, $t4, 1 -/* 00F920 8000ED20 01A93007 */ srav $a2, $t1, $t5 -/* 00F924 8000ED24 30CF0003 */ andi $t7, $a2, 3 -/* 00F928 8000ED28 11E0002D */ beqz $t7, .L8000EDE0 -/* 00F92C 8000ED2C 01E03025 */ move $a2, $t7 -/* 00F930 8000ED30 25E6FFFF */ addiu $a2, $t7, -1 -/* 00F934 8000ED34 24D30001 */ addiu $s3, $a2, 1 -/* 00F938 8000ED38 10000029 */ b .L8000EDE0 -/* 00F93C 8000ED3C A246003A */ sb $a2, 0x3a($s2) -/* 00F940 8000ED40 92260017 */ lbu $a2, 0x17($s1) -/* 00F944 8000ED44 00000000 */ nop -/* 00F948 8000ED48 24D30001 */ addiu $s3, $a2, 1 -/* 00F94C 8000ED4C 10000024 */ b .L8000EDE0 -/* 00F950 8000ED50 A246003A */ sb $a2, 0x3a($s2) -/* 00F954 8000ED54 9638000E */ lhu $t8, 0xe($s1) -/* 00F958 8000ED58 00009825 */ move $s3, $zero -/* 00F95C 8000ED5C 24020003 */ li $v0, 3 -/* 00F960 8000ED60 AFB80064 */ sw $t8, 0x64($sp) -.L8000ED64: -/* 00F964 8000ED64 8FAE0064 */ lw $t6, 0x64($sp) -/* 00F968 8000ED68 8FA80064 */ lw $t0, 0x64($sp) -/* 00F96C 8000ED6C 31D90003 */ andi $t9, $t6, 3 -/* 00F970 8000ED70 14590002 */ bne $v0, $t9, .L8000ED7C -/* 00F974 8000ED74 00085083 */ sra $t2, $t0, 2 -/* 00F978 8000ED78 24C60001 */ addiu $a2, $a2, 1 -.L8000ED7C: -/* 00F97C 8000ED7C 26730001 */ addiu $s3, $s3, 1 -/* 00F980 8000ED80 2A610004 */ slti $at, $s3, 4 -/* 00F984 8000ED84 1420FFF7 */ bnez $at, .L8000ED64 -/* 00F988 8000ED88 AFAA0064 */ sw $t2, 0x64($sp) -/* 00F98C 8000ED8C A246003A */ sb $a2, 0x3a($s2) -/* 00F990 8000ED90 10000013 */ b .L8000EDE0 -/* 00F994 8000ED94 24D30001 */ addiu $s3, $a2, 1 -/* 00F998 8000ED98 24130001 */ li $s3, 1 -/* 00F99C 8000ED9C 0C027B1C */ jal func_8009EC70 -/* 00F9A0 8000EDA0 AFA6005C */ sw $a2, 0x5c($sp) -/* 00F9A4 8000EDA4 8FA6005C */ lw $a2, 0x5c($sp) -/* 00F9A8 8000EDA8 10400008 */ beqz $v0, .L8000EDCC -/* 00F9AC 8000EDAC 00000000 */ nop -/* 00F9B0 8000EDB0 8E4B0040 */ lw $t3, 0x40($s2) -/* 00F9B4 8000EDB4 00000000 */ nop -/* 00F9B8 8000EDB8 8D620010 */ lw $v0, 0x10($t3) -/* 00F9BC 8000EDBC 00000000 */ nop -/* 00F9C0 8000EDC0 8C4C0004 */ lw $t4, 4($v0) -/* 00F9C4 8000EDC4 00000000 */ nop -/* 00F9C8 8000EDC8 AC4C0000 */ sw $t4, ($v0) -.L8000EDCC: -/* 00F9CC 8000EDCC 8E4D0040 */ lw $t5, 0x40($s2) -/* 00F9D0 8000EDD0 24090001 */ li $t1, 1 -/* 00F9D4 8000EDD4 A1A90055 */ sb $t1, 0x55($t5) -/* 00F9D8 8000EDD8 8FA7006C */ lw $a3, 0x6c($sp) -/* 00F9DC 8000EDDC 00000000 */ nop -.L8000EDE0: -/* 00F9E0 8000EDE0 8FAF002C */ lw $t7, 0x2c($sp) -.L8000EDE4: -/* 00F9E4 8000EDE4 00000000 */ nop -/* 00F9E8 8000EDE8 15E0004B */ bnez $t7, .L8000EF18 -/* 00F9EC 8000EDEC 8FB80064 */ lw $t8, 0x64($sp) -/* 00F9F0 8000EDF0 8642004A */ lh $v0, 0x4a($s2) -/* 00F9F4 8000EDF4 24010019 */ li $at, 25 -/* 00F9F8 8000EDF8 10410016 */ beq $v0, $at, .L8000EE54 -/* 00F9FC 8000EDFC 240100CB */ li $at, 203 -/* 00FA00 8000EE00 14410045 */ bne $v0, $at, .L8000EF18 -/* 00FA04 8000EE04 8FB80064 */ lw $t8, 0x64($sp) -/* 00FA08 8000EE08 24130001 */ li $s3, 1 -/* 00FA0C 8000EE0C 0C027B1C */ jal func_8009EC70 -/* 00FA10 8000EE10 AFA6005C */ sw $a2, 0x5c($sp) -/* 00FA14 8000EE14 8FA6005C */ lw $a2, 0x5c($sp) -/* 00FA18 8000EE18 10400008 */ beqz $v0, .L8000EE3C -/* 00FA1C 8000EE1C 00000000 */ nop -/* 00FA20 8000EE20 8E580040 */ lw $t8, 0x40($s2) -/* 00FA24 8000EE24 00000000 */ nop -/* 00FA28 8000EE28 8F020010 */ lw $v0, 0x10($t8) -/* 00FA2C 8000EE2C 00000000 */ nop -/* 00FA30 8000EE30 8C4E0004 */ lw $t6, 4($v0) -/* 00FA34 8000EE34 00000000 */ nop -/* 00FA38 8000EE38 AC4E0000 */ sw $t6, ($v0) -.L8000EE3C: -/* 00FA3C 8000EE3C 8E480040 */ lw $t0, 0x40($s2) -/* 00FA40 8000EE40 24190001 */ li $t9, 1 -/* 00FA44 8000EE44 A1190055 */ sb $t9, 0x55($t0) -/* 00FA48 8000EE48 8FA7006C */ lw $a3, 0x6c($sp) -/* 00FA4C 8000EE4C 10000032 */ b .L8000EF18 -/* 00FA50 8000EE50 8FB80064 */ lw $t8, 0x64($sp) -.L8000EE54: -/* 00FA54 8000EE54 0C027B1C */ jal func_8009EC70 -/* 00FA58 8000EE58 00000000 */ nop -/* 00FA5C 8000EE5C 10400028 */ beqz $v0, .L8000EF00 -/* 00FA60 8000EE60 24130005 */ li $s3, 5 -/* 00FA64 8000EE64 8E4A0040 */ lw $t2, 0x40($s2) -/* 00FA68 8000EE68 24060001 */ li $a2, 1 -/* 00FA6C 8000EE6C 8D420010 */ lw $v0, 0x10($t2) -/* 00FA70 8000EE70 00068080 */ sll $s0, $a2, 2 -/* 00FA74 8000EE74 8C4B0014 */ lw $t3, 0x14($v0) -/* 00FA78 8000EE78 00000000 */ nop -/* 00FA7C 8000EE7C AC4B0000 */ sw $t3, ($v0) -/* 00FA80 8000EE80 8E4C0040 */ lw $t4, 0x40($s2) -/* 00FA84 8000EE84 00000000 */ nop -/* 00FA88 8000EE88 8D890010 */ lw $t1, 0x10($t4) -/* 00FA8C 8000EE8C 00000000 */ nop -/* 00FA90 8000EE90 01301021 */ addu $v0, $t1, $s0 -/* 00FA94 8000EE94 8C4D0014 */ lw $t5, 0x14($v0) -/* 00FA98 8000EE98 00000000 */ nop -/* 00FA9C 8000EE9C AC4D0000 */ sw $t5, ($v0) -/* 00FAA0 8000EEA0 8E4F0040 */ lw $t7, 0x40($s2) -/* 00FAA4 8000EEA4 00000000 */ nop -/* 00FAA8 8000EEA8 8DF80010 */ lw $t8, 0x10($t7) -/* 00FAAC 8000EEAC 00000000 */ nop -/* 00FAB0 8000EEB0 03101021 */ addu $v0, $t8, $s0 -/* 00FAB4 8000EEB4 8C4E0018 */ lw $t6, 0x18($v0) -/* 00FAB8 8000EEB8 00000000 */ nop -/* 00FABC 8000EEBC AC4E0004 */ sw $t6, 4($v0) -/* 00FAC0 8000EEC0 8E590040 */ lw $t9, 0x40($s2) -/* 00FAC4 8000EEC4 00000000 */ nop -/* 00FAC8 8000EEC8 8F280010 */ lw $t0, 0x10($t9) -/* 00FACC 8000EECC 00000000 */ nop -/* 00FAD0 8000EED0 01101021 */ addu $v0, $t0, $s0 -/* 00FAD4 8000EED4 8C4A001C */ lw $t2, 0x1c($v0) -/* 00FAD8 8000EED8 00000000 */ nop -/* 00FADC 8000EEDC AC4A0008 */ sw $t2, 8($v0) -/* 00FAE0 8000EEE0 8E4B0040 */ lw $t3, 0x40($s2) -/* 00FAE4 8000EEE4 00000000 */ nop -/* 00FAE8 8000EEE8 8D6C0010 */ lw $t4, 0x10($t3) -/* 00FAEC 8000EEEC 00000000 */ nop -/* 00FAF0 8000EEF0 01901021 */ addu $v0, $t4, $s0 -/* 00FAF4 8000EEF4 8C490020 */ lw $t1, 0x20($v0) -/* 00FAF8 8000EEF8 00000000 */ nop -/* 00FAFC 8000EEFC AC49000C */ sw $t1, 0xc($v0) -.L8000EF00: -/* 00FB00 8000EF00 8E4F0040 */ lw $t7, 0x40($s2) -/* 00FB04 8000EF04 240D0005 */ li $t5, 5 -/* 00FB08 8000EF08 A1ED0055 */ sb $t5, 0x55($t7) -/* 00FB0C 8000EF0C 8FA7006C */ lw $a3, 0x6c($sp) -/* 00FB10 8000EF10 00003025 */ move $a2, $zero -/* 00FB14 8000EF14 8FB80064 */ lw $t8, 0x64($sp) -.L8000EF18: -/* 00FB18 8000EF18 8FAB0064 */ lw $t3, 0x64($sp) -/* 00FB1C 8000EF1C 17000033 */ bnez $t8, .L8000EFEC -/* 00FB20 8000EF20 00001825 */ move $v1, $zero -/* 00FB24 8000EF24 00D3082A */ slt $at, $a2, $s3 -/* 00FB28 8000EF28 10200066 */ beqz $at, .L8000F0C4 -/* 00FB2C 8000EF2C 00068080 */ sll $s0, $a2, 2 -.L8000EF30: -/* 00FB30 8000EF30 14C00009 */ bnez $a2, .L8000EF58 -/* 00FB34 8000EF34 24D10001 */ addiu $s1, $a2, 1 -/* 00FB38 8000EF38 30EE0004 */ andi $t6, $a3, 4 -/* 00FB3C 8000EF3C 11C00007 */ beqz $t6, .L8000EF5C -/* 00FB40 8000EF40 24010001 */ li $at, 1 -/* 00FB44 8000EF44 8E590068 */ lw $t9, 0x68($s2) -/* 00FB48 8000EF48 00000000 */ nop -/* 00FB4C 8000EF4C 03304021 */ addu $t0, $t9, $s0 -/* 00FB50 8000EF50 1000001F */ b .L8000EFD0 -/* 00FB54 8000EF54 AD000000 */ sw $zero, ($t0) -.L8000EF58: -/* 00FB58 8000EF58 24010001 */ li $at, 1 -.L8000EF5C: -/* 00FB5C 8000EF5C 14C10008 */ bne $a2, $at, .L8000EF80 -/* 00FB60 8000EF60 30EA0008 */ andi $t2, $a3, 8 -/* 00FB64 8000EF64 11400006 */ beqz $t2, .L8000EF80 -/* 00FB68 8000EF68 00000000 */ nop -/* 00FB6C 8000EF6C 8E4B0068 */ lw $t3, 0x68($s2) -/* 00FB70 8000EF70 00000000 */ nop -/* 00FB74 8000EF74 01706021 */ addu $t4, $t3, $s0 -/* 00FB78 8000EF78 10000015 */ b .L8000EFD0 -/* 00FB7C 8000EF7C AD800000 */ sw $zero, ($t4) -.L8000EF80: -/* 00FB80 8000EF80 8E490040 */ lw $t1, 0x40($s2) -/* 00FB84 8000EF84 8FA50050 */ lw $a1, 0x50($sp) -/* 00FB88 8000EF88 8D2D0010 */ lw $t5, 0x10($t1) -/* 00FB8C 8000EF8C 00000000 */ nop -/* 00FB90 8000EF90 01B07821 */ addu $t7, $t5, $s0 -/* 00FB94 8000EF94 8DE40000 */ lw $a0, ($t7) -/* 00FB98 8000EF98 0C017E67 */ jal func_8005F99C -/* 00FB9C 8000EF9C A3A30037 */ sb $v1, 0x37($sp) -/* 00FBA0 8000EFA0 8E580068 */ lw $t8, 0x68($s2) -/* 00FBA4 8000EFA4 83A30037 */ lb $v1, 0x37($sp) -/* 00FBA8 8000EFA8 03107021 */ addu $t6, $t8, $s0 -/* 00FBAC 8000EFAC ADC20000 */ sw $v0, ($t6) -/* 00FBB0 8000EFB0 8E590068 */ lw $t9, 0x68($s2) -/* 00FBB4 8000EFB4 00000000 */ nop -/* 00FBB8 8000EFB8 03304021 */ addu $t0, $t9, $s0 -/* 00FBBC 8000EFBC 8D0A0000 */ lw $t2, ($t0) -/* 00FBC0 8000EFC0 00000000 */ nop -/* 00FBC4 8000EFC4 15400003 */ bnez $t2, .L8000EFD4 -/* 00FBC8 8000EFC8 8FA7006C */ lw $a3, 0x6c($sp) -/* 00FBCC 8000EFCC 24030001 */ li $v1, 1 -.L8000EFD0: -/* 00FBD0 8000EFD0 8FA7006C */ lw $a3, 0x6c($sp) -.L8000EFD4: -/* 00FBD4 8000EFD4 0233082A */ slt $at, $s1, $s3 -/* 00FBD8 8000EFD8 02203025 */ move $a2, $s1 -/* 00FBDC 8000EFDC 1420FFD4 */ bnez $at, .L8000EF30 -/* 00FBE0 8000EFE0 26100004 */ addiu $s0, $s0, 4 -/* 00FBE4 8000EFE4 10000037 */ b .L8000F0C4 -/* 00FBE8 8000EFE8 00000000 */ nop -.L8000EFEC: -/* 00FBEC 8000EFEC 24010004 */ li $at, 4 -/* 00FBF0 8000EFF0 1561001B */ bne $t3, $at, .L8000F060 -/* 00FBF4 8000EFF4 00D3082A */ slt $at, $a2, $s3 -/* 00FBF8 8000EFF8 10200032 */ beqz $at, .L8000F0C4 -/* 00FBFC 8000EFFC 00068080 */ sll $s0, $a2, 2 -.L8000F000: -/* 00FC00 8000F000 8E4C0040 */ lw $t4, 0x40($s2) -/* 00FC04 8000F004 24D10001 */ addiu $s1, $a2, 1 -/* 00FC08 8000F008 8D890010 */ lw $t1, 0x10($t4) -/* 00FC0C 8000F00C 00000000 */ nop -/* 00FC10 8000F010 01306821 */ addu $t5, $t1, $s0 -/* 00FC14 8000F014 8DA40000 */ lw $a0, ($t5) -/* 00FC18 8000F018 0C01EB9D */ jal func_8007AE74 -/* 00FC1C 8000F01C A3A30037 */ sb $v1, 0x37($sp) -/* 00FC20 8000F020 8E4F0068 */ lw $t7, 0x68($s2) -/* 00FC24 8000F024 83A30037 */ lb $v1, 0x37($sp) -/* 00FC28 8000F028 01F0C021 */ addu $t8, $t7, $s0 -/* 00FC2C 8000F02C AF020000 */ sw $v0, ($t8) -/* 00FC30 8000F030 8E4E0068 */ lw $t6, 0x68($s2) -/* 00FC34 8000F034 02203025 */ move $a2, $s1 -/* 00FC38 8000F038 01D0C821 */ addu $t9, $t6, $s0 -/* 00FC3C 8000F03C 8F280000 */ lw $t0, ($t9) -/* 00FC40 8000F040 0233082A */ slt $at, $s1, $s3 -/* 00FC44 8000F044 15000002 */ bnez $t0, .L8000F050 -/* 00FC48 8000F048 00000000 */ nop -/* 00FC4C 8000F04C 24030001 */ li $v1, 1 -.L8000F050: -/* 00FC50 8000F050 1420FFEB */ bnez $at, .L8000F000 -/* 00FC54 8000F054 26100004 */ addiu $s0, $s0, 4 -/* 00FC58 8000F058 1000001A */ b .L8000F0C4 -/* 00FC5C 8000F05C 00000000 */ nop -.L8000F060: -/* 00FC60 8000F060 00D3082A */ slt $at, $a2, $s3 -/* 00FC64 8000F064 10200017 */ beqz $at, .L8000F0C4 -/* 00FC68 8000F068 00068080 */ sll $s0, $a2, 2 -.L8000F06C: -/* 00FC6C 8000F06C 8E4A0040 */ lw $t2, 0x40($s2) -/* 00FC70 8000F070 2405000A */ li $a1, 10 -/* 00FC74 8000F074 8D4B0010 */ lw $t3, 0x10($t2) -/* 00FC78 8000F078 24D10001 */ addiu $s1, $a2, 1 -/* 00FC7C 8000F07C 01706021 */ addu $t4, $t3, $s0 -/* 00FC80 8000F080 8D840000 */ lw $a0, ($t4) -/* 00FC84 8000F084 0C01F04B */ jal func_8007C12C -/* 00FC88 8000F088 A3A30037 */ sb $v1, 0x37($sp) -/* 00FC8C 8000F08C 8E490068 */ lw $t1, 0x68($s2) -/* 00FC90 8000F090 83A30037 */ lb $v1, 0x37($sp) -/* 00FC94 8000F094 01306821 */ addu $t5, $t1, $s0 -/* 00FC98 8000F098 ADA20000 */ sw $v0, ($t5) -/* 00FC9C 8000F09C 8E4F0068 */ lw $t7, 0x68($s2) -/* 00FCA0 8000F0A0 02203025 */ move $a2, $s1 -/* 00FCA4 8000F0A4 01F0C021 */ addu $t8, $t7, $s0 -/* 00FCA8 8000F0A8 8F0E0000 */ lw $t6, ($t8) -/* 00FCAC 8000F0AC 0233082A */ slt $at, $s1, $s3 -/* 00FCB0 8000F0B0 15C00002 */ bnez $t6, .L8000F0BC -/* 00FCB4 8000F0B4 00000000 */ nop -/* 00FCB8 8000F0B8 24030001 */ li $v1, 1 -.L8000F0BC: -/* 00FCBC 8000F0BC 1420FFEB */ bnez $at, .L8000F06C -/* 00FCC0 8000F0C0 26100004 */ addiu $s0, $s0, 4 -.L8000F0C4: -/* 00FCC4 8000F0C4 10600009 */ beqz $v1, .L8000F0EC -/* 00FCC8 8000F0C8 02402025 */ move $a0, $s2 -/* 00FCCC 8000F0CC 8FA60064 */ lw $a2, 0x64($sp) -/* 00FCD0 8000F0D0 0C003D92 */ jal func_8000F648 -/* 00FCD4 8000F0D4 02602825 */ move $a1, $s3 -/* 00FCD8 8000F0D8 87A4004E */ lh $a0, 0x4e($sp) -/* 00FCDC 8000F0DC 0C003211 */ jal func_8000C844 -/* 00FCE0 8000F0E0 00000000 */ nop -/* 00FCE4 8000F0E4 10000151 */ b .L8000F62C -/* 00FCE8 8000F0E8 00001025 */ move $v0, $zero -.L8000F0EC: -/* 00FCEC 8000F0EC 8E480040 */ lw $t0, 0x40($s2) -/* 00FCF0 8000F0F0 8E590068 */ lw $t9, 0x68($s2) -/* 00FCF4 8000F0F4 810A0055 */ lb $t2, 0x55($t0) -/* 00FCF8 8000F0F8 02402025 */ move $a0, $s2 -/* 00FCFC 8000F0FC 000A5880 */ sll $t3, $t2, 2 -/* 00FD00 8000F100 032B2821 */ addu $a1, $t9, $t3 -/* 00FD04 8000F104 0C008D77 */ jal func_800235DC -/* 00FD08 8000F108 AFA50048 */ sw $a1, 0x48($sp) -/* 00FD0C 8000F10C 8FAC0050 */ lw $t4, 0x50($sp) -/* 00FD10 8000F110 3C018012 */ lui $at, %hi(D_8011AE50) # $at, 0x8012 -/* 00FD14 8000F114 8FA60048 */ lw $a2, 0x48($sp) -/* 00FD18 8000F118 AC20AE50 */ sw $zero, %lo(D_8011AE50)($at) -/* 00FD1C 8000F11C 3C018012 */ lui $at, %hi(D_8011AE54) # $at, 0x8012 -/* 00FD20 8000F120 31890001 */ andi $t1, $t4, 1 -/* 00FD24 8000F124 AC20AE54 */ sw $zero, %lo(D_8011AE54)($at) -/* 00FD28 8000F128 11200008 */ beqz $t1, .L8000F14C -/* 00FD2C 8000F12C 00C23021 */ addu $a2, $a2, $v0 -/* 00FD30 8000F130 02402025 */ move $a0, $s2 -/* 00FD34 8000F134 00C02825 */ move $a1, $a2 -/* 00FD38 8000F138 0C003DFB */ jal func_8000F7EC -/* 00FD3C 8000F13C AFA60048 */ sw $a2, 0x48($sp) -/* 00FD40 8000F140 8FA60048 */ lw $a2, 0x48($sp) -/* 00FD44 8000F144 00000000 */ nop -/* 00FD48 8000F148 00C23021 */ addu $a2, $a2, $v0 -.L8000F14C: -/* 00FD4C 8000F14C 8FAD0050 */ lw $t5, 0x50($sp) -/* 00FD50 8000F150 02402025 */ move $a0, $s2 -/* 00FD54 8000F154 31AF0002 */ andi $t7, $t5, 2 -/* 00FD58 8000F158 11E0000F */ beqz $t7, .L8000F198 -/* 00FD5C 8000F15C 00C02825 */ move $a1, $a2 -/* 00FD60 8000F160 0C003EF3 */ jal func_8000FBCC -/* 00FD64 8000F164 AFA60048 */ sw $a2, 0x48($sp) -/* 00FD68 8000F168 8FA60048 */ lw $a2, 0x48($sp) -/* 00FD6C 8000F16C 1440000A */ bnez $v0, .L8000F198 -/* 00FD70 8000F170 00C23021 */ addu $a2, $a2, $v0 -/* 00FD74 8000F174 8FA60064 */ lw $a2, 0x64($sp) -/* 00FD78 8000F178 02402025 */ move $a0, $s2 -/* 00FD7C 8000F17C 0C003D92 */ jal func_8000F648 -/* 00FD80 8000F180 02602825 */ move $a1, $s3 -/* 00FD84 8000F184 87A4004E */ lh $a0, 0x4e($sp) -/* 00FD88 8000F188 0C003211 */ jal func_8000C844 -/* 00FD8C 8000F18C 00000000 */ nop -/* 00FD90 8000F190 10000126 */ b .L8000F62C -/* 00FD94 8000F194 00001025 */ move $v0, $zero -.L8000F198: -/* 00FD98 8000F198 8FB80050 */ lw $t8, 0x50($sp) -/* 00FD9C 8000F19C 02402025 */ move $a0, $s2 -/* 00FDA0 8000F1A0 330E0004 */ andi $t6, $t8, 4 -/* 00FDA4 8000F1A4 11C00016 */ beqz $t6, .L8000F200 -/* 00FDA8 8000F1A8 00C02825 */ move $a1, $a2 -/* 00FDAC 8000F1AC 0C003F1B */ jal func_8000FC6C -/* 00FDB0 8000F1B0 AFA60048 */ sw $a2, 0x48($sp) -/* 00FDB4 8000F1B4 8FA60048 */ lw $a2, 0x48($sp) -/* 00FDB8 8000F1B8 14400011 */ bnez $v0, .L8000F200 -/* 00FDBC 8000F1BC 00C23021 */ addu $a2, $a2, $v0 -/* 00FDC0 8000F1C0 3C028012 */ lui $v0, %hi(D_8011AE50) # $v0, 0x8012 -/* 00FDC4 8000F1C4 8C42AE50 */ lw $v0, %lo(D_8011AE50)($v0) -/* 00FDC8 8000F1C8 00000000 */ nop -/* 00FDCC 8000F1CC 10400004 */ beqz $v0, .L8000F1E0 -/* 00FDD0 8000F1D0 8FA60064 */ lw $a2, 0x64($sp) -/* 00FDD4 8000F1D4 0C01ECAF */ jal func_8007B2BC -/* 00FDD8 8000F1D8 00402025 */ move $a0, $v0 -/* 00FDDC 8000F1DC 8FA60064 */ lw $a2, 0x64($sp) -.L8000F1E0: -/* 00FDE0 8000F1E0 02402025 */ move $a0, $s2 -/* 00FDE4 8000F1E4 0C003D92 */ jal func_8000F648 -/* 00FDE8 8000F1E8 02602825 */ move $a1, $s3 -/* 00FDEC 8000F1EC 87A4004E */ lh $a0, 0x4e($sp) -/* 00FDF0 8000F1F0 0C003211 */ jal func_8000C844 -/* 00FDF4 8000F1F4 00000000 */ nop -/* 00FDF8 8000F1F8 1000010C */ b .L8000F62C -/* 00FDFC 8000F1FC 00001025 */ move $v0, $zero -.L8000F200: -/* 00FE00 8000F200 8FA80050 */ lw $t0, 0x50($sp) -/* 00FE04 8000F204 02402025 */ move $a0, $s2 -/* 00FE08 8000F208 310A0010 */ andi $t2, $t0, 0x10 -/* 00FE0C 8000F20C 11400006 */ beqz $t2, .L8000F228 -/* 00FE10 8000F210 00C02825 */ move $a1, $a2 -/* 00FE14 8000F214 0C003F48 */ jal func_8000FD20 -/* 00FE18 8000F218 AFA60048 */ sw $a2, 0x48($sp) -/* 00FE1C 8000F21C 8FA60048 */ lw $a2, 0x48($sp) -/* 00FE20 8000F220 00000000 */ nop -/* 00FE24 8000F224 00C23021 */ addu $a2, $a2, $v0 -.L8000F228: -/* 00FE28 8000F228 8FB90050 */ lw $t9, 0x50($sp) -/* 00FE2C 8000F22C 02402025 */ move $a0, $s2 -/* 00FE30 8000F230 332B0020 */ andi $t3, $t9, 0x20 -/* 00FE34 8000F234 11600006 */ beqz $t3, .L8000F250 -/* 00FE38 8000F238 00C02825 */ move $a1, $a2 -/* 00FE3C 8000F23C 0C003F4D */ jal func_8000FD34 -/* 00FE40 8000F240 AFA60048 */ sw $a2, 0x48($sp) -/* 00FE44 8000F244 8FA60048 */ lw $a2, 0x48($sp) -/* 00FE48 8000F248 00000000 */ nop -/* 00FE4C 8000F24C 00C23021 */ addu $a2, $a2, $v0 -.L8000F250: -/* 00FE50 8000F250 8E500040 */ lw $s0, 0x40($s2) -/* 00FE54 8000F254 02402025 */ move $a0, $s2 -/* 00FE58 8000F258 82020056 */ lb $v0, 0x56($s0) -/* 00FE5C 8000F25C 00000000 */ nop -/* 00FE60 8000F260 18400006 */ blez $v0, .L8000F27C -/* 00FE64 8000F264 2841000A */ slti $at, $v0, 0xa -/* 00FE68 8000F268 10200004 */ beqz $at, .L8000F27C -/* 00FE6C 8000F26C 00000000 */ nop -/* 00FE70 8000F270 AE460060 */ sw $a2, 0x60($s2) -/* 00FE74 8000F274 8E500040 */ lw $s0, 0x40($s2) -/* 00FE78 8000F278 24C60030 */ addiu $a2, $a2, 0x30 -.L8000F27C: -/* 00FE7C 8000F27C 820C0057 */ lb $t4, 0x57($s0) -/* 00FE80 8000F280 00C02825 */ move $a1, $a2 -/* 00FE84 8000F284 19800006 */ blez $t4, .L8000F2A0 -/* 00FE88 8000F288 00000000 */ nop -/* 00FE8C 8000F28C 0C003EB1 */ jal func_8000FAC4 -/* 00FE90 8000F290 AFA60048 */ sw $a2, 0x48($sp) -/* 00FE94 8000F294 8FA60048 */ lw $a2, 0x48($sp) -/* 00FE98 8000F298 8E500040 */ lw $s0, 0x40($s2) -/* 00FE9C 8000F29C 00C23021 */ addu $a2, $a2, $v0 -.L8000F2A0: -/* 00FEA0 8000F2A0 8209005A */ lb $t1, 0x5a($s0) -/* 00FEA4 8000F2A4 3C048012 */ lui $a0, %hi(D_8011AE68) # $a0, 0x8012 -/* 00FEA8 8000F2A8 19200007 */ blez $t1, .L8000F2C8 -/* 00FEAC 8000F2AC 00D22823 */ subu $a1, $a2, $s2 -/* 00FEB0 8000F2B0 AE460070 */ sw $a2, 0x70($s2) -/* 00FEB4 8000F2B4 820D005A */ lb $t5, 0x5a($s0) -/* 00FEB8 8000F2B8 00000000 */ nop -/* 00FEBC 8000F2BC 000D7880 */ sll $t7, $t5, 2 -/* 00FEC0 8000F2C0 00CF3021 */ addu $a2, $a2, $t7 -/* 00FEC4 8000F2C4 00D22823 */ subu $a1, $a2, $s2 -.L8000F2C8: -/* 00FEC8 8000F2C8 8C84AE68 */ lw $a0, %lo(D_8011AE68)($a0) -/* 00FECC 8000F2CC 00A08825 */ move $s1, $a1 -/* 00FED0 8000F2D0 0C01C3A4 */ jal func_80070E90 -/* 00FED4 8000F2D4 02408025 */ move $s0, $s2 -/* 00FED8 8000F2D8 14400018 */ bnez $v0, .L8000F33C -/* 00FEDC 8000F2DC 00409025 */ move $s2, $v0 -/* 00FEE0 8000F2E0 3C028012 */ lui $v0, %hi(D_8011AE50) # $v0, 0x8012 -/* 00FEE4 8000F2E4 8C42AE50 */ lw $v0, %lo(D_8011AE50)($v0) -/* 00FEE8 8000F2E8 00000000 */ nop -/* 00FEEC 8000F2EC 10400003 */ beqz $v0, .L8000F2FC -/* 00FEF0 8000F2F0 00000000 */ nop -/* 00FEF4 8000F2F4 0C01ECAF */ jal func_8007B2BC -/* 00FEF8 8000F2F8 00402025 */ move $a0, $v0 -.L8000F2FC: -/* 00FEFC 8000F2FC 3C028012 */ lui $v0, %hi(D_8011AE54) # $v0, 0x8012 -/* 00FF00 8000F300 8C42AE54 */ lw $v0, %lo(D_8011AE54)($v0) -/* 00FF04 8000F304 00000000 */ nop -/* 00FF08 8000F308 10400004 */ beqz $v0, .L8000F31C -/* 00FF0C 8000F30C 8FA60064 */ lw $a2, 0x64($sp) -/* 00FF10 8000F310 0C01ECAF */ jal func_8007B2BC -/* 00FF14 8000F314 00402025 */ move $a0, $v0 -/* 00FF18 8000F318 8FA60064 */ lw $a2, 0x64($sp) -.L8000F31C: -/* 00FF1C 8000F31C 02002025 */ move $a0, $s0 -/* 00FF20 8000F320 0C003D92 */ jal func_8000F648 -/* 00FF24 8000F324 02602825 */ move $a1, $s3 -/* 00FF28 8000F328 87A4004E */ lh $a0, 0x4e($sp) -/* 00FF2C 8000F32C 0C003211 */ jal func_8000C844 -/* 00FF30 8000F330 00000000 */ nop -/* 00FF34 8000F334 100000BD */ b .L8000F62C -/* 00FF38 8000F338 00001025 */ move $v0, $zero -.L8000F33C: -/* 00FF3C 8000F33C 3238000F */ andi $t8, $s1, 0xf -/* 00FF40 8000F340 13000004 */ beqz $t8, .L8000F354 -/* 00FF44 8000F344 00003025 */ move $a2, $zero -/* 00FF48 8000F348 2401FFF0 */ li $at, -16 -/* 00FF4C 8000F34C 02217024 */ and $t6, $s1, $at -/* 00FF50 8000F350 25D10010 */ addiu $s1, $t6, 0x10 -.L8000F354: -/* 00FF54 8000F354 00114083 */ sra $t0, $s1, 2 -/* 00FF58 8000F358 1900000D */ blez $t0, .L8000F390 -/* 00FF5C 8000F35C 00068080 */ sll $s0, $a2, 2 -/* 00FF60 8000F360 3C058012 */ lui $a1, %hi(D_8011AD58) # $a1, 0x8012 -/* 00FF64 8000F364 24A5AD58 */ addiu $a1, %lo(D_8011AD58) # addiu $a1, $a1, -0x52a8 -/* 00FF68 8000F368 00501821 */ addu $v1, $v0, $s0 -/* 00FF6C 8000F36C 00082080 */ sll $a0, $t0, 2 -.L8000F370: -/* 00FF70 8000F370 8CAA0000 */ lw $t2, ($a1) -/* 00FF74 8000F374 24630004 */ addiu $v1, $v1, 4 -/* 00FF78 8000F378 0150C821 */ addu $t9, $t2, $s0 -/* 00FF7C 8000F37C 8F2B0000 */ lw $t3, ($t9) -/* 00FF80 8000F380 26100004 */ addiu $s0, $s0, 4 -/* 00FF84 8000F384 0204082A */ slt $at, $s0, $a0 -/* 00FF88 8000F388 1420FFF9 */ bnez $at, .L8000F370 -/* 00FF8C 8000F38C AC6BFFFC */ sw $t3, -4($v1) -.L8000F390: -/* 00FF90 8000F390 8C430058 */ lw $v1, 0x58($v0) -/* 00FF94 8000F394 3C058012 */ lui $a1, %hi(D_8011AD58) # $a1, 0x8012 -/* 00FF98 8000F398 10600005 */ beqz $v1, .L8000F3B0 -/* 00FF9C 8000F39C 24A5AD58 */ addiu $a1, %lo(D_8011AD58) # addiu $a1, $a1, -0x52a8 -/* 00FFA0 8000F3A0 8CA90000 */ lw $t1, ($a1) -/* 00FFA4 8000F3A4 00436021 */ addu $t4, $v0, $v1 -/* 00FFA8 8000F3A8 01896823 */ subu $t5, $t4, $t1 -/* 00FFAC 8000F3AC AC4D0058 */ sw $t5, 0x58($v0) -.L8000F3B0: -/* 00FFB0 8000F3B0 8C430050 */ lw $v1, 0x50($v0) -/* 00FFB4 8000F3B4 02402025 */ move $a0, $s2 -/* 00FFB8 8000F3B8 10600005 */ beqz $v1, .L8000F3D0 -/* 00FFBC 8000F3BC 00003025 */ move $a2, $zero -/* 00FFC0 8000F3C0 8CB80000 */ lw $t8, ($a1) -/* 00FFC4 8000F3C4 00437821 */ addu $t7, $v0, $v1 -/* 00FFC8 8000F3C8 01F87023 */ subu $t6, $t7, $t8 -/* 00FFCC 8000F3CC AC4E0050 */ sw $t6, 0x50($v0) -.L8000F3D0: -/* 00FFD0 8000F3D0 8C430054 */ lw $v1, 0x54($v0) -/* 00FFD4 8000F3D4 00000000 */ nop -/* 00FFD8 8000F3D8 10600005 */ beqz $v1, .L8000F3F0 -/* 00FFDC 8000F3DC 00000000 */ nop -/* 00FFE0 8000F3E0 8CAA0000 */ lw $t2, ($a1) -/* 00FFE4 8000F3E4 00434021 */ addu $t0, $v0, $v1 -/* 00FFE8 8000F3E8 010AC823 */ subu $t9, $t0, $t2 -/* 00FFEC 8000F3EC AC590054 */ sw $t9, 0x54($v0) -.L8000F3F0: -/* 00FFF0 8000F3F0 8C430064 */ lw $v1, 0x64($v0) -/* 00FFF4 8000F3F4 00000000 */ nop -/* 00FFF8 8000F3F8 10600005 */ beqz $v1, .L8000F410 -/* 00FFFC 8000F3FC 00000000 */ nop -/* 010000 8000F400 8CAC0000 */ lw $t4, ($a1) -/* 010004 8000F404 00435821 */ addu $t3, $v0, $v1 -/* 010008 8000F408 016C4823 */ subu $t1, $t3, $t4 -/* 01000C 8000F40C AC490064 */ sw $t1, 0x64($v0) -.L8000F410: -/* 010010 8000F410 8C43004C */ lw $v1, 0x4c($v0) -/* 010014 8000F414 00000000 */ nop -/* 010018 8000F418 10600005 */ beqz $v1, .L8000F430 -/* 01001C 8000F41C 00000000 */ nop -/* 010020 8000F420 8CAF0000 */ lw $t7, ($a1) -/* 010024 8000F424 00436821 */ addu $t5, $v0, $v1 -/* 010028 8000F428 01AFC023 */ subu $t8, $t5, $t7 -/* 01002C 8000F42C AC58004C */ sw $t8, 0x4c($v0) -.L8000F430: -/* 010030 8000F430 8C43005C */ lw $v1, 0x5c($v0) -/* 010034 8000F434 00000000 */ nop -/* 010038 8000F438 10600005 */ beqz $v1, .L8000F450 -/* 01003C 8000F43C 00000000 */ nop -/* 010040 8000F440 8CA80000 */ lw $t0, ($a1) -/* 010044 8000F444 00437021 */ addu $t6, $v0, $v1 -/* 010048 8000F448 01C85023 */ subu $t2, $t6, $t0 -/* 01004C 8000F44C AC4A005C */ sw $t2, 0x5c($v0) -.L8000F450: -/* 010050 8000F450 8C430060 */ lw $v1, 0x60($v0) -/* 010054 8000F454 3C108012 */ lui $s0, %hi(D_8011AE5C) # $s0, 0x8012 -/* 010058 8000F458 10600005 */ beqz $v1, .L8000F470 -/* 01005C 8000F45C 2610AE5C */ addiu $s0, %lo(D_8011AE5C) # addiu $s0, $s0, -0x51a4 -/* 010060 8000F460 8CAB0000 */ lw $t3, ($a1) -/* 010064 8000F464 0043C821 */ addu $t9, $v0, $v1 -/* 010068 8000F468 032B6023 */ subu $t4, $t9, $t3 -/* 01006C 8000F46C AC4C0060 */ sw $t4, 0x60($v0) -.L8000F470: -/* 010070 8000F470 8C430040 */ lw $v1, 0x40($v0) -/* 010074 8000F474 00000000 */ nop -/* 010078 8000F478 80690057 */ lb $t1, 0x57($v1) -/* 01007C 8000F47C 00000000 */ nop -/* 010080 8000F480 19200007 */ blez $t1, .L8000F4A0 -/* 010084 8000F484 00000000 */ nop -/* 010088 8000F488 8C4D006C */ lw $t5, 0x6c($v0) -/* 01008C 8000F48C 8CB80000 */ lw $t8, ($a1) -/* 010090 8000F490 004D7821 */ addu $t7, $v0, $t5 -/* 010094 8000F494 01F87023 */ subu $t6, $t7, $t8 -/* 010098 8000F498 8C430040 */ lw $v1, 0x40($v0) -/* 01009C 8000F49C AC4E006C */ sw $t6, 0x6c($v0) -.L8000F4A0: -/* 0100A0 8000F4A0 8068005A */ lb $t0, 0x5a($v1) -/* 0100A4 8000F4A4 24490080 */ addiu $t1, $v0, 0x80 -/* 0100A8 8000F4A8 19000006 */ blez $t0, .L8000F4C4 -/* 0100AC 8000F4AC 3C0F8012 */ lui $t7, %hi(D_8011AE58) # $t7, 0x8012 -/* 0100B0 8000F4B0 8C4A0070 */ lw $t2, 0x70($v0) -/* 0100B4 8000F4B4 8CAB0000 */ lw $t3, ($a1) -/* 0100B8 8000F4B8 004AC821 */ addu $t9, $v0, $t2 -/* 0100BC 8000F4BC 032B6023 */ subu $t4, $t9, $t3 -/* 0100C0 8000F4C0 AC4C0070 */ sw $t4, 0x70($v0) -.L8000F4C4: -/* 0100C4 8000F4C4 AC490068 */ sw $t1, 0x68($v0) -/* 0100C8 8000F4C8 8FB1006C */ lw $s1, 0x6c($sp) -/* 0100CC 8000F4CC 00000000 */ nop -/* 0100D0 8000F4D0 322D0001 */ andi $t5, $s1, 1 -/* 0100D4 8000F4D4 11A0000A */ beqz $t5, .L8000F500 -/* 0100D8 8000F4D8 01A08825 */ move $s1, $t5 -/* 0100DC 8000F4DC 8E180000 */ lw $t8, ($s0) -/* 0100E0 8000F4E0 8DEFAE58 */ lw $t7, %lo(D_8011AE58)($t7) -/* 0100E4 8000F4E4 00187080 */ sll $t6, $t8, 2 -/* 0100E8 8000F4E8 01EE4021 */ addu $t0, $t7, $t6 -/* 0100EC 8000F4EC AD020000 */ sw $v0, ($t0) -/* 0100F0 8000F4F0 8E0A0000 */ lw $t2, ($s0) -/* 0100F4 8000F4F4 00000000 */ nop -/* 0100F8 8000F4F8 25590001 */ addiu $t9, $t2, 1 -/* 0100FC 8000F4FC AE190000 */ sw $t9, ($s0) -.L8000F500: -/* 010100 8000F500 3C108012 */ lui $s0, %hi(D_8011AE5C) # $s0, 0x8012 -/* 010104 8000F504 8FA50068 */ lw $a1, 0x68($sp) -/* 010108 8000F508 0C008E2F */ jal func_800238BC -/* 01010C 8000F50C 2610AE5C */ addiu $s0, %lo(D_8011AE5C) # addiu $s0, $s0, -0x51a4 -/* 010110 8000F510 8E42004C */ lw $v0, 0x4c($s2) -/* 010114 8000F514 00000000 */ nop -/* 010118 8000F518 1040000C */ beqz $v0, .L8000F54C -/* 01011C 8000F51C 00000000 */ nop -/* 010120 8000F520 C652000C */ lwc1 $f18, 0xc($s2) -/* 010124 8000F524 00000000 */ nop -/* 010128 8000F528 E4520004 */ swc1 $f18, 4($v0) -/* 01012C 8000F52C 8E4B004C */ lw $t3, 0x4c($s2) -/* 010130 8000F530 C6440010 */ lwc1 $f4, 0x10($s2) -/* 010134 8000F534 00000000 */ nop -/* 010138 8000F538 E5640008 */ swc1 $f4, 8($t3) -/* 01013C 8000F53C 8E4C004C */ lw $t4, 0x4c($s2) -/* 010140 8000F540 C6460014 */ lwc1 $f6, 0x14($s2) -/* 010144 8000F544 00000000 */ nop -/* 010148 8000F548 E586000C */ swc1 $f6, 0xc($t4) -.L8000F54C: -/* 01014C 8000F54C 8E490040 */ lw $t1, 0x40($s2) -/* 010150 8000F550 00000000 */ nop -/* 010154 8000F554 81220056 */ lb $v0, 0x56($t1) -/* 010158 8000F558 00000000 */ nop -/* 01015C 8000F55C 18400025 */ blez $v0, .L8000F5F4 -/* 010160 8000F560 2841000A */ slti $at, $v0, 0xa -/* 010164 8000F564 10200023 */ beqz $at, .L8000F5F4 -/* 010168 8000F568 00000000 */ nop -/* 01016C 8000F56C 0C003E67 */ jal func_8000F99C -/* 010170 8000F570 02402025 */ move $a0, $s2 -/* 010174 8000F574 1040001F */ beqz $v0, .L8000F5F4 -/* 010178 8000F578 3C028012 */ lui $v0, %hi(D_8011AE50) # $v0, 0x8012 -/* 01017C 8000F57C 8C42AE50 */ lw $v0, %lo(D_8011AE50)($v0) -/* 010180 8000F580 00000000 */ nop -/* 010184 8000F584 10400003 */ beqz $v0, .L8000F594 -/* 010188 8000F588 00000000 */ nop -/* 01018C 8000F58C 0C01ECAF */ jal func_8007B2BC -/* 010190 8000F590 00402025 */ move $a0, $v0 -.L8000F594: -/* 010194 8000F594 3C028012 */ lui $v0, %hi(D_8011AE54) # $v0, 0x8012 -/* 010198 8000F598 8C42AE54 */ lw $v0, %lo(D_8011AE54)($v0) -/* 01019C 8000F59C 00000000 */ nop -/* 0101A0 8000F5A0 10400004 */ beqz $v0, .L8000F5B4 -/* 0101A4 8000F5A4 8FA60064 */ lw $a2, 0x64($sp) -/* 0101A8 8000F5A8 0C01ECAF */ jal func_8007B2BC -/* 0101AC 8000F5AC 00402025 */ move $a0, $v0 -/* 0101B0 8000F5B0 8FA60064 */ lw $a2, 0x64($sp) -.L8000F5B4: -/* 0101B4 8000F5B4 02402025 */ move $a0, $s2 -/* 0101B8 8000F5B8 0C003D92 */ jal func_8000F648 -/* 0101BC 8000F5BC 02602825 */ move $a1, $s3 -/* 0101C0 8000F5C0 87A4004E */ lh $a0, 0x4e($sp) -/* 0101C4 8000F5C4 0C003211 */ jal func_8000C844 -/* 0101C8 8000F5C8 00000000 */ nop -/* 0101CC 8000F5CC 0C01C450 */ jal func_80071140 -/* 0101D0 8000F5D0 02402025 */ move $a0, $s2 -/* 0101D4 8000F5D4 12200005 */ beqz $s1, .L8000F5EC -/* 0101D8 8000F5D8 00000000 */ nop -/* 0101DC 8000F5DC 8E0D0000 */ lw $t5, ($s0) -/* 0101E0 8000F5E0 00000000 */ nop -/* 0101E4 8000F5E4 25B8FFFF */ addiu $t8, $t5, -1 -/* 0101E8 8000F5E8 AE180000 */ sw $t8, ($s0) -.L8000F5EC: -/* 0101EC 8000F5EC 1000000F */ b .L8000F62C -/* 0101F0 8000F5F0 00001025 */ move $v0, $zero -.L8000F5F4: -/* 0101F4 8000F5F4 8E4F0040 */ lw $t7, 0x40($s2) -/* 0101F8 8000F5F8 00000000 */ nop -/* 0101FC 8000F5FC 81EE005A */ lb $t6, 0x5a($t7) -/* 010200 8000F600 00000000 */ nop -/* 010204 8000F604 19C00003 */ blez $t6, .L8000F614 -/* 010208 8000F608 00000000 */ nop -/* 01020C 8000F60C 0C003DD6 */ jal func_8000F758 -/* 010210 8000F610 02402025 */ move $a0, $s2 -.L8000F614: -/* 010214 8000F614 0C01867D */ jal func_800619F4 -/* 010218 8000F618 00002025 */ move $a0, $zero -/* 01021C 8000F61C 00002025 */ move $a0, $zero -/* 010220 8000F620 0C02DDAE */ jal func_800B76B8 -/* 010224 8000F624 2405FFFF */ li $a1, -1 -/* 010228 8000F628 02401025 */ move $v0, $s2 -.L8000F62C: -/* 01022C 8000F62C 8FBF0024 */ lw $ra, 0x24($sp) -/* 010230 8000F630 8FB00014 */ lw $s0, 0x14($sp) -/* 010234 8000F634 8FB10018 */ lw $s1, 0x18($sp) -/* 010238 8000F638 8FB2001C */ lw $s2, 0x1c($sp) -/* 01023C 8000F63C 8FB30020 */ lw $s3, 0x20($sp) -/* 010240 8000F640 03E00008 */ jr $ra -/* 010244 8000F644 27BD0068 */ addiu $sp, $sp, 0x68 - -glabel func_8000F648 -/* 010248 8000F648 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 01024C 8000F64C AFB30020 */ sw $s3, 0x20($sp) -/* 010250 8000F650 AFB2001C */ sw $s2, 0x1c($sp) -/* 010254 8000F654 00A09025 */ move $s2, $a1 -/* 010258 8000F658 00809825 */ move $s3, $a0 -/* 01025C 8000F65C AFBF0024 */ sw $ra, 0x24($sp) -/* 010260 8000F660 AFB10018 */ sw $s1, 0x18($sp) -/* 010264 8000F664 14C00012 */ bnez $a2, .L8000F6B0 -/* 010268 8000F668 AFB00014 */ sw $s0, 0x14($sp) -/* 01026C 8000F66C 18A00033 */ blez $a1, .L8000F73C -/* 010270 8000F670 00008825 */ move $s1, $zero -/* 010274 8000F674 00008025 */ move $s0, $zero -.L8000F678: -/* 010278 8000F678 8E6E0068 */ lw $t6, 0x68($s3) -/* 01027C 8000F67C 00000000 */ nop -/* 010280 8000F680 01D07821 */ addu $t7, $t6, $s0 -/* 010284 8000F684 8DE20000 */ lw $v0, ($t7) -/* 010288 8000F688 00000000 */ nop -/* 01028C 8000F68C 10400003 */ beqz $v0, .L8000F69C -/* 010290 8000F690 00000000 */ nop -/* 010294 8000F694 0C017FD0 */ jal func_8005FF40 -/* 010298 8000F698 00402025 */ move $a0, $v0 -.L8000F69C: -/* 01029C 8000F69C 26310001 */ addiu $s1, $s1, 1 -/* 0102A0 8000F6A0 1632FFF5 */ bne $s1, $s2, .L8000F678 -/* 0102A4 8000F6A4 26100004 */ addiu $s0, $s0, 4 -/* 0102A8 8000F6A8 10000025 */ b .L8000F740 -/* 0102AC 8000F6AC 8FBF0024 */ lw $ra, 0x24($sp) -.L8000F6B0: -/* 0102B0 8000F6B0 24010004 */ li $at, 4 -/* 0102B4 8000F6B4 14C10012 */ bne $a2, $at, .L8000F700 -/* 0102B8 8000F6B8 00000000 */ nop -/* 0102BC 8000F6BC 1A40001F */ blez $s2, .L8000F73C -/* 0102C0 8000F6C0 00008825 */ move $s1, $zero -/* 0102C4 8000F6C4 00008025 */ move $s0, $zero -.L8000F6C8: -/* 0102C8 8000F6C8 8E780068 */ lw $t8, 0x68($s3) -/* 0102CC 8000F6CC 00000000 */ nop -/* 0102D0 8000F6D0 0310C821 */ addu $t9, $t8, $s0 -/* 0102D4 8000F6D4 8F220000 */ lw $v0, ($t9) -/* 0102D8 8000F6D8 00000000 */ nop -/* 0102DC 8000F6DC 10400003 */ beqz $v0, .L8000F6EC -/* 0102E0 8000F6E0 00000000 */ nop -/* 0102E4 8000F6E4 0C01ECAF */ jal func_8007B2BC -/* 0102E8 8000F6E8 00402025 */ move $a0, $v0 -.L8000F6EC: -/* 0102EC 8000F6EC 26310001 */ addiu $s1, $s1, 1 -/* 0102F0 8000F6F0 1632FFF5 */ bne $s1, $s2, .L8000F6C8 -/* 0102F4 8000F6F4 26100004 */ addiu $s0, $s0, 4 -/* 0102F8 8000F6F8 10000011 */ b .L8000F740 -/* 0102FC 8000F6FC 8FBF0024 */ lw $ra, 0x24($sp) -.L8000F700: -/* 010300 8000F700 1A40000E */ blez $s2, .L8000F73C -/* 010304 8000F704 00008825 */ move $s1, $zero -/* 010308 8000F708 00008025 */ move $s0, $zero -.L8000F70C: -/* 01030C 8000F70C 8E680068 */ lw $t0, 0x68($s3) -/* 010310 8000F710 00000000 */ nop -/* 010314 8000F714 01104821 */ addu $t1, $t0, $s0 -/* 010318 8000F718 8D220000 */ lw $v0, ($t1) -/* 01031C 8000F71C 00000000 */ nop -/* 010320 8000F720 10400003 */ beqz $v0, .L8000F730 -/* 010324 8000F724 00000000 */ nop -/* 010328 8000F728 0C01F32C */ jal func_8007CCB0 -/* 01032C 8000F72C 00402025 */ move $a0, $v0 -.L8000F730: -/* 010330 8000F730 26310001 */ addiu $s1, $s1, 1 -/* 010334 8000F734 1632FFF5 */ bne $s1, $s2, .L8000F70C -/* 010338 8000F738 26100004 */ addiu $s0, $s0, 4 -.L8000F73C: -/* 01033C 8000F73C 8FBF0024 */ lw $ra, 0x24($sp) -.L8000F740: -/* 010340 8000F740 8FB00014 */ lw $s0, 0x14($sp) -/* 010344 8000F744 8FB10018 */ lw $s1, 0x18($sp) -/* 010348 8000F748 8FB2001C */ lw $s2, 0x1c($sp) -/* 01034C 8000F74C 8FB30020 */ lw $s3, 0x20($sp) -/* 010350 8000F750 03E00008 */ jr $ra -/* 010354 8000F754 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8000F758 -/* 010358 8000F758 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 01035C 8000F75C AFBF002C */ sw $ra, 0x2c($sp) -/* 010360 8000F760 AFB40028 */ sw $s4, 0x28($sp) -/* 010364 8000F764 AFB30024 */ sw $s3, 0x24($sp) -/* 010368 8000F768 AFB20020 */ sw $s2, 0x20($sp) -/* 01036C 8000F76C AFB1001C */ sw $s1, 0x1c($sp) -/* 010370 8000F770 AFB00018 */ sw $s0, 0x18($sp) -/* 010374 8000F774 8C900040 */ lw $s0, 0x40($a0) -/* 010378 8000F778 00809025 */ move $s2, $a0 -/* 01037C 8000F77C 820E005A */ lb $t6, 0x5a($s0) -/* 010380 8000F780 00008825 */ move $s1, $zero -/* 010384 8000F784 19C00011 */ blez $t6, .L8000F7CC -/* 010388 8000F788 00009825 */ move $s3, $zero -/* 01038C 8000F78C 0000A025 */ move $s4, $zero -.L8000F790: -/* 010390 8000F790 8E0F0024 */ lw $t7, 0x24($s0) -/* 010394 8000F794 02402025 */ move $a0, $s2 -/* 010398 8000F798 0C00C7E2 */ jal func_80031F88 -/* 01039C 8000F79C 01F32821 */ addu $a1, $t7, $s3 -/* 0103A0 8000F7A0 8E580070 */ lw $t8, 0x70($s2) -/* 0103A4 8000F7A4 26310001 */ addiu $s1, $s1, 1 -/* 0103A8 8000F7A8 0314C821 */ addu $t9, $t8, $s4 -/* 0103AC 8000F7AC AF220000 */ sw $v0, ($t9) -/* 0103B0 8000F7B0 8E500040 */ lw $s0, 0x40($s2) -/* 0103B4 8000F7B4 26940004 */ addiu $s4, $s4, 4 -/* 0103B8 8000F7B8 8208005A */ lb $t0, 0x5a($s0) -/* 0103BC 8000F7BC 26730018 */ addiu $s3, $s3, 0x18 -/* 0103C0 8000F7C0 0228082A */ slt $at, $s1, $t0 -/* 0103C4 8000F7C4 1420FFF2 */ bnez $at, .L8000F790 -/* 0103C8 8000F7C8 00000000 */ nop -.L8000F7CC: -/* 0103CC 8000F7CC 8FBF002C */ lw $ra, 0x2c($sp) -/* 0103D0 8000F7D0 8FB00018 */ lw $s0, 0x18($sp) -/* 0103D4 8000F7D4 8FB1001C */ lw $s1, 0x1c($sp) -/* 0103D8 8000F7D8 8FB20020 */ lw $s2, 0x20($sp) -/* 0103DC 8000F7DC 8FB30024 */ lw $s3, 0x24($sp) -/* 0103E0 8000F7E0 8FB40028 */ lw $s4, 0x28($sp) -/* 0103E4 8000F7E4 03E00008 */ jr $ra -/* 0103E8 8000F7E8 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_8000F7EC -/* 0103EC 8000F7EC 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0103F0 8000F7F0 AFBF0024 */ sw $ra, 0x24($sp) -/* 0103F4 8000F7F4 AFB00020 */ sw $s0, 0x20($sp) -/* 0103F8 8000F7F8 8C880040 */ lw $t0, 0x40($a0) -/* 0103FC 8000F7FC AC850054 */ sw $a1, 0x54($a0) -/* 010400 8000F800 81020053 */ lb $v0, 0x53($t0) -/* 010404 8000F804 00808025 */ move $s0, $a0 -/* 010408 8000F808 1440004F */ bnez $v0, .L8000F948 -/* 01040C 8000F80C 00003025 */ move $a2, $zero -/* 010410 8000F810 8C840068 */ lw $a0, 0x68($a0) -/* 010414 8000F814 00001825 */ move $v1, $zero -/* 010418 8000F818 8C8E0000 */ lw $t6, ($a0) -/* 01041C 8000F81C 00801025 */ move $v0, $a0 -/* 010420 8000F820 15C00006 */ bnez $t6, .L8000F83C -/* 010424 8000F824 0003C080 */ sll $t8, $v1, 2 -.L8000F828: -/* 010428 8000F828 8C4F0004 */ lw $t7, 4($v0) -/* 01042C 8000F82C 24630001 */ addiu $v1, $v1, 1 -/* 010430 8000F830 11E0FFFD */ beqz $t7, .L8000F828 -/* 010434 8000F834 24420004 */ addiu $v0, $v0, 4 -/* 010438 8000F838 0003C080 */ sll $t8, $v1, 2 -.L8000F83C: -/* 01043C 8000F83C 0098C821 */ addu $t9, $a0, $t8 -/* 010440 8000F840 8F220000 */ lw $v0, ($t9) -/* 010444 8000F844 00000000 */ nop -/* 010448 8000F848 1040004B */ beqz $v0, .L8000F978 -/* 01044C 8000F84C 00000000 */ nop -/* 010450 8000F850 8C490000 */ lw $t1, ($v0) -/* 010454 8000F854 00003825 */ move $a3, $zero -/* 010458 8000F858 8D2A0040 */ lw $t2, 0x40($t1) -/* 01045C 8000F85C 00000000 */ nop -/* 010460 8000F860 11400045 */ beqz $t2, .L8000F978 -/* 010464 8000F864 00000000 */ nop -/* 010468 8000F868 850B003E */ lh $t3, 0x3e($t0) -/* 01046C 8000F86C 8E040054 */ lw $a0, 0x54($s0) -/* 010470 8000F870 8D050028 */ lw $a1, 0x28($t0) -/* 010474 8000F874 8D06002C */ lw $a2, 0x2c($t0) -/* 010478 8000F878 AFAB0010 */ sw $t3, 0x10($sp) -/* 01047C 8000F87C 850C0040 */ lh $t4, 0x40($t0) -/* 010480 8000F880 0C00752D */ jal func_8001D4B4 -/* 010484 8000F884 AFAC0014 */ sw $t4, 0x14($sp) -/* 010488 8000F888 8E080040 */ lw $t0, 0x40($s0) -/* 01048C 8000F88C 00000000 */ nop -/* 010490 8000F890 910D003D */ lbu $t5, 0x3d($t0) -/* 010494 8000F894 00000000 */ nop -/* 010498 8000F898 11A00029 */ beqz $t5, .L8000F940 -/* 01049C 8000F89C 00000000 */ nop -/* 0104A0 8000F8A0 910E003A */ lbu $t6, 0x3a($t0) -/* 0104A4 8000F8A4 8E0F0054 */ lw $t7, 0x54($s0) -/* 0104A8 8000F8A8 00000000 */ nop -/* 0104AC 8000F8AC A1EE0004 */ sb $t6, 4($t7) -/* 0104B0 8000F8B0 8E180040 */ lw $t8, 0x40($s0) -/* 0104B4 8000F8B4 8E090054 */ lw $t1, 0x54($s0) -/* 0104B8 8000F8B8 9319003B */ lbu $t9, 0x3b($t8) -/* 0104BC 8000F8BC 00000000 */ nop -/* 0104C0 8000F8C0 A1390005 */ sb $t9, 5($t1) -/* 0104C4 8000F8C4 8E0A0040 */ lw $t2, 0x40($s0) -/* 0104C8 8000F8C8 8E0C0054 */ lw $t4, 0x54($s0) -/* 0104CC 8000F8CC 914B003C */ lbu $t3, 0x3c($t2) -/* 0104D0 8000F8D0 00000000 */ nop -/* 0104D4 8000F8D4 A18B0006 */ sb $t3, 6($t4) -/* 0104D8 8000F8D8 8E0D0040 */ lw $t5, 0x40($s0) -/* 0104DC 8000F8DC 8E0F0054 */ lw $t7, 0x54($s0) -/* 0104E0 8000F8E0 91AE003D */ lbu $t6, 0x3d($t5) -/* 0104E4 8000F8E4 00000000 */ nop -/* 0104E8 8000F8E8 A1EE0007 */ sb $t6, 7($t7) -/* 0104EC 8000F8EC 8E020054 */ lw $v0, 0x54($s0) -/* 0104F0 8000F8F0 00000000 */ nop -/* 0104F4 8000F8F4 8458001C */ lh $t8, 0x1c($v0) -/* 0104F8 8000F8F8 00000000 */ nop -/* 0104FC 8000F8FC 0018C843 */ sra $t9, $t8, 1 -/* 010500 8000F900 00194823 */ negu $t1, $t9 -/* 010504 8000F904 A4490008 */ sh $t1, 8($v0) -/* 010508 8000F908 8E020054 */ lw $v0, 0x54($s0) -/* 01050C 8000F90C 00000000 */ nop -/* 010510 8000F910 844A001E */ lh $t2, 0x1e($v0) -/* 010514 8000F914 00000000 */ nop -/* 010518 8000F918 000A5843 */ sra $t3, $t2, 1 -/* 01051C 8000F91C 000B6023 */ negu $t4, $t3 -/* 010520 8000F920 A44C000A */ sh $t4, 0xa($v0) -/* 010524 8000F924 8E020054 */ lw $v0, 0x54($s0) -/* 010528 8000F928 00000000 */ nop -/* 01052C 8000F92C 844D0020 */ lh $t5, 0x20($v0) -/* 010530 8000F930 00000000 */ nop -/* 010534 8000F934 000D7043 */ sra $t6, $t5, 1 -/* 010538 8000F938 000E7823 */ negu $t7, $t6 -/* 01053C 8000F93C A44F000C */ sh $t7, 0xc($v0) -.L8000F940: -/* 010540 8000F940 1000000D */ b .L8000F978 -/* 010544 8000F944 24060030 */ li $a2, 48 -.L8000F948: -/* 010548 8000F948 24010001 */ li $at, 1 -/* 01054C 8000F94C 1441000A */ bne $v0, $at, .L8000F978 -/* 010550 8000F950 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 010554 8000F954 44812000 */ mtc1 $at, $f4 -/* 010558 8000F958 8E180054 */ lw $t8, 0x54($s0) -/* 01055C 8000F95C 240200FF */ li $v0, 255 -/* 010560 8000F960 E7040000 */ swc1 $f4, ($t8) -/* 010564 8000F964 A0A20004 */ sb $v0, 4($a1) -/* 010568 8000F968 A0A20005 */ sb $v0, 5($a1) -/* 01056C 8000F96C A0A20006 */ sb $v0, 6($a1) -/* 010570 8000F970 A0A00007 */ sb $zero, 7($a1) -/* 010574 8000F974 24060008 */ li $a2, 8 -.L8000F978: -/* 010578 8000F978 14C00002 */ bnez $a2, .L8000F984 -/* 01057C 8000F97C 2401FFFC */ li $at, -4 -/* 010580 8000F980 AE000054 */ sw $zero, 0x54($s0) -.L8000F984: -/* 010584 8000F984 8FBF0024 */ lw $ra, 0x24($sp) -/* 010588 8000F988 00C11024 */ and $v0, $a2, $at -/* 01058C 8000F98C 8FB00020 */ lw $s0, 0x20($sp) -/* 010590 8000F990 27BD0028 */ addiu $sp, $sp, 0x28 -/* 010594 8000F994 03E00008 */ jr $ra -/* 010598 8000F998 24420004 */ addiu $v0, $v0, 4 - -glabel func_8000F99C -/* 01059C 8000F99C 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0105A0 8000F9A0 AFBF002C */ sw $ra, 0x2c($sp) -/* 0105A4 8000F9A4 AFB40028 */ sw $s4, 0x28($sp) -/* 0105A8 8000F9A8 AFB30024 */ sw $s3, 0x24($sp) -/* 0105AC 8000F9AC AFB20020 */ sw $s2, 0x20($sp) -/* 0105B0 8000F9B0 AFB1001C */ sw $s1, 0x1c($sp) -/* 0105B4 8000F9B4 AFB00018 */ sw $s0, 0x18($sp) -/* 0105B8 8000F9B8 8C8E0040 */ lw $t6, 0x40($a0) -/* 0105BC 8000F9BC 8C930060 */ lw $s3, 0x60($a0) -/* 0105C0 8000F9C0 81C20056 */ lb $v0, 0x56($t6) -/* 0105C4 8000F9C4 00808025 */ move $s0, $a0 -/* 0105C8 8000F9C8 AE620000 */ sw $v0, ($s3) -/* 0105CC 8000F9CC 0000A025 */ move $s4, $zero -/* 0105D0 8000F9D0 00009025 */ move $s2, $zero -/* 0105D4 8000F9D4 18400012 */ blez $v0, .L8000FA20 -/* 0105D8 8000F9D8 AE620000 */ sw $v0, ($s3) -/* 0105DC 8000F9DC 02608825 */ move $s1, $s3 -.L8000F9E0: -/* 0105E0 8000F9E0 8E190040 */ lw $t9, 0x40($s0) -/* 0105E4 8000F9E4 00124880 */ sll $t1, $s2, 2 -/* 0105E8 8000F9E8 8F280014 */ lw $t0, 0x14($t9) -/* 0105EC 8000F9EC 00000000 */ nop -/* 0105F0 8000F9F0 01095021 */ addu $t2, $t0, $t1 -/* 0105F4 8000F9F4 8D440000 */ lw $a0, ($t2) -/* 0105F8 8000F9F8 0C003F55 */ jal func_8000FD54 -/* 0105FC 8000F9FC 00000000 */ nop -/* 010600 8000FA00 14400002 */ bnez $v0, .L8000FA0C -/* 010604 8000FA04 AE220004 */ sw $v0, 4($s1) -/* 010608 8000FA08 24140001 */ li $s4, 1 -.L8000FA0C: -/* 01060C 8000FA0C 8E620000 */ lw $v0, ($s3) -/* 010610 8000FA10 26520001 */ addiu $s2, $s2, 1 -/* 010614 8000FA14 0242082A */ slt $at, $s2, $v0 -/* 010618 8000FA18 1420FFF1 */ bnez $at, .L8000F9E0 -/* 01061C 8000FA1C 26310004 */ addiu $s1, $s1, 4 -.L8000FA20: -/* 010620 8000FA20 1280001B */ beqz $s4, .L8000FA90 -/* 010624 8000FA24 00000000 */ nop -/* 010628 8000FA28 18400017 */ blez $v0, .L8000FA88 -/* 01062C 8000FA2C 00009025 */ move $s2, $zero -/* 010630 8000FA30 02608825 */ move $s1, $s3 -.L8000FA34: -/* 010634 8000FA34 8E300004 */ lw $s0, 4($s1) -/* 010638 8000FA38 00000000 */ nop -/* 01063C 8000FA3C 1200000E */ beqz $s0, .L8000FA78 -/* 010640 8000FA40 00000000 */ nop -/* 010644 8000FA44 8E020040 */ lw $v0, 0x40($s0) -/* 010648 8000FA48 02002025 */ move $a0, $s0 -/* 01064C 8000FA4C 80450055 */ lb $a1, 0x55($v0) -/* 010650 8000FA50 80460053 */ lb $a2, 0x53($v0) -/* 010654 8000FA54 0C003D92 */ jal func_8000F648 -/* 010658 8000FA58 00000000 */ nop -/* 01065C 8000FA5C 8604002C */ lh $a0, 0x2c($s0) -/* 010660 8000FA60 0C003211 */ jal func_8000C844 -/* 010664 8000FA64 00000000 */ nop -/* 010668 8000FA68 0C01C450 */ jal func_80071140 -/* 01066C 8000FA6C 02002025 */ move $a0, $s0 -/* 010670 8000FA70 8E620000 */ lw $v0, ($s3) -/* 010674 8000FA74 00000000 */ nop -.L8000FA78: -/* 010678 8000FA78 26520001 */ addiu $s2, $s2, 1 -/* 01067C 8000FA7C 0242082A */ slt $at, $s2, $v0 -/* 010680 8000FA80 1420FFEC */ bnez $at, .L8000FA34 -/* 010684 8000FA84 26310004 */ addiu $s1, $s1, 4 -.L8000FA88: -/* 010688 8000FA88 10000006 */ b .L8000FAA4 -/* 01068C 8000FA8C 24020001 */ li $v0, 1 -.L8000FA90: -/* 010690 8000FA90 8E0B0040 */ lw $t3, 0x40($s0) -/* 010694 8000FA94 00001025 */ move $v0, $zero -/* 010698 8000FA98 8D6C0018 */ lw $t4, 0x18($t3) -/* 01069C 8000FA9C 00000000 */ nop -/* 0106A0 8000FAA0 AE6C002C */ sw $t4, 0x2c($s3) -.L8000FAA4: -/* 0106A4 8000FAA4 8FBF002C */ lw $ra, 0x2c($sp) -/* 0106A8 8000FAA8 8FB00018 */ lw $s0, 0x18($sp) -/* 0106AC 8000FAAC 8FB1001C */ lw $s1, 0x1c($sp) -/* 0106B0 8000FAB0 8FB20020 */ lw $s2, 0x20($sp) -/* 0106B4 8000FAB4 8FB30024 */ lw $s3, 0x24($sp) -/* 0106B8 8000FAB8 8FB40028 */ lw $s4, 0x28($sp) -/* 0106BC 8000FABC 03E00008 */ jr $ra -/* 0106C0 8000FAC0 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_8000FAC4 -/* 0106C4 8000FAC4 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0106C8 8000FAC8 AFBF002C */ sw $ra, 0x2c($sp) -/* 0106CC 8000FACC AFB30028 */ sw $s3, 0x28($sp) -/* 0106D0 8000FAD0 AFB20024 */ sw $s2, 0x24($sp) -/* 0106D4 8000FAD4 AFB10020 */ sw $s1, 0x20($sp) -/* 0106D8 8000FAD8 AFB0001C */ sw $s0, 0x1c($sp) -/* 0106DC 8000FADC 8C820040 */ lw $v0, 0x40($a0) -/* 0106E0 8000FAE0 AC85006C */ sw $a1, 0x6c($a0) -/* 0106E4 8000FAE4 80430057 */ lb $v1, 0x57($v0) -/* 0106E8 8000FAE8 8C46001C */ lw $a2, 0x1c($v0) -/* 0106EC 8000FAEC 00809025 */ move $s2, $a0 -/* 0106F0 8000FAF0 1860002A */ blez $v1, .L8000FB9C -/* 0106F4 8000FAF4 00008025 */ move $s0, $zero -/* 0106F8 8000FAF8 00C08825 */ move $s1, $a2 -/* 0106FC 8000FAFC 3C13FFFF */ lui $s3, 0xffff -.L8000FB00: -/* 010700 8000FB00 8E220000 */ lw $v0, ($s1) -/* 010704 8000FB04 00104940 */ sll $t1, $s0, 5 -/* 010708 8000FB08 00537024 */ and $t6, $v0, $s3 -/* 01070C 8000FB0C 166E000B */ bne $s3, $t6, .L8000FB3C -/* 010710 8000FB10 00022E03 */ sra $a1, $v0, 0x18 -/* 010714 8000FB14 8E4F006C */ lw $t7, 0x6c($s2) -/* 010718 8000FB18 00022A03 */ sra $a1, $v0, 8 -/* 01071C 8000FB1C 30B900FF */ andi $t9, $a1, 0xff -/* 010720 8000FB20 0010C140 */ sll $t8, $s0, 5 -/* 010724 8000FB24 03202825 */ move $a1, $t9 -/* 010728 8000FB28 304600FF */ andi $a2, $v0, 0xff -/* 01072C 8000FB2C 0C02BC78 */ jal func_800AF1E0 -/* 010730 8000FB30 01F82021 */ addu $a0, $t7, $t8 -/* 010734 8000FB34 10000013 */ b .L8000FB84 -/* 010738 8000FB38 8E590040 */ lw $t9, 0x40($s2) -.L8000FB3C: -/* 01073C 8000FB3C 8E230004 */ lw $v1, 4($s1) -/* 010740 8000FB40 8E48006C */ lw $t0, 0x6c($s2) -/* 010744 8000FB44 00023403 */ sra $a2, $v0, 0x10 -/* 010748 8000FB48 00403825 */ move $a3, $v0 -/* 01074C 8000FB4C 00037403 */ sra $t6, $v1, 0x10 -/* 010750 8000FB50 31CFFFFF */ andi $t7, $t6, 0xffff -/* 010754 8000FB54 00076400 */ sll $t4, $a3, 0x10 -/* 010758 8000FB58 30CB00FF */ andi $t3, $a2, 0xff -/* 01075C 8000FB5C 30AA00FF */ andi $t2, $a1, 0xff -/* 010760 8000FB60 3078FFFF */ andi $t8, $v1, 0xffff -/* 010764 8000FB64 AFB80014 */ sw $t8, 0x14($sp) -/* 010768 8000FB68 01402825 */ move $a1, $t2 -/* 01076C 8000FB6C 01603025 */ move $a2, $t3 -/* 010770 8000FB70 000C3C03 */ sra $a3, $t4, 0x10 -/* 010774 8000FB74 AFAF0010 */ sw $t7, 0x10($sp) -/* 010778 8000FB78 0C02BCA7 */ jal func_800AF29C -/* 01077C 8000FB7C 01092021 */ addu $a0, $t0, $t1 -/* 010780 8000FB80 8E590040 */ lw $t9, 0x40($s2) -.L8000FB84: -/* 010784 8000FB84 26100001 */ addiu $s0, $s0, 1 -/* 010788 8000FB88 83230057 */ lb $v1, 0x57($t9) -/* 01078C 8000FB8C 26310008 */ addiu $s1, $s1, 8 -/* 010790 8000FB90 0203082A */ slt $at, $s0, $v1 -/* 010794 8000FB94 1420FFDA */ bnez $at, .L8000FB00 -/* 010798 8000FB98 00000000 */ nop -.L8000FB9C: -/* 01079C 8000FB9C 00031140 */ sll $v0, $v1, 5 -/* 0107A0 8000FBA0 8FBF002C */ lw $ra, 0x2c($sp) -/* 0107A4 8000FBA4 24420003 */ addiu $v0, $v0, 3 -/* 0107A8 8000FBA8 2401FFFC */ li $at, -4 -/* 0107AC 8000FBAC 00414024 */ and $t0, $v0, $at -/* 0107B0 8000FBB0 8FB0001C */ lw $s0, 0x1c($sp) -/* 0107B4 8000FBB4 8FB10020 */ lw $s1, 0x20($sp) -/* 0107B8 8000FBB8 8FB20024 */ lw $s2, 0x24($sp) -/* 0107BC 8000FBBC 8FB30028 */ lw $s3, 0x28($sp) -/* 0107C0 8000FBC0 27BD0030 */ addiu $sp, $sp, 0x30 -/* 0107C4 8000FBC4 03E00008 */ jr $ra -/* 0107C8 8000FBC8 01001025 */ move $v0, $t0 - -glabel func_8000FBCC -/* 0107CC 8000FBCC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0107D0 8000FBD0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0107D4 8000FBD4 AC850050 */ sw $a1, 0x50($a0) -/* 0107D8 8000FBD8 ACA00004 */ sw $zero, 4($a1) -/* 0107DC 8000FBDC 8C830040 */ lw $v1, 0x40($a0) -/* 0107E0 8000FBE0 00803025 */ move $a2, $a0 -/* 0107E4 8000FBE4 846E0032 */ lh $t6, 0x32($v1) -/* 0107E8 8000FBE8 00000000 */ nop -/* 0107EC 8000FBEC 11C0000A */ beqz $t6, .L8000FC18 -/* 0107F0 8000FBF0 00000000 */ nop -/* 0107F4 8000FBF4 84640034 */ lh $a0, 0x34($v1) -/* 0107F8 8000FBF8 AFA60018 */ sw $a2, 0x18($sp) -/* 0107FC 8000FBFC 0C01EB9D */ jal func_8007AE74 -/* 010800 8000FC00 AFA5001C */ sw $a1, 0x1c($sp) -/* 010804 8000FC04 8FA5001C */ lw $a1, 0x1c($sp) -/* 010808 8000FC08 8FA60018 */ lw $a2, 0x18($sp) -/* 01080C 8000FC0C ACA20004 */ sw $v0, 4($a1) -/* 010810 8000FC10 8CC30040 */ lw $v1, 0x40($a2) -/* 010814 8000FC14 00000000 */ nop -.L8000FC18: -/* 010818 8000FC18 C4640004 */ lwc1 $f4, 4($v1) -/* 01081C 8000FC1C 8CB80004 */ lw $t8, 4($a1) -/* 010820 8000FC20 240FFFFF */ li $t7, -1 -/* 010824 8000FC24 A4AF0008 */ sh $t7, 8($a1) -/* 010828 8000FC28 3C018012 */ lui $at, %hi(D_8011AE50) # $at, 0x8012 -/* 01082C 8000FC2C E4A40000 */ swc1 $f4, ($a1) -/* 010830 8000FC30 AC38AE50 */ sw $t8, %lo(D_8011AE50)($at) -/* 010834 8000FC34 8CD90040 */ lw $t9, 0x40($a2) -/* 010838 8000FC38 8FBF0014 */ lw $ra, 0x14($sp) -/* 01083C 8000FC3C 87280032 */ lh $t0, 0x32($t9) -/* 010840 8000FC40 24020010 */ li $v0, 16 -/* 010844 8000FC44 11000007 */ beqz $t0, .L8000FC64 -/* 010848 8000FC48 00000000 */ nop -/* 01084C 8000FC4C 8CA90004 */ lw $t1, 4($a1) -/* 010850 8000FC50 00000000 */ nop -/* 010854 8000FC54 15200003 */ bnez $t1, .L8000FC64 -/* 010858 8000FC58 00000000 */ nop -/* 01085C 8000FC5C 10000001 */ b .L8000FC64 -/* 010860 8000FC60 00001025 */ move $v0, $zero -.L8000FC64: -/* 010864 8000FC64 03E00008 */ jr $ra -/* 010868 8000FC68 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_8000FC6C -/* 01086C 8000FC6C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 010870 8000FC70 AFBF0014 */ sw $ra, 0x14($sp) -/* 010874 8000FC74 8C8E0040 */ lw $t6, 0x40($a0) -/* 010878 8000FC78 AC850058 */ sw $a1, 0x58($a0) -/* 01087C 8000FC7C C5C40008 */ lwc1 $f4, 8($t6) -/* 010880 8000FC80 A4A0000C */ sh $zero, 0xc($a1) -/* 010884 8000FC84 E4A40000 */ swc1 $f4, ($a1) -/* 010888 8000FC88 8C8F0040 */ lw $t7, 0x40($a0) -/* 01088C 8000FC8C 00803025 */ move $a2, $a0 -/* 010890 8000FC90 8DF80000 */ lw $t8, ($t7) -/* 010894 8000FC94 ACA00004 */ sw $zero, 4($a1) -/* 010898 8000FC98 0018CA03 */ sra $t9, $t8, 8 -/* 01089C 8000FC9C A4B9000E */ sh $t9, 0xe($a1) -/* 0108A0 8000FCA0 8C820040 */ lw $v0, 0x40($a0) -/* 0108A4 8000FCA4 00000000 */ nop -/* 0108A8 8000FCA8 84480036 */ lh $t0, 0x36($v0) -/* 0108AC 8000FCAC 00000000 */ nop -/* 0108B0 8000FCB0 11000008 */ beqz $t0, .L8000FCD4 -/* 0108B4 8000FCB4 00000000 */ nop -/* 0108B8 8000FCB8 84440038 */ lh $a0, 0x38($v0) -/* 0108BC 8000FCBC AFA60018 */ sw $a2, 0x18($sp) -/* 0108C0 8000FCC0 0C01EB9D */ jal func_8007AE74 -/* 0108C4 8000FCC4 AFA5001C */ sw $a1, 0x1c($sp) -/* 0108C8 8000FCC8 8FA5001C */ lw $a1, 0x1c($sp) -/* 0108CC 8000FCCC 8FA60018 */ lw $a2, 0x18($sp) -/* 0108D0 8000FCD0 ACA20004 */ sw $v0, 4($a1) -.L8000FCD4: -/* 0108D4 8000FCD4 8CAA0004 */ lw $t2, 4($a1) -/* 0108D8 8000FCD8 2409FFFF */ li $t1, -1 -/* 0108DC 8000FCDC A4A90008 */ sh $t1, 8($a1) -/* 0108E0 8000FCE0 3C018012 */ lui $at, %hi(D_8011AE54) # $at, 0x8012 -/* 0108E4 8000FCE4 AC2AAE54 */ sw $t2, %lo(D_8011AE54)($at) -/* 0108E8 8000FCE8 8CCB0040 */ lw $t3, 0x40($a2) -/* 0108EC 8000FCEC 8FBF0014 */ lw $ra, 0x14($sp) -/* 0108F0 8000FCF0 856C0036 */ lh $t4, 0x36($t3) -/* 0108F4 8000FCF4 24020014 */ li $v0, 20 -/* 0108F8 8000FCF8 11800007 */ beqz $t4, .L8000FD18 -/* 0108FC 8000FCFC 00000000 */ nop -/* 010900 8000FD00 8CAD0004 */ lw $t5, 4($a1) -/* 010904 8000FD04 00000000 */ nop -/* 010908 8000FD08 15A00003 */ bnez $t5, .L8000FD18 -/* 01090C 8000FD0C 00000000 */ nop -/* 010910 8000FD10 10000001 */ b .L8000FD18 -/* 010914 8000FD14 00001025 */ move $v0, $zero -.L8000FD18: -/* 010918 8000FD18 03E00008 */ jr $ra -/* 01091C 8000FD1C 27BD0018 */ addiu $sp, $sp, 0x18 - -glabel func_8000FD20 -/* 010920 8000FD20 AC85004C */ sw $a1, 0x4c($a0) -/* 010924 8000FD24 240E00FF */ li $t6, 255 -/* 010928 8000FD28 A0AE0013 */ sb $t6, 0x13($a1) -/* 01092C 8000FD2C 03E00008 */ jr $ra -/* 010930 8000FD30 24020028 */ li $v0, 40 - -glabel func_8000FD34 -/* 010934 8000FD34 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 010938 8000FD38 AFBF0014 */ sw $ra, 0x14($sp) -/* 01093C 8000FD3C 0C005AF1 */ jal func_80016BC4 -/* 010940 8000FD40 AC85005C */ sw $a1, 0x5c($a0) -/* 010944 8000FD44 8FBF0014 */ lw $ra, 0x14($sp) -/* 010948 8000FD48 27BD0018 */ addiu $sp, $sp, 0x18 -/* 01094C 8000FD4C 03E00008 */ jr $ra -/* 010950 8000FD50 2402010C */ li $v0, 268 - -glabel func_8000FD54 -/* 010954 8000FD54 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 010958 8000FD58 3C0E8012 */ lui $t6, %hi(D_8011AD68) # $t6, 0x8012 -/* 01095C 8000FD5C 8DCEAD68 */ lw $t6, %lo(D_8011AD68)($t6) -/* 010960 8000FD60 AFBF002C */ sw $ra, 0x2c($sp) -/* 010964 8000FD64 008E082A */ slt $at, $a0, $t6 -/* 010968 8000FD68 AFB40028 */ sw $s4, 0x28($sp) -/* 01096C 8000FD6C AFB30024 */ sw $s3, 0x24($sp) -/* 010970 8000FD70 AFB20020 */ sw $s2, 0x20($sp) -/* 010974 8000FD74 AFB1001C */ sw $s1, 0x1c($sp) -/* 010978 8000FD78 14200002 */ bnez $at, .L8000FD84 -/* 01097C 8000FD7C AFB00018 */ sw $s0, 0x18($sp) -/* 010980 8000FD80 00002025 */ move $a0, $zero -.L8000FD84: -/* 010984 8000FD84 0C0031C6 */ jal func_8000C718 -/* 010988 8000FD88 AFA40038 */ sw $a0, 0x38($sp) -/* 01098C 8000FD8C 14400003 */ bnez $v0, .L8000FD9C -/* 010990 8000FD90 00409825 */ move $s3, $v0 -/* 010994 8000FD94 10000080 */ b .L8000FF98 -/* 010998 8000FD98 00001025 */ move $v0, $zero -.L8000FD9C: -/* 01099C 8000FD9C 82700055 */ lb $s0, 0x55($s3) -/* 0109A0 8000FDA0 3405FFFF */ li $a1, 65535 -/* 0109A4 8000FDA4 00107880 */ sll $t7, $s0, 2 -/* 0109A8 8000FDA8 25F00080 */ addiu $s0, $t7, 0x80 -/* 0109AC 8000FDAC 0C01C344 */ jal func_80070D10 -/* 0109B0 8000FDB0 02002025 */ move $a0, $s0 -/* 0109B4 8000FDB4 14400006 */ bnez $v0, .L8000FDD0 -/* 0109B8 8000FDB8 00409025 */ move $s2, $v0 -/* 0109BC 8000FDBC 8FA40038 */ lw $a0, 0x38($sp) -/* 0109C0 8000FDC0 0C003211 */ jal func_8000C844 -/* 0109C4 8000FDC4 00000000 */ nop -/* 0109C8 8000FDC8 10000073 */ b .L8000FF98 -/* 0109CC 8000FDCC 00001025 */ move $v0, $zero -.L8000FDD0: -/* 0109D0 8000FDD0 1A000013 */ blez $s0, .L8000FE20 -/* 0109D4 8000FDD4 00008825 */ move $s1, $zero -/* 0109D8 8000FDD8 32050003 */ andi $a1, $s0, 3 -/* 0109DC 8000FDDC 10A00007 */ beqz $a1, .L8000FDFC -/* 0109E0 8000FDE0 00A02025 */ move $a0, $a1 -/* 0109E4 8000FDE4 00401821 */ addu $v1, $v0, $zero -.L8000FDE8: -/* 0109E8 8000FDE8 26310001 */ addiu $s1, $s1, 1 -/* 0109EC 8000FDEC A0600000 */ sb $zero, ($v1) -/* 0109F0 8000FDF0 1491FFFD */ bne $a0, $s1, .L8000FDE8 -/* 0109F4 8000FDF4 24630001 */ addiu $v1, $v1, 1 -/* 0109F8 8000FDF8 12300008 */ beq $s1, $s0, .L8000FE1C -.L8000FDFC: -/* 0109FC 8000FDFC 00511821 */ addu $v1, $v0, $s1 -.L8000FE00: -/* 010A00 8000FE00 26310004 */ addiu $s1, $s1, 4 -/* 010A04 8000FE04 A0600000 */ sb $zero, ($v1) -/* 010A08 8000FE08 A0600001 */ sb $zero, 1($v1) -/* 010A0C 8000FE0C A0600002 */ sb $zero, 2($v1) -/* 010A10 8000FE10 A0600003 */ sb $zero, 3($v1) -/* 010A14 8000FE14 1630FFFA */ bne $s1, $s0, .L8000FE00 -/* 010A18 8000FE18 24630004 */ addiu $v1, $v1, 4 -.L8000FE1C: -/* 010A1C 8000FE1C 00008825 */ move $s1, $zero -.L8000FE20: -/* 010A20 8000FE20 24180002 */ li $t8, 2 -/* 010A24 8000FE24 A4580006 */ sh $t8, 6($v0) -/* 010A28 8000FE28 AC530040 */ sw $s3, 0x40($v0) -/* 010A2C 8000FE2C 8FB90038 */ lw $t9, 0x38($sp) -/* 010A30 8000FE30 00000000 */ nop -/* 010A34 8000FE34 A459002C */ sh $t9, 0x2c($v0) -/* 010A38 8000FE38 8FA80038 */ lw $t0, 0x38($sp) -/* 010A3C 8000FE3C 00000000 */ nop -/* 010A40 8000FE40 A448004A */ sh $t0, 0x4a($v0) -/* 010A44 8000FE44 C664000C */ lwc1 $f4, 0xc($s3) -/* 010A48 8000FE48 00000000 */ nop -/* 010A4C 8000FE4C E4440008 */ swc1 $f4, 8($v0) -/* 010A50 8000FE50 96690030 */ lhu $t1, 0x30($s3) -/* 010A54 8000FE54 00000000 */ nop -/* 010A58 8000FE58 312A0080 */ andi $t2, $t1, 0x80 -/* 010A5C 8000FE5C 11400005 */ beqz $t2, .L8000FE74 -/* 010A60 8000FE60 00000000 */ nop -/* 010A64 8000FE64 844B0006 */ lh $t3, 6($v0) -/* 010A68 8000FE68 00000000 */ nop -/* 010A6C 8000FE6C 356C0080 */ ori $t4, $t3, 0x80 -/* 010A70 8000FE70 A44C0006 */ sh $t4, 6($v0) -.L8000FE74: -/* 010A74 8000FE74 8C430040 */ lw $v1, 0x40($v0) -/* 010A78 8000FE78 244E0080 */ addiu $t6, $v0, 0x80 -/* 010A7C 8000FE7C 806D0053 */ lb $t5, 0x53($v1) -/* 010A80 8000FE80 80740055 */ lb $s4, 0x55($v1) -/* 010A84 8000FE84 AFAD0034 */ sw $t5, 0x34($sp) -/* 010A88 8000FE88 AC4E0068 */ sw $t6, 0x68($v0) -/* 010A8C 8000FE8C 8FAF0034 */ lw $t7, 0x34($sp) -/* 010A90 8000FE90 00009825 */ move $s3, $zero -/* 010A94 8000FE94 15E0001B */ bnez $t7, .L8000FF04 -/* 010A98 8000FE98 00000000 */ nop -/* 010A9C 8000FE9C 1A800031 */ blez $s4, .L8000FF64 -/* 010AA0 8000FEA0 00008025 */ move $s0, $zero -.L8000FEA4: -/* 010AA4 8000FEA4 8E580040 */ lw $t8, 0x40($s2) -/* 010AA8 8000FEA8 00002825 */ move $a1, $zero -/* 010AAC 8000FEAC 8F190010 */ lw $t9, 0x10($t8) -/* 010AB0 8000FEB0 00000000 */ nop -/* 010AB4 8000FEB4 03304021 */ addu $t0, $t9, $s0 -/* 010AB8 8000FEB8 8D040000 */ lw $a0, ($t0) -/* 010ABC 8000FEBC 0C017E67 */ jal func_8005F99C -/* 010AC0 8000FEC0 00000000 */ nop -/* 010AC4 8000FEC4 8E490068 */ lw $t1, 0x68($s2) -/* 010AC8 8000FEC8 26310001 */ addiu $s1, $s1, 1 -/* 010ACC 8000FECC 01305021 */ addu $t2, $t1, $s0 -/* 010AD0 8000FED0 AD420000 */ sw $v0, ($t2) -/* 010AD4 8000FED4 8E4B0068 */ lw $t3, 0x68($s2) -/* 010AD8 8000FED8 00000000 */ nop -/* 010ADC 8000FEDC 01706021 */ addu $t4, $t3, $s0 -/* 010AE0 8000FEE0 8D8D0000 */ lw $t5, ($t4) -/* 010AE4 8000FEE4 00000000 */ nop -/* 010AE8 8000FEE8 15A00002 */ bnez $t5, .L8000FEF4 -/* 010AEC 8000FEEC 00000000 */ nop -/* 010AF0 8000FEF0 24130001 */ li $s3, 1 -.L8000FEF4: -/* 010AF4 8000FEF4 1634FFEB */ bne $s1, $s4, .L8000FEA4 -/* 010AF8 8000FEF8 26100004 */ addiu $s0, $s0, 4 -/* 010AFC 8000FEFC 10000019 */ b .L8000FF64 -/* 010B00 8000FF00 00000000 */ nop -.L8000FF04: -/* 010B04 8000FF04 1A800017 */ blez $s4, .L8000FF64 -/* 010B08 8000FF08 00008025 */ move $s0, $zero -.L8000FF0C: -/* 010B0C 8000FF0C 8E4E0040 */ lw $t6, 0x40($s2) -/* 010B10 8000FF10 2405000A */ li $a1, 10 -/* 010B14 8000FF14 8DCF0010 */ lw $t7, 0x10($t6) -/* 010B18 8000FF18 00000000 */ nop -/* 010B1C 8000FF1C 01F0C021 */ addu $t8, $t7, $s0 -/* 010B20 8000FF20 8F040000 */ lw $a0, ($t8) -/* 010B24 8000FF24 0C01F04B */ jal func_8007C12C -/* 010B28 8000FF28 00000000 */ nop -/* 010B2C 8000FF2C 8E590068 */ lw $t9, 0x68($s2) -/* 010B30 8000FF30 26310001 */ addiu $s1, $s1, 1 -/* 010B34 8000FF34 03304021 */ addu $t0, $t9, $s0 -/* 010B38 8000FF38 AD020000 */ sw $v0, ($t0) -/* 010B3C 8000FF3C 8E490068 */ lw $t1, 0x68($s2) -/* 010B40 8000FF40 00000000 */ nop -/* 010B44 8000FF44 01305021 */ addu $t2, $t1, $s0 -/* 010B48 8000FF48 8D4B0000 */ lw $t3, ($t2) -/* 010B4C 8000FF4C 00000000 */ nop -/* 010B50 8000FF50 15600002 */ bnez $t3, .L8000FF5C -/* 010B54 8000FF54 00000000 */ nop -/* 010B58 8000FF58 24130001 */ li $s3, 1 -.L8000FF5C: -/* 010B5C 8000FF5C 1634FFEB */ bne $s1, $s4, .L8000FF0C -/* 010B60 8000FF60 26100004 */ addiu $s0, $s0, 4 -.L8000FF64: -/* 010B64 8000FF64 1260000C */ beqz $s3, .L8000FF98 -/* 010B68 8000FF68 02401025 */ move $v0, $s2 -/* 010B6C 8000FF6C 8FA60034 */ lw $a2, 0x34($sp) -/* 010B70 8000FF70 02402025 */ move $a0, $s2 -/* 010B74 8000FF74 0C003D92 */ jal func_8000F648 -/* 010B78 8000FF78 02802825 */ move $a1, $s4 -/* 010B7C 8000FF7C 8FA40038 */ lw $a0, 0x38($sp) -/* 010B80 8000FF80 0C003211 */ jal func_8000C844 -/* 010B84 8000FF84 00000000 */ nop -/* 010B88 8000FF88 0C01C450 */ jal func_80071140 -/* 010B8C 8000FF8C 02402025 */ move $a0, $s2 -/* 010B90 8000FF90 10000001 */ b .L8000FF98 -/* 010B94 8000FF94 00001025 */ move $v0, $zero -.L8000FF98: -/* 010B98 8000FF98 8FBF002C */ lw $ra, 0x2c($sp) -/* 010B9C 8000FF9C 8FB00018 */ lw $s0, 0x18($sp) -/* 010BA0 8000FFA0 8FB1001C */ lw $s1, 0x1c($sp) -/* 010BA4 8000FFA4 8FB20020 */ lw $s2, 0x20($sp) -/* 010BA8 8000FFA8 8FB30024 */ lw $s3, 0x24($sp) -/* 010BAC 8000FFAC 8FB40028 */ lw $s4, 0x28($sp) -/* 010BB0 8000FFB0 03E00008 */ jr $ra -/* 010BB4 8000FFB4 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_8000FFB8 -/* 010BB8 8000FFB8 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 010BBC 8000FFBC AFBF0014 */ sw $ra, 0x14($sp) -/* 010BC0 8000FFC0 AFA40018 */ sw $a0, 0x18($sp) -/* 010BC4 8000FFC4 8484004A */ lh $a0, 0x4a($a0) -/* 010BC8 8000FFC8 00000000 */ nop -/* 010BCC 8000FFCC 348F8000 */ ori $t7, $a0, 0x8000 -/* 010BD0 8000FFD0 000FC400 */ sll $t8, $t7, 0x10 -/* 010BD4 8000FFD4 0C00916D */ jal func_800245B4 -/* 010BD8 8000FFD8 00182403 */ sra $a0, $t8, 0x10 -/* 010BDC 8000FFDC 3C028012 */ lui $v0, %hi(D_8011AEC8) # $v0, 0x8012 -/* 010BE0 8000FFE0 2442AEC8 */ addiu $v0, %lo(D_8011AEC8) # addiu $v0, $v0, -0x5138 -/* 010BE4 8000FFE4 8C4A0000 */ lw $t2, ($v0) -/* 010BE8 8000FFE8 3C098012 */ lui $t1, %hi(D_8011AEC4) # $t1, 0x8012 -/* 010BEC 8000FFEC 8D29AEC4 */ lw $t1, %lo(D_8011AEC4)($t1) -/* 010BF0 8000FFF0 8FA80018 */ lw $t0, 0x18($sp) -/* 010BF4 8000FFF4 000A5880 */ sll $t3, $t2, 2 -/* 010BF8 8000FFF8 012B6021 */ addu $t4, $t1, $t3 -/* 010BFC 8000FFFC AD880000 */ sw $t0, ($t4) -/* 010C00 80010000 8C4D0000 */ lw $t5, ($v0) -/* 010C04 80010004 8FBF0014 */ lw $ra, 0x14($sp) -/* 010C08 80010008 25AE0001 */ addiu $t6, $t5, 1 -/* 010C0C 8001000C AC4E0000 */ sw $t6, ($v0) -/* 010C10 80010010 03E00008 */ jr $ra -/* 010C14 80010014 27BD0018 */ addiu $sp, $sp, 0x18 - -/* 010C18 80010018 3C028012 */ lui $v0, %hi(D_8011AEBC) # $v0, 0x8012 -/* 010C1C 8001001C 8C42AEBC */ lw $v0, %lo(D_8011AEBC)($v0) -/* 010C20 80010020 03E00008 */ jr $ra -/* 010C24 80010024 00000000 */ nop - -/* 010C28 80010028 3C0E8012 */ lui $t6, %hi(D_8011AEB8) # $t6, 0x8012 -/* 010C2C 8001002C 8DCEAEB8 */ lw $t6, %lo(D_8011AEB8)($t6) -/* 010C30 80010030 00047840 */ sll $t7, $a0, 1 -/* 010C34 80010034 3C088012 */ lui $t0, %hi(D_8011AD68) # $t0, 0x8012 -/* 010C38 80010038 01CFC021 */ addu $t8, $t6, $t7 -/* 010C3C 8001003C 87190000 */ lh $t9, ($t8) -/* 010C40 80010040 8D08AD68 */ lw $t0, %lo(D_8011AD68)($t0) -/* 010C44 80010044 03E00008 */ jr $ra -/* 010C48 80010048 0328102A */ slt $v0, $t9, $t0 - -glabel func_8001004C -/* 010C4C 8001004C 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 010C50 80010050 AFB70030 */ sw $s7, 0x30($sp) -/* 010C54 80010054 3C178012 */ lui $s7, %hi(D_8011AEC8) # $s7, 0x8012 -/* 010C58 80010058 3C018012 */ lui $at, %hi(D_8011AE88) # $at, 0x8012 -/* 010C5C 8001005C 26F7AEC8 */ addiu $s7, %lo(D_8011AEC8) # addiu $s7, $s7, -0x5138 -/* 010C60 80010060 AC20AE88 */ sw $zero, %lo(D_8011AE88)($at) -/* 010C64 80010064 8EEE0000 */ lw $t6, ($s7) -/* 010C68 80010068 AFB30020 */ sw $s3, 0x20($sp) -/* 010C6C 8001006C AFBF0034 */ sw $ra, 0x34($sp) -/* 010C70 80010070 AFB6002C */ sw $s6, 0x2c($sp) -/* 010C74 80010074 AFB50028 */ sw $s5, 0x28($sp) -/* 010C78 80010078 AFB40024 */ sw $s4, 0x24($sp) -/* 010C7C 8001007C AFB2001C */ sw $s2, 0x1c($sp) -/* 010C80 80010080 AFB10018 */ sw $s1, 0x18($sp) -/* 010C84 80010084 AFB00014 */ sw $s0, 0x14($sp) -/* 010C88 80010088 19C0003C */ blez $t6, .L8001017C -/* 010C8C 8001008C 00009825 */ move $s3, $zero -/* 010C90 80010090 3C158012 */ lui $s5, %hi(D_8011AEC4) # $s5, 0x8012 -/* 010C94 80010094 3C148012 */ lui $s4, %hi(D_8011AE7C) # $s4, 0x8012 -/* 010C98 80010098 3C118012 */ lui $s1, %hi(D_8011AE58) # $s1, 0x8012 -/* 010C9C 8001009C 3C108012 */ lui $s0, %hi(D_8011AE5C) # $s0, 0x8012 -/* 010CA0 800100A0 2610AE5C */ addiu $s0, %lo(D_8011AE5C) # addiu $s0, $s0, -0x51a4 -/* 010CA4 800100A4 2631AE58 */ addiu $s1, %lo(D_8011AE58) # addiu $s1, $s1, -0x51a8 -/* 010CA8 800100A8 2694AE7C */ addiu $s4, %lo(D_8011AE7C) # addiu $s4, $s4, -0x5184 -/* 010CAC 800100AC 26B5AEC4 */ addiu $s5, %lo(D_8011AEC4) # addiu $s5, $s5, -0x513c -/* 010CB0 800100B0 00009025 */ move $s2, $zero -/* 010CB4 800100B4 2416FFFF */ li $s6, -1 -.L800100B8: -/* 010CB8 800100B8 8EAF0000 */ lw $t7, ($s5) -/* 010CBC 800100BC 8E050000 */ lw $a1, ($s0) -/* 010CC0 800100C0 01F2C021 */ addu $t8, $t7, $s2 -/* 010CC4 800100C4 8F060000 */ lw $a2, ($t8) -/* 010CC8 800100C8 02C02025 */ move $a0, $s6 -/* 010CCC 800100CC 18A0000C */ blez $a1, .L80010100 -/* 010CD0 800100D0 00001825 */ move $v1, $zero -/* 010CD4 800100D4 8E220000 */ lw $v0, ($s1) -/* 010CD8 800100D8 00000000 */ nop -.L800100DC: -/* 010CDC 800100DC 8C590000 */ lw $t9, ($v0) -/* 010CE0 800100E0 00000000 */ nop -/* 010CE4 800100E4 14D90002 */ bne $a2, $t9, .L800100F0 -/* 010CE8 800100E8 00000000 */ nop -/* 010CEC 800100EC 00602025 */ move $a0, $v1 -.L800100F0: -/* 010CF0 800100F0 24630001 */ addiu $v1, $v1, 1 -/* 010CF4 800100F4 0065082A */ slt $at, $v1, $a1 -/* 010CF8 800100F8 1420FFF8 */ bnez $at, .L800100DC -/* 010CFC 800100FC 24420004 */ addiu $v0, $v0, 4 -.L80010100: -/* 010D00 80010100 10960016 */ beq $a0, $s6, .L8001015C -/* 010D04 80010104 24A9FFFF */ addiu $t1, $a1, -1 -/* 010D08 80010108 86820000 */ lh $v0, ($s4) -/* 010D0C 8001010C 00801825 */ move $v1, $a0 -/* 010D10 80010110 0082082A */ slt $at, $a0, $v0 -/* 010D14 80010114 10200002 */ beqz $at, .L80010120 -/* 010D18 80010118 2448FFFF */ addiu $t0, $v0, -1 -/* 010D1C 8001011C A6880000 */ sh $t0, ($s4) -.L80010120: -/* 010D20 80010120 0089082A */ slt $at, $a0, $t1 -/* 010D24 80010124 1020000D */ beqz $at, .L8001015C -/* 010D28 80010128 AE090000 */ sw $t1, ($s0) -/* 010D2C 8001012C 00042080 */ sll $a0, $a0, 2 -.L80010130: -/* 010D30 80010130 8E2B0000 */ lw $t3, ($s1) -/* 010D34 80010134 24630001 */ addiu $v1, $v1, 1 -/* 010D38 80010138 01641021 */ addu $v0, $t3, $a0 -/* 010D3C 8001013C 8C4C0004 */ lw $t4, 4($v0) -/* 010D40 80010140 24840004 */ addiu $a0, $a0, 4 -/* 010D44 80010144 AC4C0000 */ sw $t4, ($v0) -/* 010D48 80010148 8E0D0000 */ lw $t5, ($s0) -/* 010D4C 8001014C 00000000 */ nop -/* 010D50 80010150 006D082A */ slt $at, $v1, $t5 -/* 010D54 80010154 1420FFF6 */ bnez $at, .L80010130 -/* 010D58 80010158 00000000 */ nop -.L8001015C: -/* 010D5C 8001015C 00C02025 */ move $a0, $a2 -/* 010D60 80010160 0C00406B */ jal func_800101AC -/* 010D64 80010164 00002825 */ move $a1, $zero -/* 010D68 80010168 8EEE0000 */ lw $t6, ($s7) -/* 010D6C 8001016C 26730001 */ addiu $s3, $s3, 1 -/* 010D70 80010170 026E082A */ slt $at, $s3, $t6 -/* 010D74 80010174 1420FFD0 */ bnez $at, .L800100B8 -/* 010D78 80010178 26520004 */ addiu $s2, $s2, 4 -.L8001017C: -/* 010D7C 8001017C 8FBF0034 */ lw $ra, 0x34($sp) -/* 010D80 80010180 AEE00000 */ sw $zero, ($s7) -/* 010D84 80010184 8FB70030 */ lw $s7, 0x30($sp) -/* 010D88 80010188 8FB00014 */ lw $s0, 0x14($sp) -/* 010D8C 8001018C 8FB10018 */ lw $s1, 0x18($sp) -/* 010D90 80010190 8FB2001C */ lw $s2, 0x1c($sp) -/* 010D94 80010194 8FB30020 */ lw $s3, 0x20($sp) -/* 010D98 80010198 8FB40024 */ lw $s4, 0x24($sp) -/* 010D9C 8001019C 8FB50028 */ lw $s5, 0x28($sp) -/* 010DA0 800101A0 8FB6002C */ lw $s6, 0x2c($sp) -/* 010DA4 800101A4 03E00008 */ jr $ra -/* 010DA8 800101A8 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_800101AC -/* 010DAC 800101AC 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 010DB0 800101B0 AFBF0034 */ sw $ra, 0x34($sp) -/* 010DB4 800101B4 AFB60030 */ sw $s6, 0x30($sp) -/* 010DB8 800101B8 AFB5002C */ sw $s5, 0x2c($sp) -/* 010DBC 800101BC AFB40028 */ sw $s4, 0x28($sp) -/* 010DC0 800101C0 AFB30024 */ sw $s3, 0x24($sp) -/* 010DC4 800101C4 AFB20020 */ sw $s2, 0x20($sp) -/* 010DC8 800101C8 AFB1001C */ sw $s1, 0x1c($sp) -/* 010DCC 800101CC AFB00018 */ sw $s0, 0x18($sp) -/* 010DD0 800101D0 AFA5003C */ sw $a1, 0x3c($sp) -/* 010DD4 800101D4 848E0006 */ lh $t6, 6($a0) -/* 010DD8 800101D8 0080B025 */ move $s6, $a0 -/* 010DDC 800101DC 31CF8000 */ andi $t7, $t6, 0x8000 -/* 010DE0 800101E0 11E0000A */ beqz $t7, .L8001020C -/* 010DE4 800101E4 00000000 */ nop -/* 010DE8 800101E8 0C02C810 */ jal func_800B2040 -/* 010DEC 800101EC 00000000 */ nop -/* 010DF0 800101F0 3C028012 */ lui $v0, %hi(D_8011AE64) # $v0, 0x8012 -/* 010DF4 800101F4 2442AE64 */ addiu $v0, %lo(D_8011AE64) # addiu $v0, $v0, -0x519c -/* 010DF8 800101F8 8C580000 */ lw $t8, ($v0) -/* 010DFC 800101FC 00000000 */ nop -/* 010E00 80010200 2719FFFF */ addiu $t9, $t8, -1 -/* 010E04 80010204 100001D9 */ b .L8001096C -/* 010E08 80010208 AC590000 */ sw $t9, ($v0) -.L8001020C: -/* 010E0C 8001020C 8EC30060 */ lw $v1, 0x60($s6) -/* 010E10 80010210 00000000 */ nop -/* 010E14 80010214 10600033 */ beqz $v1, .L800102E4 -/* 010E18 80010218 00000000 */ nop -/* 010E1C 8001021C 8C680000 */ lw $t0, ($v1) -/* 010E20 80010220 0000A825 */ move $s5, $zero -/* 010E24 80010224 1900002F */ blez $t0, .L800102E4 -/* 010E28 80010228 00000000 */ nop -/* 010E2C 8001022C 0000A025 */ move $s4, $zero -/* 010E30 80010230 00744821 */ addu $t1, $v1, $s4 -.L80010234: -/* 010E34 80010234 8D310004 */ lw $s1, 4($t1) -/* 010E38 80010238 00009825 */ move $s3, $zero -/* 010E3C 8001023C 8E220040 */ lw $v0, 0x40($s1) -/* 010E40 80010240 00000000 */ nop -/* 010E44 80010244 80440053 */ lb $a0, 0x53($v0) -/* 010E48 80010248 80520055 */ lb $s2, 0x55($v0) -/* 010E4C 8001024C 1480000E */ bnez $a0, .L80010288 -/* 010E50 80010250 00000000 */ nop -/* 010E54 80010254 1A400017 */ blez $s2, .L800102B4 -/* 010E58 80010258 00008025 */ move $s0, $zero -.L8001025C: -/* 010E5C 8001025C 8E2A0068 */ lw $t2, 0x68($s1) -/* 010E60 80010260 00000000 */ nop -/* 010E64 80010264 01505821 */ addu $t3, $t2, $s0 -/* 010E68 80010268 8D640000 */ lw $a0, ($t3) -/* 010E6C 8001026C 0C017FD0 */ jal func_8005FF40 -/* 010E70 80010270 00000000 */ nop -/* 010E74 80010274 26730001 */ addiu $s3, $s3, 1 -/* 010E78 80010278 1672FFF8 */ bne $s3, $s2, .L8001025C -/* 010E7C 8001027C 26100004 */ addiu $s0, $s0, 4 -/* 010E80 80010280 1000000D */ b .L800102B8 -/* 010E84 80010284 8624002C */ lh $a0, 0x2c($s1) -.L80010288: -/* 010E88 80010288 1A40000A */ blez $s2, .L800102B4 -/* 010E8C 8001028C 00008025 */ move $s0, $zero -.L80010290: -/* 010E90 80010290 8E2C0068 */ lw $t4, 0x68($s1) -/* 010E94 80010294 00000000 */ nop -/* 010E98 80010298 01906821 */ addu $t5, $t4, $s0 -/* 010E9C 8001029C 8DA40000 */ lw $a0, ($t5) -/* 010EA0 800102A0 0C01F32C */ jal func_8007CCB0 -/* 010EA4 800102A4 00000000 */ nop -/* 010EA8 800102A8 26730001 */ addiu $s3, $s3, 1 -/* 010EAC 800102AC 1672FFF8 */ bne $s3, $s2, .L80010290 -/* 010EB0 800102B0 26100004 */ addiu $s0, $s0, 4 -.L800102B4: -/* 010EB4 800102B4 8624002C */ lh $a0, 0x2c($s1) -.L800102B8: -/* 010EB8 800102B8 0C003211 */ jal func_8000C844 -/* 010EBC 800102BC 00000000 */ nop -/* 010EC0 800102C0 0C01C450 */ jal func_80071140 -/* 010EC4 800102C4 02202025 */ move $a0, $s1 -/* 010EC8 800102C8 8EC30060 */ lw $v1, 0x60($s6) -/* 010ECC 800102CC 26B50001 */ addiu $s5, $s5, 1 -/* 010ED0 800102D0 8C6E0000 */ lw $t6, ($v1) -/* 010ED4 800102D4 26940004 */ addiu $s4, $s4, 4 -/* 010ED8 800102D8 02AE082A */ slt $at, $s5, $t6 -/* 010EDC 800102DC 1420FFD5 */ bnez $at, .L80010234 -/* 010EE0 800102E0 00744821 */ addu $t1, $v1, $s4 -.L800102E4: -/* 010EE4 800102E4 8ECF0070 */ lw $t7, 0x70($s6) -/* 010EE8 800102E8 00009825 */ move $s3, $zero -/* 010EEC 800102EC 11E00015 */ beqz $t7, .L80010344 -/* 010EF0 800102F0 00000000 */ nop -/* 010EF4 800102F4 8ED80040 */ lw $t8, 0x40($s6) -/* 010EF8 800102F8 0000A825 */ move $s5, $zero -/* 010EFC 800102FC 8319005A */ lb $t9, 0x5a($t8) -/* 010F00 80010300 00000000 */ nop -/* 010F04 80010304 1B20000F */ blez $t9, .L80010344 -/* 010F08 80010308 00000000 */ nop -/* 010F0C 8001030C 0000A025 */ move $s4, $zero -.L80010310: -/* 010F10 80010310 8EC80070 */ lw $t0, 0x70($s6) -/* 010F14 80010314 00000000 */ nop -/* 010F18 80010318 01144821 */ addu $t1, $t0, $s4 -/* 010F1C 8001031C 8D240000 */ lw $a0, ($t1) -/* 010F20 80010320 0C00CAEB */ jal func_80032BAC -/* 010F24 80010324 00000000 */ nop -/* 010F28 80010328 8ECA0040 */ lw $t2, 0x40($s6) -/* 010F2C 8001032C 26B50001 */ addiu $s5, $s5, 1 -/* 010F30 80010330 814B005A */ lb $t3, 0x5a($t2) -/* 010F34 80010334 26940004 */ addiu $s4, $s4, 4 -/* 010F38 80010338 02AB082A */ slt $at, $s5, $t3 -/* 010F3C 8001033C 1420FFF4 */ bnez $at, .L80010310 -/* 010F40 80010340 00000000 */ nop -.L80010344: -/* 010F44 80010344 86C50048 */ lh $a1, 0x48($s6) -/* 010F48 80010348 00000000 */ nop -/* 010F4C 8001034C 24ACFFFF */ addiu $t4, $a1, -1 -/* 010F50 80010350 2D810074 */ sltiu $at, $t4, 0x74 -/* 010F54 80010354 102000A8 */ beqz $at, .L800105F8 -/* 010F58 80010358 000C6080 */ sll $t4, $t4, 2 -/* 010F5C 8001035C 3C01800E */ lui $at, 0x800e -/* 010F60 80010360 002C0821 */ addu $at, $at, $t4 -/* 010F64 80010364 8C2C5250 */ lw $t4, 0x5250($at) -/* 010F68 80010368 00000000 */ nop -/* 010F6C 8001036C 01800008 */ jr $t4 -/* 010F70 80010370 00000000 */ nop -/* 010F74 80010374 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 -/* 010F78 80010378 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) -/* 010F7C 8001037C 0000A825 */ move $s5, $zero -/* 010F80 80010380 1860001D */ blez $v1, .L800103F8 -/* 010F84 80010384 0000A025 */ move $s4, $zero -/* 010F88 80010388 24050001 */ li $a1, 1 -/* 010F8C 8001038C 2404003D */ li $a0, 61 -.L80010390: -/* 010F90 80010390 3C0D8012 */ lui $t5, %hi(D_8011AE58) # $t5, 0x8012 -/* 010F94 80010394 8DADAE58 */ lw $t5, %lo(D_8011AE58)($t5) -/* 010F98 80010398 26B50001 */ addiu $s5, $s5, 1 -/* 010F9C 8001039C 01B47021 */ addu $t6, $t5, $s4 -/* 010FA0 800103A0 8DD10000 */ lw $s1, ($t6) -/* 010FA4 800103A4 00000000 */ nop -/* 010FA8 800103A8 862F0048 */ lh $t7, 0x48($s1) -/* 010FAC 800103AC 00000000 */ nop -/* 010FB0 800103B0 148F000D */ bne $a0, $t7, .L800103E8 -/* 010FB4 800103B4 02A3082A */ slt $at, $s5, $v1 -/* 010FB8 800103B8 8E220064 */ lw $v0, 0x64($s1) -/* 010FBC 800103BC 00000000 */ nop -/* 010FC0 800103C0 8C580100 */ lw $t8, 0x100($v0) -/* 010FC4 800103C4 00000000 */ nop -/* 010FC8 800103C8 16D80007 */ bne $s6, $t8, .L800103E8 -/* 010FCC 800103CC 02A3082A */ slt $at, $s5, $v1 -/* 010FD0 800103D0 AC400100 */ sw $zero, 0x100($v0) -/* 010FD4 800103D4 A04500FD */ sb $a1, 0xfd($v0) -/* 010FD8 800103D8 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 -/* 010FDC 800103DC 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) -/* 010FE0 800103E0 00000000 */ nop -/* 010FE4 800103E4 02A3082A */ slt $at, $s5, $v1 -.L800103E8: -/* 010FE8 800103E8 1420FFE9 */ bnez $at, .L80010390 -/* 010FEC 800103EC 26940004 */ addiu $s4, $s4, 4 -/* 010FF0 800103F0 86C50048 */ lh $a1, 0x48($s6) -/* 010FF4 800103F4 00000000 */ nop -.L800103F8: -/* 010FF8 800103F8 10000080 */ b .L800105FC -/* 010FFC 800103FC 24140012 */ li $s4, 18 -/* 011000 80010400 8ED00064 */ lw $s0, 0x64($s6) -/* 011004 80010404 00000000 */ nop -/* 011008 80010408 8E04001C */ lw $a0, 0x1c($s0) -/* 01100C 8001040C 00000000 */ nop -/* 011010 80010410 1080000C */ beqz $a0, .L80010444 -/* 011014 80010414 00000000 */ nop -/* 011018 80010418 0C0025BE */ jal func_800096F8 -/* 01101C 8001041C 00000000 */ nop -/* 011020 80010420 AE00001C */ sw $zero, 0x1c($s0) -/* 011024 80010424 86C50048 */ lh $a1, 0x48($s6) -/* 011028 80010428 24140012 */ li $s4, 18 -/* 01102C 8001042C 16850005 */ bne $s4, $a1, .L80010444 -/* 011030 80010430 00000000 */ nop -/* 011034 80010434 0C00FC37 */ jal func_8003F0DC -/* 011038 80010438 00000000 */ nop -/* 01103C 8001043C 86C50048 */ lh $a1, 0x48($s6) -/* 011040 80010440 00000000 */ nop -.L80010444: -/* 011044 80010444 1000006D */ b .L800105FC -/* 011048 80010448 24140012 */ li $s4, 18 -/* 01104C 8001044C 8ED00064 */ lw $s0, 0x64($s6) -/* 011050 80010450 00000000 */ nop -/* 011054 80010454 8E04001C */ lw $a0, 0x1c($s0) -/* 011058 80010458 00000000 */ nop -/* 01105C 8001045C 10800005 */ beqz $a0, .L80010474 -/* 011060 80010460 00000000 */ nop -/* 011064 80010464 0C0025BE */ jal func_800096F8 -/* 011068 80010468 00000000 */ nop -/* 01106C 8001046C 86C50048 */ lh $a1, 0x48($s6) -/* 011070 80010470 00000000 */ nop -.L80010474: -/* 011074 80010474 10000061 */ b .L800105FC -/* 011078 80010478 24140012 */ li $s4, 18 -/* 01107C 8001047C 8EC20064 */ lw $v0, 0x64($s6) -/* 011080 80010480 00000000 */ nop -/* 011084 80010484 8C430020 */ lw $v1, 0x20($v0) -/* 011088 80010488 00000000 */ nop -/* 01108C 8001048C 10600005 */ beqz $v1, .L800104A4 -/* 011090 80010490 00000000 */ nop -/* 011094 80010494 0C0025BE */ jal func_800096F8 -/* 011098 80010498 00602025 */ move $a0, $v1 -/* 01109C 8001049C 86C50048 */ lh $a1, 0x48($s6) -/* 0110A0 800104A0 00000000 */ nop -.L800104A4: -/* 0110A4 800104A4 10000055 */ b .L800105FC -/* 0110A8 800104A8 24140012 */ li $s4, 18 -/* 0110AC 800104AC 0C02FCF9 */ jal func_800BF3E4 -/* 0110B0 800104B0 02C02025 */ move $a0, $s6 -/* 0110B4 800104B4 86C50048 */ lh $a1, 0x48($s6) -/* 0110B8 800104B8 10000050 */ b .L800105FC -/* 0110BC 800104BC 24140012 */ li $s4, 18 -/* 0110C0 800104C0 8EC40064 */ lw $a0, 0x64($s6) -/* 0110C4 800104C4 0C00CAEB */ jal func_80032BAC -/* 0110C8 800104C8 00000000 */ nop -/* 0110CC 800104CC 86C50048 */ lh $a1, 0x48($s6) -/* 0110D0 800104D0 1000004A */ b .L800105FC -/* 0110D4 800104D4 24140012 */ li $s4, 18 -/* 0110D8 800104D8 8EC40064 */ lw $a0, 0x64($s6) -/* 0110DC 800104DC 8FB9003C */ lw $t9, 0x3c($sp) -/* 0110E0 800104E0 10800007 */ beqz $a0, .L80010500 -/* 0110E4 800104E4 00000000 */ nop -/* 0110E8 800104E8 17200005 */ bnez $t9, .L80010500 -/* 0110EC 800104EC 00000000 */ nop -/* 0110F0 800104F0 0C003FEE */ jal func_8000FFB8 -/* 0110F4 800104F4 00000000 */ nop -/* 0110F8 800104F8 86C50048 */ lh $a1, 0x48($s6) -/* 0110FC 800104FC 00000000 */ nop -.L80010500: -/* 011100 80010500 1000003E */ b .L800105FC -/* 011104 80010504 24140012 */ li $s4, 18 -/* 011108 80010508 3C048012 */ lui $a0, %hi(D_8011AE00) # $a0, 0x8012 -/* 01110C 8001050C 2484AE00 */ addiu $a0, %lo(D_8011AE00) # addiu $a0, $a0, -0x5200 -/* 011110 80010510 80830000 */ lb $v1, ($a0) -/* 011114 80010514 3C088012 */ lui $t0, %hi(D_8011ADD8) # $t0, 0x8012 -/* 011118 80010518 1860000E */ blez $v1, .L80010554 -/* 01111C 8001051C 24140012 */ li $s4, 18 -/* 011120 80010520 8D08ADD8 */ lw $t0, %lo(D_8011ADD8)($t0) -/* 011124 80010524 3C028012 */ lui $v0, %hi(D_8011ADD8) # $v0, 0x8012 -/* 011128 80010528 12C8000A */ beq $s6, $t0, .L80010554 -/* 01112C 8001052C 2442ADD8 */ addiu $v0, %lo(D_8011ADD8) # addiu $v0, $v0, -0x5228 -.L80010530: -/* 011130 80010530 26730001 */ addiu $s3, $s3, 1 -/* 011134 80010534 0263082A */ slt $at, $s3, $v1 -/* 011138 80010538 10200006 */ beqz $at, .L80010554 -/* 01113C 8001053C 00134880 */ sll $t1, $s3, 2 -/* 011140 80010540 00495021 */ addu $t2, $v0, $t1 -/* 011144 80010544 8D4B0000 */ lw $t3, ($t2) -/* 011148 80010548 00000000 */ nop -/* 01114C 8001054C 16CBFFF8 */ bne $s6, $t3, .L80010530 -/* 011150 80010550 00000000 */ nop -.L80010554: -/* 011154 80010554 0263082A */ slt $at, $s3, $v1 -/* 011158 80010558 10200010 */ beqz $at, .L8001059C -/* 01115C 8001055C 246CFFFF */ addiu $t4, $v1, -1 -/* 011160 80010560 A08C0000 */ sb $t4, ($a0) -/* 011164 80010564 80830000 */ lb $v1, ($a0) -/* 011168 80010568 00136880 */ sll $t5, $s3, 2 -/* 01116C 8001056C 0263082A */ slt $at, $s3, $v1 -/* 011170 80010570 1020000A */ beqz $at, .L8001059C -/* 011174 80010574 3C0E8012 */ lui $t6, %hi(D_8011ADD8) # $t6, 0x8012 -/* 011178 80010578 25CEADD8 */ addiu $t6, %lo(D_8011ADD8) # addiu $t6, $t6, -0x5228 -/* 01117C 8001057C 00037880 */ sll $t7, $v1, 2 -/* 011180 80010580 01EE2021 */ addu $a0, $t7, $t6 -/* 011184 80010584 01AE1021 */ addu $v0, $t5, $t6 -.L80010588: -/* 011188 80010588 8C580004 */ lw $t8, 4($v0) -/* 01118C 8001058C 24420004 */ addiu $v0, $v0, 4 -/* 011190 80010590 0044082B */ sltu $at, $v0, $a0 -/* 011194 80010594 1420FFFC */ bnez $at, .L80010588 -/* 011198 80010598 AC58FFFC */ sw $t8, -4($v0) -.L8001059C: -/* 01119C 8001059C 86C50048 */ lh $a1, 0x48($s6) -/* 0111A0 800105A0 10000016 */ b .L800105FC -/* 0111A4 800105A4 00009825 */ move $s3, $zero -/* 0111A8 800105A8 8EC40064 */ lw $a0, 0x64($s6) -/* 0111AC 800105AC 00000000 */ nop -/* 0111B0 800105B0 10800005 */ beqz $a0, .L800105C8 -/* 0111B4 800105B4 00000000 */ nop -/* 0111B8 800105B8 0C01C450 */ jal func_80071140 -/* 0111BC 800105BC 00000000 */ nop -/* 0111C0 800105C0 86C50048 */ lh $a1, 0x48($s6) -/* 0111C4 800105C4 00000000 */ nop -.L800105C8: -/* 0111C8 800105C8 1000000C */ b .L800105FC -/* 0111CC 800105CC 24140012 */ li $s4, 18 -/* 0111D0 800105D0 0C02B220 */ jal func_800AC880 -/* 0111D4 800105D4 02C02025 */ move $a0, $s6 -/* 0111D8 800105D8 86C50048 */ lh $a1, 0x48($s6) -/* 0111DC 800105DC 10000007 */ b .L800105FC -/* 0111E0 800105E0 24140012 */ li $s4, 18 -/* 0111E4 800105E4 0C02B3E6 */ jal func_800ACF98 -/* 0111E8 800105E8 02C02025 */ move $a0, $s6 -/* 0111EC 800105EC 86C50048 */ lh $a1, 0x48($s6) -/* 0111F0 800105F0 10000002 */ b .L800105FC -/* 0111F4 800105F4 24140012 */ li $s4, 18 -.L800105F8: -/* 0111F8 800105F8 24140012 */ li $s4, 18 -.L800105FC: -/* 0111FC 800105FC 28A1000D */ slti $at, $a1, 0xd -/* 011200 80010600 1420000B */ bnez $at, .L80010630 -/* 011204 80010604 00A01025 */ move $v0, $a1 -/* 011208 80010608 2459FFCE */ addiu $t9, $v0, -0x32 -/* 01120C 8001060C 2F210046 */ sltiu $at, $t9, 0x46 -/* 011210 80010610 10200014 */ beqz $at, .L80010664 -/* 011214 80010614 0019C880 */ sll $t9, $t9, 2 -/* 011218 80010618 3C01800E */ lui $at, 0x800e -/* 01121C 8001061C 00390821 */ addu $at, $at, $t9 -/* 011220 80010620 8C395420 */ lw $t9, 0x5420($at) -/* 011224 80010624 00000000 */ nop -/* 011228 80010628 03200008 */ jr $t9 -/* 01122C 8001062C 00000000 */ nop -.L80010630: -/* 011230 80010630 2401000C */ li $at, 12 -/* 011234 80010634 1441000C */ bne $v0, $at, .L80010668 -/* 011238 80010638 24010001 */ li $at, 1 -/* 01123C 8001063C 8EC20064 */ lw $v0, 0x64($s6) -/* 011240 80010640 00000000 */ nop -/* 011244 80010644 8C440018 */ lw $a0, 0x18($v0) -/* 011248 80010648 00000000 */ nop -/* 01124C 8001064C 10800006 */ beqz $a0, .L80010668 -/* 011250 80010650 24010001 */ li $at, 1 -/* 011254 80010654 0C001223 */ jal func_8000488C -/* 011258 80010658 00000000 */ nop -/* 01125C 8001065C 86C50048 */ lh $a1, 0x48($s6) -/* 011260 80010660 00000000 */ nop -.L80010664: -/* 011264 80010664 24010001 */ li $at, 1 -.L80010668: -/* 011268 80010668 14A10061 */ bne $a1, $at, .L800107F0 -/* 01126C 8001066C 00000000 */ nop -/* 011270 80010670 8ED00064 */ lw $s0, 0x64($s6) -/* 011274 80010674 00000000 */ nop -/* 011278 80010678 8E020018 */ lw $v0, 0x18($s0) -/* 01127C 8001067C 00000000 */ nop -/* 011280 80010680 10400003 */ beqz $v0, .L80010690 -/* 011284 80010684 00000000 */ nop -/* 011288 80010688 0C001223 */ jal func_8000488C -/* 01128C 8001068C 00402025 */ move $a0, $v0 -.L80010690: -/* 011290 80010690 8E020010 */ lw $v0, 0x10($s0) -/* 011294 80010694 00000000 */ nop -/* 011298 80010698 10400003 */ beqz $v0, .L800106A8 -/* 01129C 8001069C 00000000 */ nop -/* 0112A0 800106A0 0C001223 */ jal func_8000488C -/* 0112A4 800106A4 00402025 */ move $a0, $v0 -.L800106A8: -/* 0112A8 800106A8 8E020014 */ lw $v0, 0x14($s0) -/* 0112AC 800106AC 00000000 */ nop -/* 0112B0 800106B0 10400003 */ beqz $v0, .L800106C0 -/* 0112B4 800106B4 00000000 */ nop -/* 0112B8 800106B8 0C001223 */ jal func_8000488C -/* 0112BC 800106BC 00402025 */ move $a0, $v0 -.L800106C0: -/* 0112C0 800106C0 8E02001C */ lw $v0, 0x1c($s0) -/* 0112C4 800106C4 00000000 */ nop -/* 0112C8 800106C8 10400003 */ beqz $v0, .L800106D8 -/* 0112CC 800106CC 00000000 */ nop -/* 0112D0 800106D0 0C001223 */ jal func_8000488C -/* 0112D4 800106D4 00402025 */ move $a0, $v0 -.L800106D8: -/* 0112D8 800106D8 8E020020 */ lw $v0, 0x20($s0) -/* 0112DC 800106DC 00000000 */ nop -/* 0112E0 800106E0 10400003 */ beqz $v0, .L800106F0 -/* 0112E4 800106E4 00000000 */ nop -/* 0112E8 800106E8 0C001223 */ jal func_8000488C -/* 0112EC 800106EC 00402025 */ move $a0, $v0 -.L800106F0: -/* 0112F0 800106F0 8E040024 */ lw $a0, 0x24($s0) -/* 0112F4 800106F4 00000000 */ nop -/* 0112F8 800106F8 10800003 */ beqz $a0, .L80010708 -/* 0112FC 800106FC 00000000 */ nop -/* 011300 80010700 0C0025BE */ jal func_800096F8 -/* 011304 80010704 00000000 */ nop -.L80010708: -/* 011308 80010708 8E04017C */ lw $a0, 0x17c($s0) -/* 01130C 8001070C 00000000 */ nop -/* 011310 80010710 10800003 */ beqz $a0, .L80010720 -/* 011314 80010714 00000000 */ nop -/* 011318 80010718 0C0025BE */ jal func_800096F8 -/* 01131C 8001071C 00000000 */ nop -.L80010720: -/* 011320 80010720 8E040178 */ lw $a0, 0x178($s0) -/* 011324 80010724 00000000 */ nop -/* 011328 80010728 10800003 */ beqz $a0, .L80010738 -/* 01132C 8001072C 00000000 */ nop -/* 011330 80010730 0C001223 */ jal func_8000488C -/* 011334 80010734 00000000 */ nop -.L80010738: -/* 011338 80010738 0C001AB2 */ jal func_80006AC8 -/* 01133C 8001073C 02C02025 */ move $a0, $s6 -/* 011340 80010740 3C158012 */ lui $s5, %hi(D_8011AE5C) # $s5, 0x8012 -/* 011344 80010744 26B5AE5C */ addiu $s5, %lo(D_8011AE5C) # addiu $s5, $s5, -0x51a4 -/* 011348 80010748 8EA80000 */ lw $t0, ($s5) -/* 01134C 8001074C 00008025 */ move $s0, $zero -/* 011350 80010750 19000027 */ blez $t0, .L800107F0 -/* 011354 80010754 24120005 */ li $s2, 5 -/* 011358 80010758 2411004C */ li $s1, 76 -.L8001075C: -/* 01135C 8001075C 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 -/* 011360 80010760 8D29AE58 */ lw $t1, %lo(D_8011AE58)($t1) -/* 011364 80010764 00000000 */ nop -/* 011368 80010768 01305021 */ addu $t2, $t1, $s0 -/* 01136C 8001076C 8D440000 */ lw $a0, ($t2) -/* 011370 80010770 00000000 */ nop -/* 011374 80010774 848B0006 */ lh $t3, 6($a0) -/* 011378 80010778 00000000 */ nop -/* 01137C 8001077C 316C8000 */ andi $t4, $t3, 0x8000 -/* 011380 80010780 1180000B */ beqz $t4, .L800107B0 -/* 011384 80010784 00000000 */ nop -/* 011388 80010788 8C8D003C */ lw $t5, 0x3c($a0) -/* 01138C 8001078C 3C0F8012 */ lui $t7, %hi(D_8011AE58) # $t7, 0x8012 -/* 011390 80010790 16CD0007 */ bne $s6, $t5, .L800107B0 -/* 011394 80010794 00000000 */ nop -/* 011398 80010798 AC80003C */ sw $zero, 0x3c($a0) -/* 01139C 8001079C 8DEFAE58 */ lw $t7, %lo(D_8011AE58)($t7) -/* 0113A0 800107A0 00000000 */ nop -/* 0113A4 800107A4 01F07021 */ addu $t6, $t7, $s0 -/* 0113A8 800107A8 8DC40000 */ lw $a0, ($t6) -/* 0113AC 800107AC 00000000 */ nop -.L800107B0: -/* 0113B0 800107B0 84820048 */ lh $v0, 0x48($a0) -/* 0113B4 800107B4 00000000 */ nop -/* 0113B8 800107B8 12820005 */ beq $s4, $v0, .L800107D0 -/* 0113BC 800107BC 00000000 */ nop -/* 0113C0 800107C0 12220003 */ beq $s1, $v0, .L800107D0 -/* 0113C4 800107C4 00000000 */ nop -/* 0113C8 800107C8 16420003 */ bne $s2, $v0, .L800107D8 -/* 0113CC 800107CC 00000000 */ nop -.L800107D0: -/* 0113D0 800107D0 0C003FEE */ jal func_8000FFB8 -/* 0113D4 800107D4 00000000 */ nop -.L800107D8: -/* 0113D8 800107D8 8EB80000 */ lw $t8, ($s5) -/* 0113DC 800107DC 26730001 */ addiu $s3, $s3, 1 -/* 0113E0 800107E0 0278082A */ slt $at, $s3, $t8 -/* 0113E4 800107E4 1420FFDD */ bnez $at, .L8001075C -/* 0113E8 800107E8 26100004 */ addiu $s0, $s0, 4 -/* 0113EC 800107EC 00009825 */ move $s3, $zero -.L800107F0: -/* 0113F0 800107F0 8EC20050 */ lw $v0, 0x50($s6) -/* 0113F4 800107F4 00000000 */ nop -/* 0113F8 800107F8 10400007 */ beqz $v0, .L80010818 -/* 0113FC 800107FC 00000000 */ nop -/* 011400 80010800 8C440004 */ lw $a0, 4($v0) -/* 011404 80010804 00000000 */ nop -/* 011408 80010808 10800003 */ beqz $a0, .L80010818 -/* 01140C 8001080C 00000000 */ nop -/* 011410 80010810 0C01ECAF */ jal func_8007B2BC -/* 011414 80010814 00000000 */ nop -.L80010818: -/* 011418 80010818 8EC20058 */ lw $v0, 0x58($s6) -/* 01141C 8001081C 00000000 */ nop -/* 011420 80010820 10400007 */ beqz $v0, .L80010840 -/* 011424 80010824 00000000 */ nop -/* 011428 80010828 8C440004 */ lw $a0, 4($v0) -/* 01142C 8001082C 00000000 */ nop -/* 011430 80010830 10800003 */ beqz $a0, .L80010840 -/* 011434 80010834 00000000 */ nop -/* 011438 80010838 0C01ECAF */ jal func_8007B2BC -/* 01143C 8001083C 00000000 */ nop -.L80010840: -/* 011440 80010840 8EC20040 */ lw $v0, 0x40($s6) -/* 011444 80010844 00000000 */ nop -/* 011448 80010848 80440053 */ lb $a0, 0x53($v0) -/* 01144C 8001084C 80520055 */ lb $s2, 0x55($v0) -/* 011450 80010850 14800013 */ bnez $a0, .L800108A0 -/* 011454 80010854 24010004 */ li $at, 4 -/* 011458 80010858 1A40002E */ blez $s2, .L80010914 -/* 01145C 8001085C 00008025 */ move $s0, $zero -.L80010860: -/* 011460 80010860 8ED90068 */ lw $t9, 0x68($s6) -/* 011464 80010864 00000000 */ nop -/* 011468 80010868 03304021 */ addu $t0, $t9, $s0 -/* 01146C 8001086C 8D020000 */ lw $v0, ($t0) -/* 011470 80010870 00000000 */ nop -/* 011474 80010874 10400003 */ beqz $v0, .L80010884 -/* 011478 80010878 00000000 */ nop -/* 01147C 8001087C 0C017FD0 */ jal func_8005FF40 -/* 011480 80010880 00402025 */ move $a0, $v0 -.L80010884: -/* 011484 80010884 26730001 */ addiu $s3, $s3, 1 -/* 011488 80010888 1672FFF5 */ bne $s3, $s2, .L80010860 -/* 01148C 8001088C 26100004 */ addiu $s0, $s0, 4 -/* 011490 80010890 8EC20040 */ lw $v0, 0x40($s6) -/* 011494 80010894 10000020 */ b .L80010918 -/* 011498 80010898 80430057 */ lb $v1, 0x57($v0) -/* 01149C 8001089C 24010004 */ li $at, 4 -.L800108A0: -/* 0114A0 800108A0 1481000F */ bne $a0, $at, .L800108E0 -/* 0114A4 800108A4 00000000 */ nop -/* 0114A8 800108A8 1A40001A */ blez $s2, .L80010914 -/* 0114AC 800108AC 00008025 */ move $s0, $zero -.L800108B0: -/* 0114B0 800108B0 8EC90068 */ lw $t1, 0x68($s6) -/* 0114B4 800108B4 00000000 */ nop -/* 0114B8 800108B8 01305021 */ addu $t2, $t1, $s0 -/* 0114BC 800108BC 8D440000 */ lw $a0, ($t2) -/* 0114C0 800108C0 0C01ECAF */ jal func_8007B2BC -/* 0114C4 800108C4 00000000 */ nop -/* 0114C8 800108C8 26730001 */ addiu $s3, $s3, 1 -/* 0114CC 800108CC 1672FFF8 */ bne $s3, $s2, .L800108B0 -/* 0114D0 800108D0 26100004 */ addiu $s0, $s0, 4 -/* 0114D4 800108D4 8EC20040 */ lw $v0, 0x40($s6) -/* 0114D8 800108D8 1000000F */ b .L80010918 -/* 0114DC 800108DC 80430057 */ lb $v1, 0x57($v0) -.L800108E0: -/* 0114E0 800108E0 1A40000C */ blez $s2, .L80010914 -/* 0114E4 800108E4 00008025 */ move $s0, $zero -.L800108E8: -/* 0114E8 800108E8 8ECB0068 */ lw $t3, 0x68($s6) -/* 0114EC 800108EC 00000000 */ nop -/* 0114F0 800108F0 01706021 */ addu $t4, $t3, $s0 -/* 0114F4 800108F4 8D840000 */ lw $a0, ($t4) -/* 0114F8 800108F8 0C01F32C */ jal func_8007CCB0 -/* 0114FC 800108FC 00000000 */ nop -/* 011500 80010900 26730001 */ addiu $s3, $s3, 1 -/* 011504 80010904 1672FFF8 */ bne $s3, $s2, .L800108E8 -/* 011508 80010908 26100004 */ addiu $s0, $s0, 4 -/* 01150C 8001090C 8EC20040 */ lw $v0, 0x40($s6) -/* 011510 80010910 00000000 */ nop -.L80010914: -/* 011514 80010914 80430057 */ lb $v1, 0x57($v0) -.L80010918: -/* 011518 80010918 00000000 */ nop -/* 01151C 8001091C 1860000E */ blez $v1, .L80010958 -/* 011520 80010920 00000000 */ nop -/* 011524 80010924 1860000C */ blez $v1, .L80010958 -/* 011528 80010928 00009825 */ move $s3, $zero -.L8001092C: -/* 01152C 8001092C 8ECD006C */ lw $t5, 0x6c($s6) -/* 011530 80010930 00137940 */ sll $t7, $s3, 5 -/* 011534 80010934 0C02C898 */ jal func_800B2260 -/* 011538 80010938 01AF2021 */ addu $a0, $t5, $t7 -/* 01153C 8001093C 8ECE0040 */ lw $t6, 0x40($s6) -/* 011540 80010940 26730001 */ addiu $s3, $s3, 1 -/* 011544 80010944 81D80057 */ lb $t8, 0x57($t6) -/* 011548 80010948 00000000 */ nop -/* 01154C 8001094C 0278082A */ slt $at, $s3, $t8 -/* 011550 80010950 1420FFF6 */ bnez $at, .L8001092C -/* 011554 80010954 00000000 */ nop -.L80010958: -/* 011558 80010958 86C4002C */ lh $a0, 0x2c($s6) -/* 01155C 8001095C 0C003211 */ jal func_8000C844 -/* 011560 80010960 00000000 */ nop -/* 011564 80010964 0C01C450 */ jal func_80071140 -/* 011568 80010968 02C02025 */ move $a0, $s6 -.L8001096C: -/* 01156C 8001096C 8FBF0034 */ lw $ra, 0x34($sp) -/* 011570 80010970 8FB00018 */ lw $s0, 0x18($sp) -/* 011574 80010974 8FB1001C */ lw $s1, 0x1c($sp) -/* 011578 80010978 8FB20020 */ lw $s2, 0x20($sp) -/* 01157C 8001097C 8FB30024 */ lw $s3, 0x24($sp) -/* 011580 80010980 8FB40028 */ lw $s4, 0x28($sp) -/* 011584 80010984 8FB5002C */ lw $s5, 0x2c($sp) -/* 011588 80010988 8FB60030 */ lw $s6, 0x30($sp) -/* 01158C 8001098C 03E00008 */ jr $ra -/* 011590 80010990 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_80010994 -/* 011594 80010994 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 011598 80010998 AFB40028 */ sw $s4, 0x28($sp) -/* 01159C 8001099C 0080A025 */ move $s4, $a0 -/* 0115A0 800109A0 AFBF0034 */ sw $ra, 0x34($sp) -/* 0115A4 800109A4 AFB60030 */ sw $s6, 0x30($sp) -/* 0115A8 800109A8 AFB5002C */ sw $s5, 0x2c($sp) -/* 0115AC 800109AC AFB30024 */ sw $s3, 0x24($sp) -/* 0115B0 800109B0 AFB20020 */ sw $s2, 0x20($sp) -/* 0115B4 800109B4 AFB1001C */ sw $s1, 0x1c($sp) -/* 0115B8 800109B8 AFB00018 */ sw $s0, 0x18($sp) -/* 0115BC 800109BC 0C00916D */ jal func_800245B4 -/* 0115C0 800109C0 2404FFFF */ li $a0, -1 -/* 0115C4 800109C4 3C028012 */ lui $v0, %hi(D_8011ADB0) # $v0, 0x8012 -/* 0115C8 800109C8 8C42ADB0 */ lw $v0, %lo(D_8011ADB0)($v0) -/* 0115CC 800109CC 3C018012 */ lui $at, %hi(D_8011ADB8) # $at, 0x8012 -/* 0115D0 800109D0 1840000D */ blez $v0, .L80010A08 -/* 0115D4 800109D4 AC22ADB8 */ sw $v0, %lo(D_8011ADB8)($at) -/* 0115D8 800109D8 0C028064 */ jal func_800A0190 -/* 0115DC 800109DC 00000000 */ nop -/* 0115E0 800109E0 10400009 */ beqz $v0, .L80010A08 -/* 0115E4 800109E4 3C038012 */ lui $v1, %hi(D_8011ADBC) # $v1, 0x8012 -/* 0115E8 800109E8 3C048012 */ lui $a0, %hi(D_8011ADB0) # $a0, 0x8012 -/* 0115EC 800109EC 2484ADB0 */ addiu $a0, %lo(D_8011ADB0) # addiu $a0, $a0, -0x5250 -/* 0115F0 800109F0 8C8E0000 */ lw $t6, ($a0) -/* 0115F4 800109F4 2463ADBC */ addiu $v1, %lo(D_8011ADBC) # addiu $v1, $v1, -0x5244 -/* 0115F8 800109F8 01D41023 */ subu $v0, $t6, $s4 -/* 0115FC 800109FC AC820000 */ sw $v0, ($a0) -/* 011600 80010A00 10000009 */ b .L80010A28 -/* 011604 80010A04 AC600000 */ sw $zero, ($v1) -.L80010A08: -/* 011608 80010A08 3C038012 */ lui $v1, %hi(D_8011ADBC) # $v1, 0x8012 -/* 01160C 80010A0C 2463ADBC */ addiu $v1, %lo(D_8011ADBC) # addiu $v1, $v1, -0x5244 -/* 011610 80010A10 8C780000 */ lw $t8, ($v1) -/* 011614 80010A14 3C028012 */ lui $v0, %hi(D_8011ADB0) # $v0, 0x8012 -/* 011618 80010A18 0314C821 */ addu $t9, $t8, $s4 -/* 01161C 80010A1C AC790000 */ sw $t9, ($v1) -/* 011620 80010A20 8C42ADB0 */ lw $v0, %lo(D_8011ADB0)($v0) -/* 011624 80010A24 00000000 */ nop -.L80010A28: -/* 011628 80010A28 1C400003 */ bgtz $v0, .L80010A38 -/* 01162C 80010A2C 3C048012 */ lui $a0, %hi(D_8011AEF0) # $a0, 0x8012 -/* 011630 80010A30 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012 -/* 011634 80010A34 AC20ADB0 */ sw $zero, %lo(D_8011ADB0)($at) -.L80010A38: -/* 011638 80010A38 3C028012 */ lui $v0, %hi(D_8011AD21) # $v0, 0x8012 -/* 01163C 80010A3C 3C018012 */ lui $at, %hi(D_8011AD3D) # $at, 0x8012 -/* 011640 80010A40 2442AD21 */ addiu $v0, %lo(D_8011AD21) # addiu $v0, $v0, -0x52df -/* 011644 80010A44 A020AD3D */ sb $zero, %lo(D_8011AD3D)($at) -/* 011648 80010A48 80480000 */ lb $t0, ($v0) -/* 01164C 80010A4C 24090001 */ li $t1, 1 -/* 011650 80010A50 01285023 */ subu $t2, $t1, $t0 -/* 011654 80010A54 A04A0000 */ sb $t2, ($v0) -/* 011658 80010A58 804B0000 */ lb $t3, ($v0) -/* 01165C 80010A5C 3C018012 */ lui $at, 0x8012 -/* 011660 80010A60 002B0821 */ addu $at, $at, $t3 -/* 011664 80010A64 2484AEF0 */ addiu $a0, %lo(D_8011AEF0) # addiu $a0, $a0, -0x5110 -/* 011668 80010A68 A020AD22 */ sb $zero, -0x52de($at) -/* 01166C 80010A6C 8C8C0000 */ lw $t4, ($a0) -/* 011670 80010A70 00009825 */ move $s3, $zero -/* 011674 80010A74 19800021 */ blez $t4, .L80010AFC -/* 011678 80010A78 3C158012 */ lui $s5, %hi(D_8011AEE4) # $s5, 0x8012 -/* 01167C 80010A7C 26B5AEE4 */ addiu $s5, %lo(D_8011AEE4) # addiu $s5, $s5, -0x511c -/* 011680 80010A80 00001825 */ move $v1, $zero -.L80010A84: -/* 011684 80010A84 8EAD0000 */ lw $t5, ($s5) -/* 011688 80010A88 26730001 */ addiu $s3, $s3, 1 -/* 01168C 80010A8C 01A37021 */ addu $t6, $t5, $v1 -/* 011690 80010A90 8DC20000 */ lw $v0, ($t6) -/* 011694 80010A94 00000000 */ nop -/* 011698 80010A98 8C450064 */ lw $a1, 0x64($v0) -/* 01169C 80010A9C C444000C */ lwc1 $f4, 0xc($v0) -/* 0116A0 80010AA0 00000000 */ nop -/* 0116A4 80010AA4 E4A4005C */ swc1 $f4, 0x5c($a1) -/* 0116A8 80010AA8 8EAF0000 */ lw $t7, ($s5) -/* 0116AC 80010AAC 00000000 */ nop -/* 0116B0 80010AB0 01E3C021 */ addu $t8, $t7, $v1 -/* 0116B4 80010AB4 8F190000 */ lw $t9, ($t8) -/* 0116B8 80010AB8 00000000 */ nop -/* 0116BC 80010ABC C7260010 */ lwc1 $f6, 0x10($t9) -/* 0116C0 80010AC0 00000000 */ nop -/* 0116C4 80010AC4 E4A60060 */ swc1 $f6, 0x60($a1) -/* 0116C8 80010AC8 8EA90000 */ lw $t1, ($s5) -/* 0116CC 80010ACC 00000000 */ nop -/* 0116D0 80010AD0 01234021 */ addu $t0, $t1, $v1 -/* 0116D4 80010AD4 8D0A0000 */ lw $t2, ($t0) -/* 0116D8 80010AD8 24630004 */ addiu $v1, $v1, 4 -/* 0116DC 80010ADC C5480014 */ lwc1 $f8, 0x14($t2) -/* 0116E0 80010AE0 00000000 */ nop -/* 0116E4 80010AE4 E4A80064 */ swc1 $f8, 0x64($a1) -/* 0116E8 80010AE8 8C8B0000 */ lw $t3, ($a0) -/* 0116EC 80010AEC 00000000 */ nop -/* 0116F0 80010AF0 026B082A */ slt $at, $s3, $t3 -/* 0116F4 80010AF4 1420FFE3 */ bnez $at, .L80010A84 -/* 0116F8 80010AF8 00000000 */ nop -.L80010AFC: -/* 0116FC 80010AFC 3C158012 */ lui $s5, %hi(D_8011AEE4) # $s5, 0x8012 -/* 011700 80010B00 0C0050AE */ jal func_800142B8 -/* 011704 80010B04 26B5AEE4 */ addiu $s5, %lo(D_8011AEE4) # addiu $s5, $s5, -0x511c -/* 011708 80010B08 0C00556E */ jal func_800155B8 -/* 01170C 80010B0C 00000000 */ nop -/* 011710 80010B10 0C007A27 */ jal func_8001E89C -/* 011714 80010B14 00000000 */ nop -/* 011718 80010B18 3C138012 */ lui $s3, %hi(D_8011AE70) # $s3, 0x8012 -/* 01171C 80010B1C 2673AE70 */ addiu $s3, %lo(D_8011AE70) # addiu $s3, $s3, -0x5190 -/* 011720 80010B20 8E6C0000 */ lw $t4, ($s3) -/* 011724 80010B24 00008825 */ move $s1, $zero -/* 011728 80010B28 1980000F */ blez $t4, .L80010B68 -/* 01172C 80010B2C 3C108012 */ lui $s0, %hi(D_8011AE6C) # $s0, 0x8012 -/* 011730 80010B30 2610AE6C */ addiu $s0, %lo(D_8011AE6C) # addiu $s0, $s0, -0x5194 -/* 011734 80010B34 00009025 */ move $s2, $zero -.L80010B38: -/* 011738 80010B38 8E0D0000 */ lw $t5, ($s0) -/* 01173C 80010B3C 02802825 */ move $a1, $s4 -/* 011740 80010B40 01B27021 */ addu $t6, $t5, $s2 -/* 011744 80010B44 8DC40000 */ lw $a0, ($t6) -/* 011748 80010B48 0C008FD2 */ jal func_80023F48 -/* 01174C 80010B4C 00000000 */ nop -/* 011750 80010B50 8E6F0000 */ lw $t7, ($s3) -/* 011754 80010B54 26310001 */ addiu $s1, $s1, 1 -/* 011758 80010B58 022F082A */ slt $at, $s1, $t7 -/* 01175C 80010B5C 1420FFF6 */ bnez $at, .L80010B38 -/* 011760 80010B60 26520004 */ addiu $s2, $s2, 4 -/* 011764 80010B64 00008825 */ move $s1, $zero -.L80010B68: -/* 011768 80010B68 3C108012 */ lui $s0, %hi(D_8011AE6C) # $s0, 0x8012 -/* 01176C 80010B6C 2610AE6C */ addiu $s0, %lo(D_8011AE6C) # addiu $s0, $s0, -0x5194 -/* 011770 80010B70 0C0079BB */ jal func_8001E6EC -/* 011774 80010B74 24040001 */ li $a0, 1 -/* 011778 80010B78 8E780000 */ lw $t8, ($s3) -/* 01177C 80010B7C 00000000 */ nop -/* 011780 80010B80 1B00000C */ blez $t8, .L80010BB4 -/* 011784 80010B84 00009025 */ move $s2, $zero -.L80010B88: -/* 011788 80010B88 8E190000 */ lw $t9, ($s0) -/* 01178C 80010B8C 00000000 */ nop -/* 011790 80010B90 03324821 */ addu $t1, $t9, $s2 -/* 011794 80010B94 8D240000 */ lw $a0, ($t1) -/* 011798 80010B98 0C005C27 */ jal func_8001709C -/* 01179C 80010B9C 00000000 */ nop -/* 0117A0 80010BA0 8E680000 */ lw $t0, ($s3) -/* 0117A4 80010BA4 26310001 */ addiu $s1, $s1, 1 -/* 0117A8 80010BA8 0228082A */ slt $at, $s1, $t0 -/* 0117AC 80010BAC 1420FFF6 */ bnez $at, .L80010B88 -/* 0117B0 80010BB0 26520004 */ addiu $s2, $s2, 4 -.L80010BB4: -/* 0117B4 80010BB4 3C138012 */ lui $s3, %hi(D_8011AE5C) # $s3, 0x8012 -/* 0117B8 80010BB8 3C118012 */ lui $s1, %hi(D_8011AE60) # $s1, 0x8012 -/* 0117BC 80010BBC 8E73AE5C */ lw $s3, %lo(D_8011AE5C)($s3) -/* 0117C0 80010BC0 8E31AE60 */ lw $s1, %lo(D_8011AE60)($s1) -/* 0117C4 80010BC4 00000000 */ nop -/* 0117C8 80010BC8 0233082A */ slt $at, $s1, $s3 -/* 0117CC 80010BCC 1020004C */ beqz $at, .L80010D00 -/* 0117D0 80010BD0 00119080 */ sll $s2, $s1, 2 -/* 0117D4 80010BD4 00135080 */ sll $t2, $s3, 2 -/* 0117D8 80010BD8 3C168012 */ lui $s6, %hi(D_8011AE58) # $s6, 0x8012 -/* 0117DC 80010BDC 26D6AE58 */ addiu $s6, %lo(D_8011AE58) # addiu $s6, $s6, -0x51a8 -/* 0117E0 80010BE0 AFAA0038 */ sw $t2, 0x38($sp) -/* 0117E4 80010BE4 24110021 */ li $s1, 33 -.L80010BE8: -/* 0117E8 80010BE8 8ECB0000 */ lw $t3, ($s6) -/* 0117EC 80010BEC 00000000 */ nop -/* 0117F0 80010BF0 01726021 */ addu $t4, $t3, $s2 -/* 0117F4 80010BF4 8D900000 */ lw $s0, ($t4) -/* 0117F8 80010BF8 00000000 */ nop -/* 0117FC 80010BFC 860D0006 */ lh $t5, 6($s0) -/* 011800 80010C00 00000000 */ nop -/* 011804 80010C04 31AE8000 */ andi $t6, $t5, 0x8000 -/* 011808 80010C08 15C00039 */ bnez $t6, .L80010CF0 -/* 01180C 80010C0C 8FAB0038 */ lw $t3, 0x38($sp) -/* 011810 80010C10 86020048 */ lh $v0, 0x48($s0) -/* 011814 80010C14 24010005 */ li $at, 5 -/* 011818 80010C18 12220035 */ beq $s1, $v0, .L80010CF0 -/* 01181C 80010C1C 8FAB0038 */ lw $t3, 0x38($sp) -/* 011820 80010C20 10410032 */ beq $v0, $at, .L80010CEC -/* 011824 80010C24 2401000F */ li $at, 15 -/* 011828 80010C28 10410031 */ beq $v0, $at, .L80010CF0 -/* 01182C 80010C2C 8FAB0038 */ lw $t3, 0x38($sp) -/* 011830 80010C30 8E02004C */ lw $v0, 0x4c($s0) -/* 011834 80010C34 02002025 */ move $a0, $s0 -/* 011838 80010C38 10400009 */ beqz $v0, .L80010C60 -/* 01183C 80010C3C 00000000 */ nop -/* 011840 80010C40 904F0011 */ lbu $t7, 0x11($v0) -/* 011844 80010C44 24010002 */ li $at, 2 -/* 011848 80010C48 11E10007 */ beq $t7, $at, .L80010C68 -/* 01184C 80010C4C 02002025 */ move $a0, $s0 -/* 011850 80010C50 0C008FD2 */ jal func_80023F48 -/* 011854 80010C54 02802825 */ move $a1, $s4 -/* 011858 80010C58 10000004 */ b .L80010C6C -/* 01185C 80010C5C 8E060040 */ lw $a2, 0x40($s0) -.L80010C60: -/* 011860 80010C60 0C008FD2 */ jal func_80023F48 -/* 011864 80010C64 02802825 */ move $a1, $s4 -.L80010C68: -/* 011868 80010C68 8E060040 */ lw $a2, 0x40($s0) -.L80010C6C: -/* 01186C 80010C6C 00000000 */ nop -/* 011870 80010C70 80D80053 */ lb $t8, 0x53($a2) -/* 011874 80010C74 00000000 */ nop -/* 011878 80010C78 1700001D */ bnez $t8, .L80010CF0 -/* 01187C 80010C7C 8FAB0038 */ lw $t3, 0x38($sp) -/* 011880 80010C80 80C40055 */ lb $a0, 0x55($a2) -/* 011884 80010C84 00002825 */ move $a1, $zero -/* 011888 80010C88 18800012 */ blez $a0, .L80010CD4 -/* 01188C 80010C8C 00001025 */ move $v0, $zero -.L80010C90: -/* 011890 80010C90 8E190068 */ lw $t9, 0x68($s0) -/* 011894 80010C94 24A50001 */ addiu $a1, $a1, 1 -/* 011898 80010C98 03224821 */ addu $t1, $t9, $v0 -/* 01189C 80010C9C 8D230000 */ lw $v1, ($t1) -/* 0118A0 80010CA0 00000000 */ nop -/* 0118A4 80010CA4 10600009 */ beqz $v1, .L80010CCC -/* 0118A8 80010CA8 00A4082A */ slt $at, $a1, $a0 -/* 0118AC 80010CAC 8C680000 */ lw $t0, ($v1) -/* 0118B0 80010CB0 00000000 */ nop -/* 0118B4 80010CB4 A5140052 */ sh $s4, 0x52($t0) -/* 0118B8 80010CB8 8E060040 */ lw $a2, 0x40($s0) -/* 0118BC 80010CBC 00000000 */ nop -/* 0118C0 80010CC0 80C40055 */ lb $a0, 0x55($a2) -/* 0118C4 80010CC4 00000000 */ nop -/* 0118C8 80010CC8 00A4082A */ slt $at, $a1, $a0 -.L80010CCC: -/* 0118CC 80010CCC 1420FFF0 */ bnez $at, .L80010C90 -/* 0118D0 80010CD0 24420004 */ addiu $v0, $v0, 4 -.L80010CD4: -/* 0118D4 80010CD4 90CA0072 */ lbu $t2, 0x72($a2) -/* 0118D8 80010CD8 240100FF */ li $at, 255 -/* 0118DC 80010CDC 11410003 */ beq $t2, $at, .L80010CEC -/* 0118E0 80010CE0 02002025 */ move $a0, $s0 -/* 0118E4 80010CE4 0C005024 */ jal func_80014090 -/* 0118E8 80010CE8 02802825 */ move $a1, $s4 -.L80010CEC: -/* 0118EC 80010CEC 8FAB0038 */ lw $t3, 0x38($sp) -.L80010CF0: -/* 0118F0 80010CF0 26520004 */ addiu $s2, $s2, 4 -/* 0118F4 80010CF4 024B082A */ slt $at, $s2, $t3 -/* 0118F8 80010CF8 1420FFBB */ bnez $at, .L80010BE8 -/* 0118FC 80010CFC 00000000 */ nop -.L80010D00: -/* 011900 80010D00 3C0C8012 */ lui $t4, %hi(D_8011AEF0) # $t4, 0x8012 -/* 011904 80010D04 8D8CAEF0 */ lw $t4, %lo(D_8011AEF0)($t4) -/* 011908 80010D08 3C168012 */ lui $s6, %hi(D_8011AE58) # $s6, 0x8012 -/* 01190C 80010D0C 26D6AE58 */ addiu $s6, %lo(D_8011AE58) # addiu $s6, $s6, -0x51a8 -/* 011910 80010D10 1980000E */ blez $t4, .L80010D4C -/* 011914 80010D14 00008825 */ move $s1, $zero -/* 011918 80010D18 00009025 */ move $s2, $zero -.L80010D1C: -/* 01191C 80010D1C 8EAD0000 */ lw $t5, ($s5) -/* 011920 80010D20 02802825 */ move $a1, $s4 -/* 011924 80010D24 01B27021 */ addu $t6, $t5, $s2 -/* 011928 80010D28 8DC40000 */ lw $a0, ($t6) -/* 01192C 80010D2C 0C01378E */ jal func_8004DE38 -/* 011930 80010D30 00000000 */ nop -/* 011934 80010D34 3C0F8012 */ lui $t7, %hi(D_8011AEF0) # $t7, 0x8012 -/* 011938 80010D38 8DEFAEF0 */ lw $t7, %lo(D_8011AEF0)($t7) -/* 01193C 80010D3C 26310001 */ addiu $s1, $s1, 1 -/* 011940 80010D40 022F082A */ slt $at, $s1, $t7 -/* 011944 80010D44 1420FFF5 */ bnez $at, .L80010D1C -/* 011948 80010D48 26520004 */ addiu $s2, $s2, 4 -.L80010D4C: -/* 01194C 80010D4C 0C01AF66 */ jal func_8006BD98 -/* 011950 80010D50 00000000 */ nop -/* 011954 80010D54 1440001C */ bnez $v0, .L80010DC8 -/* 011958 80010D58 3C078012 */ lui $a3, %hi(D_8011AEF0) # $a3, 0x8012 -/* 01195C 80010D5C 8CE7AEF0 */ lw $a3, %lo(D_8011AEF0)($a3) -/* 011960 80010D60 00008825 */ move $s1, $zero -/* 011964 80010D64 18E00018 */ blez $a3, .L80010DC8 -/* 011968 80010D68 2412FFFF */ li $s2, -1 -/* 01196C 80010D6C 3C108012 */ lui $s0, %hi(D_8011AEE8) # $s0, 0x8012 -/* 011970 80010D70 2610AEE8 */ addiu $s0, %lo(D_8011AEE8) # addiu $s0, $s0, -0x5118 -.L80010D74: -/* 011974 80010D74 8E180000 */ lw $t8, ($s0) -/* 011978 80010D78 0011C880 */ sll $t9, $s1, 2 -/* 01197C 80010D7C 03194821 */ addu $t1, $t8, $t9 -/* 011980 80010D80 8D240000 */ lw $a0, ($t1) -/* 011984 80010D84 00000000 */ nop -/* 011988 80010D88 8C850064 */ lw $a1, 0x64($a0) -/* 01198C 80010D8C 00000000 */ nop -/* 011990 80010D90 84A80000 */ lh $t0, ($a1) -/* 011994 80010D94 00000000 */ nop -/* 011998 80010D98 12480008 */ beq $s2, $t0, .L80010DBC -/* 01199C 80010D9C 26310001 */ addiu $s1, $s1, 1 -/* 0119A0 80010DA0 0C010FB3 */ jal func_80043ECC -/* 0119A4 80010DA4 02803025 */ move $a2, $s4 -/* 0119A8 80010DA8 3C078012 */ lui $a3, %hi(D_8011AEF0) # $a3, 0x8012 -/* 0119AC 80010DAC 8CE7AEF0 */ lw $a3, %lo(D_8011AEF0)($a3) -/* 0119B0 80010DB0 00000000 */ nop -/* 0119B4 80010DB4 00E08825 */ move $s1, $a3 -/* 0119B8 80010DB8 26310001 */ addiu $s1, $s1, 1 -.L80010DBC: -/* 0119BC 80010DBC 0227082A */ slt $at, $s1, $a3 -/* 0119C0 80010DC0 1420FFEC */ bnez $at, .L80010D74 -/* 0119C4 80010DC4 00000000 */ nop -.L80010DC8: -/* 0119C8 80010DC8 0C002EB7 */ jal func_8000BADC -/* 0119CC 80010DCC 02802025 */ move $a0, $s4 -/* 0119D0 80010DD0 3C118012 */ lui $s1, %hi(D_8011AE60) # $s1, 0x8012 -/* 0119D4 80010DD4 8E31AE60 */ lw $s1, %lo(D_8011AE60)($s1) -/* 0119D8 80010DD8 00000000 */ nop -/* 0119DC 80010DDC 0233082A */ slt $at, $s1, $s3 -/* 0119E0 80010DE0 1020001D */ beqz $at, .L80010E58 -/* 0119E4 80010DE4 00119080 */ sll $s2, $s1, 2 -/* 0119E8 80010DE8 00131080 */ sll $v0, $s3, 2 -.L80010DEC: -/* 0119EC 80010DEC 8ECA0000 */ lw $t2, ($s6) -/* 0119F0 80010DF0 00000000 */ nop -/* 0119F4 80010DF4 01525821 */ addu $t3, $t2, $s2 -/* 0119F8 80010DF8 8D700000 */ lw $s0, ($t3) -/* 0119FC 80010DFC 00000000 */ nop -/* 011A00 80010E00 860C0006 */ lh $t4, 6($s0) -/* 011A04 80010E04 00000000 */ nop -/* 011A08 80010E08 318D8000 */ andi $t5, $t4, 0x8000 -/* 011A0C 80010E0C 15A00005 */ bnez $t5, .L80010E24 -/* 011A10 80010E10 00000000 */ nop -/* 011A14 80010E14 860E0048 */ lh $t6, 0x48($s0) -/* 011A18 80010E18 24010005 */ li $at, 5 -/* 011A1C 80010E1C 11C10005 */ beq $t6, $at, .L80010E34 -/* 011A20 80010E20 02002025 */ move $a0, $s0 -.L80010E24: -/* 011A24 80010E24 860F0048 */ lh $t7, 0x48($s0) -/* 011A28 80010E28 2401000F */ li $at, 15 -/* 011A2C 80010E2C 15E10006 */ bne $t7, $at, .L80010E48 -/* 011A30 80010E30 02002025 */ move $a0, $s0 -.L80010E34: -/* 011A34 80010E34 02802825 */ move $a1, $s4 -/* 011A38 80010E38 0C008FD2 */ jal func_80023F48 -/* 011A3C 80010E3C AFA20044 */ sw $v0, 0x44($sp) -/* 011A40 80010E40 8FA20044 */ lw $v0, 0x44($sp) -/* 011A44 80010E44 00000000 */ nop -.L80010E48: -/* 011A48 80010E48 26520004 */ addiu $s2, $s2, 4 -/* 011A4C 80010E4C 0242082A */ slt $at, $s2, $v0 -/* 011A50 80010E50 1420FFE6 */ bnez $at, .L80010DEC -/* 011A54 80010E54 00000000 */ nop -.L80010E58: -/* 011A58 80010E58 3C188012 */ lui $t8, %hi(D_8011AE64) # $t8, 0x8012 -/* 011A5C 80010E5C 8F18AE64 */ lw $t8, %lo(D_8011AE64)($t8) -/* 011A60 80010E60 00000000 */ nop -/* 011A64 80010E64 1B000018 */ blez $t8, .L80010EC8 -/* 011A68 80010E68 3C118012 */ lui $s1, %hi(D_8011AE60) # $s1, 0x8012 -/* 011A6C 80010E6C 8E31AE60 */ lw $s1, %lo(D_8011AE60)($s1) -/* 011A70 80010E70 00131080 */ sll $v0, $s3, 2 -/* 011A74 80010E74 0233082A */ slt $at, $s1, $s3 -/* 011A78 80010E78 10200013 */ beqz $at, .L80010EC8 -/* 011A7C 80010E7C 00119080 */ sll $s2, $s1, 2 -.L80010E80: -/* 011A80 80010E80 8ED90000 */ lw $t9, ($s6) -/* 011A84 80010E84 02802825 */ move $a1, $s4 -/* 011A88 80010E88 03324821 */ addu $t1, $t9, $s2 -/* 011A8C 80010E8C 8D300000 */ lw $s0, ($t1) -/* 011A90 80010E90 00000000 */ nop -/* 011A94 80010E94 86080006 */ lh $t0, 6($s0) -/* 011A98 80010E98 02002025 */ move $a0, $s0 -/* 011A9C 80010E9C 310A8000 */ andi $t2, $t0, 0x8000 -/* 011AA0 80010EA0 11400005 */ beqz $t2, .L80010EB8 -/* 011AA4 80010EA4 00000000 */ nop -/* 011AA8 80010EA8 0C02C8BF */ jal func_800B22FC -/* 011AAC 80010EAC AFA20044 */ sw $v0, 0x44($sp) -/* 011AB0 80010EB0 8FA20044 */ lw $v0, 0x44($sp) -/* 011AB4 80010EB4 00000000 */ nop -.L80010EB8: -/* 011AB8 80010EB8 26520004 */ addiu $s2, $s2, 4 -/* 011ABC 80010EBC 0242082A */ slt $at, $s2, $v0 -/* 011AC0 80010EC0 1420FFEF */ bnez $at, .L80010E80 -/* 011AC4 80010EC4 00000000 */ nop -.L80010EC8: -/* 011AC8 80010EC8 0C00C8E6 */ jal func_80032398 -/* 011ACC 80010ECC 02802025 */ move $a0, $s4 -/* 011AD0 80010ED0 0C00CB1B */ jal func_80032C6C -/* 011AD4 80010ED4 00000000 */ nop -/* 011AD8 80010ED8 1840001F */ blez $v0, .L80010F58 -/* 011ADC 80010EDC 3C118012 */ lui $s1, %hi(D_8011AE60) # $s1, 0x8012 -/* 011AE0 80010EE0 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 -/* 011AE4 80010EE4 8C42AE5C */ lw $v0, %lo(D_8011AE5C)($v0) -/* 011AE8 80010EE8 8E31AE60 */ lw $s1, %lo(D_8011AE60)($s1) -/* 011AEC 80010EEC 00000000 */ nop -/* 011AF0 80010EF0 0222082A */ slt $at, $s1, $v0 -/* 011AF4 80010EF4 10200018 */ beqz $at, .L80010F58 -/* 011AF8 80010EF8 00119080 */ sll $s2, $s1, 2 -.L80010EFC: -/* 011AFC 80010EFC 8ECB0000 */ lw $t3, ($s6) -/* 011B00 80010F00 00000000 */ nop -/* 011B04 80010F04 01726021 */ addu $t4, $t3, $s2 -/* 011B08 80010F08 8D900000 */ lw $s0, ($t4) -/* 011B0C 80010F0C 00000000 */ nop -/* 011B10 80010F10 860D0006 */ lh $t5, 6($s0) -/* 011B14 80010F14 00000000 */ nop -/* 011B18 80010F18 31AE8000 */ andi $t6, $t5, 0x8000 -/* 011B1C 80010F1C 15C0000A */ bnez $t6, .L80010F48 -/* 011B20 80010F20 00000000 */ nop -/* 011B24 80010F24 8E0F0054 */ lw $t7, 0x54($s0) -/* 011B28 80010F28 00000000 */ nop -/* 011B2C 80010F2C 11E00006 */ beqz $t7, .L80010F48 -/* 011B30 80010F30 00000000 */ nop -/* 011B34 80010F34 0C00CB1F */ jal func_80032C7C -/* 011B38 80010F38 02002025 */ move $a0, $s0 -/* 011B3C 80010F3C 3C028012 */ lui $v0, %hi(D_8011AE5C) # $v0, 0x8012 -/* 011B40 80010F40 8C42AE5C */ lw $v0, %lo(D_8011AE5C)($v0) -/* 011B44 80010F44 00000000 */ nop -.L80010F48: -/* 011B48 80010F48 26310001 */ addiu $s1, $s1, 1 -/* 011B4C 80010F4C 0222082A */ slt $at, $s1, $v0 -/* 011B50 80010F50 1420FFEA */ bnez $at, .L80010EFC -/* 011B54 80010F54 26520004 */ addiu $s2, $s2, 4 -.L80010F58: -/* 011B58 80010F58 0C0079BB */ jal func_8001E6EC -/* 011B5C 80010F5C 00002025 */ move $a0, $zero -/* 011B60 80010F60 3C188012 */ lui $t8, %hi(D_8011AEF7) # $t8, 0x8012 -/* 011B64 80010F64 8318AEF7 */ lb $t8, %lo(D_8011AEF7)($t8) -/* 011B68 80010F68 00000000 */ nop -/* 011B6C 80010F6C 13000003 */ beqz $t8, .L80010F7C -/* 011B70 80010F70 00000000 */ nop -/* 011B74 80010F74 0C008A52 */ jal func_80022948 -/* 011B78 80010F78 00000000 */ nop -.L80010F7C: -/* 011B7C 80010F7C 3C108012 */ lui $s0, %hi(D_8011ADAC) # $s0, 0x8012 -/* 011B80 80010F80 2610ADAC */ addiu $s0, %lo(D_8011ADAC) # addiu $s0, $s0, -0x5254 -/* 011B84 80010F84 8E190000 */ lw $t9, ($s0) -/* 011B88 80010F88 00000000 */ nop -/* 011B8C 80010F8C 17200009 */ bnez $t9, .L80010FB4 -/* 011B90 80010F90 00000000 */ nop -/* 011B94 80010F94 0C004013 */ jal func_8001004C -/* 011B98 80010F98 00000000 */ nop -/* 011B9C 80010F9C 0C005FA6 */ jal func_80017E98 -/* 011BA0 80010FA0 00000000 */ nop -/* 011BA4 80010FA4 0C006F15 */ jal func_8001BC54 -/* 011BA8 80010FA8 00000000 */ nop -/* 011BAC 80010FAC 0C007A4F */ jal func_8001E93C -/* 011BB0 80010FB0 00000000 */ nop -.L80010FB4: -/* 011BB4 80010FB4 3C078012 */ lui $a3, %hi(D_8011AEF0) # $a3, 0x8012 -/* 011BB8 80010FB8 8CE7AEF0 */ lw $a3, %lo(D_8011AEF0)($a3) -/* 011BBC 80010FBC 3C098012 */ lui $t1, %hi(D_8011AD4E) # $t1, 0x8012 -/* 011BC0 80010FC0 10E00010 */ beqz $a3, .L80011004 -/* 011BC4 80010FC4 00000000 */ nop -/* 011BC8 80010FC8 8529AD4E */ lh $t1, %lo(D_8011AD4E)($t1) -/* 011BCC 80010FCC 00000000 */ nop -/* 011BD0 80010FD0 15200007 */ bnez $t1, .L80010FF0 -/* 011BD4 80010FD4 00000000 */ nop -/* 011BD8 80010FD8 0C006602 */ jal D_80019808 -/* 011BDC 80010FDC 02802025 */ move $a0, $s4 -/* 011BE0 80010FE0 3C078012 */ lui $a3, %hi(D_8011AEF0) # $a3, 0x8012 -/* 011BE4 80010FE4 8CE7AEF0 */ lw $a3, %lo(D_8011AEF0)($a3) -/* 011BE8 80010FE8 10000006 */ b .L80011004 -/* 011BEC 80010FEC 00000000 */ nop -.L80010FF0: -/* 011BF0 80010FF0 0C006A3D */ jal func_8001A8F4 -/* 011BF4 80010FF4 02802025 */ move $a0, $s4 -/* 011BF8 80010FF8 3C078012 */ lui $a3, %hi(D_8011AEF0) # $a3, 0x8012 -/* 011BFC 80010FFC 8CE7AEF0 */ lw $a3, %lo(D_8011AEF0)($a3) -/* 011C00 80011000 00000000 */ nop -.L80011004: -/* 011C04 80011004 3C048012 */ lui $a0, %hi(D_8011AEEC) # $a0, 0x8012 -/* 011C08 80011008 8C84AEEC */ lw $a0, %lo(D_8011AEEC)($a0) -/* 011C0C 8001100C 00E02825 */ move $a1, $a3 -/* 011C10 80011010 0C00210E */ jal func_80008438 -/* 011C14 80011014 02803025 */ move $a2, $s4 -/* 011C18 80011018 44945000 */ mtc1 $s4, $f10 -/* 011C1C 8001101C 24080001 */ li $t0, 1 -/* 011C20 80011020 46805420 */ cvt.s.w $f16, $f10 -/* 011C24 80011024 AE080000 */ sw $t0, ($s0) -/* 011C28 80011028 3C018012 */ lui $at, %hi(D_8011ADA8) # $at, 0x8012 -/* 011C2C 8001102C E430ADA8 */ swc1 $f16, %lo(D_8011ADA8)($at) -/* 011C30 80011030 3C018012 */ lui $at, %hi(D_8011AD24) # $at, 0x8012 -/* 011C34 80011034 A020AD24 */ sb $zero, %lo(D_8011AD24)($at) -/* 011C38 80011038 3C018012 */ lui $at, %hi(D_8011AD53) # $at, 0x8012 -/* 011C3C 8001103C 0C0038AD */ jal func_8000E2B4 -/* 011C40 80011040 A020AD53 */ sb $zero, %lo(D_8011AD53)($at) -/* 011C44 80011044 0C0273EC */ jal func_8009CFB0 -/* 011C48 80011048 00000000 */ nop -/* 011C4C 8001104C 0C005E74 */ jal func_800179D0 -/* 011C50 80011050 00000000 */ nop -/* 011C54 80011054 3C038012 */ lui $v1, %hi(D_8011AF00) # $v1, 0x8012 -/* 011C58 80011058 2463AF00 */ addiu $v1, %lo(D_8011AF00) # addiu $v1, $v1, -0x5100 -/* 011C5C 8001105C 80620000 */ lb $v0, ($v1) -/* 011C60 80011060 24010001 */ li $at, 1 -/* 011C64 80011064 14410026 */ bne $v0, $at, .L80011100 -/* 011C68 80011068 3C0A8012 */ lui $t2, %hi(D_8011ADB0) # $t2, 0x8012 -/* 011C6C 8001106C 8D4AADB0 */ lw $t2, %lo(D_8011ADB0)($t2) -/* 011C70 80011070 24010050 */ li $at, 80 -/* 011C74 80011074 15410025 */ bne $t2, $at, .L8001110C -/* 011C78 80011078 3C0B8012 */ lui $t3, %hi(D_8011AE7A) # $t3, 0x8012 -/* 011C7C 8001107C 856BAE7A */ lh $t3, %lo(D_8011AE7A)($t3) -/* 011C80 80011080 00002825 */ move $a1, $zero -/* 011C84 80011084 15600021 */ bnez $t3, .L8001110C -/* 011C88 80011088 00009825 */ move $s3, $zero -/* 011C8C 8001108C 24100004 */ li $s0, 4 -.L80011090: -/* 011C90 80011090 02602025 */ move $a0, $s3 -/* 011C94 80011094 0C01A955 */ jal func_8006A554 -/* 011C98 80011098 AFA50054 */ sw $a1, 0x54($sp) -/* 011C9C 8001109C 8FA50054 */ lw $a1, 0x54($sp) -/* 011CA0 800110A0 26730001 */ addiu $s3, $s3, 1 -/* 011CA4 800110A4 1670FFFA */ bne $s3, $s0, .L80011090 -/* 011CA8 800110A8 00A22825 */ or $a1, $a1, $v0 -/* 011CAC 800110AC 30AC8000 */ andi $t4, $a1, 0x8000 -/* 011CB0 800110B0 11800005 */ beqz $t4, .L800110C8 -/* 011CB4 800110B4 30AD4000 */ andi $t5, $a1, 0x4000 -/* 011CB8 800110B8 0C007917 */ jal func_8001E45C -/* 011CBC 800110BC 24040064 */ li $a0, 100 -/* 011CC0 800110C0 10000013 */ b .L80011110 -/* 011CC4 800110C4 8FBF0034 */ lw $ra, 0x34($sp) -.L800110C8: -/* 011CC8 800110C8 11A00011 */ beqz $t5, .L80011110 -/* 011CCC 800110CC 8FBF0034 */ lw $ra, 0x34($sp) -/* 011CD0 800110D0 0C02658B */ jal func_8009962C -/* 011CD4 800110D4 00000000 */ nop -/* 011CD8 800110D8 1440000D */ bnez $v0, .L80011110 -/* 011CDC 800110DC 8FBF0034 */ lw $ra, 0x34($sp) -/* 011CE0 800110E0 0C0270B4 */ jal func_8009C2D0 -/* 011CE4 800110E4 00000000 */ nop -/* 011CE8 800110E8 14400009 */ bnez $v0, .L80011110 -/* 011CEC 800110EC 8FBF0034 */ lw $ra, 0x34($sp) -/* 011CF0 800110F0 0C01BC50 */ jal func_8006F140 -/* 011CF4 800110F4 24040001 */ li $a0, 1 -/* 011CF8 800110F8 10000005 */ b .L80011110 -/* 011CFC 800110FC 8FBF0034 */ lw $ra, 0x34($sp) -.L80011100: -/* 011D00 80011100 14400002 */ bnez $v0, .L8001110C -/* 011D04 80011104 240E0001 */ li $t6, 1 -/* 011D08 80011108 A06E0000 */ sb $t6, ($v1) -.L8001110C: -/* 011D0C 8001110C 8FBF0034 */ lw $ra, 0x34($sp) -.L80011110: -/* 011D10 80011110 8FB00018 */ lw $s0, 0x18($sp) -/* 011D14 80011114 8FB1001C */ lw $s1, 0x1c($sp) -/* 011D18 80011118 8FB20020 */ lw $s2, 0x20($sp) -/* 011D1C 8001111C 8FB30024 */ lw $s3, 0x24($sp) -/* 011D20 80011120 8FB40028 */ lw $s4, 0x28($sp) -/* 011D24 80011124 8FB5002C */ lw $s5, 0x2c($sp) -/* 011D28 80011128 8FB60030 */ lw $s6, 0x30($sp) -/* 011D2C 8001112C 03E00008 */ jr $ra -/* 011D30 80011130 27BD0068 */ addiu $sp, $sp, 0x68 - -glabel func_80011134 -/* 011D34 80011134 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 011D38 80011138 AFBF003C */ sw $ra, 0x3c($sp) -/* 011D3C 8001113C AFBE0038 */ sw $fp, 0x38($sp) -/* 011D40 80011140 AFB70034 */ sw $s7, 0x34($sp) -/* 011D44 80011144 AFB60030 */ sw $s6, 0x30($sp) -/* 011D48 80011148 AFB5002C */ sw $s5, 0x2c($sp) -/* 011D4C 8001114C AFB40028 */ sw $s4, 0x28($sp) -/* 011D50 80011150 AFB30024 */ sw $s3, 0x24($sp) -/* 011D54 80011154 AFB20020 */ sw $s2, 0x20($sp) -/* 011D58 80011158 AFB1001C */ sw $s1, 0x1c($sp) -/* 011D5C 8001115C AFB00018 */ sw $s0, 0x18($sp) -/* 011D60 80011160 808F003A */ lb $t7, 0x3a($a0) -/* 011D64 80011164 8C8E0068 */ lw $t6, 0x68($a0) -/* 011D68 80011168 000FC080 */ sll $t8, $t7, 2 -/* 011D6C 8001116C 01D8C821 */ addu $t9, $t6, $t8 -/* 011D70 80011170 8F220000 */ lw $v0, ($t9) -/* 011D74 80011174 00A0B025 */ move $s6, $a1 -/* 011D78 80011178 8C530000 */ lw $s3, ($v0) -/* 011D7C 8001117C 00008825 */ move $s1, $zero -/* 011D80 80011180 86750050 */ lh $s5, 0x50($s3) -/* 011D84 80011184 8E740038 */ lw $s4, 0x38($s3) -/* 011D88 80011188 1AA0002B */ blez $s5, .L80011238 -/* 011D8C 8001118C 8FBF003C */ lw $ra, 0x3c($sp) -/* 011D90 80011190 86680028 */ lh $t0, 0x28($s3) -/* 011D94 80011194 00009080 */ sll $s2, $zero, 2 -/* 011D98 80011198 19000026 */ blez $t0, .L80011234 -/* 011D9C 8001119C 02409023 */ subu $s2, $s2, $zero -/* 011DA0 800111A0 00129080 */ sll $s2, $s2, 2 -/* 011DA4 800111A4 02928021 */ addu $s0, $s4, $s2 -/* 011DA8 800111A8 241E00FF */ li $fp, 255 -/* 011DAC 800111AC 3C170001 */ lui $s7, 1 -.L800111B0: -/* 011DB0 800111B0 8E090008 */ lw $t1, 8($s0) -/* 011DB4 800111B4 00000000 */ nop -/* 011DB8 800111B8 01375024 */ and $t2, $t1, $s7 -/* 011DBC 800111BC 11400014 */ beqz $t2, .L80011210 -/* 011DC0 800111C0 00000000 */ nop -/* 011DC4 800111C4 92020000 */ lbu $v0, ($s0) -/* 011DC8 800111C8 02542821 */ addu $a1, $s2, $s4 -/* 011DCC 800111CC 13C20010 */ beq $fp, $v0, .L80011210 -/* 011DD0 800111D0 000260C0 */ sll $t4, $v0, 3 -/* 011DD4 800111D4 8E6B0000 */ lw $t3, ($s3) -/* 011DD8 800111D8 920F0007 */ lbu $t7, 7($s0) -/* 011DDC 800111DC 016C6821 */ addu $t5, $t3, $t4 -/* 011DE0 800111E0 8DA40000 */ lw $a0, ($t5) -/* 011DE4 800111E4 AFAF005C */ sw $t7, 0x5c($sp) -/* 011DE8 800111E8 000FC180 */ sll $t8, $t7, 6 -/* 011DEC 800111EC AFB8005C */ sw $t8, 0x5c($sp) -/* 011DF0 800111F0 24A50008 */ addiu $a1, $a1, 8 -/* 011DF4 800111F4 27A6005C */ addiu $a2, $sp, 0x5c -/* 011DF8 800111F8 0C01FBE0 */ jal func_8007EF80 -/* 011DFC 800111FC 02C03825 */ move $a3, $s6 -/* 011E00 80011200 8FB9005C */ lw $t9, 0x5c($sp) -/* 011E04 80011204 00000000 */ nop -/* 011E08 80011208 00194983 */ sra $t1, $t9, 6 -/* 011E0C 8001120C A2090007 */ sb $t1, 7($s0) -.L80011210: -/* 011E10 80011210 26310001 */ addiu $s1, $s1, 1 -/* 011E14 80011214 2652000C */ addiu $s2, $s2, 0xc -/* 011E18 80011218 1AA00006 */ blez $s5, .L80011234 -/* 011E1C 8001121C 2610000C */ addiu $s0, $s0, 0xc -/* 011E20 80011220 866A0028 */ lh $t2, 0x28($s3) -/* 011E24 80011224 00000000 */ nop -/* 011E28 80011228 022A082A */ slt $at, $s1, $t2 -/* 011E2C 8001122C 1420FFE0 */ bnez $at, .L800111B0 -/* 011E30 80011230 00000000 */ nop -.L80011234: -/* 011E34 80011234 8FBF003C */ lw $ra, 0x3c($sp) -.L80011238: -/* 011E38 80011238 8FB00018 */ lw $s0, 0x18($sp) -/* 011E3C 8001123C 8FB1001C */ lw $s1, 0x1c($sp) -/* 011E40 80011240 8FB20020 */ lw $s2, 0x20($sp) -/* 011E44 80011244 8FB30024 */ lw $s3, 0x24($sp) -/* 011E48 80011248 8FB40028 */ lw $s4, 0x28($sp) -/* 011E4C 8001124C 8FB5002C */ lw $s5, 0x2c($sp) -/* 011E50 80011250 8FB60030 */ lw $s6, 0x30($sp) -/* 011E54 80011254 8FB70034 */ lw $s7, 0x34($sp) -/* 011E58 80011258 8FBE0038 */ lw $fp, 0x38($sp) -/* 011E5C 8001125C 03E00008 */ jr $ra -/* 011E60 80011260 27BD0068 */ addiu $sp, $sp, 0x68 - -glabel func_80011264 -/* 011E64 80011264 848E0050 */ lh $t6, 0x50($a0) -/* 011E68 80011268 00000000 */ nop -/* 011E6C 8001126C 19C0003B */ blez $t6, .L8001135C -/* 011E70 80011270 00000000 */ nop -/* 011E74 80011274 8CA20064 */ lw $v0, 0x64($a1) -/* 011E78 80011278 240A000A */ li $t2, 10 -/* 011E7C 8001127C 90430010 */ lbu $v1, 0x10($v0) -/* 011E80 80011280 8C880038 */ lw $t0, 0x38($a0) -/* 011E84 80011284 006A001A */ div $zero, $v1, $t2 -/* 011E88 80011288 15400002 */ bnez $t2, .L80011294 -/* 011E8C 8001128C 00000000 */ nop -/* 011E90 80011290 0007000D */ break 7 -.L80011294: -/* 011E94 80011294 2401FFFF */ li $at, -1 -/* 011E98 80011298 15410004 */ bne $t2, $at, .L800112AC -/* 011E9C 8001129C 3C018000 */ lui $at, 0x8000 -/* 011EA0 800112A0 14610002 */ bne $v1, $at, .L800112AC -/* 011EA4 800112A4 00000000 */ nop -/* 011EA8 800112A8 0006000D */ break 6 -.L800112AC: -/* 011EAC 800112AC 84890028 */ lh $t1, 0x28($a0) -/* 011EB0 800112B0 00003825 */ move $a3, $zero -/* 011EB4 800112B4 3C0A0001 */ lui $t2, 1 -/* 011EB8 800112B8 240B00FF */ li $t3, 255 -/* 011EBC 800112BC 01001025 */ move $v0, $t0 -/* 011EC0 800112C0 00003012 */ mflo $a2 -/* 011EC4 800112C4 24C6FFFF */ addiu $a2, $a2, -1 -/* 011EC8 800112C8 00001810 */ mfhi $v1 -/* 011ECC 800112CC 00067880 */ sll $t7, $a2, 2 -/* 011ED0 800112D0 0003C080 */ sll $t8, $v1, 2 -/* 011ED4 800112D4 01E03025 */ move $a2, $t7 -/* 011ED8 800112D8 19200020 */ blez $t1, .L8001135C -/* 011EDC 800112DC 03001825 */ move $v1, $t8 -.L800112E0: -/* 011EE0 800112E0 8C590008 */ lw $t9, 8($v0) -/* 011EE4 800112E4 24E70001 */ addiu $a3, $a3, 1 -/* 011EE8 800112E8 032A6024 */ and $t4, $t9, $t2 -/* 011EEC 800112EC 11800019 */ beqz $t4, .L80011354 -/* 011EF0 800112F0 00E9082A */ slt $at, $a3, $t1 -/* 011EF4 800112F4 90450000 */ lbu $a1, ($v0) -/* 011EF8 800112F8 00000000 */ nop -/* 011EFC 800112FC 11650015 */ beq $t3, $a1, .L80011354 -/* 011F00 80011300 00E9082A */ slt $at, $a3, $t1 -/* 011F04 80011304 8C8D0000 */ lw $t5, ($a0) -/* 011F08 80011308 000570C0 */ sll $t6, $a1, 3 -/* 011F0C 8001130C 01AE7821 */ addu $t7, $t5, $t6 -/* 011F10 80011310 8DE80000 */ lw $t0, ($t7) -/* 011F14 80011314 00000000 */ nop -/* 011F18 80011318 95180012 */ lhu $t8, 0x12($t0) -/* 011F1C 8001131C 00000000 */ nop -/* 011F20 80011320 2B010901 */ slti $at, $t8, 0x901 -/* 011F24 80011324 14200005 */ bnez $at, .L8001133C -/* 011F28 80011328 00000000 */ nop -/* 011F2C 8001132C A0430007 */ sb $v1, 7($v0) -/* 011F30 80011330 84890028 */ lh $t1, 0x28($a0) -/* 011F34 80011334 10000007 */ b .L80011354 -/* 011F38 80011338 00E9082A */ slt $at, $a3, $t1 -.L8001133C: -/* 011F3C 8001133C 04C00005 */ bltz $a2, .L80011354 -/* 011F40 80011340 00E9082A */ slt $at, $a3, $t1 -/* 011F44 80011344 A0460007 */ sb $a2, 7($v0) -/* 011F48 80011348 84890028 */ lh $t1, 0x28($a0) -/* 011F4C 8001134C 00000000 */ nop -/* 011F50 80011350 00E9082A */ slt $at, $a3, $t1 -.L80011354: -/* 011F54 80011354 1420FFE2 */ bnez $at, .L800112E0 -/* 011F58 80011358 2442000C */ addiu $v0, $v0, 0xc -.L8001135C: -/* 011F5C 8001135C 03E00008 */ jr $ra -/* 011F60 80011360 00000000 */ nop - -/* 011F64 80011364 03E00008 */ jr $ra -/* 011F68 80011368 AFA40000 */ sw $a0, ($sp) - -/* 011F6C 8001136C 3C0E8012 */ lui $t6, %hi(D_8011ADAC) # $t6, 0x8012 -/* 011F70 80011370 8DCEADAC */ lw $t6, %lo(D_8011ADAC)($t6) -/* 011F74 80011374 24020001 */ li $v0, 1 -/* 011F78 80011378 11C00003 */ beqz $t6, .L80011388 -/* 011F7C 8001137C 00000000 */ nop -/* 011F80 80011380 03E00008 */ jr $ra -/* 011F84 80011384 00001025 */ move $v0, $zero - -.L80011388: -/* 011F88 80011388 03E00008 */ jr $ra -/* 011F8C 8001138C 00000000 */ nop - -glabel func_80011390 -/* 011F90 80011390 3C018012 */ lui $at, 0x8012 -/* 011F94 80011394 03E00008 */ jr $ra -/* 011F98 80011398 AC20ADAC */ sw $zero, -0x5254($at) - -glabel func_8001139C -/* 011F9C 8001139C 3C028012 */ lui $v0, %hi(D_8011ADB0) # $v0, 0x8012 -/* 011FA0 800113A0 8C42ADB0 */ lw $v0, %lo(D_8011ADB0)($v0) -/* 011FA4 800113A4 03E00008 */ jr $ra -/* 011FA8 800113A8 00000000 */ nop - -glabel func_800113AC -/* 011FAC 800113AC 3C028012 */ lui $v0, %hi(D_8011ADB8) # $v0, 0x8012 -/* 011FB0 800113B0 8C42ADB8 */ lw $v0, %lo(D_8011ADB8)($v0) -/* 011FB4 800113B4 03E00008 */ jr $ra -/* 011FB8 800113B8 00000000 */ nop - -/* 011FBC 800113BC 3C028012 */ lui $v0, %hi(D_8011ADBC) # $v0, 0x8012 -/* 011FC0 800113C0 8C42ADBC */ lw $v0, %lo(D_8011ADBC)($v0) -/* 011FC4 800113C4 03E00008 */ jr $ra -/* 011FC8 800113C8 00000000 */ nop - -glabel func_800113CC -/* 011FCC 800113CC 27BDFF90 */ addiu $sp, $sp, -0x70 -/* 011FD0 800113D0 AFBF004C */ sw $ra, 0x4c($sp) -/* 011FD4 800113D4 AFB70048 */ sw $s7, 0x48($sp) -/* 011FD8 800113D8 AFB60044 */ sw $s6, 0x44($sp) -/* 011FDC 800113DC AFB50040 */ sw $s5, 0x40($sp) -/* 011FE0 800113E0 AFB4003C */ sw $s4, 0x3c($sp) -/* 011FE4 800113E4 AFB30038 */ sw $s3, 0x38($sp) -/* 011FE8 800113E8 AFB20034 */ sw $s2, 0x34($sp) -/* 011FEC 800113EC AFB10030 */ sw $s1, 0x30($sp) -/* 011FF0 800113F0 AFB0002C */ sw $s0, 0x2c($sp) -/* 011FF4 800113F4 E7B70020 */ swc1 $f23, 0x20($sp) -/* 011FF8 800113F8 E7B60024 */ swc1 $f22, 0x24($sp) -/* 011FFC 800113FC E7B50018 */ swc1 $f21, 0x18($sp) -/* 012000 80011400 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 012004 80011404 8C820040 */ lw $v0, 0x40($a0) -/* 012008 80011408 00808825 */ move $s1, $a0 -/* 01200C 8001140C 904E005B */ lbu $t6, 0x5b($v0) -/* 012010 80011410 00C09825 */ move $s3, $a2 -/* 012014 80011414 00AE082A */ slt $at, $a1, $t6 -/* 012018 80011418 00E0B825 */ move $s7, $a3 -/* 01201C 8001141C 10200040 */ beqz $at, .L80011520 -/* 012020 80011420 00001825 */ move $v1, $zero -/* 012024 80011424 00457821 */ addu $t7, $v0, $a1 -/* 012028 80011428 91E4005C */ lbu $a0, 0x5c($t7) -/* 01202C 8001142C 0C0078A7 */ jal func_8001E29C -/* 012030 80011430 AFA00050 */ sw $zero, 0x50($sp) -/* 012034 80011434 80580001 */ lb $t8, 1($v0) -/* 012038 80011438 80480002 */ lb $t0, 2($v0) -/* 01203C 8001143C 331900FF */ andi $t9, $t8, 0xff -/* 012040 80011440 44992000 */ mtc1 $t9, $f4 -/* 012044 80011444 3C014100 */ li $at, 0x41000000 # 8.000000 -/* 012048 80011448 468021A0 */ cvt.s.w $f6, $f4 -/* 01204C 8001144C 44814000 */ mtc1 $at, $f8 -/* 012050 80011450 86340018 */ lh $s4, 0x18($s1) -/* 012054 80011454 80520000 */ lb $s2, ($v0) -/* 012058 80011458 44885000 */ mtc1 $t0, $f10 -/* 01205C 8001145C 8FA30050 */ lw $v1, 0x50($sp) -/* 012060 80011460 00134903 */ sra $t1, $s3, 4 -/* 012064 80011464 46083502 */ mul.s $f20, $f6, $f8 -/* 012068 80011468 00145103 */ sra $t2, $s4, 4 -/* 01206C 8001146C 0040B025 */ move $s6, $v0 -/* 012070 80011470 01209825 */ move $s3, $t1 -/* 012074 80011474 0140A025 */ move $s4, $t2 -/* 012078 80011478 00008025 */ move $s0, $zero -/* 01207C 8001147C 1A400028 */ blez $s2, .L80011520 -/* 012080 80011480 468055A0 */ cvt.s.w $f22, $f10 -/* 012084 80011484 8FB50080 */ lw $s5, 0x80($sp) -/* 012088 80011488 00000000 */ nop -/* 01208C 8001148C 02165821 */ addu $t3, $s0, $s6 -.L80011490: -/* 012090 80011490 81620003 */ lb $v0, 3($t3) -/* 012094 80011494 00000000 */ nop -/* 012098 80011498 0282082A */ slt $at, $s4, $v0 -/* 01209C 8001149C 14200002 */ bnez $at, .L800114A8 -/* 0120A0 800114A0 0262082A */ slt $at, $s3, $v0 -/* 0120A4 800114A4 14200005 */ bnez $at, .L800114BC -.L800114A8: -/* 0120A8 800114A8 0054082A */ slt $at, $v0, $s4 -/* 0120AC 800114AC 14200018 */ bnez $at, .L80011510 -/* 0120B0 800114B0 0053082A */ slt $at, $v0, $s3 -/* 0120B4 800114B4 10200016 */ beqz $at, .L80011510 -/* 0120B8 800114B8 00000000 */ nop -.L800114BC: -/* 0120BC 800114BC C62C000C */ lwc1 $f12, 0xc($s1) -/* 0120C0 800114C0 C62E0010 */ lwc1 $f14, 0x10($s1) -/* 0120C4 800114C4 8E260014 */ lw $a2, 0x14($s1) -/* 0120C8 800114C8 4407A000 */ mfc1 $a3, $f20 -/* 0120CC 800114CC 0C01A785 */ jal func_80069E14 -/* 0120D0 800114D0 E7B60010 */ swc1 $f22, 0x10($sp) -/* 0120D4 800114D4 320C0001 */ andi $t4, $s0, 1 -/* 0120D8 800114D8 11800003 */ beqz $t4, .L800114E8 -/* 0120DC 800114DC 240D0004 */ li $t5, 4 -/* 0120E0 800114E0 10000002 */ b .L800114EC -/* 0120E4 800114E4 02E01025 */ move $v0, $s7 -.L800114E8: -/* 0120E8 800114E8 02A01025 */ move $v0, $s5 -.L800114EC: -/* 0120EC 800114EC 8E25000C */ lw $a1, 0xc($s1) -/* 0120F0 800114F0 8E260010 */ lw $a2, 0x10($s1) -/* 0120F4 800114F4 8E270014 */ lw $a3, 0x14($s1) -/* 0120F8 800114F8 AFA00014 */ sw $zero, 0x14($sp) -/* 0120FC 800114FC AFAD0010 */ sw $t5, 0x10($sp) -/* 012100 80011500 0C002556 */ jal func_80009558 -/* 012104 80011504 3044FFFF */ andi $a0, $v0, 0xffff -/* 012108 80011508 26030001 */ addiu $v1, $s0, 1 -/* 01210C 8001150C 02408025 */ move $s0, $s2 -.L80011510: -/* 012110 80011510 26100001 */ addiu $s0, $s0, 1 -/* 012114 80011514 0212082A */ slt $at, $s0, $s2 -/* 012118 80011518 1420FFDD */ bnez $at, .L80011490 -/* 01211C 8001151C 02165821 */ addu $t3, $s0, $s6 -.L80011520: -/* 012120 80011520 8FBF004C */ lw $ra, 0x4c($sp) -/* 012124 80011524 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 012128 80011528 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 01212C 8001152C C7B70020 */ lwc1 $f23, 0x20($sp) -/* 012130 80011530 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 012134 80011534 8FB0002C */ lw $s0, 0x2c($sp) -/* 012138 80011538 8FB10030 */ lw $s1, 0x30($sp) -/* 01213C 8001153C 8FB20034 */ lw $s2, 0x34($sp) -/* 012140 80011540 8FB30038 */ lw $s3, 0x38($sp) -/* 012144 80011544 8FB4003C */ lw $s4, 0x3c($sp) -/* 012148 80011548 8FB50040 */ lw $s5, 0x40($sp) -/* 01214C 8001154C 8FB60044 */ lw $s6, 0x44($sp) -/* 012150 80011550 8FB70048 */ lw $s7, 0x48($sp) -/* 012154 80011554 27BD0070 */ addiu $sp, $sp, 0x70 -/* 012158 80011558 03E00008 */ jr $ra -/* 01215C 8001155C 00601025 */ move $v0, $v1 - -glabel func_80011560 -/* 012160 80011560 240E0001 */ li $t6, 1 -/* 012164 80011564 3C01800E */ lui $at, 0x800e -/* 012168 80011568 03E00008 */ jr $ra -/* 01216C 8001156C A02EC848 */ sb $t6, -0x37b8($at) - -glabel func_80011570 -/* 012170 80011570 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 012174 80011574 AFBF0014 */ sw $ra, 0x14($sp) -/* 012178 80011578 AFA40040 */ sw $a0, 0x40($sp) -/* 01217C 8001157C AFA50044 */ sw $a1, 0x44($sp) -/* 012180 80011580 AFA60048 */ sw $a2, 0x48($sp) -/* 012184 80011584 AFA7004C */ sw $a3, 0x4c($sp) -/* 012188 80011588 0C00B1F1 */ jal func_8002C7C4 -/* 01218C 8001158C AFA40040 */ sw $a0, 0x40($sp) -/* 012190 80011590 8FA70040 */ lw $a3, 0x40($sp) -/* 012194 80011594 C7A60048 */ lwc1 $f6, 0x48($sp) -/* 012198 80011598 C4EE0010 */ lwc1 $f14, 0x10($a3) -/* 01219C 8001159C C4E2000C */ lwc1 $f2, 0xc($a3) -/* 0121A0 800115A0 46067200 */ add.s $f8, $f14, $f6 -/* 0121A4 800115A4 C7A40044 */ lwc1 $f4, 0x44($sp) -/* 0121A8 800115A8 E7A8001C */ swc1 $f8, 0x1c($sp) -/* 0121AC 800115AC C7AA004C */ lwc1 $f10, 0x4c($sp) -/* 0121B0 800115B0 C4F00014 */ lwc1 $f16, 0x14($a3) -/* 0121B4 800115B4 46041480 */ add.s $f18, $f2, $f4 -/* 0121B8 800115B8 3C04800E */ lui $a0, %hi(D_800DC848) # $a0, 0x800e -/* 0121BC 800115BC 460A8100 */ add.s $f4, $f16, $f10 -/* 0121C0 800115C0 14400005 */ bnez $v0, .L800115D8 -/* 0121C4 800115C4 E7A40018 */ swc1 $f4, 0x18($sp) -/* 0121C8 800115C8 2484C848 */ addiu $a0, %lo(D_800DC848) # addiu $a0, $a0, -0x37b8 -/* 0121CC 800115CC A0800000 */ sb $zero, ($a0) -/* 0121D0 800115D0 100000DF */ b .L80011950 -/* 0121D4 800115D4 00001025 */ move $v0, $zero -.L800115D8: -/* 0121D8 800115D8 844E003E */ lh $t6, 0x3e($v0) -/* 0121DC 800115DC 3C01800E */ lui $at, %hi(D_800E553C) # $at, 0x800e -/* 0121E0 800115E0 448E3000 */ mtc1 $t6, $f6 -/* 0121E4 800115E4 C42D5538 */ lwc1 $f13, %lo(D_800E5538)($at) -/* 0121E8 800115E8 46803221 */ cvt.d.w $f8, $f6 -/* 0121EC 800115EC C42C553C */ lwc1 $f12, %lo(D_800E553C)($at) -/* 0121F0 800115F0 3C04800E */ lui $a0, %hi(D_800DC848) # $a0, 0x800e -/* 0121F4 800115F4 462C4280 */ add.d $f10, $f8, $f12 -/* 0121F8 800115F8 00001825 */ move $v1, $zero -/* 0121FC 800115FC 46205020 */ cvt.s.d $f0, $f10 -/* 012200 80011600 2484C848 */ addiu $a0, %lo(D_800DC848) # addiu $a0, $a0, -0x37b8 -/* 012204 80011604 4612003C */ c.lt.s $f0, $f18 -/* 012208 80011608 00000000 */ nop -/* 01220C 8001160C 45000002 */ bc1f .L80011618 -/* 012210 80011610 00000000 */ nop -/* 012214 80011614 24030001 */ li $v1, 1 -.L80011618: -/* 012218 80011618 844F003C */ lh $t7, 0x3c($v0) -/* 01221C 8001161C 00000000 */ nop -/* 012220 80011620 448F2000 */ mtc1 $t7, $f4 -/* 012224 80011624 00000000 */ nop -/* 012228 80011628 468021A1 */ cvt.d.w $f6, $f4 -/* 01222C 8001162C 462C3201 */ sub.d $f8, $f6, $f12 -/* 012230 80011630 46204020 */ cvt.s.d $f0, $f8 -/* 012234 80011634 4600103C */ c.lt.s $f2, $f0 -/* 012238 80011638 00000000 */ nop -/* 01223C 8001163C 45000002 */ bc1f .L80011648 -/* 012240 80011640 00000000 */ nop -/* 012244 80011644 24030001 */ li $v1, 1 -.L80011648: -/* 012248 80011648 84580042 */ lh $t8, 0x42($v0) -/* 01224C 8001164C 3C01800E */ lui $at, %hi(D_800E5544) # $at, 0x800e -/* 012250 80011650 44985000 */ mtc1 $t8, $f10 -/* 012254 80011654 C4275540 */ lwc1 $f7, %lo(D_800E5540)($at) -/* 012258 80011658 46805121 */ cvt.d.w $f4, $f10 -/* 01225C 8001165C C4265544 */ lwc1 $f6, %lo(D_800E5544)($at) -/* 012260 80011660 00000000 */ nop -/* 012264 80011664 46262200 */ add.d $f8, $f4, $f6 -/* 012268 80011668 46204020 */ cvt.s.d $f0, $f8 -/* 01226C 8001166C 460E003C */ c.lt.s $f0, $f14 -/* 012270 80011670 00000000 */ nop -/* 012274 80011674 45000002 */ bc1f .L80011680 -/* 012278 80011678 00000000 */ nop -/* 01227C 8001167C 24030001 */ li $v1, 1 -.L80011680: -/* 012280 80011680 84590040 */ lh $t9, 0x40($v0) -/* 012284 80011684 3C01800E */ lui $at, %hi(D_800E554C) # $at, 0x800e -/* 012288 80011688 44995000 */ mtc1 $t9, $f10 -/* 01228C 8001168C C4275548 */ lwc1 $f7, %lo(D_800E5548)($at) -/* 012290 80011690 46805121 */ cvt.d.w $f4, $f10 -/* 012294 80011694 C426554C */ lwc1 $f6, %lo(D_800E554C)($at) -/* 012298 80011698 00000000 */ nop -/* 01229C 8001169C 46262201 */ sub.d $f8, $f4, $f6 -/* 0122A0 800116A0 46204020 */ cvt.s.d $f0, $f8 -/* 0122A4 800116A4 4600703C */ c.lt.s $f14, $f0 -/* 0122A8 800116A8 00000000 */ nop -/* 0122AC 800116AC 45000002 */ bc1f .L800116B8 -/* 0122B0 800116B0 00000000 */ nop -/* 0122B4 800116B4 24030001 */ li $v1, 1 -.L800116B8: -/* 0122B8 800116B8 84490046 */ lh $t1, 0x46($v0) -/* 0122BC 800116BC 00000000 */ nop -/* 0122C0 800116C0 44895000 */ mtc1 $t1, $f10 -/* 0122C4 800116C4 00000000 */ nop -/* 0122C8 800116C8 46805121 */ cvt.d.w $f4, $f10 -/* 0122CC 800116CC 462C2180 */ add.d $f6, $f4, $f12 -/* 0122D0 800116D0 46203020 */ cvt.s.d $f0, $f6 -/* 0122D4 800116D4 4610003C */ c.lt.s $f0, $f16 -/* 0122D8 800116D8 00000000 */ nop -/* 0122DC 800116DC 45000002 */ bc1f .L800116E8 -/* 0122E0 800116E0 00000000 */ nop -/* 0122E4 800116E4 24030001 */ li $v1, 1 -.L800116E8: -/* 0122E8 800116E8 844A0044 */ lh $t2, 0x44($v0) -/* 0122EC 800116EC 00000000 */ nop -/* 0122F0 800116F0 448A4000 */ mtc1 $t2, $f8 -/* 0122F4 800116F4 00000000 */ nop -/* 0122F8 800116F8 468042A1 */ cvt.d.w $f10, $f8 -/* 0122FC 800116FC 462C5101 */ sub.d $f4, $f10, $f12 -/* 012300 80011700 46202020 */ cvt.s.d $f0, $f4 -/* 012304 80011704 4600803C */ c.lt.s $f16, $f0 -/* 012308 80011708 00000000 */ nop -/* 01230C 8001170C 45000002 */ bc1f .L80011718 -/* 012310 80011710 00000000 */ nop -/* 012314 80011714 24030001 */ li $v1, 1 -.L80011718: -/* 012318 80011718 808B0000 */ lb $t3, ($a0) -/* 01231C 8001171C 00000000 */ nop -/* 012320 80011720 11600002 */ beqz $t3, .L8001172C -/* 012324 80011724 00000000 */ nop -/* 012328 80011728 00001825 */ move $v1, $zero -.L8001172C: -/* 01232C 8001172C 10600005 */ beqz $v1, .L80011744 -/* 012330 80011730 A0800000 */ sb $zero, ($a0) -/* 012334 80011734 240CFFFF */ li $t4, -1 -/* 012338 80011738 A4EC002E */ sh $t4, 0x2e($a3) -/* 01233C 8001173C 10000084 */ b .L80011950 -/* 012340 80011740 24020001 */ li $v0, 1 -.L80011744: -/* 012344 80011744 E4F2000C */ swc1 $f18, 0xc($a3) -/* 012348 80011748 C7A6001C */ lwc1 $f6, 0x1c($sp) -/* 01234C 8001174C 84E4002E */ lh $a0, 0x2e($a3) -/* 012350 80011750 E4E60010 */ swc1 $f6, 0x10($a3) -/* 012354 80011754 C7A80018 */ lwc1 $f8, 0x18($sp) -/* 012358 80011758 00000000 */ nop -/* 01235C 8001175C E4E80014 */ swc1 $f8, 0x14($a3) -/* 012360 80011760 E7B20020 */ swc1 $f18, 0x20($sp) -/* 012364 80011764 0C00A8B7 */ jal func_8002A2DC -/* 012368 80011768 AFA70040 */ sw $a3, 0x40($sp) -/* 01236C 8001176C 8FA70040 */ lw $a3, 0x40($sp) -/* 012370 80011770 C7A0001C */ lwc1 $f0, 0x1c($sp) -/* 012374 80011774 C7A20018 */ lwc1 $f2, 0x18($sp) -/* 012378 80011778 C7B20020 */ lwc1 $f18, 0x20($sp) -/* 01237C 8001177C 1440002D */ bnez $v0, .L80011834 -/* 012380 80011780 00000000 */ nop -/* 012384 80011784 444DF800 */ cfc1 $t5, $31 -/* 012388 80011788 AFA70040 */ sw $a3, 0x40($sp) -/* 01238C 8001178C 35A10003 */ ori $at, $t5, 3 -/* 012390 80011790 38210002 */ xori $at, $at, 2 -/* 012394 80011794 44C1F800 */ ctc1 $at, $31 -/* 012398 80011798 00000000 */ nop -/* 01239C 8001179C 460092A4 */ cvt.w.s $f10, $f18 -/* 0123A0 800117A0 440E5000 */ mfc1 $t6, $f10 -/* 0123A4 800117A4 44CDF800 */ ctc1 $t5, $31 -/* 0123A8 800117A8 448E2000 */ mtc1 $t6, $f4 -/* 0123AC 800117AC 00000000 */ nop -/* 0123B0 800117B0 46802320 */ cvt.s.w $f12, $f4 -/* 0123B4 800117B4 444FF800 */ cfc1 $t7, $31 -/* 0123B8 800117B8 00000000 */ nop -/* 0123BC 800117BC 35E10003 */ ori $at, $t7, 3 -/* 0123C0 800117C0 38210002 */ xori $at, $at, 2 -/* 0123C4 800117C4 44C1F800 */ ctc1 $at, $31 -/* 0123C8 800117C8 00000000 */ nop -/* 0123CC 800117CC 460001A4 */ cvt.w.s $f6, $f0 -/* 0123D0 800117D0 44183000 */ mfc1 $t8, $f6 -/* 0123D4 800117D4 44CFF800 */ ctc1 $t7, $31 -/* 0123D8 800117D8 44984000 */ mtc1 $t8, $f8 -/* 0123DC 800117DC 00000000 */ nop -/* 0123E0 800117E0 468043A0 */ cvt.s.w $f14, $f8 -/* 0123E4 800117E4 4459F800 */ cfc1 $t9, $31 -/* 0123E8 800117E8 00000000 */ nop -/* 0123EC 800117EC 37210003 */ ori $at, $t9, 3 -/* 0123F0 800117F0 38210002 */ xori $at, $at, 2 -/* 0123F4 800117F4 44C1F800 */ ctc1 $at, $31 -/* 0123F8 800117F8 00000000 */ nop -/* 0123FC 800117FC 460012A4 */ cvt.w.s $f10, $f2 -/* 012400 80011800 44095000 */ mfc1 $t1, $f10 -/* 012404 80011804 44D9F800 */ ctc1 $t9, $31 -/* 012408 80011808 44892000 */ mtc1 $t1, $f4 -/* 01240C 8001180C 00000000 */ nop -/* 012410 80011810 46802120 */ cvt.s.w $f4, $f4 -/* 012414 80011814 44062000 */ mfc1 $a2, $f4 -/* 012418 80011818 0C00A7C6 */ jal func_80029F18 -/* 01241C 8001181C 00000000 */ nop -/* 012420 80011820 8FA70040 */ lw $a3, 0x40($sp) -/* 012424 80011824 00000000 */ nop -/* 012428 80011828 A4E2002E */ sh $v0, 0x2e($a3) -/* 01242C 8001182C 10000048 */ b .L80011950 -/* 012430 80011830 00001025 */ move $v0, $zero -.L80011834: -/* 012434 80011834 444AF800 */ cfc1 $t2, $31 -/* 012438 80011838 844B0006 */ lh $t3, 6($v0) -/* 01243C 8001183C 35410003 */ ori $at, $t2, 3 -/* 012440 80011840 38210002 */ xori $at, $at, 2 -/* 012444 80011844 44C1F800 */ ctc1 $at, $31 -/* 012448 80011848 00002025 */ move $a0, $zero -/* 01244C 8001184C 460091A4 */ cvt.w.s $f6, $f18 -/* 012450 80011850 44083000 */ mfc1 $t0, $f6 -/* 012454 80011854 44CAF800 */ ctc1 $t2, $31 -/* 012458 80011858 0168082A */ slt $at, $t3, $t0 -/* 01245C 8001185C 14200006 */ bnez $at, .L80011878 -/* 012460 80011860 00000000 */ nop -/* 012464 80011864 844C0000 */ lh $t4, ($v0) -/* 012468 80011868 00000000 */ nop -/* 01246C 8001186C 010C082A */ slt $at, $t0, $t4 -/* 012470 80011870 10200002 */ beqz $at, .L8001187C -/* 012474 80011874 00000000 */ nop -.L80011878: -/* 012478 80011878 24040001 */ li $a0, 1 -.L8001187C: -/* 01247C 8001187C 444DF800 */ cfc1 $t5, $31 -/* 012480 80011880 844E0008 */ lh $t6, 8($v0) -/* 012484 80011884 35A10003 */ ori $at, $t5, 3 -/* 012488 80011888 38210002 */ xori $at, $at, 2 -/* 01248C 8001188C 44C1F800 */ ctc1 $at, $31 -/* 012490 80011890 00000000 */ nop -/* 012494 80011894 46000224 */ cvt.w.s $f8, $f0 -/* 012498 80011898 44054000 */ mfc1 $a1, $f8 -/* 01249C 8001189C 44CDF800 */ ctc1 $t5, $31 -/* 0124A0 800118A0 01C5082A */ slt $at, $t6, $a1 -/* 0124A4 800118A4 14200006 */ bnez $at, .L800118C0 -/* 0124A8 800118A8 00000000 */ nop -/* 0124AC 800118AC 844F0002 */ lh $t7, 2($v0) -/* 0124B0 800118B0 00000000 */ nop -/* 0124B4 800118B4 00AF082A */ slt $at, $a1, $t7 -/* 0124B8 800118B8 10200002 */ beqz $at, .L800118C4 -/* 0124BC 800118BC 00000000 */ nop -.L800118C0: -/* 0124C0 800118C0 24040001 */ li $a0, 1 -.L800118C4: -/* 0124C4 800118C4 4458F800 */ cfc1 $t8, $31 -/* 0124C8 800118C8 8459000A */ lh $t9, 0xa($v0) -/* 0124CC 800118CC 37010003 */ ori $at, $t8, 3 -/* 0124D0 800118D0 38210002 */ xori $at, $at, 2 -/* 0124D4 800118D4 44C1F800 */ ctc1 $at, $31 -/* 0124D8 800118D8 00000000 */ nop -/* 0124DC 800118DC 460012A4 */ cvt.w.s $f10, $f2 -/* 0124E0 800118E0 44035000 */ mfc1 $v1, $f10 -/* 0124E4 800118E4 44D8F800 */ ctc1 $t8, $31 -/* 0124E8 800118E8 0323082A */ slt $at, $t9, $v1 -/* 0124EC 800118EC 14200006 */ bnez $at, .L80011908 -/* 0124F0 800118F0 00000000 */ nop -/* 0124F4 800118F4 84490004 */ lh $t1, 4($v0) -/* 0124F8 800118F8 00000000 */ nop -/* 0124FC 800118FC 0069082A */ slt $at, $v1, $t1 -/* 012500 80011900 10200002 */ beqz $at, .L8001190C -/* 012504 80011904 00000000 */ nop -.L80011908: -/* 012508 80011908 24040001 */ li $a0, 1 -.L8001190C: -/* 01250C 8001190C 10800010 */ beqz $a0, .L80011950 -/* 012510 80011910 00001025 */ move $v0, $zero -/* 012514 80011914 44834000 */ mtc1 $v1, $f8 -/* 012518 80011918 44882000 */ mtc1 $t0, $f4 -/* 01251C 8001191C 46804220 */ cvt.s.w $f8, $f8 -/* 012520 80011920 44853000 */ mtc1 $a1, $f6 -/* 012524 80011924 AFA70040 */ sw $a3, 0x40($sp) -/* 012528 80011928 44064000 */ mfc1 $a2, $f8 -/* 01252C 8001192C 46802320 */ cvt.s.w $f12, $f4 -/* 012530 80011930 0C00A7C6 */ jal func_80029F18 -/* 012534 80011934 468033A0 */ cvt.s.w $f14, $f6 -/* 012538 80011938 8FA70040 */ lw $a3, 0x40($sp) -/* 01253C 8001193C 2401FFFF */ li $at, -1 -/* 012540 80011940 10410002 */ beq $v0, $at, .L8001194C -/* 012544 80011944 00000000 */ nop -/* 012548 80011948 A4E2002E */ sh $v0, 0x2e($a3) -.L8001194C: -/* 01254C 8001194C 00001025 */ move $v0, $zero -.L80011950: -/* 012550 80011950 8FBF0014 */ lw $ra, 0x14($sp) -/* 012554 80011954 27BD0040 */ addiu $sp, $sp, 0x40 -/* 012558 80011958 03E00008 */ jr $ra -/* 01255C 8001195C 00000000 */ nop - -glabel func_80011960 -/* 012560 80011960 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 012564 80011964 AFA40028 */ sw $a0, 0x28($sp) -/* 012568 80011968 44802000 */ mtc1 $zero, $f4 -/* 01256C 8001196C AFA5002C */ sw $a1, 0x2c($sp) -/* 012570 80011970 AFA60030 */ sw $a2, 0x30($sp) -/* 012574 80011974 AFA70034 */ sw $a3, 0x34($sp) -/* 012578 80011978 8FA60028 */ lw $a2, 0x28($sp) -/* 01257C 8001197C 3C048012 */ lui $a0, %hi(D_8011AE8C) # $a0, 0x8012 -/* 012580 80011980 AFBF001C */ sw $ra, 0x1c($sp) -/* 012584 80011984 8FA70048 */ lw $a3, 0x48($sp) -/* 012588 80011988 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 -/* 01258C 8001198C 2484AE8C */ addiu $a0, %lo(D_8011AE8C) # addiu $a0, $a0, -0x5174 -/* 012590 80011990 AFA00024 */ sw $zero, 0x24($sp) -/* 012594 80011994 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 -/* 012598 80011998 0C01A521 */ jal func_80069484 -/* 01259C 8001199C E7A40010 */ swc1 $f4, 0x10($sp) -/* 0125A0 800119A0 3C048012 */ lui $a0, %hi(D_8011AE8C) # $a0, 0x8012 -/* 0125A4 800119A4 2484AE8C */ addiu $a0, %lo(D_8011AE8C) # addiu $a0, $a0, -0x5174 -/* 0125A8 800119A8 8C820000 */ lw $v0, ($a0) -/* 0125AC 800119AC 3C0FFA00 */ lui $t7, 0xfa00 -/* 0125B0 800119B0 244E0008 */ addiu $t6, $v0, 8 -/* 0125B4 800119B4 AC8E0000 */ sw $t6, ($a0) -/* 0125B8 800119B8 2418FFFF */ li $t8, -1 -/* 0125BC 800119BC AC580004 */ sw $t8, 4($v0) -/* 0125C0 800119C0 AC4F0000 */ sw $t7, ($v0) -/* 0125C4 800119C4 8C820000 */ lw $v0, ($a0) -/* 0125C8 800119C8 3C0AFB00 */ lui $t2, 0xfb00 -/* 0125CC 800119CC 24590008 */ addiu $t9, $v0, 8 -/* 0125D0 800119D0 AC990000 */ sw $t9, ($a0) -/* 0125D4 800119D4 240BFF00 */ li $t3, -256 -/* 0125D8 800119D8 AC4B0004 */ sw $t3, 4($v0) -/* 0125DC 800119DC AC4A0000 */ sw $t2, ($v0) -/* 0125E0 800119E0 8FAC003C */ lw $t4, 0x3c($sp) -/* 0125E4 800119E4 240D0001 */ li $t5, 1 -/* 0125E8 800119E8 11800003 */ beqz $t4, .L800119F8 -/* 0125EC 800119EC 8FA5003C */ lw $a1, 0x3c($sp) -/* 0125F0 800119F0 AFAD0024 */ sw $t5, 0x24($sp) -/* 0125F4 800119F4 8FA5003C */ lw $a1, 0x3c($sp) -.L800119F8: -/* 0125F8 800119F8 8FA60040 */ lw $a2, 0x40($sp) -/* 0125FC 800119FC 8FA70044 */ lw $a3, 0x44($sp) -/* 012600 80011A00 0C01ED3A */ jal func_8007B4E8 -/* 012604 80011A04 00000000 */ nop -/* 012608 80011A08 8FA90030 */ lw $t1, 0x30($sp) -/* 01260C 80011A0C 8FAF002C */ lw $t7, 0x2c($sp) -/* 012610 80011A10 3C088000 */ lui $t0, 0x8000 -/* 012614 80011A14 3C048012 */ lui $a0, %hi(D_8011AE8C) # $a0, 0x8012 -/* 012618 80011A18 2538FFFF */ addiu $t8, $t1, -1 -/* 01261C 80011A1C 01E82821 */ addu $a1, $t7, $t0 -/* 012620 80011A20 2484AE8C */ addiu $a0, %lo(D_8011AE8C) # addiu $a0, $a0, -0x5174 -/* 012624 80011A24 30AA0006 */ andi $t2, $a1, 6 -/* 012628 80011A28 0018C8C0 */ sll $t9, $t8, 3 -/* 01262C 80011A2C 8C820000 */ lw $v0, ($a0) -/* 012630 80011A30 032A5825 */ or $t3, $t9, $t2 -/* 012634 80011A34 000978C0 */ sll $t7, $t1, 3 -/* 012638 80011A38 01E9C021 */ addu $t8, $t7, $t1 -/* 01263C 80011A3C 0018C840 */ sll $t9, $t8, 1 -/* 012640 80011A40 316C00FF */ andi $t4, $t3, 0xff -/* 012644 80011A44 244E0008 */ addiu $t6, $v0, 8 -/* 012648 80011A48 AC8E0000 */ sw $t6, ($a0) -/* 01264C 80011A4C 000C6C00 */ sll $t5, $t4, 0x10 -/* 012650 80011A50 272A0008 */ addiu $t2, $t9, 8 -/* 012654 80011A54 3C010400 */ lui $at, 0x400 -/* 012658 80011A58 8FA70038 */ lw $a3, 0x38($sp) -/* 01265C 80011A5C 01A17025 */ or $t6, $t5, $at -/* 012660 80011A60 314BFFFF */ andi $t3, $t2, 0xffff -/* 012664 80011A64 01CB6025 */ or $t4, $t6, $t3 -/* 012668 80011A68 AC4C0000 */ sw $t4, ($v0) -/* 01266C 80011A6C AC450004 */ sw $a1, 4($v0) -/* 012670 80011A70 8FB90024 */ lw $t9, 0x24($sp) -/* 012674 80011A74 8C820000 */ lw $v0, ($a0) -/* 012678 80011A78 24EFFFFF */ addiu $t7, $a3, -1 -/* 01267C 80011A7C 000FC100 */ sll $t8, $t7, 4 -/* 012680 80011A80 03195025 */ or $t2, $t8, $t9 -/* 012684 80011A84 244D0008 */ addiu $t5, $v0, 8 -/* 012688 80011A88 AC8D0000 */ sw $t5, ($a0) -/* 01268C 80011A8C 314E00FF */ andi $t6, $t2, 0xff -/* 012690 80011A90 000E5C00 */ sll $t3, $t6, 0x10 -/* 012694 80011A94 3C010500 */ lui $at, 0x500 -/* 012698 80011A98 00076900 */ sll $t5, $a3, 4 -/* 01269C 80011A9C 31AFFFFF */ andi $t7, $t5, 0xffff -/* 0126A0 80011AA0 01616025 */ or $t4, $t3, $at -/* 0126A4 80011AA4 018FC025 */ or $t8, $t4, $t7 -/* 0126A8 80011AA8 AC580000 */ sw $t8, ($v0) -/* 0126AC 80011AAC 8FB90034 */ lw $t9, 0x34($sp) -/* 0126B0 80011AB0 00000000 */ nop -/* 0126B4 80011AB4 03285021 */ addu $t2, $t9, $t0 -/* 0126B8 80011AB8 0C01A690 */ jal func_80069A40 -/* 0126BC 80011ABC AC4A0004 */ sw $t2, 4($v0) -/* 0126C0 80011AC0 8FBF001C */ lw $ra, 0x1c($sp) -/* 0126C4 80011AC4 27BD0028 */ addiu $sp, $sp, 0x28 -/* 0126C8 80011AC8 03E00008 */ jr $ra -/* 0126CC 80011ACC 00000000 */ nop - -glabel func_80011AD0 -/* 0126D0 80011AD0 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 0126D4 80011AD4 AFBF002C */ sw $ra, 0x2c($sp) -/* 0126D8 80011AD8 84820048 */ lh $v0, 0x48($a0) -/* 0126DC 80011ADC 24010003 */ li $at, 3 -/* 0126E0 80011AE0 10410034 */ beq $v0, $at, .L80011BB4 -/* 0126E4 80011AE4 24060006 */ li $a2, 6 -/* 0126E8 80011AE8 2401002F */ li $at, 47 -/* 0126EC 80011AEC 10410008 */ beq $v0, $at, .L80011B10 -/* 0126F0 80011AF0 2401003D */ li $at, 61 -/* 0126F4 80011AF4 10410018 */ beq $v0, $at, .L80011B58 -/* 0126F8 80011AF8 24060006 */ li $a2, 6 -/* 0126FC 80011AFC 24010059 */ li $at, 89 -/* 012700 80011B00 1041004D */ beq $v0, $at, .L80011C38 -/* 012704 80011B04 00000000 */ nop -/* 012708 80011B08 1000005F */ b .L80011C88 -/* 01270C 80011B0C 8FBF002C */ lw $ra, 0x2c($sp) -.L80011B10: -/* 012710 80011B10 8C8E007C */ lw $t6, 0x7c($a0) -/* 012714 80011B14 24060004 */ li $a2, 4 -/* 012718 80011B18 05C0005A */ bltz $t6, .L80011C84 -/* 01271C 80011B1C 240F0002 */ li $t7, 2 -/* 012720 80011B20 8C870064 */ lw $a3, 0x64($a0) -/* 012724 80011B24 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 012728 80011B28 8CE50020 */ lw $a1, 0x20($a3) -/* 01272C 80011B2C AFAF0010 */ sw $t7, 0x10($sp) -/* 012730 80011B30 8CF80024 */ lw $t8, 0x24($a3) -/* 012734 80011B34 44812000 */ mtc1 $at, $f4 -/* 012738 80011B38 2419000B */ li $t9, 11 -/* 01273C 80011B3C AFB90018 */ sw $t9, 0x18($sp) -/* 012740 80011B40 AFA0001C */ sw $zero, 0x1c($sp) -/* 012744 80011B44 AFB80014 */ sw $t8, 0x14($sp) -/* 012748 80011B48 0C004658 */ jal func_80011960 -/* 01274C 80011B4C E7A40020 */ swc1 $f4, 0x20($sp) -/* 012750 80011B50 1000004D */ b .L80011C88 -/* 012754 80011B54 8FBF002C */ lw $ra, 0x2c($sp) -.L80011B58: -/* 012758 80011B58 8C870064 */ lw $a3, 0x64($a0) -/* 01275C 80011B5C 240B0008 */ li $t3, 8 -/* 012760 80011B60 90E800FC */ lbu $t0, 0xfc($a3) -/* 012764 80011B64 AFAB0010 */ sw $t3, 0x10($sp) -/* 012768 80011B68 00084880 */ sll $t1, $t0, 2 -/* 01276C 80011B6C 01284823 */ subu $t1, $t1, $t0 -/* 012770 80011B70 00094840 */ sll $t1, $t1, 1 -/* 012774 80011B74 8CEC00F8 */ lw $t4, 0xf8($a3) -/* 012778 80011B78 00095080 */ sll $t2, $t1, 2 -/* 01277C 80011B7C 01495021 */ addu $t2, $t2, $t1 -/* 012780 80011B80 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 012784 80011B84 44813000 */ mtc1 $at, $f6 -/* 012788 80011B88 000A5040 */ sll $t2, $t2, 1 -/* 01278C 80011B8C 240D000A */ li $t5, 10 -/* 012790 80011B90 00EA2821 */ addu $a1, $a3, $t2 -/* 012794 80011B94 24A50080 */ addiu $a1, $a1, 0x80 -/* 012798 80011B98 AFAD0018 */ sw $t5, 0x18($sp) -/* 01279C 80011B9C AFA0001C */ sw $zero, 0x1c($sp) -/* 0127A0 80011BA0 AFAC0014 */ sw $t4, 0x14($sp) -/* 0127A4 80011BA4 0C004658 */ jal func_80011960 -/* 0127A8 80011BA8 E7A60020 */ swc1 $f6, 0x20($sp) -/* 0127AC 80011BAC 10000036 */ b .L80011C88 -/* 0127B0 80011BB0 8FBF002C */ lw $ra, 0x2c($sp) -.L80011BB4: -/* 0127B4 80011BB4 8C8E003C */ lw $t6, 0x3c($a0) -/* 0127B8 80011BB8 8C870064 */ lw $a3, 0x64($a0) -/* 0127BC 80011BBC 91CF000D */ lbu $t7, 0xd($t6) -/* 0127C0 80011BC0 24090008 */ li $t1, 8 -/* 0127C4 80011BC4 448F4000 */ mtc1 $t7, $f8 -/* 0127C8 80011BC8 05E10005 */ bgez $t7, .L80011BE0 -/* 0127CC 80011BCC 46804020 */ cvt.s.w $f0, $f8 -/* 0127D0 80011BD0 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 0127D4 80011BD4 44815000 */ mtc1 $at, $f10 -/* 0127D8 80011BD8 00000000 */ nop -/* 0127DC 80011BDC 460A0000 */ add.s $f0, $f0, $f10 -.L80011BE0: -/* 0127E0 80011BE0 90F800FC */ lbu $t8, 0xfc($a3) -/* 0127E4 80011BE4 3C01800E */ lui $at, %hi(D_800E5550) # $at, 0x800e -/* 0127E8 80011BE8 0018C880 */ sll $t9, $t8, 2 -/* 0127EC 80011BEC 0338C823 */ subu $t9, $t9, $t8 -/* 0127F0 80011BF0 C4305550 */ lwc1 $f16, %lo(D_800E5550)($at) -/* 0127F4 80011BF4 0019C840 */ sll $t9, $t9, 1 -/* 0127F8 80011BF8 AFA90010 */ sw $t1, 0x10($sp) -/* 0127FC 80011BFC 8CEA00F8 */ lw $t2, 0xf8($a3) -/* 012800 80011C00 00194080 */ sll $t0, $t9, 2 -/* 012804 80011C04 46100002 */ mul.s $f0, $f0, $f16 -/* 012808 80011C08 01194021 */ addu $t0, $t0, $t9 -/* 01280C 80011C0C 00084040 */ sll $t0, $t0, 1 -/* 012810 80011C10 00E82821 */ addu $a1, $a3, $t0 -/* 012814 80011C14 240B001A */ li $t3, 26 -/* 012818 80011C18 AFAB0018 */ sw $t3, 0x18($sp) -/* 01281C 80011C1C 24A50080 */ addiu $a1, $a1, 0x80 -/* 012820 80011C20 E7A00020 */ swc1 $f0, 0x20($sp) -/* 012824 80011C24 AFA0001C */ sw $zero, 0x1c($sp) -/* 012828 80011C28 0C004658 */ jal func_80011960 -/* 01282C 80011C2C AFAA0014 */ sw $t2, 0x14($sp) -/* 012830 80011C30 10000015 */ b .L80011C88 -/* 012834 80011C34 8FBF002C */ lw $ra, 0x2c($sp) -.L80011C38: -/* 012838 80011C38 8C8C0078 */ lw $t4, 0x78($a0) -/* 01283C 80011C3C 00000000 */ nop -/* 012840 80011C40 11800011 */ beqz $t4, .L80011C88 -/* 012844 80011C44 8FBF002C */ lw $ra, 0x2c($sp) -/* 012848 80011C48 8C820064 */ lw $v0, 0x64($a0) -/* 01284C 80011C4C 00000000 */ nop -/* 012850 80011C50 904D0070 */ lbu $t5, 0x70($v0) -/* 012854 80011C54 00000000 */ nop -/* 012858 80011C58 1DA00008 */ bgtz $t5, .L80011C7C -/* 01285C 80011C5C 00000000 */ nop -/* 012860 80011C60 44809000 */ mtc1 $zero, $f18 -/* 012864 80011C64 C4440074 */ lwc1 $f4, 0x74($v0) -/* 012868 80011C68 00000000 */ nop -/* 01286C 80011C6C 4604903C */ c.lt.s $f18, $f4 -/* 012870 80011C70 00000000 */ nop -/* 012874 80011C74 45000004 */ bc1f .L80011C88 -/* 012878 80011C78 8FBF002C */ lw $ra, 0x2c($sp) -.L80011C7C: -/* 01287C 80011C7C 0C004D6E */ jal func_800135B8 -/* 012880 80011C80 00000000 */ nop -.L80011C84: -/* 012884 80011C84 8FBF002C */ lw $ra, 0x2c($sp) -.L80011C88: -/* 012888 80011C88 27BD0030 */ addiu $sp, $sp, 0x30 -/* 01288C 80011C8C 03E00008 */ jr $ra -/* 012890 80011C90 00000000 */ nop - -glabel func_80011C94 -/* 012894 80011C94 27BDFF70 */ addiu $sp, $sp, -0x90 -/* 012898 80011C98 AFBF0024 */ sw $ra, 0x24($sp) -/* 01289C 80011C9C AFB00020 */ sw $s0, 0x20($sp) -/* 0128A0 80011CA0 848E0006 */ lh $t6, 6($a0) -/* 0128A4 80011CA4 8C830054 */ lw $v1, 0x54($a0) -/* 0128A8 80011CA8 00803825 */ move $a3, $a0 -/* 0128AC 80011CAC 240600FF */ li $a2, 255 -/* 0128B0 80011CB0 00004025 */ move $t0, $zero -/* 0128B4 80011CB4 00004825 */ move $t1, $zero -/* 0128B8 80011CB8 10600011 */ beqz $v1, .L80011D00 -/* 0128BC 80011CBC 35CA0108 */ ori $t2, $t6, 0x108 -/* 0128C0 80011CC0 3C01437F */ li $at, 0x437F0000 # 255.000000 -/* 0128C4 80011CC4 44813000 */ mtc1 $at, $f6 -/* 0128C8 80011CC8 C4640000 */ lwc1 $f4, ($v1) -/* 0128CC 80011CCC 24080001 */ li $t0, 1 -/* 0128D0 80011CD0 46062202 */ mul.s $f8, $f4, $f6 -/* 0128D4 80011CD4 24090001 */ li $t1, 1 -/* 0128D8 80011CD8 4458F800 */ cfc1 $t8, $31 -/* 0128DC 80011CDC 00000000 */ nop -/* 0128E0 80011CE0 37010003 */ ori $at, $t8, 3 -/* 0128E4 80011CE4 38210002 */ xori $at, $at, 2 -/* 0128E8 80011CE8 44C1F800 */ ctc1 $at, $31 -/* 0128EC 80011CEC 00000000 */ nop -/* 0128F0 80011CF0 460042A4 */ cvt.w.s $f10, $f8 -/* 0128F4 80011CF4 44D8F800 */ ctc1 $t8, $31 -/* 0128F8 80011CF8 44065000 */ mfc1 $a2, $f10 -/* 0128FC 80011CFC 00000000 */ nop -.L80011D00: -/* 012900 80011D00 84E20048 */ lh $v0, 0x48($a3) -/* 012904 80011D04 24010016 */ li $at, 22 -/* 012908 80011D08 14410011 */ bne $v0, $at, .L80011D50 -/* 01290C 80011D0C 240B0005 */ li $t3, 5 -/* 012910 80011D10 90E30039 */ lbu $v1, 0x39($a3) -/* 012914 80011D14 00000000 */ nop -/* 012918 80011D18 28610100 */ slti $at, $v1, 0x100 -/* 01291C 80011D1C 14200005 */ bnez $at, .L80011D34 -/* 012920 80011D20 00000000 */ nop -/* 012924 80011D24 8CEC007C */ lw $t4, 0x7c($a3) -/* 012928 80011D28 84E20048 */ lh $v0, 0x48($a3) -/* 01292C 80011D2C 10000008 */ b .L80011D50 -/* 012930 80011D30 A0EC0039 */ sb $t4, 0x39($a3) -.L80011D34: -/* 012934 80011D34 8CED007C */ lw $t5, 0x7c($a3) -/* 012938 80011D38 84E20048 */ lh $v0, 0x48($a3) -/* 01293C 80011D3C 31AE00FF */ andi $t6, $t5, 0xff -/* 012940 80011D40 006E0019 */ multu $v1, $t6 -/* 012944 80011D44 00007812 */ mflo $t7 -/* 012948 80011D48 000FC203 */ sra $t8, $t7, 8 -/* 01294C 80011D4C A0F80039 */ sb $t8, 0x39($a3) -.L80011D50: -/* 012950 80011D50 90E50039 */ lbu $a1, 0x39($a3) -/* 012954 80011D54 24030077 */ li $v1, 119 -/* 012958 80011D58 28A10100 */ slti $at, $a1, 0x100 -/* 01295C 80011D5C 14200002 */ bnez $at, .L80011D68 -/* 012960 80011D60 354C0004 */ ori $t4, $t2, 4 -/* 012964 80011D64 240500FF */ li $a1, 255 -.L80011D68: -/* 012968 80011D68 14620002 */ bne $v1, $v0, .L80011D74 -/* 01296C 80011D6C 0005C843 */ sra $t9, $a1, 1 -/* 012970 80011D70 03202825 */ move $a1, $t9 -.L80011D74: -/* 012974 80011D74 28A100FF */ slti $at, $a1, 0xff -/* 012978 80011D78 10200003 */ beqz $at, .L80011D88 -/* 01297C 80011D7C 00000000 */ nop -/* 012980 80011D80 01805025 */ move $t2, $t4 -/* 012984 80011D84 24080001 */ li $t0, 1 -.L80011D88: -/* 012988 80011D88 1562001C */ bne $t3, $v0, .L80011DFC -/* 01298C 80011D8C 3C0140C0 */ li $at, 0x40C00000 # 6.000000 -/* 012990 80011D90 44818000 */ mtc1 $at, $f16 -/* 012994 80011D94 C4F20008 */ lwc1 $f18, 8($a3) -/* 012998 80011D98 3C108012 */ lui $s0, %hi(D_8011AE8C) # $s0, 0x8012 -/* 01299C 80011D9C 46128032 */ c.eq.s $f16, $f18 -/* 0129A0 80011DA0 2610AE8C */ addiu $s0, %lo(D_8011AE8C) # addiu $s0, $s0, -0x5174 -/* 0129A4 80011DA4 45000015 */ bc1f .L80011DFC -/* 0129A8 80011DA8 3C0EFA00 */ lui $t6, 0xfa00 -/* 0129AC 80011DAC 8E020000 */ lw $v0, ($s0) -/* 0129B0 80011DB0 00067880 */ sll $t7, $a2, 2 -/* 0129B4 80011DB4 244D0008 */ addiu $t5, $v0, 8 -/* 0129B8 80011DB8 AE0D0000 */ sw $t5, ($s0) -/* 0129BC 80011DBC 01E67823 */ subu $t7, $t7, $a2 -/* 0129C0 80011DC0 000FC883 */ sra $t9, $t7, 2 -/* 0129C4 80011DC4 00196600 */ sll $t4, $t9, 0x18 -/* 0129C8 80011DC8 30CD00FF */ andi $t5, $a2, 0xff -/* 0129CC 80011DCC AC4E0000 */ sw $t6, ($v0) -/* 0129D0 80011DD0 000D7400 */ sll $t6, $t5, 0x10 -/* 0129D4 80011DD4 0006C043 */ sra $t8, $a2, 1 -/* 0129D8 80011DD8 331900FF */ andi $t9, $t8, 0xff -/* 0129DC 80011DDC 018E7825 */ or $t7, $t4, $t6 -/* 0129E0 80011DE0 00196A00 */ sll $t5, $t9, 8 -/* 0129E4 80011DE4 01ED6025 */ or $t4, $t7, $t5 -/* 0129E8 80011DE8 30AE00FF */ andi $t6, $a1, 0xff -/* 0129EC 80011DEC 018EC025 */ or $t8, $t4, $t6 -/* 0129F0 80011DF0 24080001 */ li $t0, 1 -/* 0129F4 80011DF4 1000002D */ b .L80011EAC -/* 0129F8 80011DF8 AC580004 */ sw $t8, 4($v0) -.L80011DFC: -/* 0129FC 80011DFC 1462000E */ bne $v1, $v0, .L80011E38 -/* 012A00 80011E00 3C108012 */ lui $s0, %hi(D_8011AE8C) # $s0, 0x8012 -/* 012A04 80011E04 2610AE8C */ addiu $s0, %lo(D_8011AE8C) # addiu $s0, $s0, -0x5174 -/* 012A08 80011E08 8E020000 */ lw $v0, ($s0) -/* 012A0C 80011E0C 3C0196E6 */ lui $at, (0x96E6FF00 >> 16) # lui $at, 0x96e6 -/* 012A10 80011E10 3421FF00 */ ori $at, (0x96E6FF00 & 0xFFFF) # ori $at, $at, 0xff00 -/* 012A14 80011E14 30AD00FF */ andi $t5, $a1, 0xff -/* 012A18 80011E18 24590008 */ addiu $t9, $v0, 8 -/* 012A1C 80011E1C AE190000 */ sw $t9, ($s0) -/* 012A20 80011E20 01A16025 */ or $t4, $t5, $at -/* 012A24 80011E24 3C0FFA00 */ lui $t7, 0xfa00 -/* 012A28 80011E28 24080001 */ li $t0, 1 -/* 012A2C 80011E2C AC4F0000 */ sw $t7, ($v0) -/* 012A30 80011E30 1000001E */ b .L80011EAC -/* 012A34 80011E34 AC4C0004 */ sw $t4, 4($v0) -.L80011E38: -/* 012A38 80011E38 15000003 */ bnez $t0, .L80011E48 -/* 012A3C 80011E3C 28A100FF */ slti $at, $a1, 0xff -/* 012A40 80011E40 10200012 */ beqz $at, .L80011E8C -/* 012A44 80011E44 3C108012 */ lui $s0, 0x8012 -.L80011E48: -/* 012A48 80011E48 3C108012 */ lui $s0, %hi(D_8011AE8C) # $s0, 0x8012 -/* 012A4C 80011E4C 2610AE8C */ addiu $s0, %lo(D_8011AE8C) # addiu $s0, $s0, -0x5174 -/* 012A50 80011E50 8E020000 */ lw $v0, ($s0) -/* 012A54 80011E54 30C300FF */ andi $v1, $a2, 0xff -/* 012A58 80011E58 244E0008 */ addiu $t6, $v0, 8 -/* 012A5C 80011E5C AE0E0000 */ sw $t6, ($s0) -/* 012A60 80011E60 0003CE00 */ sll $t9, $v1, 0x18 -/* 012A64 80011E64 00037C00 */ sll $t7, $v1, 0x10 -/* 012A68 80011E68 3C18FA00 */ lui $t8, 0xfa00 -/* 012A6C 80011E6C 032F6825 */ or $t5, $t9, $t7 -/* 012A70 80011E70 00036200 */ sll $t4, $v1, 8 -/* 012A74 80011E74 AC580000 */ sw $t8, ($v0) -/* 012A78 80011E78 30B800FF */ andi $t8, $a1, 0xff -/* 012A7C 80011E7C 01AC7025 */ or $t6, $t5, $t4 -/* 012A80 80011E80 01D8C825 */ or $t9, $t6, $t8 -/* 012A84 80011E84 10000009 */ b .L80011EAC -/* 012A88 80011E88 AC590004 */ sw $t9, 4($v0) -.L80011E8C: -/* 012A8C 80011E8C 2610AE8C */ addiu $s0, $s0, -0x5174 -/* 012A90 80011E90 8E020000 */ lw $v0, ($s0) -/* 012A94 80011E94 3C0DFA00 */ lui $t5, 0xfa00 -/* 012A98 80011E98 244F0008 */ addiu $t7, $v0, 8 -/* 012A9C 80011E9C AE0F0000 */ sw $t7, ($s0) -/* 012AA0 80011EA0 240CFFFF */ li $t4, -1 -/* 012AA4 80011EA4 AC4C0004 */ sw $t4, 4($v0) -/* 012AA8 80011EA8 AC4D0000 */ sw $t5, ($v0) -.L80011EAC: -/* 012AAC 80011EAC 11200014 */ beqz $t1, .L80011F00 -/* 012AB0 80011EB0 00000000 */ nop -/* 012AB4 80011EB4 8E020000 */ lw $v0, ($s0) -/* 012AB8 80011EB8 3C18FB00 */ lui $t8, 0xfb00 -/* 012ABC 80011EBC 244E0008 */ addiu $t6, $v0, 8 -/* 012AC0 80011EC0 AE0E0000 */ sw $t6, ($s0) -/* 012AC4 80011EC4 AC580000 */ sw $t8, ($v0) -/* 012AC8 80011EC8 8CE30054 */ lw $v1, 0x54($a3) -/* 012ACC 80011ECC 00000000 */ nop -/* 012AD0 80011ED0 906F0004 */ lbu $t7, 4($v1) -/* 012AD4 80011ED4 906E0005 */ lbu $t6, 5($v1) -/* 012AD8 80011ED8 906C0006 */ lbu $t4, 6($v1) -/* 012ADC 80011EDC 000F6E00 */ sll $t5, $t7, 0x18 -/* 012AE0 80011EE0 000EC400 */ sll $t8, $t6, 0x10 -/* 012AE4 80011EE4 906F0007 */ lbu $t7, 7($v1) -/* 012AE8 80011EE8 01B8C825 */ or $t9, $t5, $t8 -/* 012AEC 80011EEC 000C7200 */ sll $t6, $t4, 8 -/* 012AF0 80011EF0 032E6825 */ or $t5, $t9, $t6 -/* 012AF4 80011EF4 01AF6025 */ or $t4, $t5, $t7 -/* 012AF8 80011EF8 10000015 */ b .L80011F50 -/* 012AFC 80011EFC AC4C0004 */ sw $t4, 4($v0) -.L80011F00: -/* 012B00 80011F00 84F90048 */ lh $t9, 0x48($a3) -/* 012B04 80011F04 24010044 */ li $at, 68 -/* 012B08 80011F08 1721000B */ bne $t9, $at, .L80011F38 -/* 012B0C 80011F0C 3C0CFB00 */ lui $t4, 0xfb00 -/* 012B10 80011F10 8E020000 */ lw $v0, ($s0) -/* 012B14 80011F14 3C0DFFFF */ lui $t5, (0xFFFF00FF >> 16) # lui $t5, 0xffff -/* 012B18 80011F18 244E0008 */ addiu $t6, $v0, 8 -/* 012B1C 80011F1C AE0E0000 */ sw $t6, ($s0) -/* 012B20 80011F20 35AD00FF */ ori $t5, (0xFFFF00FF & 0xFFFF) # ori $t5, $t5, 0xff -/* 012B24 80011F24 3C18FB00 */ lui $t8, 0xfb00 -/* 012B28 80011F28 24090001 */ li $t1, 1 -/* 012B2C 80011F2C AC580000 */ sw $t8, ($v0) -/* 012B30 80011F30 10000007 */ b .L80011F50 -/* 012B34 80011F34 AC4D0004 */ sw $t5, 4($v0) -.L80011F38: -/* 012B38 80011F38 8E020000 */ lw $v0, ($s0) -/* 012B3C 80011F3C 2419FF00 */ li $t9, -256 -/* 012B40 80011F40 244F0008 */ addiu $t7, $v0, 8 -/* 012B44 80011F44 AE0F0000 */ sw $t7, ($s0) -/* 012B48 80011F48 AC590004 */ sw $t9, 4($v0) -/* 012B4C 80011F4C AC4C0000 */ sw $t4, ($v0) -.L80011F50: -/* 012B50 80011F50 80F8003A */ lb $t8, 0x3a($a3) -/* 012B54 80011F54 8CEE0068 */ lw $t6, 0x68($a3) -/* 012B58 80011F58 00186880 */ sll $t5, $t8, 2 -/* 012B5C 80011F5C 01CD7821 */ addu $t7, $t6, $t5 -/* 012B60 80011F60 8DEC0000 */ lw $t4, ($t7) -/* 012B64 80011F64 24010074 */ li $at, 116 -/* 012B68 80011F68 AFAC0058 */ sw $t4, 0x58($sp) -/* 012B6C 80011F6C 84E20048 */ lh $v0, 0x48($a3) -/* 012B70 80011F70 00002025 */ move $a0, $zero -/* 012B74 80011F74 14410006 */ bne $v0, $at, .L80011F90 -/* 012B78 80011F78 00000000 */ nop -/* 012B7C 80011F7C 8CF9007C */ lw $t9, 0x7c($a3) -/* 012B80 80011F80 8CE40078 */ lw $a0, 0x78($a3) -/* 012B84 80011F84 1B200002 */ blez $t9, .L80011F90 -/* 012B88 80011F88 00000000 */ nop -/* 012B8C 80011F8C 00E02025 */ move $a0, $a3 -.L80011F90: -/* 012B90 80011F90 14800009 */ bnez $a0, .L80011FB8 -/* 012B94 80011F94 00000000 */ nop -/* 012B98 80011F98 15620028 */ bne $t3, $v0, .L8001203C -/* 012B9C 80011F9C 3C058012 */ lui $a1, 0x8012 -/* 012BA0 80011FA0 8CF80064 */ lw $t8, 0x64($a3) -/* 012BA4 80011FA4 2401000A */ li $at, 10 -/* 012BA8 80011FA8 930E0018 */ lbu $t6, 0x18($t8) -/* 012BAC 80011FAC 00000000 */ nop -/* 012BB0 80011FB0 15C10023 */ bne $t6, $at, .L80012040 -/* 012BB4 80011FB4 8FB90058 */ lw $t9, 0x58($sp) -.L80011FB8: -/* 012BB8 80011FB8 A7A00064 */ sh $zero, 0x64($sp) -/* 012BBC 80011FBC A7A00062 */ sh $zero, 0x62($sp) -/* 012BC0 80011FC0 A7A00060 */ sh $zero, 0x60($sp) -/* 012BC4 80011FC4 C4E40008 */ lwc1 $f4, 8($a3) -/* 012BC8 80011FC8 44800000 */ mtc1 $zero, $f0 -/* 012BCC 80011FCC 3C014140 */ li $at, 0x41400000 # 12.000000 -/* 012BD0 80011FD0 44813000 */ mtc1 $at, $f6 -/* 012BD4 80011FD4 E7A40068 */ swc1 $f4, 0x68($sp) -/* 012BD8 80011FD8 E7A0006C */ swc1 $f0, 0x6c($sp) -/* 012BDC 80011FDC E7A00074 */ swc1 $f0, 0x74($sp) -/* 012BE0 80011FE0 E7A60070 */ swc1 $f6, 0x70($sp) -/* 012BE4 80011FE4 84ED0018 */ lh $t5, 0x18($a3) -/* 012BE8 80011FE8 240F0020 */ li $t7, 32 -/* 012BEC 80011FEC A7AF007A */ sh $t7, 0x7a($sp) -/* 012BF0 80011FF0 14800008 */ bnez $a0, .L80012014 -/* 012BF4 80011FF4 A7AD0078 */ sh $t5, 0x78($sp) -/* 012BF8 80011FF8 8CEC0064 */ lw $t4, 0x64($a3) -/* 012BFC 80011FFC 00000000 */ nop -/* 012C00 80012000 8D840000 */ lw $a0, ($t4) -/* 012C04 80012004 00000000 */ nop -/* 012C08 80012008 14800003 */ bnez $a0, .L80012018 -/* 012C0C 8001200C 8FA50058 */ lw $a1, 0x58($sp) -/* 012C10 80012010 00E02025 */ move $a0, $a3 -.L80012014: -/* 012C14 80012014 8FA50058 */ lw $a1, 0x58($sp) -.L80012018: -/* 012C18 80012018 27A60060 */ addiu $a2, $sp, 0x60 -/* 012C1C 8001201C 24070106 */ li $a3, 262 -/* 012C20 80012020 AFA80080 */ sw $t0, 0x80($sp) -/* 012C24 80012024 0C004E2A */ jal func_800138A8 -/* 012C28 80012028 AFA9007C */ sw $t1, 0x7c($sp) -/* 012C2C 8001202C 8FA80080 */ lw $t0, 0x80($sp) -/* 012C30 80012030 8FA9007C */ lw $t1, 0x7c($sp) -/* 012C34 80012034 1000000E */ b .L80012070 -/* 012C38 80012038 00000000 */ nop -.L8001203C: -/* 012C3C 8001203C 8FB90058 */ lw $t9, 0x58($sp) -.L80012040: -/* 012C40 80012040 3C068012 */ lui $a2, %hi(D_8011AE94) # $a2, 0x8012 -/* 012C44 80012044 24C6AE94 */ addiu $a2, %lo(D_8011AE94) # addiu $a2, $a2, -0x516c -/* 012C48 80012048 02002025 */ move $a0, $s0 -/* 012C4C 8001204C 24A5AE90 */ addiu $a1, $a1, -0x5170 -/* 012C50 80012050 AFAA0014 */ sw $t2, 0x14($sp) -/* 012C54 80012054 AFA80080 */ sw $t0, 0x80($sp) -/* 012C58 80012058 AFA9007C */ sw $t1, 0x7c($sp) -/* 012C5C 8001205C 0C01A145 */ jal func_80068514 -/* 012C60 80012060 AFB90010 */ sw $t9, 0x10($sp) -/* 012C64 80012064 8FA80080 */ lw $t0, 0x80($sp) -/* 012C68 80012068 8FA9007C */ lw $t1, 0x7c($sp) -/* 012C6C 8001206C 00000000 */ nop -.L80012070: -/* 012C70 80012070 11000008 */ beqz $t0, .L80012094 -/* 012C74 80012074 00000000 */ nop -/* 012C78 80012078 8E020000 */ lw $v0, ($s0) -/* 012C7C 8001207C 3C0EFA00 */ lui $t6, 0xfa00 -/* 012C80 80012080 24580008 */ addiu $t8, $v0, 8 -/* 012C84 80012084 AE180000 */ sw $t8, ($s0) -/* 012C88 80012088 240DFFFF */ li $t5, -1 -/* 012C8C 8001208C AC4D0004 */ sw $t5, 4($v0) -/* 012C90 80012090 AC4E0000 */ sw $t6, ($v0) -.L80012094: -/* 012C94 80012094 11200009 */ beqz $t1, .L800120BC -/* 012C98 80012098 8FBF0024 */ lw $ra, 0x24($sp) -/* 012C9C 8001209C 8E020000 */ lw $v0, ($s0) -/* 012CA0 800120A0 3C0CFB00 */ lui $t4, 0xfb00 -/* 012CA4 800120A4 244F0008 */ addiu $t7, $v0, 8 -/* 012CA8 800120A8 AE0F0000 */ sw $t7, ($s0) -/* 012CAC 800120AC 2419FF00 */ li $t9, -256 -/* 012CB0 800120B0 AC590004 */ sw $t9, 4($v0) -/* 012CB4 800120B4 AC4C0000 */ sw $t4, ($v0) -/* 012CB8 800120B8 8FBF0024 */ lw $ra, 0x24($sp) -.L800120BC: -/* 012CBC 800120BC 8FB00020 */ lw $s0, 0x20($sp) -/* 012CC0 800120C0 03E00008 */ jr $ra -/* 012CC4 800120C4 27BD0090 */ addiu $sp, $sp, 0x90 - -glabel func_800120C8 -/* 012CC8 800120C8 27BDFF40 */ addiu $sp, $sp, -0xc0 -/* 012CCC 800120CC AFBF002C */ sw $ra, 0x2c($sp) -/* 012CD0 800120D0 AFB30028 */ sw $s3, 0x28($sp) -/* 012CD4 800120D4 AFB20024 */ sw $s2, 0x24($sp) -/* 012CD8 800120D8 AFB10020 */ sw $s1, 0x20($sp) -/* 012CDC 800120DC AFB0001C */ sw $s0, 0x1c($sp) -/* 012CE0 800120E0 808F003A */ lb $t7, 0x3a($a0) -/* 012CE4 800120E4 8C8E0068 */ lw $t6, 0x68($a0) -/* 012CE8 800120E8 000FC080 */ sll $t8, $t7, 2 -/* 012CEC 800120EC 01D8C821 */ addu $t9, $t6, $t8 -/* 012CF0 800120F0 8F300000 */ lw $s0, ($t9) -/* 012CF4 800120F4 00809025 */ move $s2, $a0 -/* 012CF8 800120F8 120002C6 */ beqz $s0, .L80012C14 -/* 012CFC 800120FC 240F00FF */ li $t7, 255 -/* 012D00 80012100 8E0D0000 */ lw $t5, ($s0) -/* 012D04 80012104 AFA000A8 */ sw $zero, 0xa8($sp) -/* 012D08 80012108 AFA000A4 */ sw $zero, 0xa4($sp) -/* 012D0C 8001210C AFAF00B8 */ sw $t7, 0xb8($sp) -/* 012D10 80012110 AFAD0078 */ sw $t5, 0x78($sp) -/* 012D14 80012114 8C830054 */ lw $v1, 0x54($a0) -/* 012D18 80012118 00000000 */ nop -/* 012D1C 8001211C 10600017 */ beqz $v1, .L8001217C -/* 012D20 80012120 3C01437F */ li $at, 0x437F0000 # 255.000000 -/* 012D24 80012124 44813000 */ mtc1 $at, $f6 -/* 012D28 80012128 C4640000 */ lwc1 $f4, ($v1) -/* 012D2C 8001212C 3C118012 */ lui $s1, %hi(D_8011AD30) # $s1, 0x8012 -/* 012D30 80012130 46062202 */ mul.s $f8, $f4, $f6 -/* 012D34 80012134 2631AD30 */ addiu $s1, %lo(D_8011AD30) # addiu $s1, $s1, -0x52d0 -/* 012D38 80012138 C62A0000 */ lwc1 $f10, ($s1) -/* 012D3C 8001213C 24190001 */ li $t9, 1 -/* 012D40 80012140 460A4102 */ mul.s $f4, $f8, $f10 -/* 012D44 80012144 240D0001 */ li $t5, 1 -/* 012D48 80012148 AFB900A8 */ sw $t9, 0xa8($sp) -/* 012D4C 8001214C AFAD00A4 */ sw $t5, 0xa4($sp) -/* 012D50 80012150 444EF800 */ cfc1 $t6, $31 -/* 012D54 80012154 00000000 */ nop -/* 012D58 80012158 35C10003 */ ori $at, $t6, 3 -/* 012D5C 8001215C 38210002 */ xori $at, $at, 2 -/* 012D60 80012160 44C1F800 */ ctc1 $at, $31 -/* 012D64 80012164 00000000 */ nop -/* 012D68 80012168 460021A4 */ cvt.w.s $f6, $f4 -/* 012D6C 8001216C 44183000 */ mfc1 $t8, $f6 -/* 012D70 80012170 44CEF800 */ ctc1 $t6, $31 -/* 012D74 80012174 AFB800B8 */ sw $t8, 0xb8($sp) -/* 012D78 80012178 00000000 */ nop -.L8001217C: -/* 012D7C 8001217C 864F0048 */ lh $t7, 0x48($s2) -/* 012D80 80012180 3C118012 */ lui $s1, %hi(D_8011AD30) # $s1, 0x8012 -/* 012D84 80012184 24010001 */ li $at, 1 -/* 012D88 80012188 15E10006 */ bne $t7, $at, .L800121A4 -/* 012D8C 8001218C 2631AD30 */ addiu $s1, %lo(D_8011AD30) # addiu $s1, $s1, -0x52d0 -/* 012D90 80012190 8E530064 */ lw $s3, 0x64($s2) -/* 012D94 80012194 0C004B8A */ jal func_80012E28 -/* 012D98 80012198 02402025 */ move $a0, $s2 -/* 012D9C 8001219C 10000003 */ b .L800121AC -/* 012DA0 800121A0 820E0020 */ lb $t6, 0x20($s0) -.L800121A4: -/* 012DA4 800121A4 00009825 */ move $s3, $zero -/* 012DA8 800121A8 820E0020 */ lb $t6, 0x20($s0) -.L800121AC: -/* 012DAC 800121AC 00000000 */ nop -/* 012DB0 800121B0 1DC00052 */ bgtz $t6, .L800122FC -/* 012DB4 800121B4 00000000 */ nop -/* 012DB8 800121B8 8218001F */ lb $t8, 0x1f($s0) -/* 012DBC 800121BC 24010002 */ li $at, 2 -/* 012DC0 800121C0 0018C880 */ sll $t9, $t8, 2 -/* 012DC4 800121C4 02196821 */ addu $t5, $s0, $t9 -/* 012DC8 800121C8 8DAF0004 */ lw $t7, 4($t5) -/* 012DCC 800121CC 00000000 */ nop -/* 012DD0 800121D0 AE4F0044 */ sw $t7, 0x44($s2) -/* 012DD4 800121D4 8203001E */ lb $v1, 0x1e($s0) -/* 012DD8 800121D8 00000000 */ nop -/* 012DDC 800121DC 14610005 */ bne $v1, $at, .L800121F4 -/* 012DE0 800121E0 00000000 */ nop -/* 012DE4 800121E4 0C01874C */ jal func_80061D30 -/* 012DE8 800121E8 02402025 */ move $a0, $s2 -/* 012DEC 800121EC 8203001E */ lb $v1, 0x1e($s0) -/* 012DF0 800121F0 00000000 */ nop -.L800121F4: -/* 012DF4 800121F4 10600033 */ beqz $v1, .L800122C4 -/* 012DF8 800121F8 00000000 */ nop -/* 012DFC 800121FC 8FAE0078 */ lw $t6, 0x78($sp) -/* 012E00 80012200 00000000 */ nop -/* 012E04 80012204 8DD80040 */ lw $t8, 0x40($t6) -/* 012E08 80012208 00000000 */ nop -/* 012E0C 8001220C 1300002D */ beqz $t8, .L800122C4 -/* 012E10 80012210 00000000 */ nop -/* 012E14 80012214 1260000B */ beqz $s3, .L80012244 -/* 012E18 80012218 24090001 */ li $t1, 1 -/* 012E1C 8001221C 827901D6 */ lb $t9, 0x1d6($s3) -/* 012E20 80012220 00000000 */ nop -/* 012E24 80012224 2B210005 */ slti $at, $t9, 5 -/* 012E28 80012228 10200006 */ beqz $at, .L80012244 -/* 012E2C 8001222C 00000000 */ nop -/* 012E30 80012230 866D0000 */ lh $t5, ($s3) -/* 012E34 80012234 2401FFFF */ li $at, -1 -/* 012E38 80012238 15A10002 */ bne $t5, $at, .L80012244 -/* 012E3C 8001223C 00000000 */ nop -/* 012E40 80012240 00004825 */ move $t1, $zero -.L80012244: -/* 012E44 80012244 0C019884 */ jal func_80066210 -/* 012E48 80012248 AFA900A0 */ sw $t1, 0xa0($sp) -/* 012E4C 8001224C 8FA900A0 */ lw $t1, 0xa0($sp) -/* 012E50 80012250 10400002 */ beqz $v0, .L8001225C -/* 012E54 80012254 2401003F */ li $at, 63 -/* 012E58 80012258 00004825 */ move $t1, $zero -.L8001225C: -/* 012E5C 8001225C 820F001F */ lb $t7, 0x1f($s0) -/* 012E60 80012260 864D0048 */ lh $t5, 0x48($s2) -/* 012E64 80012264 000F7080 */ sll $t6, $t7, 2 -/* 012E68 80012268 020EC021 */ addu $t8, $s0, $t6 -/* 012E6C 8001226C 8F190004 */ lw $t9, 4($t8) -/* 012E70 80012270 15A10008 */ bne $t5, $at, .L80012294 -/* 012E74 80012274 AE590044 */ sw $t9, 0x44($s2) -/* 012E78 80012278 8FA40078 */ lw $a0, 0x78($sp) -/* 012E7C 8001227C 8E270000 */ lw $a3, ($s1) -/* 012E80 80012280 02402825 */ move $a1, $s2 -/* 012E84 80012284 0C0075B9 */ jal func_8001D6E4 -/* 012E88 80012288 00003025 */ move $a2, $zero -/* 012E8C 8001228C 1000000D */ b .L800122C4 -/* 012E90 80012290 00000000 */ nop -.L80012294: -/* 012E94 80012294 11200007 */ beqz $t1, .L800122B4 -/* 012E98 80012298 02402825 */ move $a1, $s2 -/* 012E9C 8001229C 8FA40078 */ lw $a0, 0x78($sp) -/* 012EA0 800122A0 8E270000 */ lw $a3, ($s1) -/* 012EA4 800122A4 0C0075B9 */ jal func_8001D6E4 -/* 012EA8 800122A8 2406FFFF */ li $a2, -1 -/* 012EAC 800122AC 10000005 */ b .L800122C4 -/* 012EB0 800122B0 00000000 */ nop -.L800122B4: -/* 012EB4 800122B4 8FA40078 */ lw $a0, 0x78($sp) -/* 012EB8 800122B8 8E260000 */ lw $a2, ($s1) -/* 012EBC 800122BC 0C00917C */ jal func_800245F0 -/* 012EC0 800122C0 02402825 */ move $a1, $s2 -.L800122C4: -/* 012EC4 800122C4 1260000C */ beqz $s3, .L800122F8 -/* 012EC8 800122C8 24190001 */ li $t9, 1 -/* 012ECC 800122CC 866F0000 */ lh $t7, ($s3) -/* 012ED0 800122D0 2401FFFF */ li $at, -1 -/* 012ED4 800122D4 15E10008 */ bne $t7, $at, .L800122F8 -/* 012ED8 800122D8 00000000 */ nop -/* 012EDC 800122DC 826E01D6 */ lb $t6, 0x1d6($s3) -/* 012EE0 800122E0 24180002 */ li $t8, 2 -/* 012EE4 800122E4 29C10005 */ slti $at, $t6, 5 -/* 012EE8 800122E8 10200003 */ beqz $at, .L800122F8 -/* 012EEC 800122EC 00000000 */ nop -/* 012EF0 800122F0 10000002 */ b .L800122FC -/* 012EF4 800122F4 A2180020 */ sb $t8, 0x20($s0) -.L800122F8: -/* 012EF8 800122F8 A2190020 */ sb $t9, 0x20($s0) -.L800122FC: -/* 012EFC 800122FC 820D001F */ lb $t5, 0x1f($s0) -/* 012F00 80012300 86590048 */ lh $t9, 0x48($s2) -/* 012F04 80012304 000D7880 */ sll $t7, $t5, 2 -/* 012F08 80012308 020F7021 */ addu $t6, $s0, $t7 -/* 012F0C 8001230C 8DD80004 */ lw $t8, 4($t6) -/* 012F10 80012310 2401000E */ li $at, 14 -/* 012F14 80012314 17210004 */ bne $t9, $at, .L80012328 -/* 012F18 80012318 AE580044 */ sw $t8, 0x44($s2) -/* 012F1C 8001231C 8FA40078 */ lw $a0, 0x78($sp) -/* 012F20 80012320 0C004499 */ jal func_80011264 -/* 012F24 80012324 02402825 */ move $a1, $s2 -.L80012328: -/* 012F28 80012328 8FAD0078 */ lw $t5, 0x78($sp) -/* 012F2C 8001232C 00000000 */ nop -/* 012F30 80012330 85A50052 */ lh $a1, 0x52($t5) -/* 012F34 80012334 00000000 */ nop -/* 012F38 80012338 10A0000A */ beqz $a1, .L80012364 -/* 012F3C 8001233C 00000000 */ nop -/* 012F40 80012340 85AF0050 */ lh $t7, 0x50($t5) -/* 012F44 80012344 00000000 */ nop -/* 012F48 80012348 19E00006 */ blez $t7, .L80012364 -/* 012F4C 8001234C 00000000 */ nop -/* 012F50 80012350 0C00444D */ jal func_80011134 -/* 012F54 80012354 02402025 */ move $a0, $s2 -/* 012F58 80012358 8E0E0000 */ lw $t6, ($s0) -/* 012F5C 8001235C 00000000 */ nop -/* 012F60 80012360 A5C00052 */ sh $zero, 0x52($t6) -.L80012364: -/* 012F64 80012364 44804000 */ mtc1 $zero, $f8 -/* 012F68 80012368 3C118012 */ lui $s1, %hi(D_8011AE8C) # $s1, 0x8012 -/* 012F6C 8001236C 3C078012 */ lui $a3, %hi(D_8011AD28) # $a3, 0x8012 -/* 012F70 80012370 2631AE8C */ addiu $s1, %lo(D_8011AE8C) # addiu $s1, $s1, -0x5174 -/* 012F74 80012374 8CE7AD28 */ lw $a3, %lo(D_8011AD28)($a3) -/* 012F78 80012378 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 -/* 012F7C 8001237C 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 -/* 012F80 80012380 02202025 */ move $a0, $s1 -/* 012F84 80012384 02403025 */ move $a2, $s2 -/* 012F88 80012388 0C01A521 */ jal func_80069484 -/* 012F8C 8001238C E7A80010 */ swc1 $f8, 0x10($sp) -/* 012F90 80012390 12600014 */ beqz $s3, .L800123E4 -/* 012F94 80012394 AFA000B0 */ sw $zero, 0xb0($sp) -/* 012F98 80012398 0C004BCC */ jal func_80012F30 -/* 012F9C 8001239C 02402025 */ move $a0, $s2 -/* 012FA0 800123A0 8258003B */ lb $t8, 0x3b($s2) -/* 012FA4 800123A4 02202025 */ move $a0, $s1 -/* 012FA8 800123A8 13000006 */ beqz $t8, .L800123C4 -/* 012FAC 800123AC 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 -/* 012FB0 800123B0 827901D6 */ lb $t9, 0x1d6($s3) -/* 012FB4 800123B4 00000000 */ nop -/* 012FB8 800123B8 2B210005 */ slti $at, $t9, 5 -/* 012FBC 800123BC 14200008 */ bnez $at, .L800123E0 -/* 012FC0 800123C0 00000000 */ nop -.L800123C4: -/* 012FC4 800123C4 8667016A */ lh $a3, 0x16a($s3) -/* 012FC8 800123C8 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 -/* 012FCC 800123CC 0C01A5E4 */ jal func_80069790 -/* 012FD0 800123D0 02003025 */ move $a2, $s0 -/* 012FD4 800123D4 240D0001 */ li $t5, 1 -/* 012FD8 800123D8 10000002 */ b .L800123E4 -/* 012FDC 800123DC AFAD00B0 */ sw $t5, 0xb0($sp) -.L800123E0: -/* 012FE0 800123E0 A660016A */ sh $zero, 0x16a($s3) -.L800123E4: -/* 012FE4 800123E4 92480039 */ lbu $t0, 0x39($s2) -/* 012FE8 800123E8 00000000 */ nop -/* 012FEC 800123EC 29010100 */ slti $at, $t0, 0x100 -/* 012FF0 800123F0 14200002 */ bnez $at, .L800123FC -/* 012FF4 800123F4 00000000 */ nop -/* 012FF8 800123F8 240800FF */ li $t0, 255 -.L800123FC: -/* 012FFC 800123FC 864F0048 */ lh $t7, 0x48($s2) -/* 013000 80012400 24010039 */ li $at, 57 -/* 013004 80012404 15E10002 */ bne $t7, $at, .L80012410 -/* 013008 80012408 00087043 */ sra $t6, $t0, 1 -/* 01300C 8001240C 01C04025 */ move $t0, $t6 -.L80012410: -/* 013010 80012410 290100FF */ slti $at, $t0, 0xff -/* 013014 80012414 10200002 */ beqz $at, .L80012420 -/* 013018 80012418 24180001 */ li $t8, 1 -/* 01301C 8001241C AFB800A8 */ sw $t8, 0xa8($sp) -.L80012420: -/* 013020 80012420 8FB900A4 */ lw $t9, 0xa4($sp) -/* 013024 80012424 3C0DFB00 */ lui $t5, 0xfb00 -/* 013028 80012428 13200014 */ beqz $t9, .L8001247C -/* 01302C 8001242C 00000000 */ nop -/* 013030 80012430 8E220000 */ lw $v0, ($s1) -/* 013034 80012434 3C0FFB00 */ lui $t7, 0xfb00 -/* 013038 80012438 244D0008 */ addiu $t5, $v0, 8 -/* 01303C 8001243C AE2D0000 */ sw $t5, ($s1) -/* 013040 80012440 AC4F0000 */ sw $t7, ($v0) -/* 013044 80012444 8E430054 */ lw $v1, 0x54($s2) -/* 013048 80012448 00000000 */ nop -/* 01304C 8001244C 906F0005 */ lbu $t7, 5($v1) -/* 013050 80012450 90780004 */ lbu $t8, 4($v1) -/* 013054 80012454 000F7400 */ sll $t6, $t7, 0x10 -/* 013058 80012458 906F0006 */ lbu $t7, 6($v1) -/* 01305C 8001245C 0018CE00 */ sll $t9, $t8, 0x18 -/* 013060 80012460 032EC025 */ or $t8, $t9, $t6 -/* 013064 80012464 000FCA00 */ sll $t9, $t7, 8 -/* 013068 80012468 906F0007 */ lbu $t7, 7($v1) -/* 01306C 8001246C 03197025 */ or $t6, $t8, $t9 -/* 013070 80012470 01CFC025 */ or $t8, $t6, $t7 -/* 013074 80012474 10000007 */ b .L80012494 -/* 013078 80012478 AC580004 */ sw $t8, 4($v0) -.L8001247C: -/* 01307C 8001247C 8E220000 */ lw $v0, ($s1) -/* 013080 80012480 240EFF00 */ li $t6, -256 -/* 013084 80012484 24590008 */ addiu $t9, $v0, 8 -/* 013088 80012488 AE390000 */ sw $t9, ($s1) -/* 01308C 8001248C AC4E0004 */ sw $t6, 4($v0) -/* 013090 80012490 AC4D0000 */ sw $t5, ($v0) -.L80012494: -/* 013094 80012494 8E4F0040 */ lw $t7, 0x40($s2) -/* 013098 80012498 00000000 */ nop -/* 01309C 8001249C 91F80071 */ lbu $t8, 0x71($t7) -/* 0130A0 800124A0 8FAF00A8 */ lw $t7, 0xa8($sp) -/* 0130A4 800124A4 13000017 */ beqz $t8, .L80012504 -/* 0130A8 800124A8 00000000 */ nop -/* 0130AC 800124AC 8E220000 */ lw $v0, ($s1) -/* 0130B0 800124B0 3C0DFA00 */ lui $t5, 0xfa00 -/* 0130B4 800124B4 24590008 */ addiu $t9, $v0, 8 -/* 0130B8 800124B8 AE390000 */ sw $t9, ($s1) -/* 0130BC 800124BC AC4D0000 */ sw $t5, ($v0) -/* 0130C0 800124C0 8E430054 */ lw $v1, 0x54($s2) -/* 0130C4 800124C4 311900FF */ andi $t9, $t0, 0xff -/* 0130C8 800124C8 906D0019 */ lbu $t5, 0x19($v1) -/* 0130CC 800124CC 906F0018 */ lbu $t7, 0x18($v1) -/* 0130D0 800124D0 000D7400 */ sll $t6, $t5, 0x10 -/* 0130D4 800124D4 906D001A */ lbu $t5, 0x1a($v1) -/* 0130D8 800124D8 000FC600 */ sll $t8, $t7, 0x18 -/* 0130DC 800124DC 030E7825 */ or $t7, $t8, $t6 -/* 0130E0 800124E0 000DC200 */ sll $t8, $t5, 8 -/* 0130E4 800124E4 01F87025 */ or $t6, $t7, $t8 -/* 0130E8 800124E8 01D96825 */ or $t5, $t6, $t9 -/* 0130EC 800124EC AC4D0004 */ sw $t5, 4($v0) -/* 0130F0 800124F0 0C01ED0F */ jal func_8007B43C -/* 0130F4 800124F4 AFA800B4 */ sw $t0, 0xb4($sp) -/* 0130F8 800124F8 8FA800B4 */ lw $t0, 0xb4($sp) -/* 0130FC 800124FC 1000001B */ b .L8001256C -/* 013100 80012500 290100FF */ slti $at, $t0, 0xff -.L80012504: -/* 013104 80012504 11E00012 */ beqz $t7, .L80012550 -/* 013108 80012508 3C0EFA00 */ lui $t6, 0xfa00 -/* 01310C 8001250C 8E220000 */ lw $v0, ($s1) -/* 013110 80012510 3C0EFA00 */ lui $t6, 0xfa00 -/* 013114 80012514 24580008 */ addiu $t8, $v0, 8 -/* 013118 80012518 AE380000 */ sw $t8, ($s1) -/* 01311C 8001251C AC4E0000 */ sw $t6, ($v0) -/* 013120 80012520 8FA300B8 */ lw $v1, 0xb8($sp) -/* 013124 80012524 00000000 */ nop -/* 013128 80012528 307900FF */ andi $t9, $v1, 0xff -/* 01312C 8001252C 00196E00 */ sll $t5, $t9, 0x18 -/* 013130 80012530 00197C00 */ sll $t7, $t9, 0x10 -/* 013134 80012534 01AFC025 */ or $t8, $t5, $t7 -/* 013138 80012538 00197200 */ sll $t6, $t9, 8 -/* 01313C 8001253C 030EC825 */ or $t9, $t8, $t6 -/* 013140 80012540 310D00FF */ andi $t5, $t0, 0xff -/* 013144 80012544 032D7825 */ or $t7, $t9, $t5 -/* 013148 80012548 10000007 */ b .L80012568 -/* 01314C 8001254C AC4F0004 */ sw $t7, 4($v0) -.L80012550: -/* 013150 80012550 8E220000 */ lw $v0, ($s1) -/* 013154 80012554 2419FFFF */ li $t9, -1 -/* 013158 80012558 24580008 */ addiu $t8, $v0, 8 -/* 01315C 8001255C AE380000 */ sw $t8, ($s1) -/* 013160 80012560 AC590004 */ sw $t9, 4($v0) -/* 013164 80012564 AC4E0000 */ sw $t6, ($v0) -.L80012568: -/* 013168 80012568 290100FF */ slti $at, $t0, 0xff -.L8001256C: -/* 01316C 8001256C 1020000B */ beqz $at, .L8001259C -/* 013170 80012570 02402825 */ move $a1, $s2 -/* 013174 80012574 8FAD00B0 */ lw $t5, 0xb0($sp) -/* 013178 80012578 8FA40078 */ lw $a0, 0x78($sp) -/* 01317C 8001257C 02402825 */ move $a1, $s2 -/* 013180 80012580 00003025 */ move $a2, $zero -/* 013184 80012584 24070004 */ li $a3, 4 -/* 013188 80012588 AFA800B4 */ sw $t0, 0xb4($sp) -/* 01318C 8001258C 0C0050EA */ jal func_800143A8 -/* 013190 80012590 AFAD0010 */ sw $t5, 0x10($sp) -/* 013194 80012594 10000009 */ b .L800125BC -/* 013198 80012598 AFA2009C */ sw $v0, 0x9c($sp) -.L8001259C: -/* 01319C 8001259C 8FAF00B0 */ lw $t7, 0xb0($sp) -/* 0131A0 800125A0 8FA40078 */ lw $a0, 0x78($sp) -/* 0131A4 800125A4 00003025 */ move $a2, $zero -/* 0131A8 800125A8 00003825 */ move $a3, $zero -/* 0131AC 800125AC AFA800B4 */ sw $t0, 0xb4($sp) -/* 0131B0 800125B0 0C0050EA */ jal func_800143A8 -/* 0131B4 800125B4 AFAF0010 */ sw $t7, 0x10($sp) -/* 0131B8 800125B8 AFA2009C */ sw $v0, 0x9c($sp) -.L800125BC: -/* 0131BC 800125BC 8E580040 */ lw $t8, 0x40($s2) -/* 0131C0 800125C0 8FB900A8 */ lw $t9, 0xa8($sp) -/* 0131C4 800125C4 930E0071 */ lbu $t6, 0x71($t8) -/* 0131C8 800125C8 00000000 */ nop -/* 0131CC 800125CC 11C0001D */ beqz $t6, .L80012644 -/* 0131D0 800125D0 00000000 */ nop -/* 0131D4 800125D4 13200013 */ beqz $t9, .L80012624 -/* 0131D8 800125D8 3C0EFA00 */ lui $t6, 0xfa00 -/* 0131DC 800125DC 8E220000 */ lw $v0, ($s1) -/* 0131E0 800125E0 3C0FFA00 */ lui $t7, 0xfa00 -/* 0131E4 800125E4 244D0008 */ addiu $t5, $v0, 8 -/* 0131E8 800125E8 AE2D0000 */ sw $t5, ($s1) -/* 0131EC 800125EC AC4F0000 */ sw $t7, ($v0) -/* 0131F0 800125F0 8FA300B8 */ lw $v1, 0xb8($sp) -/* 0131F4 800125F4 00000000 */ nop -/* 0131F8 800125F8 307800FF */ andi $t8, $v1, 0xff -/* 0131FC 800125FC 00187600 */ sll $t6, $t8, 0x18 -/* 013200 80012600 0018CC00 */ sll $t9, $t8, 0x10 -/* 013204 80012604 01D96825 */ or $t5, $t6, $t9 -/* 013208 80012608 8FAE00B4 */ lw $t6, 0xb4($sp) -/* 01320C 8001260C 00187A00 */ sll $t7, $t8, 8 -/* 013210 80012610 01AFC025 */ or $t8, $t5, $t7 -/* 013214 80012614 31D900FF */ andi $t9, $t6, 0xff -/* 013218 80012618 03196825 */ or $t5, $t8, $t9 -/* 01321C 8001261C 10000007 */ b .L8001263C -/* 013220 80012620 AC4D0004 */ sw $t5, 4($v0) -.L80012624: -/* 013224 80012624 8E220000 */ lw $v0, ($s1) -/* 013228 80012628 2418FFFF */ li $t8, -1 -/* 01322C 8001262C 244F0008 */ addiu $t7, $v0, 8 -/* 013230 80012630 AE2F0000 */ sw $t7, ($s1) -/* 013234 80012634 AC580004 */ sw $t8, 4($v0) -/* 013238 80012638 AC4E0000 */ sw $t6, ($v0) -.L8001263C: -/* 01323C 8001263C 0C01ED15 */ jal func_8007B454 -/* 013240 80012640 00000000 */ nop -.L80012644: -/* 013244 80012644 8E420060 */ lw $v0, 0x60($s2) -/* 013248 80012648 00000000 */ nop -/* 01324C 8001264C 104000D4 */ beqz $v0, .L800129A0 -/* 013250 80012650 8FA50078 */ lw $a1, 0x78($sp) -/* 013254 80012654 8C590000 */ lw $t9, ($v0) -/* 013258 80012658 12600006 */ beqz $s3, .L80012674 -/* 01325C 8001265C AFB900AC */ sw $t9, 0xac($sp) -/* 013260 80012660 826D01D6 */ lb $t5, 0x1d6($s3) -/* 013264 80012664 24010003 */ li $at, 3 -/* 013268 80012668 15A10003 */ bne $t5, $at, .L80012678 -/* 01326C 8001266C 8FAF00AC */ lw $t7, 0xac($sp) -/* 013270 80012670 AFA000AC */ sw $zero, 0xac($sp) -.L80012674: -/* 013274 80012674 8FAF00AC */ lw $t7, 0xac($sp) -.L80012678: -/* 013278 80012678 8FA50078 */ lw $a1, 0x78($sp) -/* 01327C 8001267C 19E000C7 */ blez $t7, .L8001299C -/* 013280 80012680 00005025 */ move $t2, $zero -/* 013284 80012684 00005825 */ move $t3, $zero -.L80012688: -/* 013288 80012688 8E420060 */ lw $v0, 0x60($s2) -/* 01328C 8001268C 00000000 */ nop -/* 013290 80012690 004B7021 */ addu $t6, $v0, $t3 -/* 013294 80012694 8DD00004 */ lw $s0, 4($t6) -/* 013298 80012698 00000000 */ nop -/* 01329C 8001269C 86180006 */ lh $t8, 6($s0) -/* 0132A0 800126A0 00000000 */ nop -/* 0132A4 800126A4 33194000 */ andi $t9, $t8, 0x4000 -/* 0132A8 800126A8 172000B9 */ bnez $t9, .L80012990 -/* 0132AC 800126AC 8FB900AC */ lw $t9, 0xac($sp) -/* 0132B0 800126B0 8C4D002C */ lw $t5, 0x2c($v0) -/* 0132B4 800126B4 00000000 */ nop -/* 0132B8 800126B8 01AA7821 */ addu $t7, $t5, $t2 -/* 0132BC 800126BC 81E30000 */ lb $v1, ($t7) -/* 0132C0 800126C0 00000000 */ nop -/* 0132C4 800126C4 046000B2 */ bltz $v1, .L80012990 -/* 0132C8 800126C8 8FB900AC */ lw $t9, 0xac($sp) -/* 0132CC 800126CC 84AE0018 */ lh $t6, 0x18($a1) -/* 0132D0 800126D0 00000000 */ nop -/* 0132D4 800126D4 006E082A */ slt $at, $v1, $t6 -/* 0132D8 800126D8 102000AD */ beqz $at, .L80012990 -/* 0132DC 800126DC 8FB900AC */ lw $t9, 0xac($sp) -/* 0132E0 800126E0 8219003A */ lb $t9, 0x3a($s0) -/* 0132E4 800126E4 8E180068 */ lw $t8, 0x68($s0) -/* 0132E8 800126E8 00196880 */ sll $t5, $t9, 2 -/* 0132EC 800126EC 8CAE0014 */ lw $t6, 0x14($a1) -/* 0132F0 800126F0 0003C840 */ sll $t9, $v1, 1 -/* 0132F4 800126F4 030D7821 */ addu $t7, $t8, $t5 -/* 0132F8 800126F8 01D9C021 */ addu $t8, $t6, $t9 -/* 0132FC 800126FC 870D0000 */ lh $t5, ($t8) -/* 013300 80012700 8DEC0000 */ lw $t4, ($t7) -/* 013304 80012704 000D7880 */ sll $t7, $t5, 2 -/* 013308 80012708 8E4E0044 */ lw $t6, 0x44($s2) -/* 01330C 8001270C 01ED7821 */ addu $t7, $t7, $t5 -/* 013310 80012710 000F7840 */ sll $t7, $t7, 1 -/* 013314 80012714 01CF1021 */ addu $v0, $t6, $t7 -/* 013318 80012718 84590000 */ lh $t9, ($v0) -/* 01331C 8001271C 84580002 */ lh $t8, 2($v0) -/* 013320 80012720 44995000 */ mtc1 $t9, $f10 -/* 013324 80012724 844D0004 */ lh $t5, 4($v0) -/* 013328 80012728 46805020 */ cvt.s.w $f0, $f10 -/* 01332C 8001272C C608000C */ lwc1 $f8, 0xc($s0) -/* 013330 80012730 44982000 */ mtc1 $t8, $f4 -/* 013334 80012734 448D3000 */ mtc1 $t5, $f6 -/* 013338 80012738 468020A0 */ cvt.s.w $f2, $f4 -/* 01333C 8001273C C6040010 */ lwc1 $f4, 0x10($s0) -/* 013340 80012740 8E0E0040 */ lw $t6, 0x40($s0) -/* 013344 80012744 46004280 */ add.s $f10, $f8, $f0 -/* 013348 80012748 C6080014 */ lwc1 $f8, 0x14($s0) -/* 01334C 8001274C 46803320 */ cvt.s.w $f12, $f6 -/* 013350 80012750 E60A000C */ swc1 $f10, 0xc($s0) -/* 013354 80012754 24010001 */ li $at, 1 -/* 013358 80012758 46022180 */ add.s $f6, $f4, $f2 -/* 01335C 8001275C 00002025 */ move $a0, $zero -/* 013360 80012760 460C4280 */ add.s $f10, $f8, $f12 -/* 013364 80012764 E6060010 */ swc1 $f6, 0x10($s0) -/* 013368 80012768 E60A0014 */ swc1 $f10, 0x14($s0) -/* 01336C 8001276C 81CF0053 */ lb $t7, 0x53($t6) -/* 013370 80012770 8FB900B4 */ lw $t9, 0xb4($sp) -/* 013374 80012774 15E10003 */ bne $t7, $at, .L80012784 -/* 013378 80012778 3C0D8000 */ lui $t5, %hi(D_80000310) # $t5, 0x8000 -/* 01337C 8001277C 10000002 */ b .L80012788 -/* 013380 80012780 2409010A */ li $t1, 266 -.L80012784: -/* 013384 80012784 2409010B */ li $t1, 267 -.L80012788: -/* 013388 80012788 2B2100FF */ slti $at, $t9, 0xff -/* 01338C 8001278C 10200002 */ beqz $at, .L80012798 -/* 013390 80012790 35380004 */ ori $t8, $t1, 4 -/* 013394 80012794 03004825 */ move $t1, $t8 -.L80012798: -/* 013398 80012798 8DAD0310 */ lw $t5, %lo(D_80000310)($t5) -/* 01339C 8001279C 240117D7 */ li $at, 6103 -/* 0133A0 800127A0 11A10002 */ beq $t5, $at, .L800127AC -/* 0133A4 800127A4 00000000 */ nop -/* 0133A8 800127A8 24040001 */ li $a0, 1 -.L800127AC: -/* 0133AC 800127AC 1480006C */ bnez $a0, .L80012960 -/* 0133B0 800127B0 00000000 */ nop -/* 0133B4 800127B4 86020006 */ lh $v0, 6($s0) -/* 0133B8 800127B8 8FA300B8 */ lw $v1, 0xb8($sp) -/* 0133BC 800127BC 304E0080 */ andi $t6, $v0, 0x80 -/* 0133C0 800127C0 000E102B */ sltu $v0, $zero, $t6 -/* 0133C4 800127C4 10400005 */ beqz $v0, .L800127DC -/* 0133C8 800127C8 02202025 */ move $a0, $s1 -/* 0133CC 800127CC 8FA200AC */ lw $v0, 0xac($sp) -/* 0133D0 800127D0 00000000 */ nop -/* 0133D4 800127D4 38590003 */ xori $t9, $v0, 3 -/* 0133D8 800127D8 2F220001 */ sltiu $v0, $t9, 1 -.L800127DC: -/* 0133DC 800127DC 00024600 */ sll $t0, $v0, 0x18 -/* 0133E0 800127E0 0008C603 */ sra $t8, $t0, 0x18 -/* 0133E4 800127E4 12600007 */ beqz $s3, .L80012804 -/* 0133E8 800127E8 03004025 */ move $t0, $t8 -/* 0133EC 800127EC 926D01F7 */ lbu $t5, 0x1f7($s3) -/* 0133F0 800127F0 00000000 */ nop -/* 0133F4 800127F4 29A100FF */ slti $at, $t5, 0xff -/* 0133F8 800127F8 10200002 */ beqz $at, .L80012804 -/* 0133FC 800127FC 00000000 */ nop -/* 013400 80012800 00004025 */ move $t0, $zero -.L80012804: -/* 013404 80012804 1100002B */ beqz $t0, .L800128B4 -/* 013408 80012808 306E00FF */ andi $t6, $v1, 0xff -/* 01340C 8001280C 000E7E00 */ sll $t7, $t6, 0x18 -/* 013410 80012810 000ECC00 */ sll $t9, $t6, 0x10 -/* 013414 80012814 01F9C025 */ or $t8, $t7, $t9 -/* 013418 80012818 8FAF00B4 */ lw $t7, 0xb4($sp) -/* 01341C 8001281C 01C01825 */ move $v1, $t6 -/* 013420 80012820 000E6A00 */ sll $t5, $t6, 8 -/* 013424 80012824 030D7025 */ or $t6, $t8, $t5 -/* 013428 80012828 31F900FF */ andi $t9, $t7, 0xff -/* 01342C 8001282C 01D9C025 */ or $t8, $t6, $t9 -/* 013430 80012830 AFB80034 */ sw $t8, 0x34($sp) -/* 013434 80012834 A3A8008A */ sb $t0, 0x8a($sp) -/* 013438 80012838 AFA900A0 */ sw $t1, 0xa0($sp) -/* 01343C 8001283C AFAA00BC */ sw $t2, 0xbc($sp) -/* 013440 80012840 AFAB0030 */ sw $t3, 0x30($sp) -/* 013444 80012844 AFAC0074 */ sw $t4, 0x74($sp) -/* 013448 80012848 E7A00094 */ swc1 $f0, 0x94($sp) -/* 01344C 8001284C E7A20090 */ swc1 $f2, 0x90($sp) -/* 013450 80012850 0C004B26 */ jal func_80012C98 -/* 013454 80012854 E7AC008C */ swc1 $f12, 0x8c($sp) -/* 013458 80012858 8E220000 */ lw $v0, ($s1) -/* 01345C 8001285C 83A8008A */ lb $t0, 0x8a($sp) -/* 013460 80012860 244D0008 */ addiu $t5, $v0, 8 -/* 013464 80012864 8FA900A0 */ lw $t1, 0xa0($sp) -/* 013468 80012868 8FAA00BC */ lw $t2, 0xbc($sp) -/* 01346C 8001286C 8FAB0030 */ lw $t3, 0x30($sp) -/* 013470 80012870 8FAC0074 */ lw $t4, 0x74($sp) -/* 013474 80012874 C7A00094 */ lwc1 $f0, 0x94($sp) -/* 013478 80012878 C7A20090 */ lwc1 $f2, 0x90($sp) -/* 01347C 8001287C C7AC008C */ lwc1 $f12, 0x8c($sp) -/* 013480 80012880 AE2D0000 */ sw $t5, ($s1) -/* 013484 80012884 3C0FFB00 */ lui $t7, 0xfb00 -/* 013488 80012888 240EFF00 */ li $t6, -256 -/* 01348C 8001288C AC4E0004 */ sw $t6, 4($v0) -/* 013490 80012890 AC4F0000 */ sw $t7, ($v0) -/* 013494 80012894 8E220000 */ lw $v0, ($s1) -/* 013498 80012898 3C18FA00 */ lui $t8, 0xfa00 -/* 01349C 8001289C 24590008 */ addiu $t9, $v0, 8 -/* 0134A0 800128A0 AE390000 */ sw $t9, ($s1) -/* 0134A4 800128A4 AC580000 */ sw $t8, ($v0) -/* 0134A8 800128A8 8FAD0034 */ lw $t5, 0x34($sp) -/* 0134AC 800128AC 00000000 */ nop -/* 0134B0 800128B0 AC4D0004 */ sw $t5, 4($v0) -.L800128B4: -/* 0134B4 800128B4 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 -/* 0134B8 800128B8 3C068012 */ lui $a2, %hi(D_8011AE94) # $a2, 0x8012 -/* 0134BC 800128BC 24C6AE94 */ addiu $a2, %lo(D_8011AE94) # addiu $a2, $a2, -0x516c -/* 0134C0 800128C0 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 -/* 0134C4 800128C4 02202025 */ move $a0, $s1 -/* 0134C8 800128C8 02003825 */ move $a3, $s0 -/* 0134CC 800128CC AFAC0010 */ sw $t4, 0x10($sp) -/* 0134D0 800128D0 AFA90014 */ sw $t1, 0x14($sp) -/* 0134D4 800128D4 A3A8008A */ sb $t0, 0x8a($sp) -/* 0134D8 800128D8 AFAA00BC */ sw $t2, 0xbc($sp) -/* 0134DC 800128DC AFAB0030 */ sw $t3, 0x30($sp) -/* 0134E0 800128E0 E7A00094 */ swc1 $f0, 0x94($sp) -/* 0134E4 800128E4 E7A20090 */ swc1 $f2, 0x90($sp) -/* 0134E8 800128E8 0C01A145 */ jal func_80068514 -/* 0134EC 800128EC E7AC008C */ swc1 $f12, 0x8c($sp) -/* 0134F0 800128F0 83A8008A */ lb $t0, 0x8a($sp) -/* 0134F4 800128F4 8FAA00BC */ lw $t2, 0xbc($sp) -/* 0134F8 800128F8 8FAB0030 */ lw $t3, 0x30($sp) -/* 0134FC 800128FC C7A00094 */ lwc1 $f0, 0x94($sp) -/* 013500 80012900 C7A20090 */ lwc1 $f2, 0x90($sp) -/* 013504 80012904 C7AC008C */ lwc1 $f12, 0x8c($sp) -/* 013508 80012908 11000015 */ beqz $t0, .L80012960 -/* 01350C 8001290C AE020078 */ sw $v0, 0x78($s0) -/* 013510 80012910 8E220000 */ lw $v0, ($s1) -/* 013514 80012914 3C0EBC00 */ lui $t6, (0xBC00000A >> 16) # lui $t6, 0xbc00 -/* 013518 80012918 244F0008 */ addiu $t7, $v0, 8 -/* 01351C 8001291C AE2F0000 */ sw $t7, ($s1) -/* 013520 80012920 35CE000A */ ori $t6, (0xBC00000A & 0xFFFF) # ori $t6, $t6, 0xa -/* 013524 80012924 AC4E0000 */ sw $t6, ($v0) -/* 013528 80012928 AC400004 */ sw $zero, 4($v0) -/* 01352C 8001292C E7AC008C */ swc1 $f12, 0x8c($sp) -/* 013530 80012930 E7A20090 */ swc1 $f2, 0x90($sp) -/* 013534 80012934 E7A00094 */ swc1 $f0, 0x94($sp) -/* 013538 80012938 AFAB0030 */ sw $t3, 0x30($sp) -/* 01353C 8001293C AFAA00BC */ sw $t2, 0xbc($sp) -/* 013540 80012940 0C004B3A */ jal func_80012CE8 -/* 013544 80012944 02202025 */ move $a0, $s1 -/* 013548 80012948 8FAA00BC */ lw $t2, 0xbc($sp) -/* 01354C 8001294C 8FAB0030 */ lw $t3, 0x30($sp) -/* 013550 80012950 C7A00094 */ lwc1 $f0, 0x94($sp) -/* 013554 80012954 C7A20090 */ lwc1 $f2, 0x90($sp) -/* 013558 80012958 C7AC008C */ lwc1 $f12, 0x8c($sp) -/* 01355C 8001295C 00000000 */ nop -.L80012960: -/* 013560 80012960 C604000C */ lwc1 $f4, 0xc($s0) -/* 013564 80012964 C6080010 */ lwc1 $f8, 0x10($s0) -/* 013568 80012968 46002181 */ sub.s $f6, $f4, $f0 -/* 01356C 8001296C C6040014 */ lwc1 $f4, 0x14($s0) -/* 013570 80012970 E606000C */ swc1 $f6, 0xc($s0) -/* 013574 80012974 46024281 */ sub.s $f10, $f8, $f2 -/* 013578 80012978 460C2181 */ sub.s $f6, $f4, $f12 -/* 01357C 8001297C E60A0010 */ swc1 $f10, 0x10($s0) -/* 013580 80012980 E6060014 */ swc1 $f6, 0x14($s0) -/* 013584 80012984 8FA50078 */ lw $a1, 0x78($sp) -/* 013588 80012988 00000000 */ nop -/* 01358C 8001298C 8FB900AC */ lw $t9, 0xac($sp) -.L80012990: -/* 013590 80012990 254A0001 */ addiu $t2, $t2, 1 -/* 013594 80012994 1559FF3C */ bne $t2, $t9, .L80012688 -/* 013598 80012998 256B0004 */ addiu $t3, $t3, 4 -.L8001299C: -/* 01359C 8001299C 8FA50078 */ lw $a1, 0x78($sp) -.L800129A0: -/* 0135A0 800129A0 12600055 */ beqz $s3, .L80012AF8 -/* 0135A4 800129A4 8FAF009C */ lw $t7, 0x9c($sp) -/* 0135A8 800129A8 8E700144 */ lw $s0, 0x144($s3) -/* 0135AC 800129AC 00000000 */ nop -/* 0135B0 800129B0 12000051 */ beqz $s0, .L80012AF8 -/* 0135B4 800129B4 8FAF009C */ lw $t7, 0x9c($sp) -/* 0135B8 800129B8 8E580040 */ lw $t8, 0x40($s2) -/* 0135BC 800129BC 00000000 */ nop -/* 0135C0 800129C0 83030058 */ lb $v1, 0x58($t8) -/* 0135C4 800129C4 00000000 */ nop -/* 0135C8 800129C8 0460004B */ bltz $v1, .L80012AF8 -/* 0135CC 800129CC 8FAF009C */ lw $t7, 0x9c($sp) -/* 0135D0 800129D0 84AD0018 */ lh $t5, 0x18($a1) -/* 0135D4 800129D4 00000000 */ nop -/* 0135D8 800129D8 006D082A */ slt $at, $v1, $t5 -/* 0135DC 800129DC 10200046 */ beqz $at, .L80012AF8 -/* 0135E0 800129E0 8FAF009C */ lw $t7, 0x9c($sp) -/* 0135E4 800129E4 820E003A */ lb $t6, 0x3a($s0) -/* 0135E8 800129E8 8E0F0068 */ lw $t7, 0x68($s0) -/* 0135EC 800129EC 000EC880 */ sll $t9, $t6, 2 -/* 0135F0 800129F0 8CAD0014 */ lw $t5, 0x14($a1) -/* 0135F4 800129F4 00037040 */ sll $t6, $v1, 1 -/* 0135F8 800129F8 01F9C021 */ addu $t8, $t7, $t9 -/* 0135FC 800129FC 01AE7821 */ addu $t7, $t5, $t6 -/* 013600 80012A00 85F90000 */ lh $t9, ($t7) -/* 013604 80012A04 8F0C0000 */ lw $t4, ($t8) -/* 013608 80012A08 0019C080 */ sll $t8, $t9, 2 -/* 01360C 80012A0C 8E4D0044 */ lw $t5, 0x44($s2) -/* 013610 80012A10 0319C021 */ addu $t8, $t8, $t9 -/* 013614 80012A14 0018C040 */ sll $t8, $t8, 1 -/* 013618 80012A18 01B81021 */ addu $v0, $t5, $t8 -/* 01361C 80012A1C 844E0000 */ lh $t6, ($v0) -/* 013620 80012A20 844F0002 */ lh $t7, 2($v0) -/* 013624 80012A24 448E4000 */ mtc1 $t6, $f8 -/* 013628 80012A28 84590004 */ lh $t9, 4($v0) -/* 01362C 80012A2C 46804020 */ cvt.s.w $f0, $f8 -/* 013630 80012A30 C610000C */ lwc1 $f16, 0xc($s0) -/* 013634 80012A34 448F5000 */ mtc1 $t7, $f10 -/* 013638 80012A38 44992000 */ mtc1 $t9, $f4 -/* 01363C 80012A3C 46100201 */ sub.s $f8, $f0, $f16 -/* 013640 80012A40 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 013644 80012A44 468050A0 */ cvt.s.w $f2, $f10 -/* 013648 80012A48 44817800 */ mtc1 $at, $f15 -/* 01364C 80012A4C 44807000 */ mtc1 $zero, $f14 -/* 013650 80012A50 46802320 */ cvt.s.w $f12, $f4 -/* 013654 80012A54 C6120010 */ lwc1 $f18, 0x10($s0) -/* 013658 80012A58 24010001 */ li $at, 1 -/* 01365C 80012A5C 460042A1 */ cvt.d.s $f10, $f8 -/* 013660 80012A60 462E5102 */ mul.d $f4, $f10, $f14 -/* 013664 80012A64 460081A1 */ cvt.d.s $f6, $f16 -/* 013668 80012A68 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 -/* 01366C 80012A6C 3C068012 */ lui $a2, %hi(D_8011AE94) # $a2, 0x8012 -/* 013670 80012A70 24C6AE94 */ addiu $a2, %lo(D_8011AE94) # addiu $a2, $a2, -0x516c -/* 013674 80012A74 46243200 */ add.d $f8, $f6, $f4 -/* 013678 80012A78 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 -/* 01367C 80012A7C 462042A0 */ cvt.s.d $f10, $f8 -/* 013680 80012A80 240E010A */ li $t6, 266 -/* 013684 80012A84 46121101 */ sub.s $f4, $f2, $f18 -/* 013688 80012A88 E60A000C */ swc1 $f10, 0xc($s0) -/* 01368C 80012A8C 46002221 */ cvt.d.s $f8, $f4 -/* 013690 80012A90 462E4282 */ mul.d $f10, $f8, $f14 -/* 013694 80012A94 460091A1 */ cvt.d.s $f6, $f18 -/* 013698 80012A98 02202025 */ move $a0, $s1 -/* 01369C 80012A9C 02003825 */ move $a3, $s0 -/* 0136A0 80012AA0 462A3100 */ add.d $f4, $f6, $f10 -/* 0136A4 80012AA4 C6060014 */ lwc1 $f6, 0x14($s0) -/* 0136A8 80012AA8 46202220 */ cvt.s.d $f8, $f4 -/* 0136AC 80012AAC E6080010 */ swc1 $f8, 0x10($s0) -/* 0136B0 80012AB0 E7A60038 */ swc1 $f6, 0x38($sp) -/* 0136B4 80012AB4 C7AA0038 */ lwc1 $f10, 0x38($sp) -/* 0136B8 80012AB8 8E0D0040 */ lw $t5, 0x40($s0) -/* 0136BC 80012ABC 460A6201 */ sub.s $f8, $f12, $f10 -/* 0136C0 80012AC0 460041A1 */ cvt.d.s $f6, $f8 -/* 0136C4 80012AC4 46005121 */ cvt.d.s $f4, $f10 -/* 0136C8 80012AC8 462E3282 */ mul.d $f10, $f6, $f14 -/* 0136CC 80012ACC 462A2200 */ add.d $f8, $f4, $f10 -/* 0136D0 80012AD0 462041A0 */ cvt.s.d $f6, $f8 -/* 0136D4 80012AD4 E6060014 */ swc1 $f6, 0x14($s0) -/* 0136D8 80012AD8 81B80053 */ lb $t8, 0x53($t5) -/* 0136DC 80012ADC 00000000 */ nop -/* 0136E0 80012AE0 17010005 */ bne $t8, $at, .L80012AF8 -/* 0136E4 80012AE4 8FAF009C */ lw $t7, 0x9c($sp) -/* 0136E8 80012AE8 AFAC0010 */ sw $t4, 0x10($sp) -/* 0136EC 80012AEC 0C01A145 */ jal func_80068514 -/* 0136F0 80012AF0 AFAE0014 */ sw $t6, 0x14($sp) -/* 0136F4 80012AF4 8FAF009C */ lw $t7, 0x9c($sp) -.L80012AF8: -/* 0136F8 80012AF8 2401FFFF */ li $at, -1 -/* 0136FC 80012AFC 11E1002A */ beq $t7, $at, .L80012BA8 -/* 013700 80012B00 8FAE00A8 */ lw $t6, 0xa8($sp) -/* 013704 80012B04 8E590040 */ lw $t9, 0x40($s2) -/* 013708 80012B08 00000000 */ nop -/* 01370C 80012B0C 932D0071 */ lbu $t5, 0x71($t9) -/* 013710 80012B10 00000000 */ nop -/* 013714 80012B14 11A00015 */ beqz $t5, .L80012B6C -/* 013718 80012B18 8FAD00B0 */ lw $t5, 0xb0($sp) -/* 01371C 80012B1C 8E220000 */ lw $v0, ($s1) -/* 013720 80012B20 3C0EFA00 */ lui $t6, 0xfa00 -/* 013724 80012B24 24580008 */ addiu $t8, $v0, 8 -/* 013728 80012B28 AE380000 */ sw $t8, ($s1) -/* 01372C 80012B2C AC4E0000 */ sw $t6, ($v0) -/* 013730 80012B30 8E430054 */ lw $v1, 0x54($s2) -/* 013734 80012B34 8FB800B4 */ lw $t8, 0xb4($sp) -/* 013738 80012B38 906E0019 */ lbu $t6, 0x19($v1) -/* 01373C 80012B3C 90790018 */ lbu $t9, 0x18($v1) -/* 013740 80012B40 000E7C00 */ sll $t7, $t6, 0x10 -/* 013744 80012B44 906E001A */ lbu $t6, 0x1a($v1) -/* 013748 80012B48 00196E00 */ sll $t5, $t9, 0x18 -/* 01374C 80012B4C 01AFC825 */ or $t9, $t5, $t7 -/* 013750 80012B50 000E6A00 */ sll $t5, $t6, 8 -/* 013754 80012B54 032D7825 */ or $t7, $t9, $t5 -/* 013758 80012B58 330E00FF */ andi $t6, $t8, 0xff -/* 01375C 80012B5C 01EEC825 */ or $t9, $t7, $t6 -/* 013760 80012B60 0C01ED0F */ jal func_8007B43C -/* 013764 80012B64 AC590004 */ sw $t9, 4($v0) -/* 013768 80012B68 8FAD00B0 */ lw $t5, 0xb0($sp) -.L80012B6C: -/* 01376C 80012B6C 8FA40078 */ lw $a0, 0x78($sp) -/* 013770 80012B70 8FA6009C */ lw $a2, 0x9c($sp) -/* 013774 80012B74 02402825 */ move $a1, $s2 -/* 013778 80012B78 24070004 */ li $a3, 4 -/* 01377C 80012B7C 0C0050EA */ jal func_800143A8 -/* 013780 80012B80 AFAD0010 */ sw $t5, 0x10($sp) -/* 013784 80012B84 8E580040 */ lw $t8, 0x40($s2) -/* 013788 80012B88 00000000 */ nop -/* 01378C 80012B8C 930F0071 */ lbu $t7, 0x71($t8) -/* 013790 80012B90 00000000 */ nop -/* 013794 80012B94 11E00004 */ beqz $t7, .L80012BA8 -/* 013798 80012B98 8FAE00A8 */ lw $t6, 0xa8($sp) -/* 01379C 80012B9C 0C01ED15 */ jal func_8007B454 -/* 0137A0 80012BA0 00000000 */ nop -/* 0137A4 80012BA4 8FAE00A8 */ lw $t6, 0xa8($sp) -.L80012BA8: -/* 0137A8 80012BA8 3C0FFA00 */ lui $t7, 0xfa00 -/* 0137AC 80012BAC 15C00007 */ bnez $t6, .L80012BCC -/* 0137B0 80012BB0 00000000 */ nop -/* 0137B4 80012BB4 8E590040 */ lw $t9, 0x40($s2) -/* 0137B8 80012BB8 00000000 */ nop -/* 0137BC 80012BBC 932D0071 */ lbu $t5, 0x71($t9) -/* 0137C0 80012BC0 00000000 */ nop -/* 0137C4 80012BC4 11A00008 */ beqz $t5, .L80012BE8 -/* 0137C8 80012BC8 8FB900A4 */ lw $t9, 0xa4($sp) -.L80012BCC: -/* 0137CC 80012BCC 8E220000 */ lw $v0, ($s1) -/* 0137D0 80012BD0 240EFFFF */ li $t6, -1 -/* 0137D4 80012BD4 24580008 */ addiu $t8, $v0, 8 -/* 0137D8 80012BD8 AE380000 */ sw $t8, ($s1) -/* 0137DC 80012BDC AC4E0004 */ sw $t6, 4($v0) -/* 0137E0 80012BE0 AC4F0000 */ sw $t7, ($v0) -/* 0137E4 80012BE4 8FB900A4 */ lw $t9, 0xa4($sp) -.L80012BE8: -/* 0137E8 80012BE8 3C18FB00 */ lui $t8, 0xfb00 -/* 0137EC 80012BEC 13200007 */ beqz $t9, .L80012C0C -/* 0137F0 80012BF0 00000000 */ nop -/* 0137F4 80012BF4 8E220000 */ lw $v0, ($s1) -/* 0137F8 80012BF8 240FFF00 */ li $t7, -256 -/* 0137FC 80012BFC 244D0008 */ addiu $t5, $v0, 8 -/* 013800 80012C00 AE2D0000 */ sw $t5, ($s1) -/* 013804 80012C04 AC4F0004 */ sw $t7, 4($v0) -/* 013808 80012C08 AC580000 */ sw $t8, ($v0) -.L80012C0C: -/* 01380C 80012C0C 0C01A690 */ jal func_80069A40 -/* 013810 80012C10 02202025 */ move $a0, $s1 -.L80012C14: -/* 013814 80012C14 8FBF002C */ lw $ra, 0x2c($sp) -/* 013818 80012C18 8FB0001C */ lw $s0, 0x1c($sp) -/* 01381C 80012C1C 8FB10020 */ lw $s1, 0x20($sp) -/* 013820 80012C20 8FB20024 */ lw $s2, 0x24($sp) -/* 013824 80012C24 8FB30028 */ lw $s3, 0x28($sp) -/* 013828 80012C28 03E00008 */ jr $ra -/* 01382C 80012C2C 27BD00C0 */ addiu $sp, $sp, 0xc0 - -glabel func_80012C30 -/* 013830 80012C30 3C018012 */ lui $at, 0x8012 -/* 013834 80012C34 03E00008 */ jr $ra -/* 013838 80012C38 A420ADA4 */ sh $zero, -0x525c($at) - -glabel func_80012C3C -/* 01383C 80012C3C 3C078012 */ lui $a3, %hi(D_8011ADA4) # $a3, 0x8012 -/* 013840 80012C40 24E7ADA4 */ addiu $a3, %lo(D_8011ADA4) # addiu $a3, $a3, -0x525c -/* 013844 80012C44 84EE0000 */ lh $t6, ($a3) -/* 013848 80012C48 00001025 */ move $v0, $zero -/* 01384C 80012C4C 19C00010 */ blez $t6, .L80012C90 -/* 013850 80012C50 3C068012 */ lui $a2, %hi(D_8011AD78) # $a2, 0x8012 -/* 013854 80012C54 24C6AD78 */ addiu $a2, %lo(D_8011AD78) # addiu $a2, $a2, -0x5288 -/* 013858 80012C58 3C080600 */ lui $t0, 0x600 -.L80012C5C: -/* 01385C 80012C5C 8C850000 */ lw $a1, ($a0) -/* 013860 80012C60 24420001 */ addiu $v0, $v0, 1 -/* 013864 80012C64 24AF0008 */ addiu $t7, $a1, 8 -/* 013868 80012C68 AC8F0000 */ sw $t7, ($a0) -/* 01386C 80012C6C ACA80000 */ sw $t0, ($a1) -/* 013870 80012C70 8CD80000 */ lw $t8, ($a2) -/* 013874 80012C74 24C60004 */ addiu $a2, $a2, 4 -/* 013878 80012C78 ACB80004 */ sw $t8, 4($a1) -/* 01387C 80012C7C 84F90000 */ lh $t9, ($a3) -/* 013880 80012C80 00000000 */ nop -/* 013884 80012C84 0059082A */ slt $at, $v0, $t9 -/* 013888 80012C88 1420FFF4 */ bnez $at, .L80012C5C -/* 01388C 80012C8C 00000000 */ nop -.L80012C90: -/* 013890 80012C90 03E00008 */ jr $ra -/* 013894 80012C94 00000000 */ nop - -glabel func_80012C98 -/* 013898 80012C98 3C058012 */ lui $a1, %hi(D_8011ADA4) # $a1, 0x8012 -/* 01389C 80012C9C 24A5ADA4 */ addiu $a1, %lo(D_8011ADA4) # addiu $a1, $a1, -0x525c -/* 0138A0 80012CA0 84AE0000 */ lh $t6, ($a1) -/* 0138A4 80012CA4 00000000 */ nop -/* 0138A8 80012CA8 29C10009 */ slti $at, $t6, 9 -/* 0138AC 80012CAC 1020000C */ beqz $at, .L80012CE0 -/* 0138B0 80012CB0 00000000 */ nop -/* 0138B4 80012CB4 8C830000 */ lw $v1, ($a0) -/* 0138B8 80012CB8 3C018012 */ lui $at, 0x8012 -/* 0138BC 80012CBC 246F0008 */ addiu $t7, $v1, 8 -/* 0138C0 80012CC0 AC8F0000 */ sw $t7, ($a0) -/* 0138C4 80012CC4 AC600004 */ sw $zero, 4($v1) -/* 0138C8 80012CC8 AC600000 */ sw $zero, ($v1) -/* 0138CC 80012CCC 84B90000 */ lh $t9, ($a1) -/* 0138D0 80012CD0 8C980000 */ lw $t8, ($a0) -/* 0138D4 80012CD4 00194080 */ sll $t0, $t9, 2 -/* 0138D8 80012CD8 00280821 */ addu $at, $at, $t0 -/* 0138DC 80012CDC AC38AD78 */ sw $t8, -0x5288($at) -.L80012CE0: -/* 0138E0 80012CE0 03E00008 */ jr $ra -/* 0138E4 80012CE4 00000000 */ nop - -glabel func_80012CE8 -/* 0138E8 80012CE8 3C068012 */ lui $a2, %hi(D_8011ADA4) # $a2, 0x8012 -/* 0138EC 80012CEC 24C6ADA4 */ addiu $a2, %lo(D_8011ADA4) # addiu $a2, $a2, -0x525c -/* 0138F0 80012CF0 84CE0000 */ lh $t6, ($a2) -/* 0138F4 80012CF4 00000000 */ nop -/* 0138F8 80012CF8 29C10009 */ slti $at, $t6, 9 -/* 0138FC 80012CFC 10200015 */ beqz $at, .L80012D54 -/* 013900 80012D00 00000000 */ nop -/* 013904 80012D04 8C830000 */ lw $v1, ($a0) -/* 013908 80012D08 3C18B800 */ lui $t8, 0xb800 -/* 01390C 80012D0C 246F0008 */ addiu $t7, $v1, 8 -/* 013910 80012D10 AC8F0000 */ sw $t7, ($a0) -/* 013914 80012D14 AC600004 */ sw $zero, 4($v1) -/* 013918 80012D18 AC780000 */ sw $t8, ($v1) -/* 01391C 80012D1C 84D90000 */ lh $t9, ($a2) -/* 013920 80012D20 3C058012 */ lui $a1, 0x8012 -/* 013924 80012D24 00194080 */ sll $t0, $t9, 2 -/* 013928 80012D28 00A82821 */ addu $a1, $a1, $t0 -/* 01392C 80012D2C 8CA5AD78 */ lw $a1, -0x5288($a1) -/* 013930 80012D30 3C090601 */ lui $t1, 0x601 -/* 013934 80012D34 ACA9FFF8 */ sw $t1, -8($a1) -/* 013938 80012D38 8C8A0000 */ lw $t2, ($a0) -/* 01393C 80012D3C 24A5FFF8 */ addiu $a1, $a1, -8 -/* 013940 80012D40 ACAA0004 */ sw $t2, 4($a1) -/* 013944 80012D44 84CB0000 */ lh $t3, ($a2) -/* 013948 80012D48 00000000 */ nop -/* 01394C 80012D4C 256C0001 */ addiu $t4, $t3, 1 -/* 013950 80012D50 A4CC0000 */ sh $t4, ($a2) -.L80012D54: -/* 013954 80012D54 03E00008 */ jr $ra -/* 013958 80012D58 00000000 */ nop - -glabel func_80012D5C -/* 01395C 80012D5C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 013960 80012D60 AFBF0014 */ sw $ra, 0x14($sp) -/* 013964 80012D64 AFA40020 */ sw $a0, 0x20($sp) -/* 013968 80012D68 AFA50024 */ sw $a1, 0x24($sp) -/* 01396C 80012D6C AFA60028 */ sw $a2, 0x28($sp) -/* 013970 80012D70 84EE0006 */ lh $t6, 6($a3) -/* 013974 80012D74 24040002 */ li $a0, 2 -/* 013978 80012D78 31CF5000 */ andi $t7, $t6, 0x5000 -/* 01397C 80012D7C 15E00027 */ bnez $t7, .L80012E1C -/* 013980 80012D80 8FBF0014 */ lw $ra, 0x14($sp) -/* 013984 80012D84 84E5004A */ lh $a1, 0x4a($a3) -/* 013988 80012D88 0C02DDAE */ jal func_800B76B8 -/* 01398C 80012D8C AFA7002C */ sw $a3, 0x2c($sp) -/* 013990 80012D90 8FB80020 */ lw $t8, 0x20($sp) -/* 013994 80012D94 8FA80024 */ lw $t0, 0x24($sp) -/* 013998 80012D98 8F190000 */ lw $t9, ($t8) -/* 01399C 80012D9C 3C018012 */ lui $at, %hi(D_8011AE8C) # $at, 0x8012 -/* 0139A0 80012DA0 AC39AE8C */ sw $t9, %lo(D_8011AE8C)($at) -/* 0139A4 80012DA4 8D090000 */ lw $t1, ($t0) -/* 0139A8 80012DA8 8FAA0028 */ lw $t2, 0x28($sp) -/* 0139AC 80012DAC 3C018012 */ lui $at, %hi(D_8011AE90) # $at, 0x8012 -/* 0139B0 80012DB0 AC29AE90 */ sw $t1, %lo(D_8011AE90)($at) -/* 0139B4 80012DB4 8D4B0000 */ lw $t3, ($t2) -/* 0139B8 80012DB8 8FA4002C */ lw $a0, 0x2c($sp) -/* 0139BC 80012DBC 3C018012 */ lui $at, %hi(D_8011AE94) # $at, 0x8012 -/* 0139C0 80012DC0 AC2BAE94 */ sw $t3, %lo(D_8011AE94)($at) -/* 0139C4 80012DC4 C4840008 */ lwc1 $f4, 8($a0) -/* 0139C8 80012DC8 0C004D23 */ jal func_8001348C -/* 0139CC 80012DCC E7A4001C */ swc1 $f4, 0x1c($sp) -/* 0139D0 80012DD0 8FA7002C */ lw $a3, 0x2c($sp) -/* 0139D4 80012DD4 C7A6001C */ lwc1 $f6, 0x1c($sp) -/* 0139D8 80012DD8 3C0C8012 */ lui $t4, %hi(D_8011AE8C) # $t4, 0x8012 -/* 0139DC 80012DDC E4E60008 */ swc1 $f6, 8($a3) -/* 0139E0 80012DE0 8FAD0020 */ lw $t5, 0x20($sp) -/* 0139E4 80012DE4 8D8CAE8C */ lw $t4, %lo(D_8011AE8C)($t4) -/* 0139E8 80012DE8 3C0E8012 */ lui $t6, %hi(D_8011AE90) # $t6, 0x8012 -/* 0139EC 80012DEC ADAC0000 */ sw $t4, ($t5) -/* 0139F0 80012DF0 8FAF0024 */ lw $t7, 0x24($sp) -/* 0139F4 80012DF4 8DCEAE90 */ lw $t6, %lo(D_8011AE90)($t6) -/* 0139F8 80012DF8 3C188012 */ lui $t8, %hi(D_8011AE94) # $t8, 0x8012 -/* 0139FC 80012DFC ADEE0000 */ sw $t6, ($t7) -/* 013A00 80012E00 8FB90028 */ lw $t9, 0x28($sp) -/* 013A04 80012E04 8F18AE94 */ lw $t8, %lo(D_8011AE94)($t8) -/* 013A08 80012E08 24040002 */ li $a0, 2 -/* 013A0C 80012E0C 2405FFFF */ li $a1, -1 -/* 013A10 80012E10 0C02DDAE */ jal func_800B76B8 -/* 013A14 80012E14 AF380000 */ sw $t8, ($t9) -/* 013A18 80012E18 8FBF0014 */ lw $ra, 0x14($sp) -.L80012E1C: -/* 013A1C 80012E1C 27BD0020 */ addiu $sp, $sp, 0x20 -/* 013A20 80012E20 03E00008 */ jr $ra -/* 013A24 80012E24 00000000 */ nop - -glabel func_80012E28 -/* 013A28 80012E28 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 013A2C 80012E2C AFBF0014 */ sw $ra, 0x14($sp) -/* 013A30 80012E30 848E0048 */ lh $t6, 0x48($a0) -/* 013A34 80012E34 24010001 */ li $at, 1 -/* 013A38 80012E38 15C10039 */ bne $t6, $at, .L80012F20 -/* 013A3C 80012E3C 00802825 */ move $a1, $a0 -/* 013A40 80012E40 8C820064 */ lw $v0, 0x64($a0) -/* 013A44 80012E44 848F0000 */ lh $t7, ($a0) -/* 013A48 80012E48 84580160 */ lh $t8, 0x160($v0) -/* 013A4C 80012E4C 84880002 */ lh $t0, 2($a0) -/* 013A50 80012E50 01F8C821 */ addu $t9, $t7, $t8 -/* 013A54 80012E54 A4990000 */ sh $t9, ($a0) -/* 013A58 80012E58 84490162 */ lh $t1, 0x162($v0) -/* 013A5C 80012E5C 848B0004 */ lh $t3, 4($a0) -/* 013A60 80012E60 01095021 */ addu $t2, $t0, $t1 -/* 013A64 80012E64 A48A0002 */ sh $t2, 2($a0) -/* 013A68 80012E68 844C0164 */ lh $t4, 0x164($v0) -/* 013A6C 80012E6C 44800000 */ mtc1 $zero, $f0 -/* 013A70 80012E70 016C6821 */ addu $t5, $t3, $t4 -/* 013A74 80012E74 A48D0004 */ sh $t5, 4($a0) -/* 013A78 80012E78 804E01D7 */ lb $t6, 0x1d7($v0) -/* 013A7C 80012E7C 00000000 */ nop -/* 013A80 80012E80 29C10005 */ slti $at, $t6, 5 -/* 013A84 80012E84 10200021 */ beqz $at, .L80012F0C -/* 013A88 80012E88 00000000 */ nop -/* 013A8C 80012E8C 84440164 */ lh $a0, 0x164($v0) -/* 013A90 80012E90 AFA50028 */ sw $a1, 0x28($sp) -/* 013A94 80012E94 0C01C1FE */ jal func_800707F8 -/* 013A98 80012E98 AFA20020 */ sw $v0, 0x20($sp) -/* 013A9C 80012E9C 8FA20020 */ lw $v0, 0x20($sp) -/* 013AA0 80012EA0 E7A0001C */ swc1 $f0, 0x1c($sp) -/* 013AA4 80012EA4 84580166 */ lh $t8, 0x166($v0) -/* 013AA8 80012EA8 844F0162 */ lh $t7, 0x162($v0) -/* 013AAC 80012EAC 00000000 */ nop -/* 013AB0 80012EB0 01F82023 */ subu $a0, $t7, $t8 -/* 013AB4 80012EB4 0004CC00 */ sll $t9, $a0, 0x10 -/* 013AB8 80012EB8 0C01C1FE */ jal func_800707F8 -/* 013ABC 80012EBC 00192403 */ sra $a0, $t9, 0x10 -/* 013AC0 80012EC0 C7A4001C */ lwc1 $f4, 0x1c($sp) -/* 013AC4 80012EC4 44806000 */ mtc1 $zero, $f12 -/* 013AC8 80012EC8 46040082 */ mul.s $f2, $f0, $f4 -/* 013ACC 80012ECC 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 013AD0 80012ED0 8FA20020 */ lw $v0, 0x20($sp) -/* 013AD4 80012ED4 8FA50028 */ lw $a1, 0x28($sp) -/* 013AD8 80012ED8 460C103C */ c.lt.s $f2, $f12 -/* 013ADC 80012EDC 44813000 */ mtc1 $at, $f6 -/* 013AE0 80012EE0 45000003 */ bc1f .L80012EF0 -/* 013AE4 80012EE4 3C0141C0 */ li $at, 0x41C00000 # 24.000000 -/* 013AE8 80012EE8 10000003 */ b .L80012EF8 -/* 013AEC 80012EEC 46006006 */ mov.s $f0, $f12 -.L80012EF0: -/* 013AF0 80012EF0 46021002 */ mul.s $f0, $f2, $f2 -/* 013AF4 80012EF4 00000000 */ nop -.L80012EF8: -/* 013AF8 80012EF8 46003201 */ sub.s $f8, $f6, $f0 -/* 013AFC 80012EFC 44815000 */ mtc1 $at, $f10 -/* 013B00 80012F00 C45200D0 */ lwc1 $f18, 0xd0($v0) -/* 013B04 80012F04 460A4402 */ mul.s $f16, $f8, $f10 -/* 013B08 80012F08 46128000 */ add.s $f0, $f16, $f18 -.L80012F0C: -/* 013B0C 80012F0C C4A40010 */ lwc1 $f4, 0x10($a1) -/* 013B10 80012F10 3C018012 */ lui $at, %hi(D_8011ADD0) # $at, 0x8012 -/* 013B14 80012F14 46002180 */ add.s $f6, $f4, $f0 -/* 013B18 80012F18 E4A60010 */ swc1 $f6, 0x10($a1) -/* 013B1C 80012F1C E420ADD0 */ swc1 $f0, %lo(D_8011ADD0)($at) -.L80012F20: -/* 013B20 80012F20 8FBF0014 */ lw $ra, 0x14($sp) -/* 013B24 80012F24 27BD0028 */ addiu $sp, $sp, 0x28 -/* 013B28 80012F28 03E00008 */ jr $ra -/* 013B2C 80012F2C 00000000 */ nop - -glabel func_80012F30 -/* 013B30 80012F30 848E0048 */ lh $t6, 0x48($a0) -/* 013B34 80012F34 24010001 */ li $at, 1 -/* 013B38 80012F38 15C10014 */ bne $t6, $at, .L80012F8C -/* 013B3C 80012F3C 00000000 */ nop -/* 013B40 80012F40 8C820064 */ lw $v0, 0x64($a0) -/* 013B44 80012F44 848F0000 */ lh $t7, ($a0) -/* 013B48 80012F48 84580160 */ lh $t8, 0x160($v0) -/* 013B4C 80012F4C 84880002 */ lh $t0, 2($a0) -/* 013B50 80012F50 01F8C823 */ subu $t9, $t7, $t8 -/* 013B54 80012F54 A4990000 */ sh $t9, ($a0) -/* 013B58 80012F58 84490162 */ lh $t1, 0x162($v0) -/* 013B5C 80012F5C 848B0004 */ lh $t3, 4($a0) -/* 013B60 80012F60 01095023 */ subu $t2, $t0, $t1 -/* 013B64 80012F64 A48A0002 */ sh $t2, 2($a0) -/* 013B68 80012F68 844C0164 */ lh $t4, 0x164($v0) -/* 013B6C 80012F6C 3C018012 */ lui $at, %hi(D_8011ADD0) # $at, 0x8012 -/* 013B70 80012F70 016C6823 */ subu $t5, $t3, $t4 -/* 013B74 80012F74 A48D0004 */ sh $t5, 4($a0) -/* 013B78 80012F78 C426ADD0 */ lwc1 $f6, %lo(D_8011ADD0)($at) -/* 013B7C 80012F7C C4840010 */ lwc1 $f4, 0x10($a0) -/* 013B80 80012F80 00000000 */ nop -/* 013B84 80012F84 46062201 */ sub.s $f8, $f4, $f6 -/* 013B88 80012F88 E4880010 */ swc1 $f8, 0x10($a0) -.L80012F8C: -/* 013B8C 80012F8C 03E00008 */ jr $ra -/* 013B90 80012F90 00000000 */ nop - -glabel func_80012F94 -/* 013B94 80012F94 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 013B98 80012F98 AFBF001C */ sw $ra, 0x1c($sp) -/* 013B9C 80012F9C AFB00018 */ sw $s0, 0x18($sp) -/* 013BA0 80012FA0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 013BA4 80012FA4 44811000 */ mtc1 $at, $f2 -/* 013BA8 80012FA8 848E0006 */ lh $t6, 6($a0) -/* 013BAC 80012FAC 00808025 */ move $s0, $a0 -/* 013BB0 80012FB0 31CF8000 */ andi $t7, $t6, 0x8000 -/* 013BB4 80012FB4 46001006 */ mov.s $f0, $f2 -/* 013BB8 80012FB8 15E0012C */ bnez $t7, .L8001346C -/* 013BBC 80012FBC 46001386 */ mov.s $f14, $f2 -/* 013BC0 80012FC0 8C980040 */ lw $t8, 0x40($a0) -/* 013BC4 80012FC4 24010001 */ li $at, 1 -/* 013BC8 80012FC8 83190054 */ lb $t9, 0x54($t8) -/* 013BCC 80012FCC 00000000 */ nop -/* 013BD0 80012FD0 1721011E */ bne $t9, $at, .L8001344C -/* 013BD4 80012FD4 00000000 */ nop -/* 013BD8 80012FD8 8C8A0064 */ lw $t2, 0x64($a0) -/* 013BDC 80012FDC 240B001E */ li $t3, 30 -/* 013BE0 80012FE0 85420206 */ lh $v0, 0x206($t2) -/* 013BE4 80012FE4 3C01800E */ lui $at, %hi(D_800E5554) # $at, 0x800e -/* 013BE8 80012FE8 1840000E */ blez $v0, .L80013024 -/* 013BEC 80012FEC A14B0201 */ sb $t3, 0x201($t2) -/* 013BF0 80012FF0 44822000 */ mtc1 $v0, $f4 -/* 013BF4 80012FF4 C4205554 */ lwc1 $f0, %lo(D_800E5554)($at) -/* 013BF8 80012FF8 468021A0 */ cvt.s.w $f6, $f4 -/* 013BFC 80012FFC 3C01800E */ lui $at, %hi(D_800E5558) # $at, 0x800e -/* 013C00 80013000 C4285558 */ lwc1 $f8, %lo(D_800E5558)($at) -/* 013C04 80013004 00000000 */ nop -/* 013C08 80013008 46083282 */ mul.s $f10, $f6, $f8 -/* 013C0C 8001300C 460A1381 */ sub.s $f14, $f2, $f10 -/* 013C10 80013010 4600703C */ c.lt.s $f14, $f0 -/* 013C14 80013014 00000000 */ nop -/* 013C18 80013018 45000002 */ bc1f .L80013024 -/* 013C1C 8001301C 00000000 */ nop -/* 013C20 80013020 46000386 */ mov.s $f14, $f0 -.L80013024: -/* 013C24 80013024 854C0000 */ lh $t4, ($t2) -/* 013C28 80013028 2401FFFF */ li $at, -1 -/* 013C2C 8001302C 11810007 */ beq $t4, $at, .L8001304C -/* 013C30 80013030 00000000 */ nop -/* 013C34 80013034 814D01D8 */ lb $t5, 0x1d8($t2) -/* 013C38 80013038 00004025 */ move $t0, $zero -/* 013C3C 8001303C 11A00003 */ beqz $t5, .L8001304C -/* 013C40 80013040 00000000 */ nop -/* 013C44 80013044 1000008B */ b .L80013274 -/* 013C48 80013048 00004825 */ move $t1, $zero -.L8001304C: -/* 013C4C 8001304C 860E0048 */ lh $t6, 0x48($s0) -/* 013C50 80013050 2401003A */ li $at, 58 -/* 013C54 80013054 15C10003 */ bne $t6, $at, .L80013064 -/* 013C58 80013058 24080001 */ li $t0, 1 -/* 013C5C 8001305C 10000085 */ b .L80013274 -/* 013C60 80013060 00004825 */ move $t1, $zero -.L80013064: -/* 013C64 80013064 814901D6 */ lb $t1, 0x1d6($t2) -/* 013C68 80013068 00000000 */ nop -/* 013C6C 8001306C 29210003 */ slti $at, $t1, 3 -/* 013C70 80013070 14200003 */ bnez $at, .L80013080 -/* 013C74 80013074 25240005 */ addiu $a0, $t1, 5 -/* 013C78 80013078 00004825 */ move $t1, $zero -/* 013C7C 8001307C 25240005 */ addiu $a0, $t1, 5 -.L80013080: -/* 013C80 80013080 00004825 */ move $t1, $zero -/* 013C84 80013084 AFA0004C */ sw $zero, 0x4c($sp) -/* 013C88 80013088 AFAA0024 */ sw $t2, 0x24($sp) -/* 013C8C 8001308C 0C0078A7 */ jal func_8001E29C -/* 013C90 80013090 E7AE002C */ swc1 $f14, 0x2c($sp) -/* 013C94 80013094 0C019884 */ jal func_80066210 -/* 013C98 80013098 AFA20038 */ sw $v0, 0x38($sp) -/* 013C9C 8001309C 00027880 */ sll $t7, $v0, 2 -/* 013CA0 800130A0 8FA50038 */ lw $a1, 0x38($sp) -/* 013CA4 800130A4 01E27821 */ addu $t7, $t7, $v0 -/* 013CA8 800130A8 000F7840 */ sll $t7, $t7, 1 -/* 013CAC 800130AC 00AF2821 */ addu $a1, $a1, $t7 -/* 013CB0 800130B0 0C019888 */ jal func_80066220 -/* 013CB4 800130B4 AFA50038 */ sw $a1, 0x38($sp) -/* 013CB8 800130B8 8FAA0024 */ lw $t2, 0x24($sp) -/* 013CBC 800130BC 8FA50038 */ lw $a1, 0x38($sp) -/* 013CC0 800130C0 85580000 */ lh $t8, ($t2) -/* 013CC4 800130C4 8FA9004C */ lw $t1, 0x4c($sp) -/* 013CC8 800130C8 C7AE002C */ lwc1 $f14, 0x2c($sp) -/* 013CCC 800130CC 10580002 */ beq $v0, $t8, .L800130D8 -/* 013CD0 800130D0 00000000 */ nop -/* 013CD4 800130D4 24A50005 */ addiu $a1, $a1, 5 -.L800130D8: -/* 013CD8 800130D8 4459F800 */ cfc1 $t9, $31 -/* 013CDC 800130DC C6000030 */ lwc1 $f0, 0x30($s0) -/* 013CE0 800130E0 37210003 */ ori $at, $t9, 3 -/* 013CE4 800130E4 38210002 */ xori $at, $at, 2 -/* 013CE8 800130E8 44C1F800 */ ctc1 $at, $31 -/* 013CEC 800130EC 44806000 */ mtc1 $zero, $f12 -/* 013CF0 800130F0 46000424 */ cvt.w.s $f16, $f0 -/* 013CF4 800130F4 3C01800E */ lui $at, %hi(D_800E555C) # $at, 0x800e -/* 013CF8 800130F8 44D9F800 */ ctc1 $t9, $31 -/* 013CFC 800130FC 44038000 */ mfc1 $v1, $f16 -/* 013D00 80013100 460C003C */ c.lt.s $f0, $f12 -/* 013D04 80013104 000358C3 */ sra $t3, $v1, 3 -/* 013D08 80013108 45000003 */ bc1f .L80013118 -/* 013D0C 8001310C 01601825 */ move $v1, $t3 -/* 013D10 80013110 10000008 */ b .L80013134 -/* 013D14 80013114 46006006 */ mov.s $f0, $f12 -.L80013118: -/* 013D18 80013118 C422555C */ lwc1 $f2, %lo(D_800E555C)($at) -/* 013D1C 8001311C 00000000 */ nop -/* 013D20 80013120 4600103C */ c.lt.s $f2, $f0 -/* 013D24 80013124 00000000 */ nop -/* 013D28 80013128 45000002 */ bc1f .L80013134 -/* 013D2C 8001312C 00000000 */ nop -/* 013D30 80013130 46001006 */ mov.s $f0, $f2 -.L80013134: -/* 013D34 80013134 3C01800E */ lui $at, %hi(D_800E5560) # $at, 0x800e -/* 013D38 80013138 C4325560 */ lwc1 $f18, %lo(D_800E5560)($at) -/* 013D3C 8001313C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 013D40 80013140 46120003 */ div.s $f0, $f0, $f18 -/* 013D44 80013144 44812000 */ mtc1 $at, $f4 -/* 013D48 80013148 C6060008 */ lwc1 $f6, 8($s0) -/* 013D4C 8001314C 24040004 */ li $a0, 4 -/* 013D50 80013150 46040000 */ add.s $f0, $f0, $f4 -/* 013D54 80013154 46003202 */ mul.s $f8, $f6, $f0 -/* 013D58 80013158 E6080008 */ swc1 $f8, 8($s0) -/* 013D5C 8001315C E7AE002C */ swc1 $f14, 0x2c($sp) -/* 013D60 80013160 AFAA0024 */ sw $t2, 0x24($sp) -/* 013D64 80013164 AFA9004C */ sw $t1, 0x4c($sp) -/* 013D68 80013168 AFA50038 */ sw $a1, 0x38($sp) -/* 013D6C 8001316C 0C0078A7 */ jal func_8001E29C -/* 013D70 80013170 AFA30044 */ sw $v1, 0x44($sp) -/* 013D74 80013174 8FAA0024 */ lw $t2, 0x24($sp) -/* 013D78 80013178 8FA30044 */ lw $v1, 0x44($sp) -/* 013D7C 8001317C 814C0003 */ lb $t4, 3($t2) -/* 013D80 80013180 44835000 */ mtc1 $v1, $f10 -/* 013D84 80013184 000C6880 */ sll $t5, $t4, 2 -/* 013D88 80013188 46805420 */ cvt.s.w $f16, $f10 -/* 013D8C 8001318C 004D7021 */ addu $t6, $v0, $t5 -/* 013D90 80013190 C5D20000 */ lwc1 $f18, ($t6) -/* 013D94 80013194 8FA50038 */ lw $a1, 0x38($sp) -/* 013D98 80013198 46128102 */ mul.s $f4, $f16, $f18 -/* 013D9C 8001319C 8FA9004C */ lw $t1, 0x4c($sp) -/* 013DA0 800131A0 C7AE002C */ lwc1 $f14, 0x2c($sp) -/* 013DA4 800131A4 444FF800 */ cfc1 $t7, $31 -/* 013DA8 800131A8 00000000 */ nop -/* 013DAC 800131AC 35E10003 */ ori $at, $t7, 3 -/* 013DB0 800131B0 38210002 */ xori $at, $at, 2 -/* 013DB4 800131B4 44C1F800 */ ctc1 $at, $31 -/* 013DB8 800131B8 00000000 */ nop -/* 013DBC 800131BC 460021A4 */ cvt.w.s $f6, $f4 -/* 013DC0 800131C0 44033000 */ mfc1 $v1, $f6 -/* 013DC4 800131C4 44CFF800 */ ctc1 $t7, $31 -/* 013DC8 800131C8 2861FFCE */ slti $at, $v1, -0x32 -/* 013DCC 800131CC 10200003 */ beqz $at, .L800131DC -/* 013DD0 800131D0 0003C043 */ sra $t8, $v1, 1 -/* 013DD4 800131D4 10000027 */ b .L80013274 -/* 013DD8 800131D8 24080005 */ li $t0, 5 -.L800131DC: -/* 013DDC 800131DC 07010002 */ bgez $t8, .L800131E8 -/* 013DE0 800131E0 03001825 */ move $v1, $t8 -/* 013DE4 800131E4 00001825 */ move $v1, $zero -.L800131E8: -/* 013DE8 800131E8 90B90000 */ lbu $t9, ($a1) -/* 013DEC 800131EC 00000000 */ nop -/* 013DF0 800131F0 0079082A */ slt $at, $v1, $t9 -/* 013DF4 800131F4 10200003 */ beqz $at, .L80013204 -/* 013DF8 800131F8 00000000 */ nop -/* 013DFC 800131FC 1000001D */ b .L80013274 -/* 013E00 80013200 00004025 */ move $t0, $zero -.L80013204: -/* 013E04 80013204 90AB0001 */ lbu $t3, 1($a1) -/* 013E08 80013208 00000000 */ nop -/* 013E0C 8001320C 006B082A */ slt $at, $v1, $t3 -/* 013E10 80013210 10200003 */ beqz $at, .L80013220 -/* 013E14 80013214 00000000 */ nop -/* 013E18 80013218 10000016 */ b .L80013274 -/* 013E1C 8001321C 24080001 */ li $t0, 1 -.L80013220: -/* 013E20 80013220 90AC0002 */ lbu $t4, 2($a1) -/* 013E24 80013224 00000000 */ nop -/* 013E28 80013228 006C082A */ slt $at, $v1, $t4 -/* 013E2C 8001322C 10200003 */ beqz $at, .L8001323C -/* 013E30 80013230 00000000 */ nop -/* 013E34 80013234 1000000F */ b .L80013274 -/* 013E38 80013238 24080002 */ li $t0, 2 -.L8001323C: -/* 013E3C 8001323C 90AD0003 */ lbu $t5, 3($a1) -/* 013E40 80013240 00000000 */ nop -/* 013E44 80013244 006D082A */ slt $at, $v1, $t5 -/* 013E48 80013248 10200003 */ beqz $at, .L80013258 -/* 013E4C 8001324C 00000000 */ nop -/* 013E50 80013250 10000008 */ b .L80013274 -/* 013E54 80013254 24080003 */ li $t0, 3 -.L80013258: -/* 013E58 80013258 90AE0004 */ lbu $t6, 4($a1) -/* 013E5C 8001325C 24080005 */ li $t0, 5 -/* 013E60 80013260 006E082A */ slt $at, $v1, $t6 -/* 013E64 80013264 10200003 */ beqz $at, .L80013274 -/* 013E68 80013268 00000000 */ nop -/* 013E6C 8001326C 10000001 */ b .L80013274 -/* 013E70 80013270 24080004 */ li $t0, 4 -.L80013274: -/* 013E74 80013274 8E050068 */ lw $a1, 0x68($s0) -/* 013E78 80013278 00002025 */ move $a0, $zero -/* 013E7C 8001327C 8CAF0000 */ lw $t7, ($a1) -/* 013E80 80013280 00A01025 */ move $v0, $a1 -/* 013E84 80013284 15E00005 */ bnez $t7, .L8001329C -/* 013E88 80013288 00000000 */ nop -.L8001328C: -/* 013E8C 8001328C 8C580004 */ lw $t8, 4($v0) -/* 013E90 80013290 24840001 */ addiu $a0, $a0, 1 -/* 013E94 80013294 1300FFFD */ beqz $t8, .L8001328C -/* 013E98 80013298 24420004 */ addiu $v0, $v0, 4 -.L8001329C: -/* 013E9C 8001329C 8E190040 */ lw $t9, 0x40($s0) -/* 013EA0 800132A0 0104082A */ slt $at, $t0, $a0 -/* 013EA4 800132A4 83230055 */ lb $v1, 0x55($t9) -/* 013EA8 800132A8 00000000 */ nop -/* 013EAC 800132AC 2463FFFF */ addiu $v1, $v1, -1 -/* 013EB0 800132B0 00035880 */ sll $t3, $v1, 2 -/* 013EB4 800132B4 00AB1021 */ addu $v0, $a1, $t3 -/* 013EB8 800132B8 8C4C0000 */ lw $t4, ($v0) -/* 013EBC 800132BC 00000000 */ nop -/* 013EC0 800132C0 15800005 */ bnez $t4, .L800132D8 -/* 013EC4 800132C4 00000000 */ nop -.L800132C8: -/* 013EC8 800132C8 8C4DFFFC */ lw $t5, -4($v0) -/* 013ECC 800132CC 2463FFFF */ addiu $v1, $v1, -1 -/* 013ED0 800132D0 11A0FFFD */ beqz $t5, .L800132C8 -/* 013ED4 800132D4 2442FFFC */ addiu $v0, $v0, -4 -.L800132D8: -/* 013ED8 800132D8 10200002 */ beqz $at, .L800132E4 -/* 013EDC 800132DC 3C070081 */ lui $a3, 0x81 -/* 013EE0 800132E0 00804025 */ move $t0, $a0 -.L800132E4: -/* 013EE4 800132E4 0068082A */ slt $at, $v1, $t0 -/* 013EE8 800132E8 10200002 */ beqz $at, .L800132F4 -/* 013EEC 800132EC 3C060001 */ lui $a2, 1 -/* 013EF0 800132F0 00604025 */ move $t0, $v1 -.L800132F4: -/* 013EF4 800132F4 8E020054 */ lw $v0, 0x54($s0) -/* 013EF8 800132F8 A208003A */ sb $t0, 0x3a($s0) -/* 013EFC 800132FC 1040000D */ beqz $v0, .L80013334 -/* 013F00 80013300 3C01800E */ lui $at, %hi(D_800E5564) # $at, 0x800e -/* 013F04 80013304 C4480000 */ lwc1 $f8, ($v0) -/* 013F08 80013308 C42A5564 */ lwc1 $f10, %lo(D_800E5564)($at) -/* 013F0C 8001330C 00000000 */ nop -/* 013F10 80013310 460A403C */ c.lt.s $f8, $f10 -/* 013F14 80013314 00000000 */ nop -/* 013F18 80013318 45000006 */ bc1f .L80013334 -/* 013F1C 8001331C 00000000 */ nop -/* 013F20 80013320 914E020A */ lbu $t6, 0x20a($t2) -/* 013F24 80013324 00000000 */ nop -/* 013F28 80013328 35CF0040 */ ori $t7, $t6, 0x40 -/* 013F2C 8001332C 10000005 */ b .L80013344 -/* 013F30 80013330 A14F020A */ sb $t7, 0x20a($t2) -.L80013334: -/* 013F34 80013334 9158020A */ lbu $t8, 0x20a($t2) -/* 013F38 80013338 00000000 */ nop -/* 013F3C 8001333C 3319FFBF */ andi $t9, $t8, 0xffbf -/* 013F40 80013340 A159020A */ sb $t9, 0x20a($t2) -.L80013344: -/* 013F44 80013344 820C003A */ lb $t4, 0x3a($s0) -/* 013F48 80013348 8E0B0068 */ lw $t3, 0x68($s0) -/* 013F4C 8001334C 000C6880 */ sll $t5, $t4, 2 -/* 013F50 80013350 016D7021 */ addu $t6, $t3, $t5 -/* 013F54 80013354 9142020A */ lbu $v0, 0x20a($t2) -/* 013F58 80013358 8DC30000 */ lw $v1, ($t6) -/* 013F5C 8001335C 3048000F */ andi $t0, $v0, 0xf -/* 013F60 80013360 8C650000 */ lw $a1, ($v1) -/* 013F64 80013364 11000015 */ beqz $t0, .L800133BC -/* 013F68 80013368 304F0080 */ andi $t7, $v0, 0x80 -/* 013F6C 8001336C 11E00006 */ beqz $t7, .L80013388 -/* 013F70 80013370 2508FFFF */ addiu $t0, $t0, -1 -/* 013F74 80013374 3058FFEF */ andi $t8, $v0, 0xffef -/* 013F78 80013378 37190020 */ ori $t9, $t8, 0x20 -/* 013F7C 8001337C 25080001 */ addiu $t0, $t0, 1 -/* 013F80 80013380 1000000E */ b .L800133BC -/* 013F84 80013384 A159020A */ sb $t9, 0x20a($t2) -.L80013388: -/* 013F88 80013388 304C0040 */ andi $t4, $v0, 0x40 -/* 013F8C 8001338C 11800006 */ beqz $t4, .L800133A8 -/* 013F90 80013390 304E0020 */ andi $t6, $v0, 0x20 -/* 013F94 80013394 304BFFDF */ andi $t3, $v0, 0xffdf -/* 013F98 80013398 356D0010 */ ori $t5, $t3, 0x10 -/* 013F9C 8001339C 25080003 */ addiu $t0, $t0, 3 -/* 013FA0 800133A0 10000006 */ b .L800133BC -/* 013FA4 800133A4 A14D020A */ sb $t5, 0x20a($t2) -.L800133A8: -/* 013FA8 800133A8 11C00003 */ beqz $t6, .L800133B8 -/* 013FAC 800133AC 00000000 */ nop -/* 013FB0 800133B0 10000002 */ b .L800133BC -/* 013FB4 800133B4 25080001 */ addiu $t0, $t0, 1 -.L800133B8: -/* 013FB8 800133B8 25080003 */ addiu $t0, $t0, 3 -.L800133BC: -/* 013FBC 800133BC 84A40028 */ lh $a0, 0x28($a1) -/* 013FC0 800133C0 00087880 */ sll $t7, $t0, 2 -/* 013FC4 800133C4 18800010 */ blez $a0, .L80013408 -/* 013FC8 800133C8 01E04025 */ move $t0, $t7 -/* 013FCC 800133CC 00001025 */ move $v0, $zero -.L800133D0: -/* 013FD0 800133D0 8CB80038 */ lw $t8, 0x38($a1) -/* 013FD4 800133D4 25290001 */ addiu $t1, $t1, 1 -/* 013FD8 800133D8 03021821 */ addu $v1, $t8, $v0 -/* 013FDC 800133DC 8C790008 */ lw $t9, 8($v1) -/* 013FE0 800133E0 00000000 */ nop -/* 013FE4 800133E4 03276024 */ and $t4, $t9, $a3 -/* 013FE8 800133E8 14CC0005 */ bne $a2, $t4, .L80013400 -/* 013FEC 800133EC 0124082A */ slt $at, $t1, $a0 -/* 013FF0 800133F0 A0680007 */ sb $t0, 7($v1) -/* 013FF4 800133F4 84A40028 */ lh $a0, 0x28($a1) -/* 013FF8 800133F8 00000000 */ nop -/* 013FFC 800133FC 0124082A */ slt $at, $t1, $a0 -.L80013400: -/* 014000 80013400 1420FFF3 */ bnez $at, .L800133D0 -/* 014004 80013404 2442000C */ addiu $v0, $v0, 0xc -.L80013408: -/* 014008 80013408 C610000C */ lwc1 $f16, 0xc($s0) -/* 01400C 8001340C C5520078 */ lwc1 $f18, 0x78($t2) -/* 014010 80013410 C6060010 */ lwc1 $f6, 0x10($s0) -/* 014014 80013414 46128100 */ add.s $f4, $f16, $f18 -/* 014018 80013418 C6100014 */ lwc1 $f16, 0x14($s0) -/* 01401C 8001341C E604000C */ swc1 $f4, 0xc($s0) -/* 014020 80013420 C548007C */ lwc1 $f8, 0x7c($t2) -/* 014024 80013424 00000000 */ nop -/* 014028 80013428 46083280 */ add.s $f10, $f6, $f8 -/* 01402C 8001342C E60A0010 */ swc1 $f10, 0x10($s0) -/* 014030 80013430 C5520080 */ lwc1 $f18, 0x80($t2) -/* 014034 80013434 00000000 */ nop -/* 014038 80013438 46128100 */ add.s $f4, $f16, $f18 -/* 01403C 8001343C E6040014 */ swc1 $f4, 0x14($s0) -/* 014040 80013440 C540008C */ lwc1 $f0, 0x8c($t2) -/* 014044 80013444 10000009 */ b .L8001346C -/* 014048 80013448 00000000 */ nop -.L8001344C: -/* 01404C 8001344C 860B0048 */ lh $t3, 0x48($s0) -/* 014050 80013450 2401006D */ li $at, 109 -/* 014054 80013454 15610005 */ bne $t3, $at, .L8001346C -/* 014058 80013458 00000000 */ nop -/* 01405C 8001345C 8E0D0064 */ lw $t5, 0x64($s0) -/* 014060 80013460 00000000 */ nop -/* 014064 80013464 C5A00030 */ lwc1 $f0, 0x30($t5) -/* 014068 80013468 00000000 */ nop -.L8001346C: -/* 01406C 8001346C 3C018012 */ lui $at, %hi(D_8011AD28) # $at, 0x8012 -/* 014070 80013470 8FBF001C */ lw $ra, 0x1c($sp) -/* 014074 80013474 E420AD28 */ swc1 $f0, %lo(D_8011AD28)($at) -/* 014078 80013478 3C018012 */ lui $at, %hi(D_8011AD30) # $at, 0x8012 -/* 01407C 8001347C 8FB00018 */ lw $s0, 0x18($sp) -/* 014080 80013480 E42EAD30 */ swc1 $f14, %lo(D_8011AD30)($at) -/* 014084 80013484 03E00008 */ jr $ra -/* 014088 80013488 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_8001348C -/* 01408C 8001348C 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 014090 80013490 AFBF0024 */ sw $ra, 0x24($sp) -/* 014094 80013494 AFB00020 */ sw $s0, 0x20($sp) -/* 014098 80013498 0C004BE5 */ jal func_80012F94 -/* 01409C 8001349C 00808025 */ move $s0, $a0 -/* 0140A0 800134A0 860E0006 */ lh $t6, 6($s0) -/* 0140A4 800134A4 02002025 */ move $a0, $s0 -/* 0140A8 800134A8 31CF8000 */ andi $t7, $t6, 0x8000 -/* 0140AC 800134AC 11E0000B */ beqz $t7, .L800134DC -/* 0140B0 800134B0 3C058012 */ lui $a1, %hi(D_8011AE8C) # $a1, 0x8012 -/* 0140B4 800134B4 3C068012 */ lui $a2, %hi(D_8011AE90) # $a2, 0x8012 -/* 0140B8 800134B8 3C078012 */ lui $a3, %hi(D_8011AE94) # $a3, 0x8012 -/* 0140BC 800134BC 34188000 */ li $t8, 32768 -/* 0140C0 800134C0 AFB80010 */ sw $t8, 0x10($sp) -/* 0140C4 800134C4 24E7AE94 */ addiu $a3, %lo(D_8011AE94) # addiu $a3, $a3, -0x516c -/* 0140C8 800134C8 24C6AE90 */ addiu $a2, %lo(D_8011AE90) # addiu $a2, $a2, -0x5170 -/* 0140CC 800134CC 0C02CDD0 */ jal func_800B3740 -/* 0140D0 800134D0 24A5AE8C */ addiu $a1, %lo(D_8011AE8C) # addiu $a1, $a1, -0x5174 -/* 0140D4 800134D4 10000016 */ b .L80013530 -/* 0140D8 800134D8 00000000 */ nop -.L800134DC: -/* 0140DC 800134DC 8E190040 */ lw $t9, 0x40($s0) -/* 0140E0 800134E0 24010001 */ li $at, 1 -/* 0140E4 800134E4 83220053 */ lb $v0, 0x53($t9) -/* 0140E8 800134E8 00000000 */ nop -/* 0140EC 800134EC 14400005 */ bnez $v0, .L80013504 -/* 0140F0 800134F0 00000000 */ nop -/* 0140F4 800134F4 0C004832 */ jal func_800120C8 -/* 0140F8 800134F8 02002025 */ move $a0, $s0 -/* 0140FC 800134FC 1000000C */ b .L80013530 -/* 014100 80013500 00000000 */ nop -.L80013504: -/* 014104 80013504 14410006 */ bne $v0, $at, .L80013520 -/* 014108 80013508 24010004 */ li $at, 4 -/* 01410C 8001350C 0C004725 */ jal func_80011C94 -/* 014110 80013510 02002025 */ move $a0, $s0 -/* 014114 80013514 10000006 */ b .L80013530 -/* 014118 80013518 00000000 */ nop -/* 01411C 8001351C 24010004 */ li $at, 4 -.L80013520: -/* 014120 80013520 14410003 */ bne $v0, $at, .L80013530 -/* 014124 80013524 00000000 */ nop -/* 014128 80013528 0C0046B4 */ jal func_80011AD0 -/* 01412C 8001352C 02002025 */ move $a0, $s0 -.L80013530: -/* 014130 80013530 0C004D52 */ jal func_80013548 -/* 014134 80013534 02002025 */ move $a0, $s0 -/* 014138 80013538 8FBF0024 */ lw $ra, 0x24($sp) -/* 01413C 8001353C 8FB00020 */ lw $s0, 0x20($sp) -/* 014140 80013540 03E00008 */ jr $ra -/* 014144 80013544 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80013548 -/* 014148 80013548 848E0006 */ lh $t6, 6($a0) -/* 01414C 8001354C 00000000 */ nop -/* 014150 80013550 31CF8000 */ andi $t7, $t6, 0x8000 -/* 014154 80013554 15E00016 */ bnez $t7, .L800135B0 -/* 014158 80013558 00000000 */ nop -/* 01415C 8001355C 8C980040 */ lw $t8, 0x40($a0) -/* 014160 80013560 24010001 */ li $at, 1 -/* 014164 80013564 83190054 */ lb $t9, 0x54($t8) -/* 014168 80013568 00000000 */ nop -/* 01416C 8001356C 17210010 */ bne $t9, $at, .L800135B0 -/* 014170 80013570 00000000 */ nop -/* 014174 80013574 8C820064 */ lw $v0, 0x64($a0) -/* 014178 80013578 C484000C */ lwc1 $f4, 0xc($a0) -/* 01417C 8001357C C4460078 */ lwc1 $f6, 0x78($v0) -/* 014180 80013580 C48A0010 */ lwc1 $f10, 0x10($a0) -/* 014184 80013584 46062201 */ sub.s $f8, $f4, $f6 -/* 014188 80013588 C4840014 */ lwc1 $f4, 0x14($a0) -/* 01418C 8001358C E488000C */ swc1 $f8, 0xc($a0) -/* 014190 80013590 C450007C */ lwc1 $f16, 0x7c($v0) -/* 014194 80013594 00000000 */ nop -/* 014198 80013598 46105481 */ sub.s $f18, $f10, $f16 -/* 01419C 8001359C E4920010 */ swc1 $f18, 0x10($a0) -/* 0141A0 800135A0 C4460080 */ lwc1 $f6, 0x80($v0) -/* 0141A4 800135A4 00000000 */ nop -/* 0141A8 800135A8 46062201 */ sub.s $f8, $f4, $f6 -/* 0141AC 800135AC E4880014 */ swc1 $f8, 0x14($a0) -.L800135B0: -/* 0141B0 800135B0 03E00008 */ jr $ra -/* 0141B4 800135B4 00000000 */ nop - -glabel func_800135B8 -/* 0141B8 800135B8 27BDFF88 */ addiu $sp, $sp, -0x78 -/* 0141BC 800135BC AFBF0024 */ sw $ra, 0x24($sp) -/* 0141C0 800135C0 AFB10020 */ sw $s1, 0x20($sp) -/* 0141C4 800135C4 AFB0001C */ sw $s0, 0x1c($sp) -/* 0141C8 800135C8 8C90007C */ lw $s0, 0x7c($a0) -/* 0141CC 800135CC 3C028012 */ lui $v0, 0x8012 -/* 0141D0 800135D0 00107703 */ sra $t6, $s0, 0x1c -/* 0141D4 800135D4 31D0000F */ andi $s0, $t6, 0xf -/* 0141D8 800135D8 00501021 */ addu $v0, $v0, $s0 -/* 0141DC 800135DC 9042B048 */ lbu $v0, -0x4fb8($v0) -/* 0141E0 800135E0 8C910064 */ lw $s1, 0x64($a0) -/* 0141E4 800135E4 10400006 */ beqz $v0, .L80013600 -/* 0141E8 800135E8 00802825 */ move $a1, $a0 -/* 0141EC 800135EC 24010001 */ li $at, 1 -/* 0141F0 800135F0 10410005 */ beq $v0, $at, .L80013608 -/* 0141F4 800135F4 26230024 */ addiu $v1, $s1, 0x24 -/* 0141F8 800135F8 10000003 */ b .L80013608 -/* 0141FC 800135FC 26230048 */ addiu $v1, $s1, 0x48 -.L80013600: -/* 014200 80013600 10000001 */ b .L80013608 -/* 014204 80013604 02201825 */ move $v1, $s1 -.L80013608: -/* 014208 80013608 24040014 */ li $a0, 20 -/* 01420C 8001360C AFA30050 */ sw $v1, 0x50($sp) -/* 014210 80013610 0C0078A7 */ jal func_8001E29C -/* 014214 80013614 AFA50078 */ sw $a1, 0x78($sp) -/* 014218 80013618 3C188012 */ lui $t8, %hi(D_8011B058) # $t8, 0x8012 -/* 01421C 8001361C 2718B058 */ addiu $t8, %lo(D_8011B058) # addiu $t8, $t8, -0x4fa8 -/* 014220 80013620 02182821 */ addu $a1, $s0, $t8 -/* 014224 80013624 90B90000 */ lbu $t9, ($a1) -/* 014228 80013628 8FAE0078 */ lw $t6, 0x78($sp) -/* 01422C 8001362C 001961C0 */ sll $t4, $t9, 7 -/* 014230 80013630 01826821 */ addu $t5, $t4, $v0 -/* 014234 80013634 AFAD0048 */ sw $t5, 0x48($sp) -/* 014238 80013638 8DC40078 */ lw $a0, 0x78($t6) -/* 01423C 8001363C 0C004B8A */ jal func_80012E28 -/* 014240 80013640 AFA50028 */ sw $a1, 0x28($sp) -/* 014244 80013644 8FAF0078 */ lw $t7, 0x78($sp) -/* 014248 80013648 44802000 */ mtc1 $zero, $f4 -/* 01424C 8001364C 3C108012 */ lui $s0, %hi(D_8011AE8C) # $s0, 0x8012 -/* 014250 80013650 2610AE8C */ addiu $s0, %lo(D_8011AE8C) # addiu $s0, $s0, -0x5174 -/* 014254 80013654 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 -/* 014258 80013658 8DE60078 */ lw $a2, 0x78($t7) -/* 01425C 8001365C 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 -/* 014260 80013660 02002025 */ move $a0, $s0 -/* 014264 80013664 3C073F80 */ lui $a3, 0x3f80 -/* 014268 80013668 0C01A521 */ jal func_80069484 -/* 01426C 8001366C E7A40010 */ swc1 $f4, 0x10($sp) -/* 014270 80013670 8FB80078 */ lw $t8, 0x78($sp) -/* 014274 80013674 00000000 */ nop -/* 014278 80013678 8F040078 */ lw $a0, 0x78($t8) -/* 01427C 8001367C 0C004BCC */ jal func_80012F30 -/* 014280 80013680 00000000 */ nop -/* 014284 80013684 8FA30050 */ lw $v1, 0x50($sp) -/* 014288 80013688 00000000 */ nop -/* 01428C 8001368C C4660000 */ lwc1 $f6, ($v1) -/* 014290 80013690 00000000 */ nop -/* 014294 80013694 E7A60060 */ swc1 $f6, 0x60($sp) -/* 014298 80013698 C4680004 */ lwc1 $f8, 4($v1) -/* 01429C 8001369C 00000000 */ nop -/* 0142A0 800136A0 E7A80064 */ swc1 $f8, 0x64($sp) -/* 0142A4 800136A4 C46A0008 */ lwc1 $f10, 8($v1) -/* 0142A8 800136A8 00000000 */ nop -/* 0142AC 800136AC E7AA0068 */ swc1 $f10, 0x68($sp) -/* 0142B0 800136B0 92390072 */ lbu $t9, 0x72($s1) -/* 0142B4 800136B4 00000000 */ nop -/* 0142B8 800136B8 00196700 */ sll $t4, $t9, 0x1c -/* 0142BC 800136BC 0C01C1FE */ jal func_800707F8 -/* 0142C0 800136C0 000C2403 */ sra $a0, $t4, 0x10 -/* 0142C4 800136C4 8FA30050 */ lw $v1, 0x50($sp) -/* 0142C8 800136C8 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 -/* 0142CC 800136CC C4700010 */ lwc1 $f16, 0x10($v1) -/* 0142D0 800136D0 C464000C */ lwc1 $f4, 0xc($v1) -/* 0142D4 800136D4 46100482 */ mul.s $f18, $f0, $f16 -/* 0142D8 800136D8 3C068012 */ lui $a2, %hi(D_8011AE94) # $a2, 0x8012 -/* 0142DC 800136DC 3C0CFA00 */ lui $t4, 0xfa00 -/* 0142E0 800136E0 240DFFFF */ li $t5, -1 -/* 0142E4 800136E4 46049180 */ add.s $f6, $f18, $f4 -/* 0142E8 800136E8 24C6AE94 */ addiu $a2, %lo(D_8011AE94) # addiu $a2, $a2, -0x516c -/* 0142EC 800136EC E7A6005C */ swc1 $f6, 0x5c($sp) -/* 0142F0 800136F0 922E0070 */ lbu $t6, 0x70($s1) -/* 0142F4 800136F4 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 -/* 0142F8 800136F8 29C10002 */ slti $at, $t6, 2 -/* 0142FC 800136FC 10200005 */ beqz $at, .L80013714 -/* 014300 80013700 02002025 */ move $a0, $s0 -/* 014304 80013704 C6280074 */ lwc1 $f8, 0x74($s1) -/* 014308 80013708 00000000 */ nop -/* 01430C 8001370C 46083282 */ mul.s $f10, $f6, $f8 -/* 014310 80013710 E7AA005C */ swc1 $f10, 0x5c($sp) -.L80013714: -/* 014314 80013714 8FAF0028 */ lw $t7, 0x28($sp) -/* 014318 80013718 C7B0005C */ lwc1 $f16, 0x5c($sp) -/* 01431C 8001371C 91F80000 */ lbu $t8, ($t7) -/* 014320 80013720 3C0FFB00 */ lui $t7, 0xfb00 -/* 014324 80013724 13000006 */ beqz $t8, .L80013740 -/* 014328 80013728 27A70054 */ addiu $a3, $sp, 0x54 -/* 01432C 8001372C 3C01800E */ lui $at, %hi(D_800E5568) # $at, 0x800e -/* 014330 80013730 C4325568 */ lwc1 $f18, %lo(D_800E5568)($at) -/* 014334 80013734 00000000 */ nop -/* 014338 80013738 46128102 */ mul.s $f4, $f16, $f18 -/* 01433C 8001373C E7A4005C */ swc1 $f4, 0x5c($sp) -.L80013740: -/* 014340 80013740 8E020000 */ lw $v0, ($s0) -/* 014344 80013744 A7A00058 */ sh $zero, 0x58($sp) -/* 014348 80013748 24590008 */ addiu $t9, $v0, 8 -/* 01434C 8001374C A7A00056 */ sh $zero, 0x56($sp) -/* 014350 80013750 A7A00054 */ sh $zero, 0x54($sp) -/* 014354 80013754 A7A0006C */ sh $zero, 0x6c($sp) -/* 014358 80013758 AE190000 */ sw $t9, ($s0) -/* 01435C 8001375C AC4D0004 */ sw $t5, 4($v0) -/* 014360 80013760 AC4C0000 */ sw $t4, ($v0) -/* 014364 80013764 8E020000 */ lw $v0, ($s0) -/* 014368 80013768 2418FF00 */ li $t8, -256 -/* 01436C 8001376C 244E0008 */ addiu $t6, $v0, 8 -/* 014370 80013770 AE0E0000 */ sw $t6, ($s0) -/* 014374 80013774 AC580004 */ sw $t8, 4($v0) -/* 014378 80013778 AC4F0000 */ sw $t7, ($v0) -/* 01437C 8001377C 8FB90048 */ lw $t9, 0x48($sp) -/* 014380 80013780 240D010A */ li $t5, 266 -/* 014384 80013784 8F2C0078 */ lw $t4, 0x78($t9) -/* 014388 80013788 AFAD0014 */ sw $t5, 0x14($sp) -/* 01438C 8001378C 0C01A145 */ jal func_80068514 -/* 014390 80013790 AFAC0010 */ sw $t4, 0x10($sp) -/* 014394 80013794 922E0070 */ lbu $t6, 0x70($s1) -/* 014398 80013798 24010002 */ li $at, 2 -/* 01439C 8001379C 15C1003B */ bne $t6, $at, .L8001388C -/* 0143A0 800137A0 02002025 */ move $a0, $s0 -/* 0143A4 800137A4 8FAF0048 */ lw $t7, 0x48($sp) -/* 0143A8 800137A8 2406000E */ li $a2, 14 -/* 0143AC 800137AC 8DE5007C */ lw $a1, 0x7c($t7) -/* 0143B0 800137B0 0C01ED3A */ jal func_8007B4E8 -/* 0143B4 800137B4 00003825 */ move $a3, $zero -/* 0143B8 800137B8 8FB80048 */ lw $t8, 0x48($sp) -/* 0143BC 800137BC 8FAD0078 */ lw $t5, 0x78($sp) -/* 0143C0 800137C0 8F19007C */ lw $t9, 0x7c($t8) -/* 0143C4 800137C4 3C0B8000 */ lui $t3, 0x8000 -/* 0143C8 800137C8 13200003 */ beqz $t9, .L800137D8 -/* 0143CC 800137CC 3C048012 */ lui $a0, %hi(D_8011B008) # $a0, 0x8012 -/* 0143D0 800137D0 10000002 */ b .L800137DC -/* 0143D4 800137D4 240A0001 */ li $t2, 1 -.L800137D8: -/* 0143D8 800137D8 00005025 */ move $t2, $zero -.L800137DC: -/* 0143DC 800137DC 8DA3007C */ lw $v1, 0x7c($t5) -/* 0143E0 800137E0 8C84B008 */ lw $a0, %lo(D_8011B008)($a0) -/* 0143E4 800137E4 00037B83 */ sra $t7, $v1, 0xe -/* 0143E8 800137E8 31F83FFF */ andi $t8, $t7, 0x3fff -/* 0143EC 800137EC 3C0E800E */ lui $t6, 0x800e -/* 0143F0 800137F0 00046080 */ sll $t4, $a0, 2 -/* 0143F4 800137F4 01CC7021 */ addu $t6, $t6, $t4 -/* 0143F8 800137F8 0018C880 */ sll $t9, $t8, 2 -/* 0143FC 800137FC 8DCEC74C */ lw $t6, -0x38b4($t6) -/* 014400 80013800 0338C821 */ addu $t9, $t9, $t8 -/* 014404 80013804 0019C840 */ sll $t9, $t9, 1 -/* 014408 80013808 01802025 */ move $a0, $t4 -/* 01440C 8001380C 3C0C800E */ lui $t4, 0x800e -/* 014410 80013810 01D94021 */ addu $t0, $t6, $t9 -/* 014414 80013814 01846021 */ addu $t4, $t4, $a0 -/* 014418 80013818 010B3021 */ addu $a2, $t0, $t3 -/* 01441C 8001381C 306D3FFF */ andi $t5, $v1, 0x3fff -/* 014420 80013820 8D8CC754 */ lw $t4, -0x38ac($t4) -/* 014424 80013824 8E020000 */ lw $v0, ($s0) -/* 014428 80013828 000D7900 */ sll $t7, $t5, 4 -/* 01442C 8001382C 30CE0006 */ andi $t6, $a2, 6 -/* 014430 80013830 35D90040 */ ori $t9, $t6, 0x40 -/* 014434 80013834 332D00FF */ andi $t5, $t9, 0xff -/* 014438 80013838 018F4821 */ addu $t1, $t4, $t7 -/* 01443C 8001383C 24580008 */ addiu $t8, $v0, 8 -/* 014440 80013840 AE180000 */ sw $t8, ($s0) -/* 014444 80013844 000D6400 */ sll $t4, $t5, 0x10 -/* 014448 80013848 3C010400 */ lui $at, 0x400 -/* 01444C 8001384C 01817825 */ or $t7, $t4, $at -/* 014450 80013850 35F800AA */ ori $t8, $t7, 0xaa -/* 014454 80013854 AC580000 */ sw $t8, ($v0) -/* 014458 80013858 AC460004 */ sw $a2, 4($v0) -/* 01445C 8001385C 8E020000 */ lw $v0, ($s0) -/* 014460 80013860 35590070 */ ori $t9, $t2, 0x70 -/* 014464 80013864 332D00FF */ andi $t5, $t9, 0xff -/* 014468 80013868 244E0008 */ addiu $t6, $v0, 8 -/* 01446C 8001386C AE0E0000 */ sw $t6, ($s0) -/* 014470 80013870 000D6400 */ sll $t4, $t5, 0x10 -/* 014474 80013874 3C010500 */ lui $at, 0x500 -/* 014478 80013878 01817825 */ or $t7, $t4, $at -/* 01447C 8001387C 35F80080 */ ori $t8, $t7, 0x80 -/* 014480 80013880 012B7021 */ addu $t6, $t1, $t3 -/* 014484 80013884 AC4E0004 */ sw $t6, 4($v0) -/* 014488 80013888 AC580000 */ sw $t8, ($v0) -.L8001388C: -/* 01448C 8001388C 0C01A690 */ jal func_80069A40 -/* 014490 80013890 02002025 */ move $a0, $s0 -/* 014494 80013894 8FBF0024 */ lw $ra, 0x24($sp) -/* 014498 80013898 8FB0001C */ lw $s0, 0x1c($sp) -/* 01449C 8001389C 8FB10020 */ lw $s1, 0x20($sp) -/* 0144A0 800138A0 03E00008 */ jr $ra -/* 0144A4 800138A4 27BD0078 */ addiu $sp, $sp, 0x78 - -glabel func_800138A8 -/* 0144A8 800138A8 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 0144AC 800138AC AFBF0024 */ sw $ra, 0x24($sp) -/* 0144B0 800138B0 AFB00020 */ sw $s0, 0x20($sp) -/* 0144B4 800138B4 AFA5003C */ sw $a1, 0x3c($sp) -/* 0144B8 800138B8 00C08025 */ move $s0, $a2 -/* 0144BC 800138BC AFA70044 */ sw $a3, 0x44($sp) -/* 0144C0 800138C0 24C5000C */ addiu $a1, $a2, 0xc -/* 0144C4 800138C4 0C01C0C8 */ jal func_80070320 -/* 0144C8 800138C8 AFA40038 */ sw $a0, 0x38($sp) -/* 0144CC 800138CC 8FA40038 */ lw $a0, 0x38($sp) -/* 0144D0 800138D0 C604000C */ lwc1 $f4, 0xc($s0) -/* 0144D4 800138D4 C486000C */ lwc1 $f6, 0xc($a0) -/* 0144D8 800138D8 C60A0010 */ lwc1 $f10, 0x10($s0) -/* 0144DC 800138DC 46062200 */ add.s $f8, $f4, $f6 -/* 0144E0 800138E0 C6060014 */ lwc1 $f6, 0x14($s0) -/* 0144E4 800138E4 E608000C */ swc1 $f8, 0xc($s0) -/* 0144E8 800138E8 C4920010 */ lwc1 $f18, 0x10($a0) -/* 0144EC 800138EC 00000000 */ nop -/* 0144F0 800138F0 46125100 */ add.s $f4, $f10, $f18 -/* 0144F4 800138F4 E6040010 */ swc1 $f4, 0x10($s0) -/* 0144F8 800138F8 C4880014 */ lwc1 $f8, 0x14($a0) -/* 0144FC 800138FC 00000000 */ nop -/* 014500 80013900 46083280 */ add.s $f10, $f6, $f8 -/* 014504 80013904 0C01A748 */ jal func_80069D20 -/* 014508 80013908 E60A0014 */ swc1 $f10, 0x14($s0) -/* 01450C 8001390C C452000C */ lwc1 $f18, 0xc($v0) -/* 014510 80013910 C604000C */ lwc1 $f4, 0xc($s0) -/* 014514 80013914 C4460010 */ lwc1 $f6, 0x10($v0) -/* 014518 80013918 46049081 */ sub.s $f2, $f18, $f4 -/* 01451C 8001391C C6080010 */ lwc1 $f8, 0x10($s0) -/* 014520 80013920 46021102 */ mul.s $f4, $f2, $f2 -/* 014524 80013924 46083381 */ sub.s $f14, $f6, $f8 -/* 014528 80013928 C6120014 */ lwc1 $f18, 0x14($s0) -/* 01452C 8001392C C44A0014 */ lwc1 $f10, 0x14($v0) -/* 014530 80013930 460E7182 */ mul.s $f6, $f14, $f14 -/* 014534 80013934 46125401 */ sub.s $f16, $f10, $f18 -/* 014538 80013938 E7AE0030 */ swc1 $f14, 0x30($sp) -/* 01453C 8001393C E7B0002C */ swc1 $f16, 0x2c($sp) -/* 014540 80013940 46108282 */ mul.s $f10, $f16, $f16 -/* 014544 80013944 46062200 */ add.s $f8, $f4, $f6 -/* 014548 80013948 E7A20034 */ swc1 $f2, 0x34($sp) -/* 01454C 8001394C 0C0326B4 */ jal sqrtf -/* 014550 80013950 460A4300 */ add.s $f12, $f8, $f10 -/* 014554 80013954 44809800 */ mtc1 $zero, $f19 -/* 014558 80013958 44809000 */ mtc1 $zero, $f18 -/* 01455C 8001395C 46000121 */ cvt.d.s $f4, $f0 -/* 014560 80013960 4624903C */ c.lt.d $f18, $f4 -/* 014564 80013964 C7A20034 */ lwc1 $f2, 0x34($sp) -/* 014568 80013968 C7AE0030 */ lwc1 $f14, 0x30($sp) -/* 01456C 8001396C C7B0002C */ lwc1 $f16, 0x2c($sp) -/* 014570 80013970 4500000E */ bc1f .L800139AC -/* 014574 80013974 3C048012 */ lui $a0, %hi(D_8011AE8C) # $a0, 0x8012 -/* 014578 80013978 860E001A */ lh $t6, 0x1a($s0) -/* 01457C 8001397C 00000000 */ nop -/* 014580 80013980 448E3000 */ mtc1 $t6, $f6 -/* 014584 80013984 00000000 */ nop -/* 014588 80013988 46803220 */ cvt.s.w $f8, $f6 -/* 01458C 8001398C 00000000 */ nop -/* 014590 80013990 46004303 */ div.s $f12, $f8, $f0 -/* 014594 80013994 460C1082 */ mul.s $f2, $f2, $f12 -/* 014598 80013998 00000000 */ nop -/* 01459C 8001399C 460C7382 */ mul.s $f14, $f14, $f12 -/* 0145A0 800139A0 00000000 */ nop -/* 0145A4 800139A4 460C8402 */ mul.s $f16, $f16, $f12 -/* 0145A8 800139A8 00000000 */ nop -.L800139AC: -/* 0145AC 800139AC C60A000C */ lwc1 $f10, 0xc($s0) -/* 0145B0 800139B0 C6040010 */ lwc1 $f4, 0x10($s0) -/* 0145B4 800139B4 C6080014 */ lwc1 $f8, 0x14($s0) -/* 0145B8 800139B8 46025480 */ add.s $f18, $f10, $f2 -/* 0145BC 800139BC 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 -/* 0145C0 800139C0 460E2180 */ add.s $f6, $f4, $f14 -/* 0145C4 800139C4 E612000C */ swc1 $f18, 0xc($s0) -/* 0145C8 800139C8 46104280 */ add.s $f10, $f8, $f16 -/* 0145CC 800139CC E6060010 */ swc1 $f6, 0x10($s0) -/* 0145D0 800139D0 E60A0014 */ swc1 $f10, 0x14($s0) -/* 0145D4 800139D4 8FB80044 */ lw $t8, 0x44($sp) -/* 0145D8 800139D8 8FAF003C */ lw $t7, 0x3c($sp) -/* 0145DC 800139DC 3C068012 */ lui $a2, %hi(D_8011AE94) # $a2, 0x8012 -/* 0145E0 800139E0 24C6AE94 */ addiu $a2, %lo(D_8011AE94) # addiu $a2, $a2, -0x516c -/* 0145E4 800139E4 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 -/* 0145E8 800139E8 2484AE8C */ addiu $a0, %lo(D_8011AE8C) # addiu $a0, $a0, -0x5174 -/* 0145EC 800139EC 02003825 */ move $a3, $s0 -/* 0145F0 800139F0 AFB80014 */ sw $t8, 0x14($sp) -/* 0145F4 800139F4 0C01A145 */ jal func_80068514 -/* 0145F8 800139F8 AFAF0010 */ sw $t7, 0x10($sp) -/* 0145FC 800139FC 8FBF0024 */ lw $ra, 0x24($sp) -/* 014600 80013A00 8FB00020 */ lw $s0, 0x20($sp) -/* 014604 80013A04 03E00008 */ jr $ra -/* 014608 80013A08 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_80013A0C -/* 01460C 80013A0C 27BDFF98 */ addiu $sp, $sp, -0x68 -/* 014610 80013A10 AFBF0024 */ sw $ra, 0x24($sp) -/* 014614 80013A14 AFB10020 */ sw $s1, 0x20($sp) -/* 014618 80013A18 AFB0001C */ sw $s0, 0x1c($sp) -/* 01461C 80013A1C AFA40068 */ sw $a0, 0x68($sp) -/* 014620 80013A20 AFA5006C */ sw $a1, 0x6c($sp) -/* 014624 80013A24 AFA60070 */ sw $a2, 0x70($sp) -/* 014628 80013A28 AFA70074 */ sw $a3, 0x74($sp) -/* 01462C 80013A2C 8CE80064 */ lw $t0, 0x64($a3) -/* 014630 80013A30 3C10800E */ lui $s0, %hi(D_800DC75C) # $s0, 0x800e -/* 014634 80013A34 850F018E */ lh $t7, 0x18e($t0) -/* 014638 80013A38 2610C75C */ addiu $s0, %lo(D_800DC75C) # addiu $s0, $s0, -0x38a4 -/* 01463C 80013A3C 19E000DF */ blez $t7, .L80013DBC -/* 014640 80013A40 8FBF0024 */ lw $ra, 0x24($sp) -/* 014644 80013A44 8E180000 */ lw $t8, ($s0) -/* 014648 80013A48 3C118012 */ lui $s1, %hi(D_8011AE8C) # $s1, 0x8012 -/* 01464C 80013A4C 130000DB */ beqz $t8, .L80013DBC -/* 014650 80013A50 8FBF0024 */ lw $ra, 0x24($sp) -/* 014654 80013A54 8C890000 */ lw $t1, ($a0) -/* 014658 80013A58 2631AE8C */ addiu $s1, %lo(D_8011AE8C) # addiu $s1, $s1, -0x5174 -/* 01465C 80013A5C AE290000 */ sw $t1, ($s1) -/* 014660 80013A60 8CAB0000 */ lw $t3, ($a1) -/* 014664 80013A64 3C018012 */ lui $at, %hi(D_8011AE90) # $at, 0x8012 -/* 014668 80013A68 AC2BAE90 */ sw $t3, %lo(D_8011AE90)($at) -/* 01466C 80013A6C 8CCD0000 */ lw $t5, ($a2) -/* 014670 80013A70 3C018012 */ lui $at, %hi(D_8011AE94) # $at, 0x8012 -/* 014674 80013A74 AC2DAE94 */ sw $t5, %lo(D_8011AE94)($at) -/* 014678 80013A78 81060002 */ lb $a2, 2($t0) -/* 01467C 80013A7C 24040015 */ li $a0, 21 -/* 014680 80013A80 28C1000B */ slti $at, $a2, 0xb -/* 014684 80013A84 14200002 */ bnez $at, .L80013A90 -/* 014688 80013A88 00000000 */ nop -/* 01468C 80013A8C 00003025 */ move $a2, $zero -.L80013A90: -/* 014690 80013A90 810501D6 */ lb $a1, 0x1d6($t0) -/* 014694 80013A94 00000000 */ nop -/* 014698 80013A98 28A10003 */ slti $at, $a1, 3 -/* 01469C 80013A9C 14200002 */ bnez $at, .L80013AA8 -/* 0146A0 80013AA0 00000000 */ nop -/* 0146A4 80013AA4 00002825 */ move $a1, $zero -.L80013AA8: -/* 0146A8 80013AA8 AFA50050 */ sw $a1, 0x50($sp) -/* 0146AC 80013AAC AFA6004C */ sw $a2, 0x4c($sp) -/* 0146B0 80013AB0 0C0078A7 */ jal func_8001E29C -/* 0146B4 80013AB4 AFA80064 */ sw $t0, 0x64($sp) -/* 0146B8 80013AB8 8FA50050 */ lw $a1, 0x50($sp) -/* 0146BC 80013ABC 8FA6004C */ lw $a2, 0x4c($sp) -/* 0146C0 80013AC0 00057080 */ sll $t6, $a1, 2 -/* 0146C4 80013AC4 01C57021 */ addu $t6, $t6, $a1 -/* 0146C8 80013AC8 000E7040 */ sll $t6, $t6, 1 -/* 0146CC 80013ACC 01C62821 */ addu $a1, $t6, $a2 -/* 0146D0 80013AD0 00057900 */ sll $t7, $a1, 4 -/* 0146D4 80013AD4 01E21821 */ addu $v1, $t7, $v0 -/* 0146D8 80013AD8 AFA30058 */ sw $v1, 0x58($sp) -/* 0146DC 80013ADC 84780000 */ lh $t8, ($v1) -/* 0146E0 80013AE0 8E190000 */ lw $t9, ($s0) -/* 0146E4 80013AE4 44982000 */ mtc1 $t8, $f4 -/* 0146E8 80013AE8 3C0D8012 */ lui $t5, %hi(D_8011B010) # $t5, 0x8012 -/* 0146EC 80013AEC 468021A0 */ cvt.s.w $f6, $f4 -/* 0146F0 80013AF0 25ADB010 */ addiu $t5, %lo(D_8011B010) # addiu $t5, $t5, -0x4ff0 -/* 0146F4 80013AF4 00CD3821 */ addu $a3, $a2, $t5 -/* 0146F8 80013AF8 E726000C */ swc1 $f6, 0xc($t9) -/* 0146FC 80013AFC 84690002 */ lh $t1, 2($v1) -/* 014700 80013B00 8E0A0000 */ lw $t2, ($s0) -/* 014704 80013B04 44894000 */ mtc1 $t1, $f8 -/* 014708 80013B08 00000000 */ nop -/* 01470C 80013B0C 468042A0 */ cvt.s.w $f10, $f8 -/* 014710 80013B10 E54A0010 */ swc1 $f10, 0x10($t2) -/* 014714 80013B14 846B0004 */ lh $t3, 4($v1) -/* 014718 80013B18 8E0C0000 */ lw $t4, ($s0) -/* 01471C 80013B1C 448B8000 */ mtc1 $t3, $f16 -/* 014720 80013B20 00000000 */ nop -/* 014724 80013B24 468084A0 */ cvt.s.w $f18, $f16 -/* 014728 80013B28 E5920014 */ swc1 $f18, 0x14($t4) -/* 01472C 80013B2C 90EE0000 */ lbu $t6, ($a3) -/* 014730 80013B30 AFA70028 */ sw $a3, 0x28($sp) -/* 014734 80013B34 000E7E40 */ sll $t7, $t6, 0x19 -/* 014738 80013B38 0C01C1F1 */ jal func_800707C4 -/* 01473C 80013B3C 000F2403 */ sra $a0, $t7, 0x10 -/* 014740 80013B40 8FB90058 */ lw $t9, 0x58($sp) -/* 014744 80013B44 8E020000 */ lw $v0, ($s0) -/* 014748 80013B48 87290006 */ lh $t1, 6($t9) -/* 01474C 80013B4C C4440010 */ lwc1 $f4, 0x10($v0) -/* 014750 80013B50 44893000 */ mtc1 $t1, $f6 -/* 014754 80013B54 00000000 */ nop -/* 014758 80013B58 46803220 */ cvt.s.w $f8, $f6 -/* 01475C 80013B5C 46004282 */ mul.s $f10, $f8, $f0 -/* 014760 80013B60 460A2400 */ add.s $f16, $f4, $f10 -/* 014764 80013B64 E4500010 */ swc1 $f16, 0x10($v0) -/* 014768 80013B68 8FAA0028 */ lw $t2, 0x28($sp) -/* 01476C 80013B6C 00000000 */ nop -/* 014770 80013B70 914B0000 */ lbu $t3, ($t2) -/* 014774 80013B74 00000000 */ nop -/* 014778 80013B78 000B6680 */ sll $t4, $t3, 0x1a -/* 01477C 80013B7C 0C01C1FE */ jal func_800707F8 -/* 014780 80013B80 000C2403 */ sra $a0, $t4, 0x10 -/* 014784 80013B84 3C01800E */ lui $at, %hi(D_800E556C) # $at, 0x800e -/* 014788 80013B88 C432556C */ lwc1 $f18, %lo(D_800E556C)($at) -/* 01478C 80013B8C 3C01800E */ lui $at, %hi(D_800E5570) # $at, 0x800e -/* 014790 80013B90 46120182 */ mul.s $f6, $f0, $f18 -/* 014794 80013B94 8FA20058 */ lw $v0, 0x58($sp) -/* 014798 80013B98 C4285570 */ lwc1 $f8, %lo(D_800E5570)($at) -/* 01479C 80013B9C C4440008 */ lwc1 $f4, 8($v0) -/* 0147A0 80013BA0 46083080 */ add.s $f2, $f6, $f8 -/* 0147A4 80013BA4 8E0E0000 */ lw $t6, ($s0) -/* 0147A8 80013BA8 46022282 */ mul.s $f10, $f4, $f2 -/* 0147AC 80013BAC 8FA80064 */ lw $t0, 0x64($sp) -/* 0147B0 80013BB0 240A0800 */ li $t2, 2048 -/* 0147B4 80013BB4 E5CA0008 */ swc1 $f10, 8($t6) -/* 0147B8 80013BB8 8FAF0028 */ lw $t7, 0x28($sp) -/* 0147BC 80013BBC 8E090000 */ lw $t1, ($s0) -/* 0147C0 80013BC0 91F80000 */ lbu $t8, ($t7) -/* 0147C4 80013BC4 C450000C */ lwc1 $f16, 0xc($v0) -/* 0147C8 80013BC8 0018CAC0 */ sll $t9, $t8, 0xb -/* 0147CC 80013BCC A5390000 */ sh $t9, ($t1) -/* 0147D0 80013BD0 8E0B0000 */ lw $t3, ($s0) -/* 0147D4 80013BD4 46028302 */ mul.s $f12, $f16, $f2 -/* 0147D8 80013BD8 A56A0002 */ sh $t2, 2($t3) -/* 0147DC 80013BDC 8E0C0000 */ lw $t4, ($s0) -/* 0147E0 80013BE0 00000000 */ nop -/* 0147E4 80013BE4 A5800004 */ sh $zero, 4($t4) -/* 0147E8 80013BE8 81040189 */ lb $a0, 0x189($t0) -/* 0147EC 80013BEC 00000000 */ nop -/* 0147F0 80013BF0 10800003 */ beqz $a0, .L80013C00 -/* 0147F4 80013BF4 28810003 */ slti $at, $a0, 3 -/* 0147F8 80013BF8 2484FFFF */ addiu $a0, $a0, -1 -/* 0147FC 80013BFC 28810003 */ slti $at, $a0, 3 -.L80013C00: -/* 014800 80013C00 14200002 */ bnez $at, .L80013C0C -/* 014804 80013C04 00000000 */ nop -/* 014808 80013C08 24040002 */ li $a0, 2 -.L80013C0C: -/* 01480C 80013C0C 44849000 */ mtc1 $a0, $f18 -/* 014810 80013C10 3C01800E */ lui $at, %hi(D_800E557C) # $at, 0x800e -/* 014814 80013C14 468091A0 */ cvt.s.w $f6, $f18 -/* 014818 80013C18 C4255578 */ lwc1 $f5, %lo(D_800E5578)($at) -/* 01481C 80013C1C C424557C */ lwc1 $f4, %lo(D_800E557C)($at) -/* 014820 80013C20 46003221 */ cvt.d.s $f8, $f6 -/* 014824 80013C24 46244282 */ mul.d $f10, $f8, $f4 -/* 014828 80013C28 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 01482C 80013C2C 44818800 */ mtc1 $at, $f17 -/* 014830 80013C30 44808000 */ mtc1 $zero, $f16 -/* 014834 80013C34 8E020000 */ lw $v0, ($s0) -/* 014838 80013C38 46305480 */ add.d $f18, $f10, $f16 -/* 01483C 80013C3C C4460008 */ lwc1 $f6, 8($v0) -/* 014840 80013C40 46209020 */ cvt.s.d $f0, $f18 -/* 014844 80013C44 00047080 */ sll $t6, $a0, 2 -/* 014848 80013C48 46003202 */ mul.s $f8, $f6, $f0 -/* 01484C 80013C4C 2407FF00 */ li $a3, -256 -/* 014850 80013C50 02202025 */ move $a0, $s1 -/* 014854 80013C54 E4480008 */ swc1 $f8, 8($v0) -/* 014858 80013C58 8E020000 */ lw $v0, ($s0) -/* 01485C 80013C5C 46006302 */ mul.s $f12, $f12, $f0 -/* 014860 80013C60 8C4D0068 */ lw $t5, 0x68($v0) -/* 014864 80013C64 00000000 */ nop -/* 014868 80013C68 01AE7821 */ addu $t7, $t5, $t6 -/* 01486C 80013C6C 8DE50000 */ lw $a1, ($t7) -/* 014870 80013C70 3C0DFB00 */ lui $t5, 0xfb00 -/* 014874 80013C74 8CB80000 */ lw $t8, ($a1) -/* 014878 80013C78 00000000 */ nop -/* 01487C 80013C7C AFB8005C */ sw $t8, 0x5c($sp) -/* 014880 80013C80 80B9001F */ lb $t9, 0x1f($a1) -/* 014884 80013C84 00000000 */ nop -/* 014888 80013C88 00194880 */ sll $t1, $t9, 2 -/* 01488C 80013C8C 00A95021 */ addu $t2, $a1, $t1 -/* 014890 80013C90 8D4B0004 */ lw $t3, 4($t2) -/* 014894 80013C94 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 -/* 014898 80013C98 AC4B0044 */ sw $t3, 0x44($v0) -/* 01489C 80013C9C 8E230000 */ lw $v1, ($s1) -/* 0148A0 80013CA0 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 -/* 0148A4 80013CA4 246C0008 */ addiu $t4, $v1, 8 -/* 0148A8 80013CA8 AE2C0000 */ sw $t4, ($s1) -/* 0148AC 80013CAC AC670004 */ sw $a3, 4($v1) -/* 0148B0 80013CB0 AC6D0000 */ sw $t5, ($v1) -/* 0148B4 80013CB4 850E018E */ lh $t6, 0x18e($t0) -/* 0148B8 80013CB8 3C0DFA00 */ lui $t5, 0xfa00 -/* 0148BC 80013CBC 29C10040 */ slti $at, $t6, 0x40 -/* 0148C0 80013CC0 1020000D */ beqz $at, .L80013CF8 -/* 0148C4 80013CC4 00000000 */ nop -/* 0148C8 80013CC8 8E230000 */ lw $v1, ($s1) -/* 0148CC 80013CCC 3C18FA00 */ lui $t8, 0xfa00 -/* 0148D0 80013CD0 246F0008 */ addiu $t7, $v1, 8 -/* 0148D4 80013CD4 AE2F0000 */ sw $t7, ($s1) -/* 0148D8 80013CD8 AC780000 */ sw $t8, ($v1) -/* 0148DC 80013CDC 8519018E */ lh $t9, 0x18e($t0) -/* 0148E0 80013CE0 00000000 */ nop -/* 0148E4 80013CE4 00194880 */ sll $t1, $t9, 2 -/* 0148E8 80013CE8 312A00FF */ andi $t2, $t1, 0xff -/* 0148EC 80013CEC 01475825 */ or $t3, $t2, $a3 -/* 0148F0 80013CF0 10000007 */ b .L80013D10 -/* 0148F4 80013CF4 AC6B0004 */ sw $t3, 4($v1) -.L80013CF8: -/* 0148F8 80013CF8 8E230000 */ lw $v1, ($s1) -/* 0148FC 80013CFC 240EFFFF */ li $t6, -1 -/* 014900 80013D00 246C0008 */ addiu $t4, $v1, 8 -/* 014904 80013D04 AE2C0000 */ sw $t4, ($s1) -/* 014908 80013D08 AC6E0004 */ sw $t6, 4($v1) -/* 01490C 80013D0C AC6D0000 */ sw $t5, ($v1) -.L80013D10: -/* 014910 80013D10 8E060000 */ lw $a2, ($s0) -/* 014914 80013D14 8FA70074 */ lw $a3, 0x74($sp) -/* 014918 80013D18 E7AC0010 */ swc1 $f12, 0x10($sp) -/* 01491C 80013D1C 0C01A3EA */ jal func_80068FA8 -/* 014920 80013D20 AFA80064 */ sw $t0, 0x64($sp) -/* 014924 80013D24 8FA4005C */ lw $a0, 0x5c($sp) -/* 014928 80013D28 8E050000 */ lw $a1, ($s0) -/* 01492C 80013D2C 00003025 */ move $a2, $zero -/* 014930 80013D30 24070004 */ li $a3, 4 -/* 014934 80013D34 0C0050EA */ jal func_800143A8 -/* 014938 80013D38 AFA00010 */ sw $zero, 0x10($sp) -/* 01493C 80013D3C 8E230000 */ lw $v1, ($s1) -/* 014940 80013D40 8FA80064 */ lw $t0, 0x64($sp) -/* 014944 80013D44 246F0008 */ addiu $t7, $v1, 8 -/* 014948 80013D48 AE2F0000 */ sw $t7, ($s1) -/* 01494C 80013D4C 3C18BC00 */ lui $t8, (0xBC00000A >> 16) # lui $t8, 0xbc00 -/* 014950 80013D50 3718000A */ ori $t8, (0xBC00000A & 0xFFFF) # ori $t8, $t8, 0xa -/* 014954 80013D54 AC780000 */ sw $t8, ($v1) -/* 014958 80013D58 AC600004 */ sw $zero, 4($v1) -/* 01495C 80013D5C 8519018E */ lh $t9, 0x18e($t0) -/* 014960 80013D60 3C0AFA00 */ lui $t2, 0xfa00 -/* 014964 80013D64 2B210040 */ slti $at, $t9, 0x40 -/* 014968 80013D68 10200007 */ beqz $at, .L80013D88 -/* 01496C 80013D6C 00000000 */ nop -/* 014970 80013D70 8E230000 */ lw $v1, ($s1) -/* 014974 80013D74 240BFFFF */ li $t3, -1 -/* 014978 80013D78 24690008 */ addiu $t1, $v1, 8 -/* 01497C 80013D7C AE290000 */ sw $t1, ($s1) -/* 014980 80013D80 AC6B0004 */ sw $t3, 4($v1) -/* 014984 80013D84 AC6A0000 */ sw $t2, ($v1) -.L80013D88: -/* 014988 80013D88 8E2C0000 */ lw $t4, ($s1) -/* 01498C 80013D8C 8FAD0068 */ lw $t5, 0x68($sp) -/* 014990 80013D90 3C0E8012 */ lui $t6, %hi(D_8011AE90) # $t6, 0x8012 -/* 014994 80013D94 ADAC0000 */ sw $t4, ($t5) -/* 014998 80013D98 8FAF006C */ lw $t7, 0x6c($sp) -/* 01499C 80013D9C 8DCEAE90 */ lw $t6, %lo(D_8011AE90)($t6) -/* 0149A0 80013DA0 3C188012 */ lui $t8, %hi(D_8011AE94) # $t8, 0x8012 -/* 0149A4 80013DA4 ADEE0000 */ sw $t6, ($t7) -/* 0149A8 80013DA8 8FB90070 */ lw $t9, 0x70($sp) -/* 0149AC 80013DAC 8F18AE94 */ lw $t8, %lo(D_8011AE94)($t8) -/* 0149B0 80013DB0 00000000 */ nop -/* 0149B4 80013DB4 AF380000 */ sw $t8, ($t9) -/* 0149B8 80013DB8 8FBF0024 */ lw $ra, 0x24($sp) -.L80013DBC: -/* 0149BC 80013DBC 8FB0001C */ lw $s0, 0x1c($sp) -/* 0149C0 80013DC0 8FB10020 */ lw $s1, 0x20($sp) -/* 0149C4 80013DC4 03E00008 */ jr $ra -/* 0149C8 80013DC8 27BD0068 */ addiu $sp, $sp, 0x68 - -glabel func_80013DCC -/* 0149CC 80013DCC 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 0149D0 80013DD0 AFBF0024 */ sw $ra, 0x24($sp) -/* 0149D4 80013DD4 AFB10020 */ sw $s1, 0x20($sp) -/* 0149D8 80013DD8 AFB0001C */ sw $s0, 0x1c($sp) -/* 0149DC 80013DDC AFA40058 */ sw $a0, 0x58($sp) -/* 0149E0 80013DE0 AFA5005C */ sw $a1, 0x5c($sp) -/* 0149E4 80013DE4 AFA60060 */ sw $a2, 0x60($sp) -/* 0149E8 80013DE8 AFA70064 */ sw $a3, 0x64($sp) -/* 0149EC 80013DEC 8CEB0064 */ lw $t3, 0x64($a3) -/* 0149F0 80013DF0 3C188012 */ lui $t8, 0x8012 -/* 0149F4 80013DF4 81680002 */ lb $t0, 2($t3) -/* 0149F8 80013DF8 3C10800E */ lui $s0, %hi(D_800DC764) # $s0, 0x800e -/* 0149FC 80013DFC 00087880 */ sll $t7, $t0, 2 -/* 014A00 80013E00 030FC021 */ addu $t8, $t8, $t7 -/* 014A04 80013E04 9318B07B */ lbu $t8, -0x4f85($t8) -/* 014A08 80013E08 2610C764 */ addiu $s0, %lo(D_800DC764) # addiu $s0, $s0, -0x389c -/* 014A0C 80013E0C 1300009C */ beqz $t8, .L80014080 -/* 014A10 80013E10 8FBF0024 */ lw $ra, 0x24($sp) -/* 014A14 80013E14 8E190000 */ lw $t9, ($s0) -/* 014A18 80013E18 3C118012 */ lui $s1, %hi(D_8011AE8C) # $s1, 0x8012 -/* 014A1C 80013E1C 13200097 */ beqz $t9, .L8001407C -/* 014A20 80013E20 2631AE8C */ addiu $s1, %lo(D_8011AE8C) # addiu $s1, $s1, -0x5174 -/* 014A24 80013E24 8C8D0000 */ lw $t5, ($a0) -/* 014A28 80013E28 3C018012 */ lui $at, %hi(D_8011AE90) # $at, 0x8012 -/* 014A2C 80013E2C AE2D0000 */ sw $t5, ($s1) -/* 014A30 80013E30 8CAF0000 */ lw $t7, ($a1) -/* 014A34 80013E34 24040016 */ li $a0, 22 -/* 014A38 80013E38 AC2FAE90 */ sw $t7, %lo(D_8011AE90)($at) -/* 014A3C 80013E3C 8CD90000 */ lw $t9, ($a2) -/* 014A40 80013E40 3C018012 */ lui $at, %hi(D_8011AE94) # $at, 0x8012 -/* 014A44 80013E44 AFAB0054 */ sw $t3, 0x54($sp) -/* 014A48 80013E48 0C0078A7 */ jal func_8001E29C -/* 014A4C 80013E4C AC39AE94 */ sw $t9, %lo(D_8011AE94)($at) -/* 014A50 80013E50 8FAB0054 */ lw $t3, 0x54($sp) -/* 014A54 80013E54 00000000 */ nop -/* 014A58 80013E58 816401D6 */ lb $a0, 0x1d6($t3) -/* 014A5C 80013E5C 00000000 */ nop -/* 014A60 80013E60 04800003 */ bltz $a0, .L80013E70 -/* 014A64 80013E64 28810003 */ slti $at, $a0, 3 -/* 014A68 80013E68 14200002 */ bnez $at, .L80013E74 -/* 014A6C 80013E6C 00000000 */ nop -.L80013E70: -/* 014A70 80013E70 00002025 */ move $a0, $zero -.L80013E74: -/* 014A74 80013E74 81680002 */ lb $t0, 2($t3) -/* 014A78 80013E78 00046080 */ sll $t4, $a0, 2 -/* 014A7C 80013E7C 01846021 */ addu $t4, $t4, $a0 -/* 014A80 80013E80 000C6880 */ sll $t5, $t4, 2 -/* 014A84 80013E84 2901000B */ slti $at, $t0, 0xb -/* 014A88 80013E88 14200002 */ bnez $at, .L80013E94 -/* 014A8C 80013E8C 01A21821 */ addu $v1, $t5, $v0 -/* 014A90 80013E90 00004025 */ move $t0, $zero -.L80013E94: -/* 014A94 80013E94 C4640000 */ lwc1 $f4, ($v1) -/* 014A98 80013E98 8E0E0000 */ lw $t6, ($s0) -/* 014A9C 80013E9C 3C0C8012 */ lui $t4, %hi(D_8011B078) # $t4, 0x8012 -/* 014AA0 80013EA0 E5C4000C */ swc1 $f4, 0xc($t6) -/* 014AA4 80013EA4 8E0F0000 */ lw $t7, ($s0) -/* 014AA8 80013EA8 C4660004 */ lwc1 $f6, 4($v1) -/* 014AAC 80013EAC 258CB078 */ addiu $t4, %lo(D_8011B078) # addiu $t4, $t4, -0x4f88 -/* 014AB0 80013EB0 E5E60010 */ swc1 $f6, 0x10($t7) -/* 014AB4 80013EB4 8E180000 */ lw $t8, ($s0) -/* 014AB8 80013EB8 C4680008 */ lwc1 $f8, 8($v1) -/* 014ABC 80013EBC 0008C880 */ sll $t9, $t0, 2 -/* 014AC0 80013EC0 032C4821 */ addu $t1, $t9, $t4 -/* 014AC4 80013EC4 E7080014 */ swc1 $f8, 0x14($t8) -/* 014AC8 80013EC8 912D0001 */ lbu $t5, 1($t1) -/* 014ACC 80013ECC 2463000C */ addiu $v1, $v1, 0xc -/* 014AD0 80013ED0 000D7680 */ sll $t6, $t5, 0x1a -/* 014AD4 80013ED4 000E2403 */ sra $a0, $t6, 0x10 -/* 014AD8 80013ED8 AFA30048 */ sw $v1, 0x48($sp) -/* 014ADC 80013EDC AFAB0054 */ sw $t3, 0x54($sp) -/* 014AE0 80013EE0 0C01C1FE */ jal func_800707F8 -/* 014AE4 80013EE4 AFA90028 */ sw $t1, 0x28($sp) -/* 014AE8 80013EE8 3C01800E */ lui $at, %hi(D_800E5580) # $at, 0x800e -/* 014AEC 80013EEC C42A5580 */ lwc1 $f10, %lo(D_800E5580)($at) -/* 014AF0 80013EF0 3C01800E */ lui $at, %hi(D_800E5584) # $at, 0x800e -/* 014AF4 80013EF4 460A0402 */ mul.s $f16, $f0, $f10 -/* 014AF8 80013EF8 8FA30048 */ lw $v1, 0x48($sp) -/* 014AFC 80013EFC C4325584 */ lwc1 $f18, %lo(D_800E5584)($at) -/* 014B00 80013F00 C4640000 */ lwc1 $f4, ($v1) -/* 014B04 80013F04 46128080 */ add.s $f2, $f16, $f18 -/* 014B08 80013F08 8E180000 */ lw $t8, ($s0) -/* 014B0C 80013F0C 46022182 */ mul.s $f6, $f4, $f2 -/* 014B10 80013F10 8FA90028 */ lw $t1, 0x28($sp) -/* 014B14 80013F14 8FAB0054 */ lw $t3, 0x54($sp) -/* 014B18 80013F18 3C07800E */ lui $a3, 0x800e -/* 014B1C 80013F1C E7060008 */ swc1 $f6, 8($t8) -/* 014B20 80013F20 C4680004 */ lwc1 $f8, 4($v1) -/* 014B24 80013F24 91390002 */ lbu $t9, 2($t1) -/* 014B28 80013F28 46024282 */ mul.s $f10, $f8, $f2 -/* 014B2C 80013F2C 8E0D0000 */ lw $t5, ($s0) -/* 014B30 80013F30 00196300 */ sll $t4, $t9, 0xc -/* 014B34 80013F34 2401FF00 */ li $at, -256 -/* 014B38 80013F38 E7AA0038 */ swc1 $f10, 0x38($sp) -/* 014B3C 80013F3C A5AC0000 */ sh $t4, ($t5) -/* 014B40 80013F40 8E0E0000 */ lw $t6, ($s0) -/* 014B44 80013F44 02202025 */ move $a0, $s1 -/* 014B48 80013F48 A5C00002 */ sh $zero, 2($t6) -/* 014B4C 80013F4C 8E0F0000 */ lw $t7, ($s0) -/* 014B50 80013F50 24050002 */ li $a1, 2 -/* 014B54 80013F54 A5E00004 */ sh $zero, 4($t7) -/* 014B58 80013F58 8E080000 */ lw $t0, ($s0) -/* 014B5C 80013F5C 24630004 */ addiu $v1, $v1, 4 -/* 014B60 80013F60 8D180068 */ lw $t8, 0x68($t0) -/* 014B64 80013F64 00000000 */ nop -/* 014B68 80013F68 8F020000 */ lw $v0, ($t8) -/* 014B6C 80013F6C 00000000 */ nop -/* 014B70 80013F70 8C590000 */ lw $t9, ($v0) -/* 014B74 80013F74 00000000 */ nop -/* 014B78 80013F78 AFB9004C */ sw $t9, 0x4c($sp) -/* 014B7C 80013F7C 804C001F */ lb $t4, 0x1f($v0) -/* 014B80 80013F80 00000000 */ nop -/* 014B84 80013F84 000C6880 */ sll $t5, $t4, 2 -/* 014B88 80013F88 004D7021 */ addu $t6, $v0, $t5 -/* 014B8C 80013F8C 8DCF0004 */ lw $t7, 4($t6) -/* 014B90 80013F90 00000000 */ nop -/* 014B94 80013F94 AD0F0044 */ sw $t7, 0x44($t0) -/* 014B98 80013F98 912A0001 */ lbu $t2, 1($t1) -/* 014B9C 80013F9C 816C0184 */ lb $t4, 0x184($t3) -/* 014BA0 80013FA0 000AC0C0 */ sll $t8, $t2, 3 -/* 014BA4 80013FA4 000C6880 */ sll $t5, $t4, 2 -/* 014BA8 80013FA8 3319007F */ andi $t9, $t8, 0x7f -/* 014BAC 80013FAC 00ED3821 */ addu $a3, $a3, $t5 -/* 014BB0 80013FB0 272A0080 */ addiu $t2, $t9, 0x80 -/* 014BB4 80013FB4 8CE7C84C */ lw $a3, -0x37b4($a3) -/* 014BB8 80013FB8 0C01FD65 */ jal func_8007F594 -/* 014BBC 80013FBC 01413025 */ or $a2, $t2, $at -/* 014BC0 80013FC0 C7B00038 */ lwc1 $f16, 0x38($sp) -/* 014BC4 80013FC4 3C058012 */ lui $a1, %hi(D_8011AE90) # $a1, 0x8012 -/* 014BC8 80013FC8 8E060000 */ lw $a2, ($s0) -/* 014BCC 80013FCC 8FA70064 */ lw $a3, 0x64($sp) -/* 014BD0 80013FD0 24A5AE90 */ addiu $a1, %lo(D_8011AE90) # addiu $a1, $a1, -0x5170 -/* 014BD4 80013FD4 02202025 */ move $a0, $s1 -/* 014BD8 80013FD8 0C01A3EA */ jal func_80068FA8 -/* 014BDC 80013FDC E7B00010 */ swc1 $f16, 0x10($sp) -/* 014BE0 80013FE0 240E0001 */ li $t6, 1 -/* 014BE4 80013FE4 3C01800E */ lui $at, %hi(D_800DC720) # $at, 0x800e -/* 014BE8 80013FE8 AC2EC720 */ sw $t6, %lo(D_800DC720)($at) -/* 014BEC 80013FEC 8E050000 */ lw $a1, ($s0) -/* 014BF0 80013FF0 8FA4004C */ lw $a0, 0x4c($sp) -/* 014BF4 80013FF4 00003025 */ move $a2, $zero -/* 014BF8 80013FF8 24070004 */ li $a3, 4 -/* 014BFC 80013FFC 0C0050EA */ jal func_800143A8 -/* 014C00 80014000 AFA00010 */ sw $zero, 0x10($sp) -/* 014C04 80014004 3C01800E */ lui $at, %hi(D_800DC720) # $at, 0x800e -/* 014C08 80014008 AC20C720 */ sw $zero, %lo(D_800DC720)($at) -/* 014C0C 8001400C 8E230000 */ lw $v1, ($s1) -/* 014C10 80014010 3C18BC00 */ lui $t8, (0xBC00000A >> 16) # lui $t8, 0xbc00 -/* 014C14 80014014 246F0008 */ addiu $t7, $v1, 8 -/* 014C18 80014018 AE2F0000 */ sw $t7, ($s1) -/* 014C1C 8001401C 3718000A */ ori $t8, (0xBC00000A & 0xFFFF) # ori $t8, $t8, 0xa -/* 014C20 80014020 AC780000 */ sw $t8, ($v1) -/* 014C24 80014024 AC600004 */ sw $zero, 4($v1) -/* 014C28 80014028 8E230000 */ lw $v1, ($s1) -/* 014C2C 8001402C 3C0CFA00 */ lui $t4, 0xfa00 -/* 014C30 80014030 24790008 */ addiu $t9, $v1, 8 -/* 014C34 80014034 AE390000 */ sw $t9, ($s1) -/* 014C38 80014038 240DFFFF */ li $t5, -1 -/* 014C3C 8001403C 02202025 */ move $a0, $s1 -/* 014C40 80014040 AC6D0004 */ sw $t5, 4($v1) -/* 014C44 80014044 0C01ECF4 */ jal func_8007B3D0 -/* 014C48 80014048 AC6C0000 */ sw $t4, ($v1) -/* 014C4C 8001404C 8E2E0000 */ lw $t6, ($s1) -/* 014C50 80014050 8FAF0058 */ lw $t7, 0x58($sp) -/* 014C54 80014054 3C188012 */ lui $t8, %hi(D_8011AE90) # $t8, 0x8012 -/* 014C58 80014058 ADEE0000 */ sw $t6, ($t7) -/* 014C5C 8001405C 8FB9005C */ lw $t9, 0x5c($sp) -/* 014C60 80014060 8F18AE90 */ lw $t8, %lo(D_8011AE90)($t8) -/* 014C64 80014064 3C0C8012 */ lui $t4, %hi(D_8011AE94) # $t4, 0x8012 -/* 014C68 80014068 AF380000 */ sw $t8, ($t9) -/* 014C6C 8001406C 8FAD0060 */ lw $t5, 0x60($sp) -/* 014C70 80014070 8D8CAE94 */ lw $t4, %lo(D_8011AE94)($t4) -/* 014C74 80014074 00000000 */ nop -/* 014C78 80014078 ADAC0000 */ sw $t4, ($t5) -.L8001407C: -/* 014C7C 8001407C 8FBF0024 */ lw $ra, 0x24($sp) -.L80014080: -/* 014C80 80014080 8FB0001C */ lw $s0, 0x1c($sp) -/* 014C84 80014084 8FB10020 */ lw $s1, 0x20($sp) -/* 014C88 80014088 03E00008 */ jr $ra -/* 014C8C 8001408C 27BD0058 */ addiu $sp, $sp, 0x58 - -glabel func_80014090 -/* 014C90 80014090 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 014C94 80014094 AFBF002C */ sw $ra, 0x2c($sp) -/* 014C98 80014098 AFBE0028 */ sw $fp, 0x28($sp) -/* 014C9C 8001409C AFB70024 */ sw $s7, 0x24($sp) -/* 014CA0 800140A0 AFB60020 */ sw $s6, 0x20($sp) -/* 014CA4 800140A4 AFB5001C */ sw $s5, 0x1c($sp) -/* 014CA8 800140A8 AFB40018 */ sw $s4, 0x18($sp) -/* 014CAC 800140AC AFB30014 */ sw $s3, 0x14($sp) -/* 014CB0 800140B0 AFB20010 */ sw $s2, 0x10($sp) -/* 014CB4 800140B4 AFB1000C */ sw $s1, 0xc($sp) -/* 014CB8 800140B8 AFB00008 */ sw $s0, 8($sp) -/* 014CBC 800140BC 8C820040 */ lw $v0, 0x40($a0) -/* 014CC0 800140C0 240600FF */ li $a2, 255 -/* 014CC4 800140C4 804E0074 */ lb $t6, 0x74($v0) -/* 014CC8 800140C8 80590075 */ lb $t9, 0x75($v0) -/* 014CCC 800140CC 01C50019 */ multu $t6, $a1 -/* 014CD0 800140D0 90430073 */ lbu $v1, 0x73($v0) -/* 014CD4 800140D4 90550072 */ lbu $s5, 0x72($v0) -/* 014CD8 800140D8 0080F825 */ move $ra, $a0 -/* 014CDC 800140DC 00008012 */ mflo $s0 -/* 014CE0 800140E0 00107C00 */ sll $t7, $s0, 0x10 -/* 014CE4 800140E4 000F8403 */ sra $s0, $t7, 0x10 -/* 014CE8 800140E8 03250019 */ multu $t9, $a1 -/* 014CEC 800140EC 00008812 */ mflo $s1 -/* 014CF0 800140F0 00117400 */ sll $t6, $s1, 0x10 -/* 014CF4 800140F4 10660006 */ beq $v1, $a2, .L80014110 -/* 014CF8 800140F8 000E8C03 */ sra $s1, $t6, 0x10 -/* 014CFC 800140FC 80580055 */ lb $t8, 0x55($v0) -/* 014D00 80014100 00000000 */ nop -/* 014D04 80014104 0078082A */ slt $at, $v1, $t8 -/* 014D08 80014108 1020005F */ beqz $at, .L80014288 -/* 014D0C 8001410C 00000000 */ nop -.L80014110: -/* 014D10 80014110 14660004 */ bne $v1, $a2, .L80014124 -/* 014D14 80014114 247E0001 */ addiu $fp, $v1, 1 -/* 014D18 80014118 805E0055 */ lb $fp, 0x55($v0) -/* 014D1C 8001411C 10000001 */ b .L80014124 -/* 014D20 80014120 00001825 */ move $v1, $zero -.L80014124: -/* 014D24 80014124 007E082A */ slt $at, $v1, $fp -/* 014D28 80014128 10200057 */ beqz $at, .L80014288 -/* 014D2C 8001412C 0060B825 */ move $s7, $v1 -/* 014D30 80014130 0003B080 */ sll $s6, $v1, 2 -.L80014134: -/* 014D34 80014134 8FF90068 */ lw $t9, 0x68($ra) -/* 014D38 80014138 26F70001 */ addiu $s7, $s7, 1 -/* 014D3C 8001413C 03367021 */ addu $t6, $t9, $s6 -/* 014D40 80014140 8DC20000 */ lw $v0, ($t6) -/* 014D44 80014144 0015C8C0 */ sll $t9, $s5, 3 -/* 014D48 80014148 8C4C0000 */ lw $t4, ($v0) -/* 014D4C 8001414C 00000000 */ nop -/* 014D50 80014150 858F0022 */ lh $t7, 0x22($t4) -/* 014D54 80014154 00000000 */ nop -/* 014D58 80014158 02AF082A */ slt $at, $s5, $t7 -/* 014D5C 8001415C 10200048 */ beqz $at, .L80014280 -/* 014D60 80014160 00000000 */ nop -/* 014D64 80014164 8D980000 */ lw $t8, ($t4) -/* 014D68 80014168 85830028 */ lh $v1, 0x28($t4) -/* 014D6C 8001416C 03197021 */ addu $t6, $t8, $t9 -/* 014D70 80014170 8DC20000 */ lw $v0, ($t6) -/* 014D74 80014174 00009025 */ move $s2, $zero -/* 014D78 80014178 904F0000 */ lbu $t7, ($v0) -/* 014D7C 8001417C 904E0001 */ lbu $t6, 1($v0) -/* 014D80 80014180 000FC540 */ sll $t8, $t7, 0x15 -/* 014D84 80014184 000E7D40 */ sll $t7, $t6, 0x15 -/* 014D88 80014188 00189C03 */ sra $s3, $t8, 0x10 -/* 014D8C 8001418C 1860003C */ blez $v1, .L80014280 -/* 014D90 80014190 000FA403 */ sra $s4, $t7, 0x10 -/* 014D94 80014194 8D890038 */ lw $t1, 0x38($t4) -/* 014D98 80014198 00006825 */ move $t5, $zero -.L8001419C: -/* 014D9C 8001419C 91390000 */ lbu $t9, ($t1) -/* 014DA0 800141A0 26520001 */ addiu $s2, $s2, 1 -/* 014DA4 800141A4 16B90033 */ bne $s5, $t9, .L80014274 -/* 014DA8 800141A8 0243082A */ slt $at, $s2, $v1 -/* 014DAC 800141AC 85250004 */ lh $a1, 4($t1) -/* 014DB0 800141B0 852E0010 */ lh $t6, 0x10($t1) -/* 014DB4 800141B4 266AFFFF */ addiu $t2, $s3, -1 -/* 014DB8 800141B8 00AE082A */ slt $at, $a1, $t6 -/* 014DBC 800141BC 1020002C */ beqz $at, .L80014270 -/* 014DC0 800141C0 000A7C00 */ sll $t7, $t2, 0x10 -/* 014DC4 800141C4 268BFFFF */ addiu $t3, $s4, -1 -/* 014DC8 800141C8 000BCC00 */ sll $t9, $t3, 0x10 -/* 014DCC 800141CC 00195C03 */ sra $t3, $t9, 0x10 -/* 014DD0 800141D0 000F5403 */ sra $t2, $t7, 0x10 -.L800141D4: -/* 014DD4 800141D4 8D8F0008 */ lw $t7, 8($t4) -/* 014DD8 800141D8 0005C100 */ sll $t8, $a1, 4 -/* 014DDC 800141DC 01F81021 */ addu $v0, $t7, $t8 -/* 014DE0 800141E0 84430004 */ lh $v1, 4($v0) -/* 014DE4 800141E4 84440006 */ lh $a0, 6($v0) -/* 014DE8 800141E8 84590008 */ lh $t9, 8($v0) -/* 014DEC 800141EC 844F000C */ lh $t7, 0xc($v0) -/* 014DF0 800141F0 8458000A */ lh $t8, 0xa($v0) -/* 014DF4 800141F4 844E000E */ lh $t6, 0xe($v0) -/* 014DF8 800141F8 03234823 */ subu $t1, $t9, $v1 -/* 014DFC 800141FC 01E33823 */ subu $a3, $t7, $v1 -/* 014E00 80014200 0070C821 */ addu $t9, $v1, $s0 -/* 014E04 80014204 00917821 */ addu $t7, $a0, $s1 -/* 014E08 80014208 03043023 */ subu $a2, $t8, $a0 -/* 014E0C 8001420C 01C44023 */ subu $t0, $t6, $a0 -/* 014E10 80014210 032A7024 */ and $t6, $t9, $t2 -/* 014E14 80014214 01EBC024 */ and $t8, $t7, $t3 -/* 014E18 80014218 A44E0004 */ sh $t6, 4($v0) -/* 014E1C 8001421C A4580006 */ sh $t8, 6($v0) -/* 014E20 80014220 84430004 */ lh $v1, 4($v0) -/* 014E24 80014224 84440006 */ lh $a0, 6($v0) -/* 014E28 80014228 0069C821 */ addu $t9, $v1, $t1 -/* 014E2C 8001422C 00677821 */ addu $t7, $v1, $a3 -/* 014E30 80014230 00867021 */ addu $t6, $a0, $a2 -/* 014E34 80014234 0088C021 */ addu $t8, $a0, $t0 -/* 014E38 80014238 A4590008 */ sh $t9, 8($v0) -/* 014E3C 8001423C A44E000A */ sh $t6, 0xa($v0) -/* 014E40 80014240 A44F000C */ sh $t7, 0xc($v0) -/* 014E44 80014244 A458000E */ sh $t8, 0xe($v0) -/* 014E48 80014248 8D990038 */ lw $t9, 0x38($t4) -/* 014E4C 8001424C 24A50001 */ addiu $a1, $a1, 1 -/* 014E50 80014250 032D4821 */ addu $t1, $t9, $t5 -/* 014E54 80014254 852E0010 */ lh $t6, 0x10($t1) -/* 014E58 80014258 00000000 */ nop -/* 014E5C 8001425C 00AE082A */ slt $at, $a1, $t6 -/* 014E60 80014260 1420FFDC */ bnez $at, .L800141D4 -/* 014E64 80014264 00000000 */ nop -/* 014E68 80014268 85830028 */ lh $v1, 0x28($t4) -/* 014E6C 8001426C 00000000 */ nop -.L80014270: -/* 014E70 80014270 0243082A */ slt $at, $s2, $v1 -.L80014274: -/* 014E74 80014274 25AD000C */ addiu $t5, $t5, 0xc -/* 014E78 80014278 1420FFC8 */ bnez $at, .L8001419C -/* 014E7C 8001427C 2529000C */ addiu $t1, $t1, 0xc -.L80014280: -/* 014E80 80014280 16FEFFAC */ bne $s7, $fp, .L80014134 -/* 014E84 80014284 26D60004 */ addiu $s6, $s6, 4 -.L80014288: -/* 014E88 80014288 8FBF002C */ lw $ra, 0x2c($sp) -/* 014E8C 8001428C 8FB00008 */ lw $s0, 8($sp) -/* 014E90 80014290 8FB1000C */ lw $s1, 0xc($sp) -/* 014E94 80014294 8FB20010 */ lw $s2, 0x10($sp) -/* 014E98 80014298 8FB30014 */ lw $s3, 0x14($sp) -/* 014E9C 8001429C 8FB40018 */ lw $s4, 0x18($sp) -/* 014EA0 800142A0 8FB5001C */ lw $s5, 0x1c($sp) -/* 014EA4 800142A4 8FB60020 */ lw $s6, 0x20($sp) -/* 014EA8 800142A8 8FB70024 */ lw $s7, 0x24($sp) -/* 014EAC 800142AC 8FBE0028 */ lw $fp, 0x28($sp) -/* 014EB0 800142B0 03E00008 */ jr $ra -/* 014EB4 800142B4 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_800142B8 -/* 014EB8 800142B8 3C028012 */ lui $v0, %hi(D_8011AE60) # $v0, 0x8012 -/* 014EBC 800142BC 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 -/* 014EC0 800142C0 8C42AE60 */ lw $v0, %lo(D_8011AE60)($v0) -/* 014EC4 800142C4 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) -/* 014EC8 800142C8 3C0A8012 */ lui $t2, %hi(D_8011AE58) # $t2, 0x8012 -/* 014ECC 800142CC 0043082A */ slt $at, $v0, $v1 -/* 014ED0 800142D0 10200033 */ beqz $at, .L800143A0 -/* 014ED4 800142D4 00022880 */ sll $a1, $v0, 2 -/* 014ED8 800142D8 254AAE58 */ addiu $t2, %lo(D_8011AE58) # addiu $t2, $t2, -0x51a8 -.L800142DC: -/* 014EDC 800142DC 8D4E0000 */ lw $t6, ($t2) -/* 014EE0 800142E0 24420001 */ addiu $v0, $v0, 1 -/* 014EE4 800142E4 01C57821 */ addu $t7, $t6, $a1 -/* 014EE8 800142E8 8DE40000 */ lw $a0, ($t7) -/* 014EEC 800142EC 00000000 */ nop -/* 014EF0 800142F0 84980006 */ lh $t8, 6($a0) -/* 014EF4 800142F4 00000000 */ nop -/* 014EF8 800142F8 33198000 */ andi $t9, $t8, 0x8000 -/* 014EFC 800142FC 17200026 */ bnez $t9, .L80014398 -/* 014F00 80014300 0043082A */ slt $at, $v0, $v1 -/* 014F04 80014304 8C860040 */ lw $a2, 0x40($a0) -/* 014F08 80014308 00000000 */ nop -/* 014F0C 8001430C 80CB0053 */ lb $t3, 0x53($a2) -/* 014F10 80014310 00000000 */ nop -/* 014F14 80014314 15600020 */ bnez $t3, .L80014398 -/* 014F18 80014318 0043082A */ slt $at, $v0, $v1 -/* 014F1C 8001431C 80C80055 */ lb $t0, 0x55($a2) -/* 014F20 80014320 00003025 */ move $a2, $zero -/* 014F24 80014324 1900001B */ blez $t0, .L80014394 -/* 014F28 80014328 00003825 */ move $a3, $zero -.L8001432C: -/* 014F2C 8001432C 8C8C0068 */ lw $t4, 0x68($a0) -/* 014F30 80014330 24E70001 */ addiu $a3, $a3, 1 -/* 014F34 80014334 01866821 */ addu $t5, $t4, $a2 -/* 014F38 80014338 8DA30000 */ lw $v1, ($t5) -/* 014F3C 8001433C 00000000 */ nop -/* 014F40 80014340 1060000F */ beqz $v1, .L80014380 -/* 014F44 80014344 00E8082A */ slt $at, $a3, $t0 -/* 014F48 80014348 80690020 */ lb $t1, 0x20($v1) -/* 014F4C 8001434C 00000000 */ nop -/* 014F50 80014350 1920000A */ blez $t1, .L8001437C -/* 014F54 80014354 312E0003 */ andi $t6, $t1, 3 -/* 014F58 80014358 A06E0020 */ sb $t6, 0x20($v1) -/* 014F5C 8001435C 806F0020 */ lb $t7, 0x20($v1) -/* 014F60 80014360 00000000 */ nop -/* 014F64 80014364 25F8FFFF */ addiu $t8, $t7, -1 -/* 014F68 80014368 A0780020 */ sb $t8, 0x20($v1) -/* 014F6C 8001436C 8C990040 */ lw $t9, 0x40($a0) -/* 014F70 80014370 00000000 */ nop -/* 014F74 80014374 83280055 */ lb $t0, 0x55($t9) -/* 014F78 80014378 00000000 */ nop -.L8001437C: -/* 014F7C 8001437C 00E8082A */ slt $at, $a3, $t0 -.L80014380: -/* 014F80 80014380 1420FFEA */ bnez $at, .L8001432C -/* 014F84 80014384 24C60004 */ addiu $a2, $a2, 4 -/* 014F88 80014388 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 -/* 014F8C 8001438C 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) -/* 014F90 80014390 00000000 */ nop -.L80014394: -/* 014F94 80014394 0043082A */ slt $at, $v0, $v1 -.L80014398: -/* 014F98 80014398 1420FFD0 */ bnez $at, .L800142DC -/* 014F9C 8001439C 24A50004 */ addiu $a1, $a1, 4 -.L800143A0: -/* 014FA0 800143A0 03E00008 */ jr $ra -/* 014FA4 800143A4 00000000 */ nop - -glabel func_800143A8 -/* 014FA8 800143A8 27BDFF50 */ addiu $sp, $sp, -0xb0 -/* 014FAC 800143AC 3C0E8012 */ lui $t6, %hi(D_8011AE8C) # $t6, 0x8012 -/* 014FB0 800143B0 8DCEAE8C */ lw $t6, %lo(D_8011AE8C)($t6) -/* 014FB4 800143B4 AFBF003C */ sw $ra, 0x3c($sp) -/* 014FB8 800143B8 AFBE0038 */ sw $fp, 0x38($sp) -/* 014FBC 800143BC AFB70034 */ sw $s7, 0x34($sp) -/* 014FC0 800143C0 AFB60030 */ sw $s6, 0x30($sp) -/* 014FC4 800143C4 AFB5002C */ sw $s5, 0x2c($sp) -/* 014FC8 800143C8 AFB40028 */ sw $s4, 0x28($sp) -/* 014FCC 800143CC AFB30024 */ sw $s3, 0x24($sp) -/* 014FD0 800143D0 AFB20020 */ sw $s2, 0x20($sp) -/* 014FD4 800143D4 AFB1001C */ sw $s1, 0x1c($sp) -/* 014FD8 800143D8 AFB00018 */ sw $s0, 0x18($sp) -/* 014FDC 800143DC AFA500B4 */ sw $a1, 0xb4($sp) -/* 014FE0 800143E0 AFA700BC */ sw $a3, 0xbc($sp) -/* 014FE4 800143E4 AFAE0074 */ sw $t6, 0x74($sp) -/* 014FE8 800143E8 84890028 */ lh $t1, 0x28($a0) -/* 014FEC 800143EC 0080B825 */ move $s7, $a0 -/* 014FF0 800143F0 00C9082A */ slt $at, $a2, $t1 -/* 014FF4 800143F4 00C05025 */ move $t2, $a2 -/* 014FF8 800143F8 102000F2 */ beqz $at, .L800147C4 -/* 014FFC 800143FC 0000F825 */ move $ra, $zero -/* 015000 80014400 00065880 */ sll $t3, $a2, 2 -/* 015004 80014404 01665823 */ subu $t3, $t3, $a2 -/* 015008 80014408 000B5880 */ sll $t3, $t3, 2 -/* 01500C 8001440C 3C1E0400 */ lui $fp, 0x400 -/* 015010 80014410 3C148000 */ lui $s4, 0x8000 -/* 015014 80014414 00E06825 */ move $t5, $a3 -.L80014418: -/* 015018 80014418 8EEF0038 */ lw $t7, 0x38($s7) -/* 01501C 8001441C 31B90004 */ andi $t9, $t5, 4 -/* 015020 80014420 01EB1021 */ addu $v0, $t7, $t3 -/* 015024 80014424 8C480008 */ lw $t0, 8($v0) -/* 015028 80014428 00000000 */ nop -/* 01502C 8001442C 31180004 */ andi $t8, $t0, 4 -/* 015030 80014430 13000003 */ beqz $t8, .L80014440 -/* 015034 80014434 31030100 */ andi $v1, $t0, 0x100 -/* 015038 80014438 132000DC */ beqz $t9, .L800147AC -/* 01503C 8001443C 00000000 */ nop -.L80014440: -/* 015040 80014440 146000D7 */ bnez $v1, .L800147A0 -/* 015044 80014444 240100FF */ li $at, 255 -/* 015048 80014448 84440002 */ lh $a0, 2($v0) -/* 01504C 8001444C 844E000E */ lh $t6, 0xe($v0) -/* 015050 80014450 8FAF00C0 */ lw $t7, 0xc0($sp) -/* 015054 80014454 84450004 */ lh $a1, 4($v0) -/* 015058 80014458 31A90004 */ andi $t1, $t5, 4 -/* 01505C 8001445C 11E00004 */ beqz $t7, .L80014470 -/* 015060 80014460 01C48823 */ subu $s1, $t6, $a0 -/* 015064 80014464 80500001 */ lb $s0, 1($v0) -/* 015068 80014468 10000003 */ b .L80014478 -/* 01506C 8001446C 84580010 */ lh $t8, 0x10($v0) -.L80014470: -/* 015070 80014470 02208025 */ move $s0, $s1 -/* 015074 80014474 84580010 */ lh $t8, 0x10($v0) -.L80014478: -/* 015078 80014478 8EF90008 */ lw $t9, 8($s7) -/* 01507C 8001447C 00057100 */ sll $t6, $a1, 4 -/* 015080 80014480 0305A823 */ subu $s5, $t8, $a1 -/* 015084 80014484 032E7821 */ addu $t7, $t9, $t6 -/* 015088 80014488 8FB800B4 */ lw $t8, 0xb4($sp) -/* 01508C 8001448C AFAF007C */ sw $t7, 0x7c($sp) -/* 015090 80014490 00047080 */ sll $t6, $a0, 2 -/* 015094 80014494 90430000 */ lbu $v1, ($v0) -/* 015098 80014498 8F190044 */ lw $t9, 0x44($t8) -/* 01509C 8001449C 01C47021 */ addu $t6, $t6, $a0 -/* 0150A0 800144A0 000E7040 */ sll $t6, $t6, 1 -/* 0150A4 800144A4 14610005 */ bne $v1, $at, .L800144BC -/* 0150A8 800144A8 032E9821 */ addu $s3, $t9, $t6 -/* 0150AC 800144AC 00003825 */ move $a3, $zero -/* 0150B0 800144B0 00009025 */ move $s2, $zero -/* 0150B4 800144B4 10000009 */ b .L800144DC -/* 0150B8 800144B8 0000B025 */ move $s6, $zero -.L800144BC: -/* 0150BC 800144BC 8EF80000 */ lw $t8, ($s7) -/* 0150C0 800144C0 90470007 */ lbu $a3, 7($v0) -/* 0150C4 800144C4 0003C8C0 */ sll $t9, $v1, 3 -/* 0150C8 800144C8 03197021 */ addu $t6, $t8, $t9 -/* 0150CC 800144CC 00077B80 */ sll $t7, $a3, 0xe -/* 0150D0 800144D0 8DD20000 */ lw $s2, ($t6) -/* 0150D4 800144D4 01E03825 */ move $a3, $t7 -/* 0150D8 800144D8 24160001 */ li $s6, 1 -.L800144DC: -/* 0150DC 800144DC 11200007 */ beqz $t1, .L800144FC -/* 0150E0 800144E0 35060008 */ ori $a2, $t0, 8 -/* 0150E4 800144E4 2401FFFB */ li $at, -5 -/* 0150E8 800144E8 01A17824 */ and $t7, $t5, $at -/* 0150EC 800144EC 010FC024 */ and $t8, $t0, $t7 -/* 0150F0 800144F0 17000002 */ bnez $t8, .L800144FC -/* 0150F4 800144F4 34D90004 */ ori $t9, $a2, 4 -/* 0150F8 800144F8 03203025 */ move $a2, $t9 -.L800144FC: -/* 0150FC 800144FC 3C0E800E */ lui $t6, %hi(D_800DC720) # $t6, 0x800e -/* 015100 80014500 8DCEC720 */ lw $t6, %lo(D_800DC720)($t6) -/* 015104 80014504 02402025 */ move $a0, $s2 -/* 015108 80014508 15C0000E */ bnez $t6, .L80014544 -/* 01510C 8001450C 00E02825 */ move $a1, $a3 -/* 015110 80014510 AFBF009C */ sw $ra, 0x9c($sp) -/* 015114 80014514 27A40074 */ addiu $a0, $sp, 0x74 -/* 015118 80014518 02402825 */ move $a1, $s2 -/* 01511C 8001451C AFAA00AC */ sw $t2, 0xac($sp) -/* 015120 80014520 0C01ED3A */ jal func_8007B4E8 -/* 015124 80014524 AFAB0048 */ sw $t3, 0x48($sp) -/* 015128 80014528 8FAA00AC */ lw $t2, 0xac($sp) -/* 01512C 8001452C 8FAB0048 */ lw $t3, 0x48($sp) -/* 015130 80014530 3C0CBC00 */ lui $t4, (0xBC00000A >> 16) # lui $t4, 0xbc00 -/* 015134 80014534 8FAD00BC */ lw $t5, 0xbc($sp) -/* 015138 80014538 8FBF009C */ lw $ra, 0x9c($sp) -/* 01513C 8001453C 1000001C */ b .L800145B0 -/* 015140 80014540 358C000A */ ori $t4, (0xBC00000A & 0xFFFF) # ori $t4, $t4, 0xa -.L80014544: -/* 015144 80014544 AFBF009C */ sw $ra, 0x9c($sp) -/* 015148 80014548 AFAA00AC */ sw $t2, 0xac($sp) -/* 01514C 8001454C 0C01ED1B */ jal func_8007B46C -/* 015150 80014550 AFAB0048 */ sw $t3, 0x48($sp) -/* 015154 80014554 3C068012 */ lui $a2, %hi(D_8011AE8C) # $a2, 0x8012 -/* 015158 80014558 24C6AE8C */ addiu $a2, %lo(D_8011AE8C) # addiu $a2, $a2, -0x5174 -/* 01515C 8001455C 8CC30000 */ lw $v1, ($a2) -/* 015160 80014560 3C010700 */ lui $at, 0x700 -/* 015164 80014564 246F0008 */ addiu $t7, $v1, 8 -/* 015168 80014568 ACCF0000 */ sw $t7, ($a2) -/* 01516C 8001456C 8445000A */ lh $a1, 0xa($v0) -/* 015170 80014570 8FAA00AC */ lw $t2, 0xac($sp) -/* 015174 80014574 30B800FF */ andi $t8, $a1, 0xff -/* 015178 80014578 0018CC00 */ sll $t9, $t8, 0x10 -/* 01517C 8001457C 000578C0 */ sll $t7, $a1, 3 -/* 015180 80014580 31F8FFFF */ andi $t8, $t7, 0xffff -/* 015184 80014584 03217025 */ or $t6, $t9, $at -/* 015188 80014588 8FAB0048 */ lw $t3, 0x48($sp) -/* 01518C 8001458C 8FAD00BC */ lw $t5, 0xbc($sp) -/* 015190 80014590 8FBF009C */ lw $ra, 0x9c($sp) -/* 015194 80014594 01D8C825 */ or $t9, $t6, $t8 -/* 015198 80014598 AC790000 */ sw $t9, ($v1) -/* 01519C 8001459C 8C4F000C */ lw $t7, 0xc($v0) -/* 0151A0 800145A0 3C0CBC00 */ lui $t4, (0xBC00000A >> 16) # lui $t4, 0xbc00 -/* 0151A4 800145A4 01F47021 */ addu $t6, $t7, $s4 -/* 0151A8 800145A8 358C000A */ ori $t4, (0xBC00000A & 0xFFFF) # ori $t4, $t4, 0xa -/* 0151AC 800145AC AC6E0004 */ sw $t6, 4($v1) -.L800145B0: -/* 0151B0 800145B0 16110015 */ bne $s0, $s1, .L80014608 -/* 0151B4 800145B4 3C010500 */ lui $at, 0x500 -/* 0151B8 800145B8 8FA30074 */ lw $v1, 0x74($sp) -/* 0151BC 800145BC 02741021 */ addu $v0, $s3, $s4 -/* 0151C0 800145C0 262FFFFF */ addiu $t7, $s1, -1 -/* 0151C4 800145C4 24790008 */ addiu $t9, $v1, 8 -/* 0151C8 800145C8 AFB90074 */ sw $t9, 0x74($sp) -/* 0151CC 800145CC 000F70C0 */ sll $t6, $t7, 3 -/* 0151D0 800145D0 30580006 */ andi $t8, $v0, 6 -/* 0151D4 800145D4 01D8C825 */ or $t9, $t6, $t8 -/* 0151D8 800145D8 332F00FF */ andi $t7, $t9, 0xff -/* 0151DC 800145DC 000F7400 */ sll $t6, $t7, 0x10 -/* 0151E0 800145E0 0011C8C0 */ sll $t9, $s1, 3 -/* 0151E4 800145E4 03317821 */ addu $t7, $t9, $s1 -/* 0151E8 800145E8 01DEC025 */ or $t8, $t6, $fp -/* 0151EC 800145EC 000F7040 */ sll $t6, $t7, 1 -/* 0151F0 800145F0 25D90008 */ addiu $t9, $t6, 8 -/* 0151F4 800145F4 332FFFFF */ andi $t7, $t9, 0xffff -/* 0151F8 800145F8 030F7025 */ or $t6, $t8, $t7 -/* 0151FC 800145FC AC6E0000 */ sw $t6, ($v1) -/* 015200 80014600 10000054 */ b .L80014754 -/* 015204 80014604 AC620004 */ sw $v0, 4($v1) -.L80014608: -/* 015208 80014608 1A000034 */ blez $s0, .L800146DC -/* 01520C 8001460C 24180080 */ li $t8, 128 -/* 015210 80014610 8FA40074 */ lw $a0, 0x74($sp) -/* 015214 80014614 02741021 */ addu $v0, $s3, $s4 -/* 015218 80014618 260FFFFF */ addiu $t7, $s0, -1 -/* 01521C 8001461C 24980008 */ addiu $t8, $a0, 8 -/* 015220 80014620 AFB80074 */ sw $t8, 0x74($sp) -/* 015224 80014624 000F70C0 */ sll $t6, $t7, 3 -/* 015228 80014628 30590006 */ andi $t9, $v0, 6 -/* 01522C 8001462C 01D9C025 */ or $t8, $t6, $t9 -/* 015230 80014630 330F00FF */ andi $t7, $t8, 0xff -/* 015234 80014634 000F7400 */ sll $t6, $t7, 0x10 -/* 015238 80014638 0010C0C0 */ sll $t8, $s0, 3 -/* 01523C 8001463C 03107821 */ addu $t7, $t8, $s0 -/* 015240 80014640 01DEC825 */ or $t9, $t6, $fp -/* 015244 80014644 000F7040 */ sll $t6, $t7, 1 -/* 015248 80014648 25D80008 */ addiu $t8, $t6, 8 -/* 01524C 8001464C 330FFFFF */ andi $t7, $t8, 0xffff -/* 015250 80014650 032F7025 */ or $t6, $t9, $t7 -/* 015254 80014654 AC8E0000 */ sw $t6, ($a0) -/* 015258 80014658 AC820004 */ sw $v0, 4($a0) -/* 01525C 8001465C 8FB80074 */ lw $t8, 0x74($sp) -/* 015260 80014660 240F0080 */ li $t7, 128 -/* 015264 80014664 27190008 */ addiu $t9, $t8, 8 -/* 015268 80014668 AFB90074 */ sw $t9, 0x74($sp) -/* 01526C 8001466C 0010C880 */ sll $t9, $s0, 2 -/* 015270 80014670 AF0F0004 */ sw $t7, 4($t8) -/* 015274 80014674 AF0C0000 */ sw $t4, ($t8) -/* 015278 80014678 8FA60074 */ lw $a2, 0x74($sp) -/* 01527C 8001467C 0330C821 */ addu $t9, $t9, $s0 -/* 015280 80014680 0019C840 */ sll $t9, $t9, 1 -/* 015284 80014684 02797821 */ addu $t7, $s3, $t9 -/* 015288 80014688 02301823 */ subu $v1, $s1, $s0 -/* 01528C 8001468C 24D80008 */ addiu $t8, $a2, 8 -/* 015290 80014690 AFB80074 */ sw $t8, 0x74($sp) -/* 015294 80014694 246EFFFF */ addiu $t6, $v1, -1 -/* 015298 80014698 01F43821 */ addu $a3, $t7, $s4 -/* 01529C 8001469C 30F90006 */ andi $t9, $a3, 6 -/* 0152A0 800146A0 000EC0C0 */ sll $t8, $t6, 3 -/* 0152A4 800146A4 03197825 */ or $t7, $t8, $t9 -/* 0152A8 800146A8 35EE0001 */ ori $t6, $t7, 1 -/* 0152AC 800146AC 31D800FF */ andi $t8, $t6, 0xff -/* 0152B0 800146B0 0018CC00 */ sll $t9, $t8, 0x10 -/* 0152B4 800146B4 000370C0 */ sll $t6, $v1, 3 -/* 0152B8 800146B8 01C3C021 */ addu $t8, $t6, $v1 -/* 0152BC 800146BC 033E7825 */ or $t7, $t9, $fp -/* 0152C0 800146C0 0018C840 */ sll $t9, $t8, 1 -/* 0152C4 800146C4 272E0008 */ addiu $t6, $t9, 8 -/* 0152C8 800146C8 31D8FFFF */ andi $t8, $t6, 0xffff -/* 0152CC 800146CC 01F8C825 */ or $t9, $t7, $t8 -/* 0152D0 800146D0 ACD90000 */ sw $t9, ($a2) -/* 0152D4 800146D4 10000019 */ b .L8001473C -/* 0152D8 800146D8 ACC70004 */ sw $a3, 4($a2) -.L800146DC: -/* 0152DC 800146DC 8FAE0074 */ lw $t6, 0x74($sp) -/* 0152E0 800146E0 02741021 */ addu $v0, $s3, $s4 -/* 0152E4 800146E4 25CF0008 */ addiu $t7, $t6, 8 -/* 0152E8 800146E8 AFAF0074 */ sw $t7, 0x74($sp) -/* 0152EC 800146EC ADD80004 */ sw $t8, 4($t6) -/* 0152F0 800146F0 ADCC0000 */ sw $t4, ($t6) -/* 0152F4 800146F4 8FA40074 */ lw $a0, 0x74($sp) -/* 0152F8 800146F8 262FFFFF */ addiu $t7, $s1, -1 -/* 0152FC 800146FC 248E0008 */ addiu $t6, $a0, 8 -/* 015300 80014700 AFAE0074 */ sw $t6, 0x74($sp) -/* 015304 80014704 000FC0C0 */ sll $t8, $t7, 3 -/* 015308 80014708 30590006 */ andi $t9, $v0, 6 -/* 01530C 8001470C 03197025 */ or $t6, $t8, $t9 -/* 015310 80014710 31CF00FF */ andi $t7, $t6, 0xff -/* 015314 80014714 000FC400 */ sll $t8, $t7, 0x10 -/* 015318 80014718 001170C0 */ sll $t6, $s1, 3 -/* 01531C 8001471C 01D17821 */ addu $t7, $t6, $s1 -/* 015320 80014720 031EC825 */ or $t9, $t8, $fp -/* 015324 80014724 000FC040 */ sll $t8, $t7, 1 -/* 015328 80014728 270E0008 */ addiu $t6, $t8, 8 -/* 01532C 8001472C 31CFFFFF */ andi $t7, $t6, 0xffff -/* 015330 80014730 032FC025 */ or $t8, $t9, $t7 -/* 015334 80014734 AC980000 */ sw $t8, ($a0) -/* 015338 80014738 AC820004 */ sw $v0, 4($a0) -.L8001473C: -/* 01533C 8001473C 8FAE0074 */ lw $t6, 0x74($sp) -/* 015340 80014740 240F0040 */ li $t7, 64 -/* 015344 80014744 25D90008 */ addiu $t9, $t6, 8 -/* 015348 80014748 AFB90074 */ sw $t9, 0x74($sp) -/* 01534C 8001474C ADCF0004 */ sw $t7, 4($t6) -/* 015350 80014750 ADCC0000 */ sw $t4, ($t6) -.L80014754: -/* 015354 80014754 8FA20074 */ lw $v0, 0x74($sp) -/* 015358 80014758 26B9FFFF */ addiu $t9, $s5, -1 -/* 01535C 8001475C 00197900 */ sll $t7, $t9, 4 -/* 015360 80014760 244E0008 */ addiu $t6, $v0, 8 -/* 015364 80014764 AFAE0074 */ sw $t6, 0x74($sp) -/* 015368 80014768 01F6C025 */ or $t8, $t7, $s6 -/* 01536C 8001476C 330E00FF */ andi $t6, $t8, 0xff -/* 015370 80014770 000ECC00 */ sll $t9, $t6, 0x10 -/* 015374 80014774 0015C100 */ sll $t8, $s5, 4 -/* 015378 80014778 330EFFFF */ andi $t6, $t8, 0xffff -/* 01537C 8001477C 03217825 */ or $t7, $t9, $at -/* 015380 80014780 01EEC825 */ or $t9, $t7, $t6 -/* 015384 80014784 AC590000 */ sw $t9, ($v0) -/* 015388 80014788 8FB8007C */ lw $t8, 0x7c($sp) -/* 01538C 8001478C 00000000 */ nop -/* 015390 80014790 03147821 */ addu $t7, $t8, $s4 -/* 015394 80014794 AC4F0004 */ sw $t7, 4($v0) -/* 015398 80014798 86E90028 */ lh $t1, 0x28($s7) -/* 01539C 8001479C 00000000 */ nop -.L800147A0: -/* 0153A0 800147A0 254A0001 */ addiu $t2, $t2, 1 -/* 0153A4 800147A4 10000002 */ b .L800147B0 -/* 0153A8 800147A8 256B000C */ addiu $t3, $t3, 0xc -.L800147AC: -/* 0153AC 800147AC 241F0001 */ li $ra, 1 -.L800147B0: -/* 0153B0 800147B0 0149082A */ slt $at, $t2, $t1 -/* 0153B4 800147B4 10200004 */ beqz $at, .L800147C8 -/* 0153B8 800147B8 0149082A */ slt $at, $t2, $t1 -/* 0153BC 800147BC 13E0FF16 */ beqz $ra, .L80014418 -/* 0153C0 800147C0 00000000 */ nop -.L800147C4: -/* 0153C4 800147C4 0149082A */ slt $at, $t2, $t1 -.L800147C8: -/* 0153C8 800147C8 14200003 */ bnez $at, .L800147D8 -/* 0153CC 800147CC 8FAE0074 */ lw $t6, 0x74($sp) -/* 0153D0 800147D0 240AFFFF */ li $t2, -1 -/* 0153D4 800147D4 8FAE0074 */ lw $t6, 0x74($sp) -.L800147D8: -/* 0153D8 800147D8 8FBF003C */ lw $ra, 0x3c($sp) -/* 0153DC 800147DC 3C018012 */ lui $at, 0x8012 -/* 0153E0 800147E0 8FB00018 */ lw $s0, 0x18($sp) -/* 0153E4 800147E4 8FB1001C */ lw $s1, 0x1c($sp) -/* 0153E8 800147E8 8FB20020 */ lw $s2, 0x20($sp) -/* 0153EC 800147EC 8FB30024 */ lw $s3, 0x24($sp) -/* 0153F0 800147F0 8FB40028 */ lw $s4, 0x28($sp) -/* 0153F4 800147F4 8FB5002C */ lw $s5, 0x2c($sp) -/* 0153F8 800147F8 8FB60030 */ lw $s6, 0x30($sp) -/* 0153FC 800147FC 8FB70034 */ lw $s7, 0x34($sp) -/* 015400 80014800 8FBE0038 */ lw $fp, 0x38($sp) -/* 015404 80014804 27BD00B0 */ addiu $sp, $sp, 0xb0 -/* 015408 80014808 01401025 */ move $v0, $t2 -/* 01540C 8001480C 03E00008 */ jr $ra -/* 015410 80014810 AC2EAE8C */ sw $t6, -0x5174($at) - -glabel func_80014814 -/* 015414 80014814 3C068012 */ lui $a2, %hi(D_8011AE5C) # $a2, 0x8012 -/* 015418 80014818 24C6AE5C */ addiu $a2, %lo(D_8011AE5C) # addiu $a2, $a2, -0x51a4 -/* 01541C 8001481C 8CCE0000 */ lw $t6, ($a2) -/* 015420 80014820 3C0A8012 */ lui $t2, %hi(D_8011AE7C) # $t2, 0x8012 -/* 015424 80014824 254AAE7C */ addiu $t2, %lo(D_8011AE7C) # addiu $t2, $t2, -0x5184 -/* 015428 80014828 AC8E0000 */ sw $t6, ($a0) -/* 01542C 8001482C 85430000 */ lh $v1, ($t2) -/* 015430 80014830 00000000 */ nop -/* 015434 80014834 10600003 */ beqz $v1, .L80014844 -/* 015438 80014838 00000000 */ nop -/* 01543C 8001483C 03E00008 */ jr $ra -/* 015440 80014840 00601025 */ move $v0, $v1 - -.L80014844: -/* 015444 80014844 8CC20000 */ lw $v0, ($a2) -/* 015448 80014848 3C038012 */ lui $v1, %hi(D_8011AE60) # $v1, 0x8012 -/* 01544C 8001484C 8C63AE60 */ lw $v1, %lo(D_8011AE60)($v1) -/* 015450 80014850 2442FFFF */ addiu $v0, $v0, -1 -/* 015454 80014854 0043082A */ slt $at, $v0, $v1 -/* 015458 80014858 00402825 */ move $a1, $v0 -/* 01545C 8001485C 14200054 */ bnez $at, .L800149B0 -/* 015460 80014860 00602025 */ move $a0, $v1 -/* 015464 80014864 3C0B8012 */ lui $t3, %hi(D_8011AE58) # $t3, 0x8012 -/* 015468 80014868 256BAE58 */ addiu $t3, %lo(D_8011AE58) # addiu $t3, $t3, -0x51a8 -/* 01546C 8001486C 00A3082A */ slt $at, $a1, $v1 -.L80014870: -/* 015470 80014870 1420001E */ bnez $at, .L800148EC -/* 015474 80014874 00003025 */ move $a2, $zero -/* 015478 80014878 8D6F0000 */ lw $t7, ($t3) -/* 01547C 8001487C 0003C080 */ sll $t8, $v1, 2 -/* 015480 80014880 01F83821 */ addu $a3, $t7, $t8 -.L80014884: -/* 015484 80014884 8CE80000 */ lw $t0, ($a3) -/* 015488 80014888 00000000 */ nop -/* 01548C 8001488C 85190006 */ lh $t9, 6($t0) -/* 015490 80014890 00000000 */ nop -/* 015494 80014894 332C8000 */ andi $t4, $t9, 0x8000 -/* 015498 80014898 1580000D */ bnez $t4, .L800148D0 -/* 01549C 8001489C 00000000 */ nop -/* 0154A0 800148A0 8D0D0040 */ lw $t5, 0x40($t0) -/* 0154A4 800148A4 00000000 */ nop -/* 0154A8 800148A8 95AE0030 */ lhu $t6, 0x30($t5) -/* 0154AC 800148AC 00000000 */ nop -/* 0154B0 800148B0 31CF0001 */ andi $t7, $t6, 1 -/* 0154B4 800148B4 11E00004 */ beqz $t7, .L800148C8 -/* 0154B8 800148B8 00000000 */ nop -/* 0154BC 800148BC 24630001 */ addiu $v1, $v1, 1 -/* 0154C0 800148C0 10000005 */ b .L800148D8 -/* 0154C4 800148C4 24E70004 */ addiu $a3, $a3, 4 -.L800148C8: -/* 0154C8 800148C8 10000003 */ b .L800148D8 -/* 0154CC 800148CC 2406FFFF */ li $a2, -1 -.L800148D0: -/* 0154D0 800148D0 24630001 */ addiu $v1, $v1, 1 -/* 0154D4 800148D4 24E70004 */ addiu $a3, $a3, 4 -.L800148D8: -/* 0154D8 800148D8 00A3082A */ slt $at, $a1, $v1 -/* 0154DC 800148DC 14200004 */ bnez $at, .L800148F0 -/* 0154E0 800148E0 0044082A */ slt $at, $v0, $a0 -/* 0154E4 800148E4 10C0FFE7 */ beqz $a2, .L80014884 -/* 0154E8 800148E8 00000000 */ nop -.L800148EC: -/* 0154EC 800148EC 0044082A */ slt $at, $v0, $a0 -.L800148F0: -/* 0154F0 800148F0 1420001D */ bnez $at, .L80014968 -/* 0154F4 800148F4 00003025 */ move $a2, $zero -/* 0154F8 800148F8 8D780000 */ lw $t8, ($t3) -/* 0154FC 800148FC 0002C880 */ sll $t9, $v0, 2 -/* 015500 80014900 03193821 */ addu $a3, $t8, $t9 -.L80014904: -/* 015504 80014904 8CE80000 */ lw $t0, ($a3) -/* 015508 80014908 00000000 */ nop -/* 01550C 8001490C 850C0006 */ lh $t4, 6($t0) -/* 015510 80014910 00000000 */ nop -/* 015514 80014914 318D8000 */ andi $t5, $t4, 0x8000 -/* 015518 80014918 11A00003 */ beqz $t5, .L80014928 -/* 01551C 8001491C 00000000 */ nop -/* 015520 80014920 1000000C */ b .L80014954 -/* 015524 80014924 2406FFFF */ li $a2, -1 -.L80014928: -/* 015528 80014928 8D0E0040 */ lw $t6, 0x40($t0) -/* 01552C 8001492C 00000000 */ nop -/* 015530 80014930 95CF0030 */ lhu $t7, 0x30($t6) -/* 015534 80014934 00000000 */ nop -/* 015538 80014938 31F80001 */ andi $t8, $t7, 1 -/* 01553C 8001493C 17000004 */ bnez $t8, .L80014950 -/* 015540 80014940 00000000 */ nop -/* 015544 80014944 2442FFFF */ addiu $v0, $v0, -1 -/* 015548 80014948 10000002 */ b .L80014954 -/* 01554C 8001494C 24E7FFFC */ addiu $a3, $a3, -4 -.L80014950: -/* 015550 80014950 2406FFFF */ li $a2, -1 -.L80014954: -/* 015554 80014954 0044082A */ slt $at, $v0, $a0 -/* 015558 80014958 14200004 */ bnez $at, .L8001496C -/* 01555C 8001495C 0062082A */ slt $at, $v1, $v0 -/* 015560 80014960 10C0FFE8 */ beqz $a2, .L80014904 -/* 015564 80014964 00000000 */ nop -.L80014968: -/* 015568 80014968 0062082A */ slt $at, $v1, $v0 -.L8001496C: -/* 01556C 8001496C 1020000D */ beqz $at, .L800149A4 -/* 015570 80014970 0003C880 */ sll $t9, $v1, 2 -/* 015574 80014974 8D660000 */ lw $a2, ($t3) -/* 015578 80014978 00024080 */ sll $t0, $v0, 2 -/* 01557C 8001497C 00C86021 */ addu $t4, $a2, $t0 -/* 015580 80014980 8D8D0000 */ lw $t5, ($t4) -/* 015584 80014984 00D93821 */ addu $a3, $a2, $t9 -/* 015588 80014988 8CE90000 */ lw $t1, ($a3) -/* 01558C 8001498C ACED0000 */ sw $t5, ($a3) -/* 015590 80014990 8D6E0000 */ lw $t6, ($t3) -/* 015594 80014994 24630001 */ addiu $v1, $v1, 1 -/* 015598 80014998 01C87821 */ addu $t7, $t6, $t0 -/* 01559C 8001499C 2442FFFF */ addiu $v0, $v0, -1 -/* 0155A0 800149A0 ADE90000 */ sw $t1, ($t7) -.L800149A4: -/* 0155A4 800149A4 0043082A */ slt $at, $v0, $v1 -/* 0155A8 800149A8 1020FFB1 */ beqz $at, .L80014870 -/* 0155AC 800149AC 00A3082A */ slt $at, $a1, $v1 -.L800149B0: -/* 0155B0 800149B0 A5430000 */ sh $v1, ($t2) -/* 0155B4 800149B4 00601025 */ move $v0, $v1 -/* 0155B8 800149B8 03E00008 */ jr $ra -/* 0155BC 800149BC 00000000 */ nop - -/* 0155C0 800149C0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0155C4 800149C4 AFBF0014 */ sw $ra, 0x14($sp) -/* 0155C8 800149C8 AFA40028 */ sw $a0, 0x28($sp) -/* 0155CC 800149CC AFA5002C */ sw $a1, 0x2c($sp) -/* 0155D0 800149D0 AFA60030 */ sw $a2, 0x30($sp) -/* 0155D4 800149D4 AFA70034 */ sw $a3, 0x34($sp) -/* 0155D8 800149D8 848F0006 */ lh $t7, 6($a0) -/* 0155DC 800149DC 00807025 */ move $t6, $a0 -/* 0155E0 800149E0 448F2000 */ mtc1 $t7, $f4 -/* 0155E4 800149E4 00C02025 */ move $a0, $a2 -/* 0155E8 800149E8 46802020 */ cvt.s.w $f0, $f4 -/* 0155EC 800149EC 00E02825 */ move $a1, $a3 -/* 0155F0 800149F0 91C70004 */ lbu $a3, 4($t6) -/* 0155F4 800149F4 44060000 */ mfc1 $a2, $f0 -/* 0155F8 800149F8 0C0052D4 */ jal func_80014B50 -/* 0155FC 800149FC E7A00018 */ swc1 $f0, 0x18($sp) -/* 015600 80014A00 8FB80028 */ lw $t8, 0x28($sp) -/* 015604 80014A04 C7A00018 */ lwc1 $f0, 0x18($sp) -/* 015608 80014A08 93070004 */ lbu $a3, 4($t8) -/* 01560C 80014A0C 8FA40030 */ lw $a0, 0x30($sp) -/* 015610 80014A10 44060000 */ mfc1 $a2, $f0 -/* 015614 80014A14 AFA20020 */ sw $v0, 0x20($sp) -/* 015618 80014A18 2445FFFF */ addiu $a1, $v0, -1 -/* 01561C 80014A1C 0C0052D4 */ jal func_80014B50 -/* 015620 80014A20 24E70008 */ addiu $a3, $a3, 8 -/* 015624 80014A24 8FAB0020 */ lw $t3, 0x20($sp) -/* 015628 80014A28 00402825 */ move $a1, $v0 -/* 01562C 80014A2C 004B082A */ slt $at, $v0, $t3 -/* 015630 80014A30 1020003D */ beqz $at, .L80014B28 -/* 015634 80014A34 01622023 */ subu $a0, $t3, $v0 -/* 015638 80014A38 30990003 */ andi $t9, $a0, 3 -/* 01563C 80014A3C 13200010 */ beqz $t9, .L80014A80 -/* 015640 80014A40 03223021 */ addu $a2, $t9, $v0 -/* 015644 80014A44 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 -/* 015648 80014A48 8FA80040 */ lw $t0, 0x40($sp) -/* 01564C 80014A4C 2529AE58 */ addiu $t1, %lo(D_8011AE58) # addiu $t1, $t1, -0x51a8 -/* 015650 80014A50 00051880 */ sll $v1, $a1, 2 -.L80014A54: -/* 015654 80014A54 8D2C0000 */ lw $t4, ($t1) -/* 015658 80014A58 24A50001 */ addiu $a1, $a1, 1 -/* 01565C 80014A5C 01836821 */ addu $t5, $t4, $v1 -/* 015660 80014A60 8DA40000 */ lw $a0, ($t5) -/* 015664 80014A64 24630004 */ addiu $v1, $v1, 4 -/* 015668 80014A68 808F0038 */ lb $t7, 0x38($a0) -/* 01566C 80014A6C 00000000 */ nop -/* 015670 80014A70 01E87021 */ addu $t6, $t7, $t0 -/* 015674 80014A74 14C5FFF7 */ bne $a2, $a1, .L80014A54 -/* 015678 80014A78 A08E0038 */ sb $t6, 0x38($a0) -/* 01567C 80014A7C 10AB002A */ beq $a1, $t3, .L80014B28 -.L80014A80: -/* 015680 80014A80 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 -/* 015684 80014A84 8FA80040 */ lw $t0, 0x40($sp) -/* 015688 80014A88 2529AE58 */ addiu $t1, %lo(D_8011AE58) # addiu $t1, $t1, -0x51a8 -/* 01568C 80014A8C 00051880 */ sll $v1, $a1, 2 -/* 015690 80014A90 000B5080 */ sll $t2, $t3, 2 -.L80014A94: -/* 015694 80014A94 8D380000 */ lw $t8, ($t1) -/* 015698 80014A98 00000000 */ nop -/* 01569C 80014A9C 0303C821 */ addu $t9, $t8, $v1 -/* 0156A0 80014AA0 8F240000 */ lw $a0, ($t9) -/* 0156A4 80014AA4 00000000 */ nop -/* 0156A8 80014AA8 808C0038 */ lb $t4, 0x38($a0) -/* 0156AC 80014AAC 00000000 */ nop -/* 0156B0 80014AB0 01886821 */ addu $t5, $t4, $t0 -/* 0156B4 80014AB4 A08D0038 */ sb $t5, 0x38($a0) -/* 0156B8 80014AB8 8D2F0000 */ lw $t7, ($t1) -/* 0156BC 80014ABC 00000000 */ nop -/* 0156C0 80014AC0 01E37021 */ addu $t6, $t7, $v1 -/* 0156C4 80014AC4 8DC50004 */ lw $a1, 4($t6) -/* 0156C8 80014AC8 00000000 */ nop -/* 0156CC 80014ACC 80B80038 */ lb $t8, 0x38($a1) -/* 0156D0 80014AD0 00000000 */ nop -/* 0156D4 80014AD4 0308C821 */ addu $t9, $t8, $t0 -/* 0156D8 80014AD8 A0B90038 */ sb $t9, 0x38($a1) -/* 0156DC 80014ADC 8D2C0000 */ lw $t4, ($t1) -/* 0156E0 80014AE0 00000000 */ nop -/* 0156E4 80014AE4 01836821 */ addu $t5, $t4, $v1 -/* 0156E8 80014AE8 8DA60008 */ lw $a2, 8($t5) -/* 0156EC 80014AEC 00000000 */ nop -/* 0156F0 80014AF0 80CF0038 */ lb $t7, 0x38($a2) -/* 0156F4 80014AF4 00000000 */ nop -/* 0156F8 80014AF8 01E87021 */ addu $t6, $t7, $t0 -/* 0156FC 80014AFC A0CE0038 */ sb $t6, 0x38($a2) -/* 015700 80014B00 8D380000 */ lw $t8, ($t1) -/* 015704 80014B04 00000000 */ nop -/* 015708 80014B08 0303C821 */ addu $t9, $t8, $v1 -/* 01570C 80014B0C 8F27000C */ lw $a3, 0xc($t9) -/* 015710 80014B10 24630010 */ addiu $v1, $v1, 0x10 -/* 015714 80014B14 80EC0038 */ lb $t4, 0x38($a3) -/* 015718 80014B18 00000000 */ nop -/* 01571C 80014B1C 01886821 */ addu $t5, $t4, $t0 -/* 015720 80014B20 146AFFDC */ bne $v1, $t2, .L80014A94 -/* 015724 80014B24 A0ED0038 */ sb $t5, 0x38($a3) -.L80014B28: -/* 015728 80014B28 8FAF0038 */ lw $t7, 0x38($sp) -/* 01572C 80014B2C 256EFFFF */ addiu $t6, $t3, -1 -/* 015730 80014B30 ADE20000 */ sw $v0, ($t7) -/* 015734 80014B34 8FB8003C */ lw $t8, 0x3c($sp) -/* 015738 80014B38 00000000 */ nop -/* 01573C 80014B3C AF0E0000 */ sw $t6, ($t8) -/* 015740 80014B40 8FBF0014 */ lw $ra, 0x14($sp) -/* 015744 80014B44 27BD0028 */ addiu $sp, $sp, 0x28 -/* 015748 80014B48 03E00008 */ jr $ra -/* 01574C 80014B4C 00000000 */ nop - -glabel func_80014B50 -/* 015750 80014B50 44866000 */ mtc1 $a2, $f12 -/* 015754 80014B54 2CE1000B */ sltiu $at, $a3, 0xb -/* 015758 80014B58 00801025 */ move $v0, $a0 -/* 01575C 80014B5C 102001F8 */ beqz $at, .L80015340 -/* 015760 80014B60 00A01825 */ move $v1, $a1 -/* 015764 80014B64 00077080 */ sll $t6, $a3, 2 -/* 015768 80014B68 3C01800E */ lui $at, 0x800e -/* 01576C 80014B6C 002E0821 */ addu $at, $at, $t6 -/* 015770 80014B70 8C2E5588 */ lw $t6, 0x5588($at) -/* 015774 80014B74 00000000 */ nop -/* 015778 80014B78 01C00008 */ jr $t6 -/* 01577C 80014B7C 00000000 */ nop -/* 015780 80014B80 00A4082A */ slt $at, $a1, $a0 -/* 015784 80014B84 142001EE */ bnez $at, .L80015340 -/* 015788 80014B88 3C0A8012 */ lui $t2, %hi(D_8011AE58) # $t2, 0x8012 -/* 01578C 80014B8C 254AAE58 */ addiu $t2, %lo(D_8011AE58) # addiu $t2, $t2, -0x51a8 -/* 015790 80014B90 0064082A */ slt $at, $v1, $a0 -.L80014B94: -/* 015794 80014B94 1420001D */ bnez $at, .L80014C0C -/* 015798 80014B98 00A2082A */ slt $at, $a1, $v0 -/* 01579C 80014B9C 8D4F0000 */ lw $t7, ($t2) -/* 0157A0 80014BA0 0004C080 */ sll $t8, $a0, 2 -/* 0157A4 80014BA4 01F83821 */ addu $a3, $t7, $t8 -/* 0157A8 80014BA8 8CE60000 */ lw $a2, ($a3) -/* 0157AC 80014BAC 00000000 */ nop -/* 0157B0 80014BB0 C4C4000C */ lwc1 $f4, 0xc($a2) -/* 0157B4 80014BB4 C4C60034 */ lwc1 $f6, 0x34($a2) -/* 0157B8 80014BB8 00000000 */ nop -/* 0157BC 80014BBC 46062201 */ sub.s $f8, $f4, $f6 -/* 0157C0 80014BC0 460C403C */ c.lt.s $f8, $f12 -/* 0157C4 80014BC4 00000000 */ nop -/* 0157C8 80014BC8 45000010 */ bc1f .L80014C0C -/* 0157CC 80014BCC 00A2082A */ slt $at, $a1, $v0 -.L80014BD0: -/* 0157D0 80014BD0 24840001 */ addiu $a0, $a0, 1 -/* 0157D4 80014BD4 0064082A */ slt $at, $v1, $a0 -/* 0157D8 80014BD8 1420000B */ bnez $at, .L80014C08 -/* 0157DC 80014BDC 24E70004 */ addiu $a3, $a3, 4 -/* 0157E0 80014BE0 8CE60000 */ lw $a2, ($a3) -/* 0157E4 80014BE4 00000000 */ nop -/* 0157E8 80014BE8 C4CA000C */ lwc1 $f10, 0xc($a2) -/* 0157EC 80014BEC C4D00034 */ lwc1 $f16, 0x34($a2) -/* 0157F0 80014BF0 00000000 */ nop -/* 0157F4 80014BF4 46105481 */ sub.s $f18, $f10, $f16 -/* 0157F8 80014BF8 460C903C */ c.lt.s $f18, $f12 -/* 0157FC 80014BFC 00000000 */ nop -/* 015800 80014C00 4501FFF3 */ bc1t .L80014BD0 -/* 015804 80014C04 00000000 */ nop -.L80014C08: -/* 015808 80014C08 00A2082A */ slt $at, $a1, $v0 -.L80014C0C: -/* 01580C 80014C0C 1420001C */ bnez $at, .L80014C80 -/* 015810 80014C10 00046080 */ sll $t4, $a0, 2 -/* 015814 80014C14 8D590000 */ lw $t9, ($t2) -/* 015818 80014C18 00055880 */ sll $t3, $a1, 2 -/* 01581C 80014C1C 032B3021 */ addu $a2, $t9, $t3 -/* 015820 80014C20 8CC70000 */ lw $a3, ($a2) -/* 015824 80014C24 00000000 */ nop -/* 015828 80014C28 C4E4000C */ lwc1 $f4, 0xc($a3) -/* 01582C 80014C2C C4E60034 */ lwc1 $f6, 0x34($a3) -/* 015830 80014C30 00000000 */ nop -/* 015834 80014C34 46062201 */ sub.s $f8, $f4, $f6 -/* 015838 80014C38 4608603E */ c.le.s $f12, $f8 -/* 01583C 80014C3C 00000000 */ nop -/* 015840 80014C40 45000010 */ bc1f .L80014C84 -/* 015844 80014C44 0085082A */ slt $at, $a0, $a1 -.L80014C48: -/* 015848 80014C48 24A5FFFF */ addiu $a1, $a1, -1 -/* 01584C 80014C4C 00A2082A */ slt $at, $a1, $v0 -/* 015850 80014C50 1420000B */ bnez $at, .L80014C80 -/* 015854 80014C54 24C6FFFC */ addiu $a2, $a2, -4 -/* 015858 80014C58 8CC70000 */ lw $a3, ($a2) -/* 01585C 80014C5C 00000000 */ nop -/* 015860 80014C60 C4EA000C */ lwc1 $f10, 0xc($a3) -/* 015864 80014C64 C4F00034 */ lwc1 $f16, 0x34($a3) -/* 015868 80014C68 00000000 */ nop -/* 01586C 80014C6C 46105481 */ sub.s $f18, $f10, $f16 -/* 015870 80014C70 4612603E */ c.le.s $f12, $f18 -/* 015874 80014C74 00000000 */ nop -/* 015878 80014C78 4501FFF3 */ bc1t .L80014C48 -/* 01587C 80014C7C 00000000 */ nop -.L80014C80: -/* 015880 80014C80 0085082A */ slt $at, $a0, $a1 -.L80014C84: -/* 015884 80014C84 1020000C */ beqz $at, .L80014CB8 -/* 015888 80014C88 00054080 */ sll $t0, $a1, 2 -/* 01588C 80014C8C 8D460000 */ lw $a2, ($t2) -/* 015890 80014C90 24840001 */ addiu $a0, $a0, 1 -/* 015894 80014C94 00C86821 */ addu $t5, $a2, $t0 -/* 015898 80014C98 8DAE0000 */ lw $t6, ($t5) -/* 01589C 80014C9C 00CC3821 */ addu $a3, $a2, $t4 -/* 0158A0 80014CA0 8CE90000 */ lw $t1, ($a3) -/* 0158A4 80014CA4 ACEE0000 */ sw $t6, ($a3) -/* 0158A8 80014CA8 8D4F0000 */ lw $t7, ($t2) -/* 0158AC 80014CAC 24A5FFFF */ addiu $a1, $a1, -1 -/* 0158B0 80014CB0 01E8C021 */ addu $t8, $t7, $t0 -/* 0158B4 80014CB4 AF090000 */ sw $t1, ($t8) -.L80014CB8: -/* 0158B8 80014CB8 00A4082A */ slt $at, $a1, $a0 -/* 0158BC 80014CBC 1020FFB5 */ beqz $at, .L80014B94 -/* 0158C0 80014CC0 0064082A */ slt $at, $v1, $a0 -/* 0158C4 80014CC4 03E00008 */ jr $ra -/* 0158C8 80014CC8 00801025 */ move $v0, $a0 - -/* 0158CC 80014CCC 00A4082A */ slt $at, $a1, $a0 -/* 0158D0 80014CD0 1420019B */ bnez $at, .L80015340 -/* 0158D4 80014CD4 3C0A8012 */ lui $t2, %hi(D_8011AE58) # $t2, 0x8012 -/* 0158D8 80014CD8 254AAE58 */ addiu $t2, %lo(D_8011AE58) # addiu $t2, $t2, -0x51a8 -/* 0158DC 80014CDC 0064082A */ slt $at, $v1, $a0 -.L80014CE0: -/* 0158E0 80014CE0 1420001D */ bnez $at, .L80014D58 -/* 0158E4 80014CE4 00A2082A */ slt $at, $a1, $v0 -/* 0158E8 80014CE8 8D590000 */ lw $t9, ($t2) -/* 0158EC 80014CEC 00045880 */ sll $t3, $a0, 2 -/* 0158F0 80014CF0 032B3821 */ addu $a3, $t9, $t3 -/* 0158F4 80014CF4 8CE60000 */ lw $a2, ($a3) -/* 0158F8 80014CF8 00000000 */ nop -/* 0158FC 80014CFC C4C40010 */ lwc1 $f4, 0x10($a2) -/* 015900 80014D00 C4C60034 */ lwc1 $f6, 0x34($a2) -/* 015904 80014D04 00000000 */ nop -/* 015908 80014D08 46062201 */ sub.s $f8, $f4, $f6 -/* 01590C 80014D0C 460C403C */ c.lt.s $f8, $f12 -/* 015910 80014D10 00000000 */ nop -/* 015914 80014D14 45000010 */ bc1f .L80014D58 -/* 015918 80014D18 00A2082A */ slt $at, $a1, $v0 -.L80014D1C: -/* 01591C 80014D1C 24840001 */ addiu $a0, $a0, 1 -/* 015920 80014D20 0064082A */ slt $at, $v1, $a0 -/* 015924 80014D24 1420000B */ bnez $at, .L80014D54 -/* 015928 80014D28 24E70004 */ addiu $a3, $a3, 4 -/* 01592C 80014D2C 8CE60000 */ lw $a2, ($a3) -/* 015930 80014D30 00000000 */ nop -/* 015934 80014D34 C4CA0010 */ lwc1 $f10, 0x10($a2) -/* 015938 80014D38 C4D00034 */ lwc1 $f16, 0x34($a2) -/* 01593C 80014D3C 00000000 */ nop -/* 015940 80014D40 46105481 */ sub.s $f18, $f10, $f16 -/* 015944 80014D44 460C903C */ c.lt.s $f18, $f12 -/* 015948 80014D48 00000000 */ nop -/* 01594C 80014D4C 4501FFF3 */ bc1t .L80014D1C -/* 015950 80014D50 00000000 */ nop -.L80014D54: -/* 015954 80014D54 00A2082A */ slt $at, $a1, $v0 -.L80014D58: -/* 015958 80014D58 1420001C */ bnez $at, .L80014DCC -/* 01595C 80014D5C 00047080 */ sll $t6, $a0, 2 -/* 015960 80014D60 8D4C0000 */ lw $t4, ($t2) -/* 015964 80014D64 00056880 */ sll $t5, $a1, 2 -/* 015968 80014D68 018D3021 */ addu $a2, $t4, $t5 -/* 01596C 80014D6C 8CC70000 */ lw $a3, ($a2) -/* 015970 80014D70 00000000 */ nop -/* 015974 80014D74 C4E40010 */ lwc1 $f4, 0x10($a3) -/* 015978 80014D78 C4E60034 */ lwc1 $f6, 0x34($a3) -/* 01597C 80014D7C 00000000 */ nop -/* 015980 80014D80 46062201 */ sub.s $f8, $f4, $f6 -/* 015984 80014D84 4608603E */ c.le.s $f12, $f8 -/* 015988 80014D88 00000000 */ nop -/* 01598C 80014D8C 45000010 */ bc1f .L80014DD0 -/* 015990 80014D90 0085082A */ slt $at, $a0, $a1 -.L80014D94: -/* 015994 80014D94 24A5FFFF */ addiu $a1, $a1, -1 -/* 015998 80014D98 00A2082A */ slt $at, $a1, $v0 -/* 01599C 80014D9C 1420000B */ bnez $at, .L80014DCC -/* 0159A0 80014DA0 24C6FFFC */ addiu $a2, $a2, -4 -/* 0159A4 80014DA4 8CC70000 */ lw $a3, ($a2) -/* 0159A8 80014DA8 00000000 */ nop -/* 0159AC 80014DAC C4EA0010 */ lwc1 $f10, 0x10($a3) -/* 0159B0 80014DB0 C4F00034 */ lwc1 $f16, 0x34($a3) -/* 0159B4 80014DB4 00000000 */ nop -/* 0159B8 80014DB8 46105481 */ sub.s $f18, $f10, $f16 -/* 0159BC 80014DBC 4612603E */ c.le.s $f12, $f18 -/* 0159C0 80014DC0 00000000 */ nop -/* 0159C4 80014DC4 4501FFF3 */ bc1t .L80014D94 -/* 0159C8 80014DC8 00000000 */ nop -.L80014DCC: -/* 0159CC 80014DCC 0085082A */ slt $at, $a0, $a1 -.L80014DD0: -/* 0159D0 80014DD0 1020000C */ beqz $at, .L80014E04 -/* 0159D4 80014DD4 00054080 */ sll $t0, $a1, 2 -/* 0159D8 80014DD8 8D460000 */ lw $a2, ($t2) -/* 0159DC 80014DDC 24840001 */ addiu $a0, $a0, 1 -/* 0159E0 80014DE0 00C87821 */ addu $t7, $a2, $t0 -/* 0159E4 80014DE4 8DF80000 */ lw $t8, ($t7) -/* 0159E8 80014DE8 00CE3821 */ addu $a3, $a2, $t6 -/* 0159EC 80014DEC 8CE90000 */ lw $t1, ($a3) -/* 0159F0 80014DF0 ACF80000 */ sw $t8, ($a3) -/* 0159F4 80014DF4 8D590000 */ lw $t9, ($t2) -/* 0159F8 80014DF8 24A5FFFF */ addiu $a1, $a1, -1 -/* 0159FC 80014DFC 03285821 */ addu $t3, $t9, $t0 -/* 015A00 80014E00 AD690000 */ sw $t1, ($t3) -.L80014E04: -/* 015A04 80014E04 00A4082A */ slt $at, $a1, $a0 -/* 015A08 80014E08 1020FFB5 */ beqz $at, .L80014CE0 -/* 015A0C 80014E0C 0064082A */ slt $at, $v1, $a0 -/* 015A10 80014E10 03E00008 */ jr $ra -/* 015A14 80014E14 00801025 */ move $v0, $a0 - -/* 015A18 80014E18 00A4082A */ slt $at, $a1, $a0 -/* 015A1C 80014E1C 14200148 */ bnez $at, .L80015340 -/* 015A20 80014E20 3C0A8012 */ lui $t2, %hi(D_8011AE58) # $t2, 0x8012 -/* 015A24 80014E24 254AAE58 */ addiu $t2, %lo(D_8011AE58) # addiu $t2, $t2, -0x51a8 -/* 015A28 80014E28 0064082A */ slt $at, $v1, $a0 -.L80014E2C: -/* 015A2C 80014E2C 1420001D */ bnez $at, .L80014EA4 -/* 015A30 80014E30 00A2082A */ slt $at, $a1, $v0 -/* 015A34 80014E34 8D4C0000 */ lw $t4, ($t2) -/* 015A38 80014E38 00046880 */ sll $t5, $a0, 2 -/* 015A3C 80014E3C 018D3821 */ addu $a3, $t4, $t5 -/* 015A40 80014E40 8CE60000 */ lw $a2, ($a3) -/* 015A44 80014E44 00000000 */ nop -/* 015A48 80014E48 C4C40014 */ lwc1 $f4, 0x14($a2) -/* 015A4C 80014E4C C4C60034 */ lwc1 $f6, 0x34($a2) -/* 015A50 80014E50 00000000 */ nop -/* 015A54 80014E54 46062201 */ sub.s $f8, $f4, $f6 -/* 015A58 80014E58 460C403C */ c.lt.s $f8, $f12 -/* 015A5C 80014E5C 00000000 */ nop -/* 015A60 80014E60 45000010 */ bc1f .L80014EA4 -/* 015A64 80014E64 00A2082A */ slt $at, $a1, $v0 -.L80014E68: -/* 015A68 80014E68 24840001 */ addiu $a0, $a0, 1 -/* 015A6C 80014E6C 0064082A */ slt $at, $v1, $a0 -/* 015A70 80014E70 1420000B */ bnez $at, .L80014EA0 -/* 015A74 80014E74 24E70004 */ addiu $a3, $a3, 4 -/* 015A78 80014E78 8CE60000 */ lw $a2, ($a3) -/* 015A7C 80014E7C 00000000 */ nop -/* 015A80 80014E80 C4CA0014 */ lwc1 $f10, 0x14($a2) -/* 015A84 80014E84 C4D00034 */ lwc1 $f16, 0x34($a2) -/* 015A88 80014E88 00000000 */ nop -/* 015A8C 80014E8C 46105481 */ sub.s $f18, $f10, $f16 -/* 015A90 80014E90 460C903C */ c.lt.s $f18, $f12 -/* 015A94 80014E94 00000000 */ nop -/* 015A98 80014E98 4501FFF3 */ bc1t .L80014E68 -/* 015A9C 80014E9C 00000000 */ nop -.L80014EA0: -/* 015AA0 80014EA0 00A2082A */ slt $at, $a1, $v0 -.L80014EA4: -/* 015AA4 80014EA4 1420001C */ bnez $at, .L80014F18 -/* 015AA8 80014EA8 0004C080 */ sll $t8, $a0, 2 -/* 015AAC 80014EAC 8D4E0000 */ lw $t6, ($t2) -/* 015AB0 80014EB0 00057880 */ sll $t7, $a1, 2 -/* 015AB4 80014EB4 01CF3021 */ addu $a2, $t6, $t7 -/* 015AB8 80014EB8 8CC70000 */ lw $a3, ($a2) -/* 015ABC 80014EBC 00000000 */ nop -/* 015AC0 80014EC0 C4E40014 */ lwc1 $f4, 0x14($a3) -/* 015AC4 80014EC4 C4E60034 */ lwc1 $f6, 0x34($a3) -/* 015AC8 80014EC8 00000000 */ nop -/* 015ACC 80014ECC 46062201 */ sub.s $f8, $f4, $f6 -/* 015AD0 80014ED0 4608603E */ c.le.s $f12, $f8 -/* 015AD4 80014ED4 00000000 */ nop -/* 015AD8 80014ED8 45000010 */ bc1f .L80014F1C -/* 015ADC 80014EDC 0085082A */ slt $at, $a0, $a1 -.L80014EE0: -/* 015AE0 80014EE0 24A5FFFF */ addiu $a1, $a1, -1 -/* 015AE4 80014EE4 00A2082A */ slt $at, $a1, $v0 -/* 015AE8 80014EE8 1420000B */ bnez $at, .L80014F18 -/* 015AEC 80014EEC 24C6FFFC */ addiu $a2, $a2, -4 -/* 015AF0 80014EF0 8CC70000 */ lw $a3, ($a2) -/* 015AF4 80014EF4 00000000 */ nop -/* 015AF8 80014EF8 C4EA0014 */ lwc1 $f10, 0x14($a3) -/* 015AFC 80014EFC C4F00034 */ lwc1 $f16, 0x34($a3) -/* 015B00 80014F00 00000000 */ nop -/* 015B04 80014F04 46105481 */ sub.s $f18, $f10, $f16 -/* 015B08 80014F08 4612603E */ c.le.s $f12, $f18 -/* 015B0C 80014F0C 00000000 */ nop -/* 015B10 80014F10 4501FFF3 */ bc1t .L80014EE0 -/* 015B14 80014F14 00000000 */ nop -.L80014F18: -/* 015B18 80014F18 0085082A */ slt $at, $a0, $a1 -.L80014F1C: -/* 015B1C 80014F1C 1020000C */ beqz $at, .L80014F50 -/* 015B20 80014F20 00054080 */ sll $t0, $a1, 2 -/* 015B24 80014F24 8D460000 */ lw $a2, ($t2) -/* 015B28 80014F28 24840001 */ addiu $a0, $a0, 1 -/* 015B2C 80014F2C 00C8C821 */ addu $t9, $a2, $t0 -/* 015B30 80014F30 8F2B0000 */ lw $t3, ($t9) -/* 015B34 80014F34 00D83821 */ addu $a3, $a2, $t8 -/* 015B38 80014F38 8CE90000 */ lw $t1, ($a3) -/* 015B3C 80014F3C ACEB0000 */ sw $t3, ($a3) -/* 015B40 80014F40 8D4C0000 */ lw $t4, ($t2) -/* 015B44 80014F44 24A5FFFF */ addiu $a1, $a1, -1 -/* 015B48 80014F48 01886821 */ addu $t5, $t4, $t0 -/* 015B4C 80014F4C ADA90000 */ sw $t1, ($t5) -.L80014F50: -/* 015B50 80014F50 00A4082A */ slt $at, $a1, $a0 -/* 015B54 80014F54 1020FFB5 */ beqz $at, .L80014E2C -/* 015B58 80014F58 0064082A */ slt $at, $v1, $a0 -/* 015B5C 80014F5C 03E00008 */ jr $ra -/* 015B60 80014F60 00801025 */ move $v0, $a0 - -/* 015B64 80014F64 00A4082A */ slt $at, $a1, $a0 -/* 015B68 80014F68 142000F5 */ bnez $at, .L80015340 -/* 015B6C 80014F6C 3C0A8012 */ lui $t2, %hi(D_8011AE58) # $t2, 0x8012 -/* 015B70 80014F70 254AAE58 */ addiu $t2, %lo(D_8011AE58) # addiu $t2, $t2, -0x51a8 -/* 015B74 80014F74 0064082A */ slt $at, $v1, $a0 -.L80014F78: -/* 015B78 80014F78 1420001D */ bnez $at, .L80014FF0 -/* 015B7C 80014F7C 00A2082A */ slt $at, $a1, $v0 -/* 015B80 80014F80 8D4E0000 */ lw $t6, ($t2) -/* 015B84 80014F84 00047880 */ sll $t7, $a0, 2 -/* 015B88 80014F88 01CF3821 */ addu $a3, $t6, $t7 -/* 015B8C 80014F8C 8CE60000 */ lw $a2, ($a3) -/* 015B90 80014F90 00000000 */ nop -/* 015B94 80014F94 C4C40034 */ lwc1 $f4, 0x34($a2) -/* 015B98 80014F98 C4C6000C */ lwc1 $f6, 0xc($a2) -/* 015B9C 80014F9C 00000000 */ nop -/* 015BA0 80014FA0 46062200 */ add.s $f8, $f4, $f6 -/* 015BA4 80014FA4 460C403C */ c.lt.s $f8, $f12 -/* 015BA8 80014FA8 00000000 */ nop -/* 015BAC 80014FAC 45000010 */ bc1f .L80014FF0 -/* 015BB0 80014FB0 00A2082A */ slt $at, $a1, $v0 -.L80014FB4: -/* 015BB4 80014FB4 24840001 */ addiu $a0, $a0, 1 -/* 015BB8 80014FB8 0064082A */ slt $at, $v1, $a0 -/* 015BBC 80014FBC 1420000B */ bnez $at, .L80014FEC -/* 015BC0 80014FC0 24E70004 */ addiu $a3, $a3, 4 -/* 015BC4 80014FC4 8CE60000 */ lw $a2, ($a3) -/* 015BC8 80014FC8 00000000 */ nop -/* 015BCC 80014FCC C4CA0034 */ lwc1 $f10, 0x34($a2) -/* 015BD0 80014FD0 C4D0000C */ lwc1 $f16, 0xc($a2) -/* 015BD4 80014FD4 00000000 */ nop -/* 015BD8 80014FD8 46105480 */ add.s $f18, $f10, $f16 -/* 015BDC 80014FDC 460C903C */ c.lt.s $f18, $f12 -/* 015BE0 80014FE0 00000000 */ nop -/* 015BE4 80014FE4 4501FFF3 */ bc1t .L80014FB4 -/* 015BE8 80014FE8 00000000 */ nop -.L80014FEC: -/* 015BEC 80014FEC 00A2082A */ slt $at, $a1, $v0 -.L80014FF0: -/* 015BF0 80014FF0 1420001C */ bnez $at, .L80015064 -/* 015BF4 80014FF4 00045880 */ sll $t3, $a0, 2 -/* 015BF8 80014FF8 8D580000 */ lw $t8, ($t2) -/* 015BFC 80014FFC 0005C880 */ sll $t9, $a1, 2 -/* 015C00 80015000 03193021 */ addu $a2, $t8, $t9 -/* 015C04 80015004 8CC70000 */ lw $a3, ($a2) -/* 015C08 80015008 00000000 */ nop -/* 015C0C 8001500C C4E40034 */ lwc1 $f4, 0x34($a3) -/* 015C10 80015010 C4E6000C */ lwc1 $f6, 0xc($a3) -/* 015C14 80015014 00000000 */ nop -/* 015C18 80015018 46062200 */ add.s $f8, $f4, $f6 -/* 015C1C 8001501C 4608603E */ c.le.s $f12, $f8 -/* 015C20 80015020 00000000 */ nop -/* 015C24 80015024 45000010 */ bc1f .L80015068 -/* 015C28 80015028 0085082A */ slt $at, $a0, $a1 -.L8001502C: -/* 015C2C 8001502C 24A5FFFF */ addiu $a1, $a1, -1 -/* 015C30 80015030 00A2082A */ slt $at, $a1, $v0 -/* 015C34 80015034 1420000B */ bnez $at, .L80015064 -/* 015C38 80015038 24C6FFFC */ addiu $a2, $a2, -4 -/* 015C3C 8001503C 8CC70000 */ lw $a3, ($a2) -/* 015C40 80015040 00000000 */ nop -/* 015C44 80015044 C4EA0034 */ lwc1 $f10, 0x34($a3) -/* 015C48 80015048 C4F0000C */ lwc1 $f16, 0xc($a3) -/* 015C4C 8001504C 00000000 */ nop -/* 015C50 80015050 46105480 */ add.s $f18, $f10, $f16 -/* 015C54 80015054 4612603E */ c.le.s $f12, $f18 -/* 015C58 80015058 00000000 */ nop -/* 015C5C 8001505C 4501FFF3 */ bc1t .L8001502C -/* 015C60 80015060 00000000 */ nop -.L80015064: -/* 015C64 80015064 0085082A */ slt $at, $a0, $a1 -.L80015068: -/* 015C68 80015068 1020000C */ beqz $at, .L8001509C -/* 015C6C 8001506C 00054080 */ sll $t0, $a1, 2 -/* 015C70 80015070 8D460000 */ lw $a2, ($t2) -/* 015C74 80015074 24840001 */ addiu $a0, $a0, 1 -/* 015C78 80015078 00C86021 */ addu $t4, $a2, $t0 -/* 015C7C 8001507C 8D8D0000 */ lw $t5, ($t4) -/* 015C80 80015080 00CB3821 */ addu $a3, $a2, $t3 -/* 015C84 80015084 8CE90000 */ lw $t1, ($a3) -/* 015C88 80015088 ACED0000 */ sw $t5, ($a3) -/* 015C8C 8001508C 8D4E0000 */ lw $t6, ($t2) -/* 015C90 80015090 24A5FFFF */ addiu $a1, $a1, -1 -/* 015C94 80015094 01C87821 */ addu $t7, $t6, $t0 -/* 015C98 80015098 ADE90000 */ sw $t1, ($t7) -.L8001509C: -/* 015C9C 8001509C 00A4082A */ slt $at, $a1, $a0 -/* 015CA0 800150A0 1020FFB5 */ beqz $at, .L80014F78 -/* 015CA4 800150A4 0064082A */ slt $at, $v1, $a0 -/* 015CA8 800150A8 03E00008 */ jr $ra -/* 015CAC 800150AC 00801025 */ move $v0, $a0 - -/* 015CB0 800150B0 00A4082A */ slt $at, $a1, $a0 -/* 015CB4 800150B4 142000A2 */ bnez $at, .L80015340 -/* 015CB8 800150B8 3C0A8012 */ lui $t2, %hi(D_8011AE58) # $t2, 0x8012 -/* 015CBC 800150BC 254AAE58 */ addiu $t2, %lo(D_8011AE58) # addiu $t2, $t2, -0x51a8 -/* 015CC0 800150C0 0064082A */ slt $at, $v1, $a0 -.L800150C4: -/* 015CC4 800150C4 1420001D */ bnez $at, .L8001513C -/* 015CC8 800150C8 00A2082A */ slt $at, $a1, $v0 -/* 015CCC 800150CC 8D580000 */ lw $t8, ($t2) -/* 015CD0 800150D0 0004C880 */ sll $t9, $a0, 2 -/* 015CD4 800150D4 03193821 */ addu $a3, $t8, $t9 -/* 015CD8 800150D8 8CE60000 */ lw $a2, ($a3) -/* 015CDC 800150DC 00000000 */ nop -/* 015CE0 800150E0 C4C40034 */ lwc1 $f4, 0x34($a2) -/* 015CE4 800150E4 C4C60010 */ lwc1 $f6, 0x10($a2) -/* 015CE8 800150E8 00000000 */ nop -/* 015CEC 800150EC 46062200 */ add.s $f8, $f4, $f6 -/* 015CF0 800150F0 460C403C */ c.lt.s $f8, $f12 -/* 015CF4 800150F4 00000000 */ nop -/* 015CF8 800150F8 45000010 */ bc1f .L8001513C -/* 015CFC 800150FC 00A2082A */ slt $at, $a1, $v0 -.L80015100: -/* 015D00 80015100 24840001 */ addiu $a0, $a0, 1 -/* 015D04 80015104 0064082A */ slt $at, $v1, $a0 -/* 015D08 80015108 1420000B */ bnez $at, .L80015138 -/* 015D0C 8001510C 24E70004 */ addiu $a3, $a3, 4 -/* 015D10 80015110 8CE60000 */ lw $a2, ($a3) -/* 015D14 80015114 00000000 */ nop -/* 015D18 80015118 C4CA0034 */ lwc1 $f10, 0x34($a2) -/* 015D1C 8001511C C4D00010 */ lwc1 $f16, 0x10($a2) -/* 015D20 80015120 00000000 */ nop -/* 015D24 80015124 46105480 */ add.s $f18, $f10, $f16 -/* 015D28 80015128 460C903C */ c.lt.s $f18, $f12 -/* 015D2C 8001512C 00000000 */ nop -/* 015D30 80015130 4501FFF3 */ bc1t .L80015100 -/* 015D34 80015134 00000000 */ nop -.L80015138: -/* 015D38 80015138 00A2082A */ slt $at, $a1, $v0 -.L8001513C: -/* 015D3C 8001513C 1420001C */ bnez $at, .L800151B0 -/* 015D40 80015140 00046880 */ sll $t5, $a0, 2 -/* 015D44 80015144 8D4B0000 */ lw $t3, ($t2) -/* 015D48 80015148 00056080 */ sll $t4, $a1, 2 -/* 015D4C 8001514C 016C3021 */ addu $a2, $t3, $t4 -/* 015D50 80015150 8CC70000 */ lw $a3, ($a2) -/* 015D54 80015154 00000000 */ nop -/* 015D58 80015158 C4E40034 */ lwc1 $f4, 0x34($a3) -/* 015D5C 8001515C C4E60010 */ lwc1 $f6, 0x10($a3) -/* 015D60 80015160 00000000 */ nop -/* 015D64 80015164 46062200 */ add.s $f8, $f4, $f6 -/* 015D68 80015168 4608603E */ c.le.s $f12, $f8 -/* 015D6C 8001516C 00000000 */ nop -/* 015D70 80015170 45000010 */ bc1f .L800151B4 -/* 015D74 80015174 0085082A */ slt $at, $a0, $a1 -.L80015178: -/* 015D78 80015178 24A5FFFF */ addiu $a1, $a1, -1 -/* 015D7C 8001517C 00A2082A */ slt $at, $a1, $v0 -/* 015D80 80015180 1420000B */ bnez $at, .L800151B0 -/* 015D84 80015184 24C6FFFC */ addiu $a2, $a2, -4 -/* 015D88 80015188 8CC70000 */ lw $a3, ($a2) -/* 015D8C 8001518C 00000000 */ nop -/* 015D90 80015190 C4EA0034 */ lwc1 $f10, 0x34($a3) -/* 015D94 80015194 C4F00010 */ lwc1 $f16, 0x10($a3) -/* 015D98 80015198 00000000 */ nop -/* 015D9C 8001519C 46105480 */ add.s $f18, $f10, $f16 -/* 015DA0 800151A0 4612603E */ c.le.s $f12, $f18 -/* 015DA4 800151A4 00000000 */ nop -/* 015DA8 800151A8 4501FFF3 */ bc1t .L80015178 -/* 015DAC 800151AC 00000000 */ nop -.L800151B0: -/* 015DB0 800151B0 0085082A */ slt $at, $a0, $a1 -.L800151B4: -/* 015DB4 800151B4 1020000C */ beqz $at, .L800151E8 -/* 015DB8 800151B8 00054080 */ sll $t0, $a1, 2 -/* 015DBC 800151BC 8D460000 */ lw $a2, ($t2) -/* 015DC0 800151C0 24840001 */ addiu $a0, $a0, 1 -/* 015DC4 800151C4 00C87021 */ addu $t6, $a2, $t0 -/* 015DC8 800151C8 8DCF0000 */ lw $t7, ($t6) -/* 015DCC 800151CC 00CD3821 */ addu $a3, $a2, $t5 -/* 015DD0 800151D0 8CE90000 */ lw $t1, ($a3) -/* 015DD4 800151D4 ACEF0000 */ sw $t7, ($a3) -/* 015DD8 800151D8 8D580000 */ lw $t8, ($t2) -/* 015DDC 800151DC 24A5FFFF */ addiu $a1, $a1, -1 -/* 015DE0 800151E0 0308C821 */ addu $t9, $t8, $t0 -/* 015DE4 800151E4 AF290000 */ sw $t1, ($t9) -.L800151E8: -/* 015DE8 800151E8 00A4082A */ slt $at, $a1, $a0 -/* 015DEC 800151EC 1020FFB5 */ beqz $at, .L800150C4 -/* 015DF0 800151F0 0064082A */ slt $at, $v1, $a0 -/* 015DF4 800151F4 03E00008 */ jr $ra -/* 015DF8 800151F8 00801025 */ move $v0, $a0 - -/* 015DFC 800151FC 00A4082A */ slt $at, $a1, $a0 -/* 015E00 80015200 1420004F */ bnez $at, .L80015340 -/* 015E04 80015204 3C0A8012 */ lui $t2, %hi(D_8011AE58) # $t2, 0x8012 -/* 015E08 80015208 254AAE58 */ addiu $t2, %lo(D_8011AE58) # addiu $t2, $t2, -0x51a8 -/* 015E0C 8001520C 0064082A */ slt $at, $v1, $a0 -.L80015210: -/* 015E10 80015210 1420001D */ bnez $at, .L80015288 -/* 015E14 80015214 00A2082A */ slt $at, $a1, $v0 -/* 015E18 80015218 8D4B0000 */ lw $t3, ($t2) -/* 015E1C 8001521C 00046080 */ sll $t4, $a0, 2 -/* 015E20 80015220 016C3821 */ addu $a3, $t3, $t4 -/* 015E24 80015224 8CE60000 */ lw $a2, ($a3) -/* 015E28 80015228 00000000 */ nop -/* 015E2C 8001522C C4C40034 */ lwc1 $f4, 0x34($a2) -/* 015E30 80015230 C4C60014 */ lwc1 $f6, 0x14($a2) -/* 015E34 80015234 00000000 */ nop -/* 015E38 80015238 46062200 */ add.s $f8, $f4, $f6 -/* 015E3C 8001523C 460C403C */ c.lt.s $f8, $f12 -/* 015E40 80015240 00000000 */ nop -/* 015E44 80015244 45000010 */ bc1f .L80015288 -/* 015E48 80015248 00A2082A */ slt $at, $a1, $v0 -.L8001524C: -/* 015E4C 8001524C 24840001 */ addiu $a0, $a0, 1 -/* 015E50 80015250 0064082A */ slt $at, $v1, $a0 -/* 015E54 80015254 1420000B */ bnez $at, .L80015284 -/* 015E58 80015258 24E70004 */ addiu $a3, $a3, 4 -/* 015E5C 8001525C 8CE60000 */ lw $a2, ($a3) -/* 015E60 80015260 00000000 */ nop -/* 015E64 80015264 C4CA0034 */ lwc1 $f10, 0x34($a2) -/* 015E68 80015268 C4D00014 */ lwc1 $f16, 0x14($a2) -/* 015E6C 8001526C 00000000 */ nop -/* 015E70 80015270 46105480 */ add.s $f18, $f10, $f16 -/* 015E74 80015274 460C903C */ c.lt.s $f18, $f12 -/* 015E78 80015278 00000000 */ nop -/* 015E7C 8001527C 4501FFF3 */ bc1t .L8001524C -/* 015E80 80015280 00000000 */ nop -.L80015284: -/* 015E84 80015284 00A2082A */ slt $at, $a1, $v0 -.L80015288: -/* 015E88 80015288 1420001C */ bnez $at, .L800152FC -/* 015E8C 8001528C 00047880 */ sll $t7, $a0, 2 -/* 015E90 80015290 8D4D0000 */ lw $t5, ($t2) -/* 015E94 80015294 00057080 */ sll $t6, $a1, 2 -/* 015E98 80015298 01AE3021 */ addu $a2, $t5, $t6 -/* 015E9C 8001529C 8CC70000 */ lw $a3, ($a2) -/* 015EA0 800152A0 00000000 */ nop -/* 015EA4 800152A4 C4E40034 */ lwc1 $f4, 0x34($a3) -/* 015EA8 800152A8 C4E60014 */ lwc1 $f6, 0x14($a3) -/* 015EAC 800152AC 00000000 */ nop -/* 015EB0 800152B0 46062200 */ add.s $f8, $f4, $f6 -/* 015EB4 800152B4 4608603E */ c.le.s $f12, $f8 -/* 015EB8 800152B8 00000000 */ nop -/* 015EBC 800152BC 45000010 */ bc1f .L80015300 -/* 015EC0 800152C0 0085082A */ slt $at, $a0, $a1 -.L800152C4: -/* 015EC4 800152C4 24A5FFFF */ addiu $a1, $a1, -1 -/* 015EC8 800152C8 00A2082A */ slt $at, $a1, $v0 -/* 015ECC 800152CC 1420000B */ bnez $at, .L800152FC -/* 015ED0 800152D0 24C6FFFC */ addiu $a2, $a2, -4 -/* 015ED4 800152D4 8CC70000 */ lw $a3, ($a2) -/* 015ED8 800152D8 00000000 */ nop -/* 015EDC 800152DC C4EA0034 */ lwc1 $f10, 0x34($a3) -/* 015EE0 800152E0 C4F00014 */ lwc1 $f16, 0x14($a3) -/* 015EE4 800152E4 00000000 */ nop -/* 015EE8 800152E8 46105480 */ add.s $f18, $f10, $f16 -/* 015EEC 800152EC 4612603E */ c.le.s $f12, $f18 -/* 015EF0 800152F0 00000000 */ nop -/* 015EF4 800152F4 4501FFF3 */ bc1t .L800152C4 -/* 015EF8 800152F8 00000000 */ nop -.L800152FC: -/* 015EFC 800152FC 0085082A */ slt $at, $a0, $a1 -.L80015300: -/* 015F00 80015300 1020000C */ beqz $at, .L80015334 -/* 015F04 80015304 00054080 */ sll $t0, $a1, 2 -/* 015F08 80015308 8D460000 */ lw $a2, ($t2) -/* 015F0C 8001530C 24840001 */ addiu $a0, $a0, 1 -/* 015F10 80015310 00C8C021 */ addu $t8, $a2, $t0 -/* 015F14 80015314 8F190000 */ lw $t9, ($t8) -/* 015F18 80015318 00CF3821 */ addu $a3, $a2, $t7 -/* 015F1C 8001531C 8CE90000 */ lw $t1, ($a3) -/* 015F20 80015320 ACF90000 */ sw $t9, ($a3) -/* 015F24 80015324 8D4B0000 */ lw $t3, ($t2) -/* 015F28 80015328 24A5FFFF */ addiu $a1, $a1, -1 -/* 015F2C 8001532C 01686021 */ addu $t4, $t3, $t0 -/* 015F30 80015330 AD890000 */ sw $t1, ($t4) -.L80015334: -/* 015F34 80015334 00A4082A */ slt $at, $a1, $a0 -/* 015F38 80015338 1020FFB5 */ beqz $at, .L80015210 -/* 015F3C 8001533C 0064082A */ slt $at, $v1, $a0 -.L80015340: -/* 015F40 80015340 03E00008 */ jr $ra -/* 015F44 80015344 00801025 */ move $v0, $a0 - -glabel func_80015348 -/* 015F48 80015348 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 015F4C 8001534C AFB40034 */ sw $s4, 0x34($sp) -/* 015F50 80015350 AFB30030 */ sw $s3, 0x30($sp) -/* 015F54 80015354 00A4082A */ slt $at, $a1, $a0 -/* 015F58 80015358 00809825 */ move $s3, $a0 -/* 015F5C 8001535C 00A0A025 */ move $s4, $a1 -/* 015F60 80015360 AFBF003C */ sw $ra, 0x3c($sp) -/* 015F64 80015364 AFB50038 */ sw $s5, 0x38($sp) -/* 015F68 80015368 AFB2002C */ sw $s2, 0x2c($sp) -/* 015F6C 8001536C AFB10028 */ sw $s1, 0x28($sp) -/* 015F70 80015370 AFB00024 */ sw $s0, 0x24($sp) -/* 015F74 80015374 E7B70018 */ swc1 $f23, 0x18($sp) -/* 015F78 80015378 E7B6001C */ swc1 $f22, 0x1c($sp) -/* 015F7C 8001537C E7B50010 */ swc1 $f21, 0x10($sp) -/* 015F80 80015380 14200080 */ bnez $at, .L80015584 -/* 015F84 80015384 E7B40014 */ swc1 $f20, 0x14($sp) -/* 015F88 80015388 00A4082A */ slt $at, $a1, $a0 -/* 015F8C 8001538C 14200034 */ bnez $at, .L80015460 -/* 015F90 80015390 00048880 */ sll $s1, $a0, 2 -/* 015F94 80015394 3C01C67A */ li $at, 0xC67A0000 # -16000.000000 -/* 015F98 80015398 0005A880 */ sll $s5, $a1, 2 -/* 015F9C 8001539C 3C128012 */ lui $s2, %hi(D_8011AE58) # $s2, 0x8012 -/* 015FA0 800153A0 4481A000 */ mtc1 $at, $f20 -/* 015FA4 800153A4 4480B000 */ mtc1 $zero, $f22 -/* 015FA8 800153A8 2652AE58 */ addiu $s2, %lo(D_8011AE58) # addiu $s2, $s2, -0x51a8 -/* 015FAC 800153AC 26B50004 */ addiu $s5, $s5, 4 -.L800153B0: -/* 015FB0 800153B0 8E4E0000 */ lw $t6, ($s2) -/* 015FB4 800153B4 00000000 */ nop -/* 015FB8 800153B8 01D17821 */ addu $t7, $t6, $s1 -/* 015FBC 800153BC 8DE40000 */ lw $a0, ($t7) -/* 015FC0 800153C0 00000000 */ nop -/* 015FC4 800153C4 10800022 */ beqz $a0, .L80015450 -/* 015FC8 800153C8 00808025 */ move $s0, $a0 -/* 015FCC 800153CC 84980006 */ lh $t8, 6($a0) -/* 015FD0 800153D0 00000000 */ nop -/* 015FD4 800153D4 33198000 */ andi $t9, $t8, 0x8000 -/* 015FD8 800153D8 13200009 */ beqz $t9, .L80015400 -/* 015FDC 800153DC 00000000 */ nop -/* 015FE0 800153E0 C60C000C */ lwc1 $f12, 0xc($s0) -/* 015FE4 800153E4 C60E0010 */ lwc1 $f14, 0x10($s0) -/* 015FE8 800153E8 8E060014 */ lw $a2, 0x14($s0) -/* 015FEC 800153EC 0C01A772 */ jal func_80069DC8 -/* 015FF0 800153F0 00000000 */ nop -/* 015FF4 800153F4 46000107 */ neg.s $f4, $f0 -/* 015FF8 800153F8 10000016 */ b .L80015454 -/* 015FFC 800153FC E6040030 */ swc1 $f4, 0x30($s0) -.L80015400: -/* 016000 80015400 8C880040 */ lw $t0, 0x40($a0) -/* 016004 80015404 00000000 */ nop -/* 016008 80015408 95090030 */ lhu $t1, 0x30($t0) -/* 01600C 8001540C 00000000 */ nop -/* 016010 80015410 312A0080 */ andi $t2, $t1, 0x80 -/* 016014 80015414 11400006 */ beqz $t2, .L80015430 -/* 016018 80015418 00000000 */ nop -/* 01601C 8001541C C6060030 */ lwc1 $f6, 0x30($s0) -/* 016020 80015420 00000000 */ nop -/* 016024 80015424 46143200 */ add.s $f8, $f6, $f20 -/* 016028 80015428 1000000A */ b .L80015454 -/* 01602C 8001542C E6080030 */ swc1 $f8, 0x30($s0) -.L80015430: -/* 016030 80015430 C60C000C */ lwc1 $f12, 0xc($s0) -/* 016034 80015434 C60E0010 */ lwc1 $f14, 0x10($s0) -/* 016038 80015438 8E060014 */ lw $a2, 0x14($s0) -/* 01603C 8001543C 0C01A772 */ jal func_80069DC8 -/* 016040 80015440 00000000 */ nop -/* 016044 80015444 46000287 */ neg.s $f10, $f0 -/* 016048 80015448 10000002 */ b .L80015454 -/* 01604C 8001544C E60A0030 */ swc1 $f10, 0x30($s0) -.L80015450: -/* 016050 80015450 E6160030 */ swc1 $f22, 0x30($s0) -.L80015454: -/* 016054 80015454 26310004 */ addiu $s1, $s1, 4 -/* 016058 80015458 16B1FFD5 */ bne $s5, $s1, .L800153B0 -/* 01605C 8001545C 00000000 */ nop -.L80015460: -/* 016060 80015460 3C128012 */ lui $s2, %hi(D_8011AE58) # $s2, 0x8012 -/* 016064 80015464 2652AE58 */ addiu $s2, %lo(D_8011AE58) # addiu $s2, $s2, -0x51a8 -/* 016068 80015468 0274082A */ slt $at, $s3, $s4 -.L8001546C: -/* 01606C 8001546C 24050001 */ li $a1, 1 -/* 016070 80015470 10200042 */ beqz $at, .L8001557C -/* 016074 80015474 02601025 */ move $v0, $s3 -/* 016078 80015478 02931823 */ subu $v1, $s4, $s3 -/* 01607C 8001547C 306B0001 */ andi $t3, $v1, 1 -/* 016080 80015480 11600015 */ beqz $t3, .L800154D8 -/* 016084 80015484 00028880 */ sll $s1, $v0, 2 -/* 016088 80015488 8E4C0000 */ lw $t4, ($s2) -/* 01608C 8001548C 00131880 */ sll $v1, $s3, 2 -/* 016090 80015490 01831021 */ addu $v0, $t4, $v1 -/* 016094 80015494 8C440000 */ lw $a0, ($v0) -/* 016098 80015498 8C460004 */ lw $a2, 4($v0) -/* 01609C 8001549C C4800030 */ lwc1 $f0, 0x30($a0) -/* 0160A0 800154A0 C4C20030 */ lwc1 $f2, 0x30($a2) -/* 0160A4 800154A4 26670001 */ addiu $a3, $s3, 1 -/* 0160A8 800154A8 4602003C */ c.lt.s $f0, $f2 -/* 0160AC 800154AC 00000000 */ nop -/* 0160B0 800154B0 45000006 */ bc1f .L800154CC -/* 0160B4 800154B4 00000000 */ nop -/* 0160B8 800154B8 AC460000 */ sw $a2, ($v0) -/* 0160BC 800154BC 8E4D0000 */ lw $t5, ($s2) -/* 0160C0 800154C0 00002825 */ move $a1, $zero -/* 0160C4 800154C4 01A37021 */ addu $t6, $t5, $v1 -/* 0160C8 800154C8 ADC40004 */ sw $a0, 4($t6) -.L800154CC: -/* 0160CC 800154CC 10F4002B */ beq $a3, $s4, .L8001557C -/* 0160D0 800154D0 00E01025 */ move $v0, $a3 -/* 0160D4 800154D4 00028880 */ sll $s1, $v0, 2 -.L800154D8: -/* 0160D8 800154D8 00143080 */ sll $a2, $s4, 2 -.L800154DC: -/* 0160DC 800154DC 8E4F0000 */ lw $t7, ($s2) -/* 0160E0 800154E0 00000000 */ nop -/* 0160E4 800154E4 01F11021 */ addu $v0, $t7, $s1 -/* 0160E8 800154E8 8C440000 */ lw $a0, ($v0) -/* 0160EC 800154EC 8C430004 */ lw $v1, 4($v0) -/* 0160F0 800154F0 C4900030 */ lwc1 $f16, 0x30($a0) -/* 0160F4 800154F4 C4600030 */ lwc1 $f0, 0x30($v1) -/* 0160F8 800154F8 00000000 */ nop -/* 0160FC 800154FC 4600803C */ c.lt.s $f16, $f0 -/* 016100 80015500 00000000 */ nop -/* 016104 80015504 4500000D */ bc1f .L8001553C -/* 016108 80015508 00000000 */ nop -/* 01610C 8001550C AC430000 */ sw $v1, ($v0) -/* 016110 80015510 8E580000 */ lw $t8, ($s2) -/* 016114 80015514 00002825 */ move $a1, $zero -/* 016118 80015518 0311C821 */ addu $t9, $t8, $s1 -/* 01611C 8001551C AF240004 */ sw $a0, 4($t9) -/* 016120 80015520 8E480000 */ lw $t0, ($s2) -/* 016124 80015524 00000000 */ nop -/* 016128 80015528 01111021 */ addu $v0, $t0, $s1 -/* 01612C 8001552C 8C430004 */ lw $v1, 4($v0) -/* 016130 80015530 00000000 */ nop -/* 016134 80015534 C4600030 */ lwc1 $f0, 0x30($v1) -/* 016138 80015538 00000000 */ nop -.L8001553C: -/* 01613C 8001553C 8C440008 */ lw $a0, 8($v0) -/* 016140 80015540 00000000 */ nop -/* 016144 80015544 C4920030 */ lwc1 $f18, 0x30($a0) -/* 016148 80015548 00000000 */ nop -/* 01614C 8001554C 4612003C */ c.lt.s $f0, $f18 -/* 016150 80015550 00000000 */ nop -/* 016154 80015554 45000006 */ bc1f .L80015570 -/* 016158 80015558 00000000 */ nop -/* 01615C 8001555C AC440004 */ sw $a0, 4($v0) -/* 016160 80015560 8E490000 */ lw $t1, ($s2) -/* 016164 80015564 00002825 */ move $a1, $zero -/* 016168 80015568 01315021 */ addu $t2, $t1, $s1 -/* 01616C 8001556C AD430008 */ sw $v1, 8($t2) -.L80015570: -/* 016170 80015570 26310008 */ addiu $s1, $s1, 8 -/* 016174 80015574 1626FFD9 */ bne $s1, $a2, .L800154DC -/* 016178 80015578 00000000 */ nop -.L8001557C: -/* 01617C 8001557C 10A0FFBB */ beqz $a1, .L8001546C -/* 016180 80015580 0274082A */ slt $at, $s3, $s4 -.L80015584: -/* 016184 80015584 8FBF003C */ lw $ra, 0x3c($sp) -/* 016188 80015588 C7B50010 */ lwc1 $f21, 0x10($sp) -/* 01618C 8001558C C7B40014 */ lwc1 $f20, 0x14($sp) -/* 016190 80015590 C7B70018 */ lwc1 $f23, 0x18($sp) -/* 016194 80015594 C7B6001C */ lwc1 $f22, 0x1c($sp) -/* 016198 80015598 8FB00024 */ lw $s0, 0x24($sp) -/* 01619C 8001559C 8FB10028 */ lw $s1, 0x28($sp) -/* 0161A0 800155A0 8FB2002C */ lw $s2, 0x2c($sp) -/* 0161A4 800155A4 8FB30030 */ lw $s3, 0x30($sp) -/* 0161A8 800155A8 8FB40034 */ lw $s4, 0x34($sp) -/* 0161AC 800155AC 8FB50038 */ lw $s5, 0x38($sp) -/* 0161B0 800155B0 03E00008 */ jr $ra -/* 0161B4 800155B4 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_800155B8 -/* 0161B8 800155B8 27BDFB70 */ addiu $sp, $sp, -0x490 -/* 0161BC 800155BC AFB30034 */ sw $s3, 0x34($sp) -/* 0161C0 800155C0 3C138012 */ lui $s3, %hi(D_8011AE60) # $s3, 0x8012 -/* 0161C4 800155C4 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 -/* 0161C8 800155C8 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) -/* 0161CC 800155CC 8E73AE60 */ lw $s3, %lo(D_8011AE60)($s3) -/* 0161D0 800155D0 AFB5003C */ sw $s5, 0x3c($sp) -/* 0161D4 800155D4 0263082A */ slt $at, $s3, $v1 -/* 0161D8 800155D8 AFBF004C */ sw $ra, 0x4c($sp) -/* 0161DC 800155DC AFBE0048 */ sw $fp, 0x48($sp) -/* 0161E0 800155E0 AFB70044 */ sw $s7, 0x44($sp) -/* 0161E4 800155E4 AFB60040 */ sw $s6, 0x40($sp) -/* 0161E8 800155E8 AFB40038 */ sw $s4, 0x38($sp) -/* 0161EC 800155EC AFB20030 */ sw $s2, 0x30($sp) -/* 0161F0 800155F0 AFB1002C */ sw $s1, 0x2c($sp) -/* 0161F4 800155F4 AFB00028 */ sw $s0, 0x28($sp) -/* 0161F8 800155F8 E7B70020 */ swc1 $f23, 0x20($sp) -/* 0161FC 800155FC E7B60024 */ swc1 $f22, 0x24($sp) -/* 016200 80015600 E7B50018 */ swc1 $f21, 0x18($sp) -/* 016204 80015604 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 016208 80015608 10200026 */ beqz $at, .L800156A4 -/* 01620C 8001560C 0000A825 */ move $s5, $zero -/* 016210 80015610 3C048012 */ lui $a0, %hi(D_8011AE58) # $a0, 0x8012 -/* 016214 80015614 2484AE58 */ addiu $a0, %lo(D_8011AE58) # addiu $a0, $a0, -0x51a8 -/* 016218 80015618 00131080 */ sll $v0, $s3, 2 -/* 01621C 8001561C 241E0002 */ li $fp, 2 -/* 016220 80015620 27B60064 */ addiu $s6, $sp, 0x64 -/* 016224 80015624 240600FF */ li $a2, 255 -/* 016228 80015628 2405FFB7 */ li $a1, -73 -.L8001562C: -/* 01622C 8001562C 8C8E0000 */ lw $t6, ($a0) -/* 016230 80015630 26730001 */ addiu $s3, $s3, 1 -/* 016234 80015634 01C27821 */ addu $t7, $t6, $v0 -/* 016238 80015638 8DF10000 */ lw $s1, ($t7) -/* 01623C 8001563C 00000000 */ nop -/* 016240 80015640 86380006 */ lh $t8, 6($s1) -/* 016244 80015644 00000000 */ nop -/* 016248 80015648 33198000 */ andi $t9, $t8, 0x8000 -/* 01624C 8001564C 17200013 */ bnez $t9, .L8001569C -/* 016250 80015650 0263082A */ slt $at, $s3, $v1 -/* 016254 80015654 8E32004C */ lw $s2, 0x4c($s1) -/* 016258 80015658 00154080 */ sll $t0, $s5, 2 -/* 01625C 8001565C 1240000E */ beqz $s2, .L80015698 -/* 016260 80015660 02C84821 */ addu $t1, $s6, $t0 -/* 016264 80015664 AD310000 */ sw $s1, ($t1) -/* 016268 80015668 924A0011 */ lbu $t2, 0x11($s2) -/* 01626C 8001566C 26B50001 */ addiu $s5, $s5, 1 -/* 016270 80015670 13CA000A */ beq $fp, $t2, .L8001569C -/* 016274 80015674 0263082A */ slt $at, $s3, $v1 -/* 016278 80015678 864B0014 */ lh $t3, 0x14($s2) -/* 01627C 8001567C AE400000 */ sw $zero, ($s2) -/* 016280 80015680 01656024 */ and $t4, $t3, $a1 -/* 016284 80015684 A64C0014 */ sh $t4, 0x14($s2) -/* 016288 80015688 A2460013 */ sb $a2, 0x13($s2) -/* 01628C 8001568C 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 -/* 016290 80015690 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) -/* 016294 80015694 00000000 */ nop -.L80015698: -/* 016298 80015698 0263082A */ slt $at, $s3, $v1 -.L8001569C: -/* 01629C 8001569C 1420FFE3 */ bnez $at, .L8001562C -/* 0162A0 800156A0 24420004 */ addiu $v0, $v0, 4 -.L800156A4: -/* 0162A4 800156A4 3C018012 */ lui $at, %hi(D_8011AE70) # $at, 0x8012 -/* 0162A8 800156A8 27B60064 */ addiu $s6, $sp, 0x64 -/* 0162AC 800156AC 241E0002 */ li $fp, 2 -/* 0162B0 800156B0 AC20AE70 */ sw $zero, %lo(D_8011AE70)($at) -/* 0162B4 800156B4 1AA0006B */ blez $s5, .L80015864 -/* 0162B8 800156B8 00009825 */ move $s3, $zero -/* 0162BC 800156BC 3C014880 */ li $at, 0x48800000 # 262144.000000 -/* 0162C0 800156C0 4481B000 */ mtc1 $at, $f22 -/* 0162C4 800156C4 3C014A80 */ li $at, 0x4A800000 # 4194304.000000 -/* 0162C8 800156C8 4481A000 */ mtc1 $at, $f20 -/* 0162CC 800156CC 27B70064 */ addiu $s7, $sp, 0x64 -/* 0162D0 800156D0 24140003 */ li $s4, 3 -.L800156D4: -/* 0162D4 800156D4 8EF10000 */ lw $s1, ($s7) -/* 0162D8 800156D8 3C028012 */ lui $v0, %hi(D_8011AE70) # $v0, 0x8012 -/* 0162DC 800156DC 8E32004C */ lw $s2, 0x4c($s1) -/* 0162E0 800156E0 00000000 */ nop -/* 0162E4 800156E4 924D0011 */ lbu $t5, 0x11($s2) -/* 0162E8 800156E8 00000000 */ nop -/* 0162EC 800156EC 17CD000E */ bne $fp, $t5, .L80015728 -/* 0162F0 800156F0 00000000 */ nop -/* 0162F4 800156F4 8C42AE70 */ lw $v0, %lo(D_8011AE70)($v0) -/* 0162F8 800156F8 3C0E8012 */ lui $t6, %hi(D_8011AE6C) # $t6, 0x8012 -/* 0162FC 800156FC 28410014 */ slti $at, $v0, 0x14 -/* 016300 80015700 10200009 */ beqz $at, .L80015728 -/* 016304 80015704 00027880 */ sll $t7, $v0, 2 -/* 016308 80015708 8DCEAE6C */ lw $t6, %lo(D_8011AE6C)($t6) -/* 01630C 8001570C 3C198012 */ lui $t9, %hi(D_8011AE70) # $t9, 0x8012 -/* 016310 80015710 01CFC021 */ addu $t8, $t6, $t7 -/* 016314 80015714 AF110000 */ sw $s1, ($t8) -/* 016318 80015718 8F39AE70 */ lw $t9, %lo(D_8011AE70)($t9) -/* 01631C 8001571C 3C018012 */ lui $at, %hi(D_8011AE70) # $at, 0x8012 -/* 016320 80015720 27280001 */ addiu $t0, $t9, 1 -/* 016324 80015724 AC28AE70 */ sw $t0, %lo(D_8011AE70)($at) -.L80015728: -/* 016328 80015728 86420014 */ lh $v0, 0x14($s2) -/* 01632C 8001572C 00000000 */ nop -/* 016330 80015730 30490004 */ andi $t1, $v0, 4 -/* 016334 80015734 11200033 */ beqz $t1, .L80015804 -/* 016338 80015738 304E0100 */ andi $t6, $v0, 0x100 -/* 01633C 8001573C 1AA00030 */ blez $s5, .L80015800 -/* 016340 80015740 00008025 */ move $s0, $zero -.L80015744: -/* 016344 80015744 12700029 */ beq $s3, $s0, .L800157EC -/* 016348 80015748 00105080 */ sll $t2, $s0, 2 -/* 01634C 8001574C 02CA5821 */ addu $t3, $s6, $t2 -/* 016350 80015750 8D650000 */ lw $a1, ($t3) -/* 016354 80015754 00000000 */ nop -/* 016358 80015758 8CA2004C */ lw $v0, 0x4c($a1) -/* 01635C 8001575C 00000000 */ nop -/* 016360 80015760 84430014 */ lh $v1, 0x14($v0) -/* 016364 80015764 00000000 */ nop -/* 016368 80015768 306C0003 */ andi $t4, $v1, 3 -/* 01636C 8001576C 1180001F */ beqz $t4, .L800157EC -/* 016370 80015770 00000000 */ nop -/* 016374 80015774 90440011 */ lbu $a0, 0x11($v0) -/* 016378 80015778 00000000 */ nop -/* 01637C 8001577C 16840005 */ bne $s4, $a0, .L80015794 -/* 016380 80015780 00000000 */ nop -/* 016384 80015784 0C0059D2 */ jal func_80016748 -/* 016388 80015788 02202025 */ move $a0, $s1 -/* 01638C 8001578C 10000018 */ b .L800157F0 -/* 016390 80015790 26100001 */ addiu $s0, $s0, 1 -.L80015794: -/* 016394 80015794 13C40015 */ beq $fp, $a0, .L800157EC -/* 016398 80015798 306D0020 */ andi $t5, $v1, 0x20 -/* 01639C 8001579C C624000C */ lwc1 $f4, 0xc($s1) -/* 0163A0 800157A0 C4A6000C */ lwc1 $f6, 0xc($a1) -/* 0163A4 800157A4 C6280014 */ lwc1 $f8, 0x14($s1) -/* 0163A8 800157A8 C4AA0014 */ lwc1 $f10, 0x14($a1) -/* 0163AC 800157AC 46062001 */ sub.s $f0, $f4, $f6 -/* 0163B0 800157B0 11A00003 */ beqz $t5, .L800157C0 -/* 0163B4 800157B4 460A4081 */ sub.s $f2, $f8, $f10 -/* 0163B8 800157B8 10000002 */ b .L800157C4 -/* 0163BC 800157BC 4600A306 */ mov.s $f12, $f20 -.L800157C0: -/* 0163C0 800157C0 4600B306 */ mov.s $f12, $f22 -.L800157C4: -/* 0163C4 800157C4 46000402 */ mul.s $f16, $f0, $f0 -/* 0163C8 800157C8 00000000 */ nop -/* 0163CC 800157CC 46021482 */ mul.s $f18, $f2, $f2 -/* 0163D0 800157D0 46128100 */ add.s $f4, $f16, $f18 -/* 0163D4 800157D4 460C203C */ c.lt.s $f4, $f12 -/* 0163D8 800157D8 00000000 */ nop -/* 0163DC 800157DC 45000003 */ bc1f .L800157EC -/* 0163E0 800157E0 00000000 */ nop -/* 0163E4 800157E4 0C005672 */ jal func_800159C8 -/* 0163E8 800157E8 02202025 */ move $a0, $s1 -.L800157EC: -/* 0163EC 800157EC 26100001 */ addiu $s0, $s0, 1 -.L800157F0: -/* 0163F0 800157F0 1615FFD4 */ bne $s0, $s5, .L80015744 -/* 0163F4 800157F4 00000000 */ nop -/* 0163F8 800157F8 86420014 */ lh $v0, 0x14($s2) -/* 0163FC 800157FC 00000000 */ nop -.L80015800: -/* 016400 80015800 304E0100 */ andi $t6, $v0, 0x100 -.L80015804: -/* 016404 80015804 11C00013 */ beqz $t6, .L80015854 -/* 016408 80015808 00000000 */ nop -/* 01640C 8001580C 1AA00011 */ blez $s5, .L80015854 -/* 016410 80015810 00008025 */ move $s0, $zero -.L80015814: -/* 016414 80015814 1270000C */ beq $s3, $s0, .L80015848 -/* 016418 80015818 00107880 */ sll $t7, $s0, 2 -/* 01641C 8001581C 02CFC021 */ addu $t8, $s6, $t7 -/* 016420 80015820 8F050000 */ lw $a1, ($t8) -/* 016424 80015824 00000000 */ nop -/* 016428 80015828 8CA2004C */ lw $v0, 0x4c($a1) -/* 01642C 8001582C 00000000 */ nop -/* 016430 80015830 90590011 */ lbu $t9, 0x11($v0) -/* 016434 80015834 00000000 */ nop -/* 016438 80015838 16990003 */ bne $s4, $t9, .L80015848 -/* 01643C 8001583C 00000000 */ nop -/* 016440 80015840 0C0059D2 */ jal func_80016748 -/* 016444 80015844 02202025 */ move $a0, $s1 -.L80015848: -/* 016448 80015848 26100001 */ addiu $s0, $s0, 1 -/* 01644C 8001584C 1615FFF1 */ bne $s0, $s5, .L80015814 -/* 016450 80015850 00000000 */ nop -.L80015854: -/* 016454 80015854 26730001 */ addiu $s3, $s3, 1 -/* 016458 80015858 1675FF9E */ bne $s3, $s5, .L800156D4 -/* 01645C 8001585C 26F70004 */ addiu $s7, $s7, 4 -/* 016460 80015860 00009825 */ move $s3, $zero -.L80015864: -/* 016464 80015864 1AA00048 */ blez $s5, .L80015988 -/* 016468 80015868 32A30003 */ andi $v1, $s5, 3 -/* 01646C 8001586C 10600011 */ beqz $v1, .L800158B4 -/* 016470 80015870 00601025 */ move $v0, $v1 -/* 016474 80015874 00134080 */ sll $t0, $s3, 2 -/* 016478 80015878 27A90064 */ addiu $t1, $sp, 0x64 -/* 01647C 8001587C 0109B821 */ addu $s7, $t0, $t1 -.L80015880: -/* 016480 80015880 8EF10000 */ lw $s1, ($s7) -/* 016484 80015884 26730001 */ addiu $s3, $s3, 1 -/* 016488 80015888 8E32004C */ lw $s2, 0x4c($s1) -/* 01648C 8001588C C626000C */ lwc1 $f6, 0xc($s1) -/* 016490 80015890 26F70004 */ addiu $s7, $s7, 4 -/* 016494 80015894 E6460004 */ swc1 $f6, 4($s2) -/* 016498 80015898 C6280010 */ lwc1 $f8, 0x10($s1) -/* 01649C 8001589C 00000000 */ nop -/* 0164A0 800158A0 E6480008 */ swc1 $f8, 8($s2) -/* 0164A4 800158A4 C62A0014 */ lwc1 $f10, 0x14($s1) -/* 0164A8 800158A8 1453FFF5 */ bne $v0, $s3, .L80015880 -/* 0164AC 800158AC E64A000C */ swc1 $f10, 0xc($s2) -/* 0164B0 800158B0 12750035 */ beq $s3, $s5, .L80015988 -.L800158B4: -/* 0164B4 800158B4 27AB0064 */ addiu $t3, $sp, 0x64 -/* 0164B8 800158B8 00135080 */ sll $t2, $s3, 2 -/* 0164BC 800158BC 00156080 */ sll $t4, $s5, 2 -/* 0164C0 800158C0 018B1021 */ addu $v0, $t4, $t3 -/* 0164C4 800158C4 014BB821 */ addu $s7, $t2, $t3 -.L800158C8: -/* 0164C8 800158C8 8EF10000 */ lw $s1, ($s7) -/* 0164CC 800158CC 26F70010 */ addiu $s7, $s7, 0x10 -/* 0164D0 800158D0 8E32004C */ lw $s2, 0x4c($s1) -/* 0164D4 800158D4 C630000C */ lwc1 $f16, 0xc($s1) -/* 0164D8 800158D8 00000000 */ nop -/* 0164DC 800158DC E6500004 */ swc1 $f16, 4($s2) -/* 0164E0 800158E0 C6320010 */ lwc1 $f18, 0x10($s1) -/* 0164E4 800158E4 00000000 */ nop -/* 0164E8 800158E8 E6520008 */ swc1 $f18, 8($s2) -/* 0164EC 800158EC C6240014 */ lwc1 $f4, 0x14($s1) -/* 0164F0 800158F0 00000000 */ nop -/* 0164F4 800158F4 E644000C */ swc1 $f4, 0xc($s2) -/* 0164F8 800158F8 8EF1FFF4 */ lw $s1, -0xc($s7) -/* 0164FC 800158FC 00000000 */ nop -/* 016500 80015900 8E32004C */ lw $s2, 0x4c($s1) -/* 016504 80015904 C626000C */ lwc1 $f6, 0xc($s1) -/* 016508 80015908 00000000 */ nop -/* 01650C 8001590C E6460004 */ swc1 $f6, 4($s2) -/* 016510 80015910 C6280010 */ lwc1 $f8, 0x10($s1) -/* 016514 80015914 00000000 */ nop -/* 016518 80015918 E6480008 */ swc1 $f8, 8($s2) -/* 01651C 8001591C C62A0014 */ lwc1 $f10, 0x14($s1) -/* 016520 80015920 00000000 */ nop -/* 016524 80015924 E64A000C */ swc1 $f10, 0xc($s2) -/* 016528 80015928 8EF1FFF8 */ lw $s1, -8($s7) -/* 01652C 8001592C 00000000 */ nop -/* 016530 80015930 8E32004C */ lw $s2, 0x4c($s1) -/* 016534 80015934 C630000C */ lwc1 $f16, 0xc($s1) -/* 016538 80015938 00000000 */ nop -/* 01653C 8001593C E6500004 */ swc1 $f16, 4($s2) -/* 016540 80015940 C6320010 */ lwc1 $f18, 0x10($s1) -/* 016544 80015944 00000000 */ nop -/* 016548 80015948 E6520008 */ swc1 $f18, 8($s2) -/* 01654C 8001594C C6240014 */ lwc1 $f4, 0x14($s1) -/* 016550 80015950 00000000 */ nop -/* 016554 80015954 E644000C */ swc1 $f4, 0xc($s2) -/* 016558 80015958 8EF1FFFC */ lw $s1, -4($s7) -/* 01655C 8001595C 00000000 */ nop -/* 016560 80015960 8E32004C */ lw $s2, 0x4c($s1) -/* 016564 80015964 C626000C */ lwc1 $f6, 0xc($s1) -/* 016568 80015968 00000000 */ nop -/* 01656C 8001596C E6460004 */ swc1 $f6, 4($s2) -/* 016570 80015970 C6280010 */ lwc1 $f8, 0x10($s1) -/* 016574 80015974 00000000 */ nop -/* 016578 80015978 E6480008 */ swc1 $f8, 8($s2) -/* 01657C 8001597C C62A0014 */ lwc1 $f10, 0x14($s1) -/* 016580 80015980 16E2FFD1 */ bne $s7, $v0, .L800158C8 -/* 016584 80015984 E64A000C */ swc1 $f10, 0xc($s2) -.L80015988: -/* 016588 80015988 8FBF004C */ lw $ra, 0x4c($sp) -/* 01658C 8001598C C7B50018 */ lwc1 $f21, 0x18($sp) -/* 016590 80015990 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 016594 80015994 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 016598 80015998 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 01659C 8001599C 8FB00028 */ lw $s0, 0x28($sp) -/* 0165A0 800159A0 8FB1002C */ lw $s1, 0x2c($sp) -/* 0165A4 800159A4 8FB20030 */ lw $s2, 0x30($sp) -/* 0165A8 800159A8 8FB30034 */ lw $s3, 0x34($sp) -/* 0165AC 800159AC 8FB40038 */ lw $s4, 0x38($sp) -/* 0165B0 800159B0 8FB5003C */ lw $s5, 0x3c($sp) -/* 0165B4 800159B4 8FB60040 */ lw $s6, 0x40($sp) -/* 0165B8 800159B8 8FB70044 */ lw $s7, 0x44($sp) -/* 0165BC 800159BC 8FBE0048 */ lw $fp, 0x48($sp) -/* 0165C0 800159C0 03E00008 */ jr $ra -/* 0165C4 800159C4 27BD0490 */ addiu $sp, $sp, 0x490 - -glabel func_800159C8 -/* 0165C8 800159C8 27BDFF60 */ addiu $sp, $sp, -0xa0 -/* 0165CC 800159CC AFBF0014 */ sw $ra, 0x14($sp) -/* 0165D0 800159D0 C484000C */ lwc1 $f4, 0xc($a0) -/* 0165D4 800159D4 C4A6000C */ lwc1 $f6, 0xc($a1) -/* 0165D8 800159D8 C48A0010 */ lwc1 $f10, 0x10($a0) -/* 0165DC 800159DC C4A80010 */ lwc1 $f8, 0x10($a1) -/* 0165E0 800159E0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0165E4 800159E4 46043081 */ sub.s $f2, $f6, $f4 -/* 0165E8 800159E8 C4840014 */ lwc1 $f4, 0x14($a0) -/* 0165EC 800159EC 460A4001 */ sub.s $f0, $f8, $f10 -/* 0165F0 800159F0 44814000 */ mtc1 $at, $f8 -/* 0165F4 800159F4 C4A60014 */ lwc1 $f6, 0x14($a1) -/* 0165F8 800159F8 3C018012 */ lui $at, %hi(D_8011ADA8) # $at, 0x8012 -/* 0165FC 800159FC C42AADA8 */ lwc1 $f10, %lo(D_8011ADA8)($at) -/* 016600 80015A00 46043381 */ sub.s $f14, $f6, $f4 -/* 016604 80015A04 8CA6004C */ lw $a2, 0x4c($a1) -/* 016608 80015A08 460A4183 */ div.s $f6, $f8, $f10 -/* 01660C 80015A0C 8C88004C */ lw $t0, 0x4c($a0) -/* 016610 80015A10 24090001 */ li $t1, 1 -/* 016614 80015A14 00A03825 */ move $a3, $a1 -/* 016618 80015A18 E7A60080 */ swc1 $f6, 0x80($sp) -/* 01661C 80015A1C 90C20011 */ lbu $v0, 0x11($a2) -/* 016620 80015A20 00000000 */ nop -/* 016624 80015A24 1522001A */ bne $t1, $v0, .L80015A90 -/* 016628 80015A28 24010004 */ li $at, 4 -/* 01662C 80015A2C 80D90016 */ lb $t9, 0x16($a2) -/* 016630 80015A30 3C014120 */ li $at, 0x41200000 # 10.000000 -/* 016634 80015A34 44992000 */ mtc1 $t9, $f4 -/* 016638 80015A38 44816000 */ mtc1 $at, $f12 -/* 01663C 80015A3C 46802220 */ cvt.s.w $f8, $f4 -/* 016640 80015A40 460C4282 */ mul.s $f10, $f8, $f12 -/* 016644 80015A44 46000007 */ neg.s $f0, $f0 -/* 016648 80015A48 460A003C */ c.lt.s $f0, $f10 -/* 01664C 80015A4C 00000000 */ nop -/* 016650 80015A50 450102A8 */ bc1t .L800164F4 -/* 016654 80015A54 8FBF0014 */ lw $ra, 0x14($sp) -/* 016658 80015A58 80CA0017 */ lb $t2, 0x17($a2) -/* 01665C 80015A5C 00000000 */ nop -/* 016660 80015A60 448A3000 */ mtc1 $t2, $f6 -/* 016664 80015A64 00000000 */ nop -/* 016668 80015A68 46803120 */ cvt.s.w $f4, $f6 -/* 01666C 80015A6C 460C2202 */ mul.s $f8, $f4, $f12 -/* 016670 80015A70 4600403C */ c.lt.s $f8, $f0 -/* 016674 80015A74 00000000 */ nop -/* 016678 80015A78 4501029E */ bc1t .L800164F4 -/* 01667C 80015A7C 8FBF0014 */ lw $ra, 0x14($sp) -/* 016680 80015A80 44800000 */ mtc1 $zero, $f0 -/* 016684 80015A84 00000000 */ nop -/* 016688 80015A88 E7A00064 */ swc1 $f0, 0x64($sp) -/* 01668C 80015A8C 24010004 */ li $at, 4 -.L80015A90: -/* 016690 80015A90 1441000C */ bne $v0, $at, .L80015AC4 -/* 016694 80015A94 00000000 */ nop -/* 016698 80015A98 44803000 */ mtc1 $zero, $f6 -/* 01669C 80015A9C 3C01800E */ lui $at, %hi(D_800E55BC) # $at, 0x800e -/* 0166A0 80015AA0 4606003C */ c.lt.s $f0, $f6 -/* 0166A4 80015AA4 00000000 */ nop -/* 0166A8 80015AA8 45000006 */ bc1f .L80015AC4 -/* 0166AC 80015AAC 00000000 */ nop -/* 0166B0 80015AB0 C42955B8 */ lwc1 $f9, %lo(D_800E55B8)($at) -/* 0166B4 80015AB4 C42855BC */ lwc1 $f8, %lo(D_800E55BC)($at) -/* 0166B8 80015AB8 46000121 */ cvt.d.s $f4, $f0 -/* 0166BC 80015ABC 46282282 */ mul.d $f10, $f4, $f8 -/* 0166C0 80015AC0 46205020 */ cvt.s.d $f0, $f10 -.L80015AC4: -/* 0166C4 80015AC4 46021182 */ mul.s $f6, $f2, $f2 -/* 0166C8 80015AC8 AFA400A0 */ sw $a0, 0xa0($sp) -/* 0166CC 80015ACC AFA60054 */ sw $a2, 0x54($sp) -/* 0166D0 80015AD0 AFA700A4 */ sw $a3, 0xa4($sp) -/* 0166D4 80015AD4 46000102 */ mul.s $f4, $f0, $f0 -/* 0166D8 80015AD8 AFA80058 */ sw $t0, 0x58($sp) -/* 0166DC 80015ADC E7A00064 */ swc1 $f0, 0x64($sp) -/* 0166E0 80015AE0 E7A20068 */ swc1 $f2, 0x68($sp) -/* 0166E4 80015AE4 460E7282 */ mul.s $f10, $f14, $f14 -/* 0166E8 80015AE8 46043200 */ add.s $f8, $f6, $f4 -/* 0166EC 80015AEC E7AE0060 */ swc1 $f14, 0x60($sp) -/* 0166F0 80015AF0 0C0326B4 */ jal sqrtf -/* 0166F4 80015AF4 460A4300 */ add.s $f12, $f8, $f10 -/* 0166F8 80015AF8 46000406 */ mov.s $f16, $f0 -/* 0166FC 80015AFC 444CF800 */ cfc1 $t4, $31 -/* 016700 80015B00 8FA80058 */ lw $t0, 0x58($sp) -/* 016704 80015B04 35810003 */ ori $at, $t4, 3 -/* 016708 80015B08 38210002 */ xori $at, $at, 2 -/* 01670C 80015B0C 44C1F800 */ ctc1 $at, $31 -/* 016710 80015B10 850E0014 */ lh $t6, 0x14($t0) -/* 016714 80015B14 460001A4 */ cvt.w.s $f6, $f0 -/* 016718 80015B18 8FA400A0 */ lw $a0, 0xa0($sp) -/* 01671C 80015B1C 440B3000 */ mfc1 $t3, $f6 -/* 016720 80015B20 44CCF800 */ ctc1 $t4, $31 -/* 016724 80015B24 448B2000 */ mtc1 $t3, $f4 -/* 016728 80015B28 8FA60054 */ lw $a2, 0x54($sp) -/* 01672C 80015B2C 46802220 */ cvt.s.w $f8, $f4 -/* 016730 80015B30 8FA700A4 */ lw $a3, 0xa4($sp) -/* 016734 80015B34 31CF0020 */ andi $t7, $t6, 0x20 -/* 016738 80015B38 444DF800 */ cfc1 $t5, $31 -/* 01673C 80015B3C 24090001 */ li $t1, 1 -/* 016740 80015B40 35A10003 */ ori $at, $t5, 3 -/* 016744 80015B44 38210002 */ xori $at, $at, 2 -/* 016748 80015B48 44C1F800 */ ctc1 $at, $31 -/* 01674C 80015B4C 00000000 */ nop -/* 016750 80015B50 460042A4 */ cvt.w.s $f10, $f8 -/* 016754 80015B54 44035000 */ mfc1 $v1, $f10 -/* 016758 80015B58 44CDF800 */ ctc1 $t5, $31 -/* 01675C 80015B5C 11E00002 */ beqz $t7, .L80015B68 -/* 016760 80015B60 00601025 */ move $v0, $v1 -/* 016764 80015B64 000310C3 */ sra $v0, $v1, 3 -.L80015B68: -/* 016768 80015B68 28410100 */ slti $at, $v0, 0x100 -/* 01676C 80015B6C 14200002 */ bnez $at, .L80015B78 -/* 016770 80015B70 00000000 */ nop -/* 016774 80015B74 240200FF */ li $v0, 255 -.L80015B78: -/* 016778 80015B78 91180013 */ lbu $t8, 0x13($t0) -/* 01677C 80015B7C 00000000 */ nop -/* 016780 80015B80 0302082A */ slt $at, $t8, $v0 -/* 016784 80015B84 14200003 */ bnez $at, .L80015B94 -/* 016788 80015B88 00000000 */ nop -/* 01678C 80015B8C AD070000 */ sw $a3, ($t0) -/* 016790 80015B90 A1020013 */ sb $v0, 0x13($t0) -.L80015B94: -/* 016794 80015B94 84C50014 */ lh $a1, 0x14($a2) -/* 016798 80015B98 00601025 */ move $v0, $v1 -/* 01679C 80015B9C 30B90020 */ andi $t9, $a1, 0x20 -/* 0167A0 80015BA0 13200003 */ beqz $t9, .L80015BB0 -/* 0167A4 80015BA4 28410100 */ slti $at, $v0, 0x100 -/* 0167A8 80015BA8 000310C3 */ sra $v0, $v1, 3 -/* 0167AC 80015BAC 28410100 */ slti $at, $v0, 0x100 -.L80015BB0: -/* 0167B0 80015BB0 14200002 */ bnez $at, .L80015BBC -/* 0167B4 80015BB4 00000000 */ nop -/* 0167B8 80015BB8 240200FF */ li $v0, 255 -.L80015BBC: -/* 0167BC 80015BBC 90CA0013 */ lbu $t2, 0x13($a2) -/* 0167C0 80015BC0 00000000 */ nop -/* 0167C4 80015BC4 0142082A */ slt $at, $t2, $v0 -/* 0167C8 80015BC8 14200005 */ bnez $at, .L80015BE0 -/* 0167CC 80015BCC 30AC0001 */ andi $t4, $a1, 1 -/* 0167D0 80015BD0 84C50014 */ lh $a1, 0x14($a2) -/* 0167D4 80015BD4 ACC40000 */ sw $a0, ($a2) -/* 0167D8 80015BD8 A0C20013 */ sb $v0, 0x13($a2) -/* 0167DC 80015BDC 30AC0001 */ andi $t4, $a1, 1 -.L80015BE0: -/* 0167E0 80015BE0 11800244 */ beqz $t4, .L800164F4 -/* 0167E4 80015BE4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0167E8 80015BE8 80CB0010 */ lb $t3, 0x10($a2) -/* 0167EC 80015BEC 810D0010 */ lb $t5, 0x10($t0) -/* 0167F0 80015BF0 00000000 */ nop -/* 0167F4 80015BF4 016D7021 */ addu $t6, $t3, $t5 -/* 0167F8 80015BF8 448E3000 */ mtc1 $t6, $f6 -/* 0167FC 80015BFC 00000000 */ nop -/* 016800 80015C00 46803120 */ cvt.s.w $f4, $f6 -/* 016804 80015C04 E7A40098 */ swc1 $f4, 0x98($sp) -/* 016808 80015C08 C5080004 */ lwc1 $f8, 4($t0) -/* 01680C 80015C0C 00000000 */ nop -/* 016810 80015C10 E7A8003C */ swc1 $f8, 0x3c($sp) -/* 016814 80015C14 C7A6003C */ lwc1 $f6, 0x3c($sp) -/* 016818 80015C18 C48A000C */ lwc1 $f10, 0xc($a0) -/* 01681C 80015C1C 00000000 */ nop -/* 016820 80015C20 46065101 */ sub.s $f4, $f10, $f6 -/* 016824 80015C24 E7A4007C */ swc1 $f4, 0x7c($sp) -/* 016828 80015C28 C5080008 */ lwc1 $f8, 8($t0) -/* 01682C 80015C2C 00000000 */ nop -/* 016830 80015C30 E7A80038 */ swc1 $f8, 0x38($sp) -/* 016834 80015C34 C48A0010 */ lwc1 $f10, 0x10($a0) -/* 016838 80015C38 C504000C */ lwc1 $f4, 0xc($t0) -/* 01683C 80015C3C C7A60038 */ lwc1 $f6, 0x38($sp) -/* 016840 80015C40 E7A40034 */ swc1 $f4, 0x34($sp) -/* 016844 80015C44 46065301 */ sub.s $f12, $f10, $f6 -/* 016848 80015C48 C7AA0034 */ lwc1 $f10, 0x34($sp) -/* 01684C 80015C4C C4880014 */ lwc1 $f8, 0x14($a0) -/* 016850 80015C50 C7A4007C */ lwc1 $f4, 0x7c($sp) -/* 016854 80015C54 460A4181 */ sub.s $f6, $f8, $f10 -/* 016858 80015C58 E7A60074 */ swc1 $f6, 0x74($sp) -/* 01685C 80015C5C 90CF0011 */ lbu $t7, 0x11($a2) -/* 016860 80015C60 46042202 */ mul.s $f8, $f4, $f4 -/* 016864 80015C64 152F0003 */ bne $t1, $t7, .L80015C74 -/* 016868 80015C68 00000000 */ nop -/* 01686C 80015C6C 44806000 */ mtc1 $zero, $f12 -/* 016870 80015C70 00000000 */ nop -.L80015C74: -/* 016874 80015C74 460C6282 */ mul.s $f10, $f12, $f12 -/* 016878 80015C78 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 01687C 80015C7C 460A4180 */ add.s $f6, $f8, $f10 -/* 016880 80015C80 C7A80074 */ lwc1 $f8, 0x74($sp) -/* 016884 80015C84 44813800 */ mtc1 $at, $f7 -/* 016888 80015C88 46084282 */ mul.s $f10, $f8, $f8 -/* 01688C 80015C8C 460A3380 */ add.s $f14, $f6, $f10 -/* 016890 80015C90 44803000 */ mtc1 $zero, $f6 -/* 016894 80015C94 460072A1 */ cvt.d.s $f10, $f14 -/* 016898 80015C98 462A303C */ c.lt.d $f6, $f10 -/* 01689C 80015C9C 00000000 */ nop -/* 0168A0 80015CA0 4500004E */ bc1f .L80015DDC -/* 0168A4 80015CA4 00000000 */ nop -/* 0168A8 80015CA8 C4E60010 */ lwc1 $f6, 0x10($a3) -/* 0168AC 80015CAC C4F2000C */ lwc1 $f18, 0xc($a3) -/* 0168B0 80015CB0 E7A60044 */ swc1 $f6, 0x44($sp) -/* 0168B4 80015CB4 C4EA0014 */ lwc1 $f10, 0x14($a3) -/* 0168B8 80015CB8 C7A6003C */ lwc1 $f6, 0x3c($sp) -/* 0168BC 80015CBC E7AA0040 */ swc1 $f10, 0x40($sp) -/* 0168C0 80015CC0 46069281 */ sub.s $f10, $f18, $f6 -/* 0168C4 80015CC4 E7A80018 */ swc1 $f8, 0x18($sp) -/* 0168C8 80015CC8 E7A6001C */ swc1 $f6, 0x1c($sp) -/* 0168CC 80015CCC 46045282 */ mul.s $f10, $f10, $f4 -/* 0168D0 80015CD0 C7A60038 */ lwc1 $f6, 0x38($sp) -/* 0168D4 80015CD4 C7A80044 */ lwc1 $f8, 0x44($sp) -/* 0168D8 80015CD8 E7A40020 */ swc1 $f4, 0x20($sp) -/* 0168DC 80015CDC 46064101 */ sub.s $f4, $f8, $f6 -/* 0168E0 80015CE0 E7A80024 */ swc1 $f8, 0x24($sp) -/* 0168E4 80015CE4 460C2102 */ mul.s $f4, $f4, $f12 -/* 0168E8 80015CE8 C7A80034 */ lwc1 $f8, 0x34($sp) -/* 0168EC 80015CEC E7A60028 */ swc1 $f6, 0x28($sp) -/* 0168F0 80015CF0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 0168F4 80015CF4 46045280 */ add.s $f10, $f10, $f4 -/* 0168F8 80015CF8 C7A40040 */ lwc1 $f4, 0x40($sp) -/* 0168FC 80015CFC E7AA002C */ swc1 $f10, 0x2c($sp) -/* 016900 80015D00 C7AA0018 */ lwc1 $f10, 0x18($sp) -/* 016904 80015D04 46082181 */ sub.s $f6, $f4, $f8 -/* 016908 80015D08 E7A40018 */ swc1 $f4, 0x18($sp) -/* 01690C 80015D0C 460A3182 */ mul.s $f6, $f6, $f10 -/* 016910 80015D10 C7A4002C */ lwc1 $f4, 0x2c($sp) -/* 016914 80015D14 E7B20048 */ swc1 $f18, 0x48($sp) -/* 016918 80015D18 46062100 */ add.s $f4, $f4, $f6 -/* 01691C 80015D1C 44803000 */ mtc1 $zero, $f6 -/* 016920 80015D20 460E2083 */ div.s $f2, $f4, $f14 -/* 016924 80015D24 4602303E */ c.le.s $f6, $f2 -/* 016928 80015D28 00000000 */ nop -/* 01692C 80015D2C 4500002B */ bc1f .L80015DDC -/* 016930 80015D30 00000000 */ nop -/* 016934 80015D34 44812800 */ mtc1 $at, $f5 -/* 016938 80015D38 44802000 */ mtc1 $zero, $f4 -/* 01693C 80015D3C 460011A1 */ cvt.d.s $f6, $f2 -/* 016940 80015D40 4624303E */ c.le.d $f6, $f4 -/* 016944 80015D44 C7A60020 */ lwc1 $f6, 0x20($sp) -/* 016948 80015D48 45000024 */ bc1f .L80015DDC -/* 01694C 80015D4C E7AC0078 */ swc1 $f12, 0x78($sp) -/* 016950 80015D50 46061182 */ mul.s $f6, $f2, $f6 -/* 016954 80015D54 E7A8002C */ swc1 $f8, 0x2c($sp) -/* 016958 80015D58 C7A80078 */ lwc1 $f8, 0x78($sp) -/* 01695C 80015D5C C7A4001C */ lwc1 $f4, 0x1c($sp) -/* 016960 80015D60 46081202 */ mul.s $f8, $f2, $f8 -/* 016964 80015D64 46062100 */ add.s $f4, $f4, $f6 -/* 016968 80015D68 C7A60028 */ lwc1 $f6, 0x28($sp) -/* 01696C 80015D6C E7A4008C */ swc1 $f4, 0x8c($sp) -/* 016970 80015D70 46083480 */ add.s $f18, $f6, $f8 -/* 016974 80015D74 C7A6002C */ lwc1 $f6, 0x2c($sp) -/* 016978 80015D78 460A1202 */ mul.s $f8, $f2, $f10 -/* 01697C 80015D7C AFA400A0 */ sw $a0, 0xa0($sp) -/* 016980 80015D80 AFA60054 */ sw $a2, 0x54($sp) -/* 016984 80015D84 AFA700A4 */ sw $a3, 0xa4($sp) -/* 016988 80015D88 46083280 */ add.s $f10, $f6, $f8 -/* 01698C 80015D8C C7A60048 */ lwc1 $f6, 0x48($sp) -/* 016990 80015D90 C7A80024 */ lwc1 $f8, 0x24($sp) -/* 016994 80015D94 46062001 */ sub.s $f0, $f4, $f6 -/* 016998 80015D98 C7A40018 */ lwc1 $f4, 0x18($sp) -/* 01699C 80015D9C 46000182 */ mul.s $f6, $f0, $f0 -/* 0169A0 80015DA0 46089381 */ sub.s $f14, $f18, $f8 -/* 0169A4 80015DA4 E7AA0084 */ swc1 $f10, 0x84($sp) -/* 0169A8 80015DA8 AFA80058 */ sw $t0, 0x58($sp) -/* 0169AC 80015DAC 460E7202 */ mul.s $f8, $f14, $f14 -/* 0169B0 80015DB0 46045401 */ sub.s $f16, $f10, $f4 -/* 0169B4 80015DB4 46108102 */ mul.s $f4, $f16, $f16 -/* 0169B8 80015DB8 46083280 */ add.s $f10, $f6, $f8 -/* 0169BC 80015DBC 0C0326B4 */ jal sqrtf -/* 0169C0 80015DC0 46045300 */ add.s $f12, $f10, $f4 -/* 0169C4 80015DC4 8FA400A0 */ lw $a0, 0xa0($sp) -/* 0169C8 80015DC8 8FA60054 */ lw $a2, 0x54($sp) -/* 0169CC 80015DCC 8FA700A4 */ lw $a3, 0xa4($sp) -/* 0169D0 80015DD0 8FA80058 */ lw $t0, 0x58($sp) -/* 0169D4 80015DD4 24090001 */ li $t1, 1 -/* 0169D8 80015DD8 46000406 */ mov.s $f16, $f0 -.L80015DDC: -/* 0169DC 80015DDC C7A60098 */ lwc1 $f6, 0x98($sp) -/* 0169E0 80015DE0 00000000 */ nop -/* 0169E4 80015DE4 4606003C */ c.lt.s $f0, $f6 -/* 0169E8 80015DE8 00000000 */ nop -/* 0169EC 80015DEC 450001C1 */ bc1f .L800164F4 -/* 0169F0 80015DF0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0169F4 80015DF4 44804000 */ mtc1 $zero, $f8 -/* 0169F8 80015DF8 00000000 */ nop -/* 0169FC 80015DFC 4600403C */ c.lt.s $f8, $f0 -/* 016A00 80015E00 00000000 */ nop -/* 016A04 80015E04 450001BB */ bc1f .L800164F4 -/* 016A08 80015E08 8FBF0014 */ lw $ra, 0x14($sp) -/* 016A0C 80015E0C C4CA0004 */ lwc1 $f10, 4($a2) -/* 016A10 80015E10 C5040004 */ lwc1 $f4, 4($t0) -/* 016A14 80015E14 C4C60008 */ lwc1 $f6, 8($a2) -/* 016A18 80015E18 46045081 */ sub.s $f2, $f10, $f4 -/* 016A1C 80015E1C C5080008 */ lwc1 $f8, 8($t0) -/* 016A20 80015E20 C504000C */ lwc1 $f4, 0xc($t0) -/* 016A24 80015E24 C4CA000C */ lwc1 $f10, 0xc($a2) -/* 016A28 80015E28 90D80011 */ lbu $t8, 0x11($a2) -/* 016A2C 80015E2C 46083481 */ sub.s $f18, $f6, $f8 -/* 016A30 80015E30 15380003 */ bne $t1, $t8, .L80015E40 -/* 016A34 80015E34 46045381 */ sub.s $f14, $f10, $f4 -/* 016A38 80015E38 44809000 */ mtc1 $zero, $f18 -/* 016A3C 80015E3C 00000000 */ nop -.L80015E40: -/* 016A40 80015E40 46021182 */ mul.s $f6, $f2, $f2 -/* 016A44 80015E44 AFA400A0 */ sw $a0, 0xa0($sp) -/* 016A48 80015E48 AFA60054 */ sw $a2, 0x54($sp) -/* 016A4C 80015E4C AFA700A4 */ sw $a3, 0xa4($sp) -/* 016A50 80015E50 46129202 */ mul.s $f8, $f18, $f18 -/* 016A54 80015E54 AFA80058 */ sw $t0, 0x58($sp) -/* 016A58 80015E58 E7A2008C */ swc1 $f2, 0x8c($sp) -/* 016A5C 80015E5C E7AE0084 */ swc1 $f14, 0x84($sp) -/* 016A60 80015E60 460E7102 */ mul.s $f4, $f14, $f14 -/* 016A64 80015E64 46083280 */ add.s $f10, $f6, $f8 -/* 016A68 80015E68 E7B0009C */ swc1 $f16, 0x9c($sp) -/* 016A6C 80015E6C E7B20088 */ swc1 $f18, 0x88($sp) -/* 016A70 80015E70 0C0326B4 */ jal sqrtf -/* 016A74 80015E74 46045300 */ add.s $f12, $f10, $f4 -/* 016A78 80015E78 44803000 */ mtc1 $zero, $f6 -/* 016A7C 80015E7C 8FA400A0 */ lw $a0, 0xa0($sp) -/* 016A80 80015E80 4600303C */ c.lt.s $f6, $f0 -/* 016A84 80015E84 8FA60054 */ lw $a2, 0x54($sp) -/* 016A88 80015E88 8FA700A4 */ lw $a3, 0xa4($sp) -/* 016A8C 80015E8C 8FA80058 */ lw $t0, 0x58($sp) -/* 016A90 80015E90 C7A2008C */ lwc1 $f2, 0x8c($sp) -/* 016A94 80015E94 C7AE0084 */ lwc1 $f14, 0x84($sp) -/* 016A98 80015E98 C7B0009C */ lwc1 $f16, 0x9c($sp) -/* 016A9C 80015E9C C7B20088 */ lwc1 $f18, 0x88($sp) -/* 016AA0 80015EA0 45000009 */ bc1f .L80015EC8 -/* 016AA4 80015EA4 24090001 */ li $t1, 1 -/* 016AA8 80015EA8 00000000 */ nop -/* 016AAC 80015EAC 46009203 */ div.s $f8, $f18, $f0 -/* 016AB0 80015EB0 00000000 */ nop -/* 016AB4 80015EB4 46007283 */ div.s $f10, $f14, $f0 -/* 016AB8 80015EB8 E7A80064 */ swc1 $f8, 0x64($sp) -/* 016ABC 80015EBC 46001303 */ div.s $f12, $f2, $f0 -/* 016AC0 80015EC0 1000000A */ b .L80015EEC -/* 016AC4 80015EC4 E7AA0060 */ swc1 $f10, 0x60($sp) -.L80015EC8: -/* 016AC8 80015EC8 C7A40068 */ lwc1 $f4, 0x68($sp) -/* 016ACC 80015ECC C7A80064 */ lwc1 $f8, 0x64($sp) -/* 016AD0 80015ED0 46102303 */ div.s $f12, $f4, $f16 -/* 016AD4 80015ED4 C7A40060 */ lwc1 $f4, 0x60($sp) -/* 016AD8 80015ED8 46104283 */ div.s $f10, $f8, $f16 -/* 016ADC 80015EDC E7AC0068 */ swc1 $f12, 0x68($sp) -/* 016AE0 80015EE0 46102203 */ div.s $f8, $f4, $f16 -/* 016AE4 80015EE4 E7AA0064 */ swc1 $f10, 0x64($sp) -/* 016AE8 80015EE8 E7A80060 */ swc1 $f8, 0x60($sp) -.L80015EEC: -/* 016AEC 80015EEC 46100401 */ sub.s $f16, $f0, $f16 -/* 016AF0 80015EF0 44805000 */ mtc1 $zero, $f10 -/* 016AF4 80015EF4 3C013FE0 */ lui $at, 0x3fe0 -/* 016AF8 80015EF8 460A803C */ c.lt.s $f16, $f10 -/* 016AFC 80015EFC 00000000 */ nop -/* 016B00 80015F00 45000002 */ bc1f .L80015F0C -/* 016B04 80015F04 00000000 */ nop -/* 016B08 80015F08 46008407 */ neg.s $f16, $f16 -.L80015F0C: -/* 016B0C 80015F0C 46106302 */ mul.s $f12, $f12, $f16 -/* 016B10 80015F10 C7A40064 */ lwc1 $f4, 0x64($sp) -/* 016B14 80015F14 C7A60060 */ lwc1 $f6, 0x60($sp) -/* 016B18 80015F18 C7A00080 */ lwc1 $f0, 0x80($sp) -/* 016B1C 80015F1C 46102202 */ mul.s $f8, $f4, $f16 -/* 016B20 80015F20 00000000 */ nop -/* 016B24 80015F24 46103282 */ mul.s $f10, $f6, $f16 -/* 016B28 80015F28 E7A80064 */ swc1 $f8, 0x64($sp) -/* 016B2C 80015F2C E7AA0060 */ swc1 $f10, 0x60($sp) -/* 016B30 80015F30 85190014 */ lh $t9, 0x14($t0) -/* 016B34 80015F34 46008402 */ mul.s $f16, $f16, $f0 -/* 016B38 80015F38 372A0008 */ ori $t2, $t9, 8 -/* 016B3C 80015F3C A50A0014 */ sh $t2, 0x14($t0) -/* 016B40 80015F40 84CC0014 */ lh $t4, 0x14($a2) -/* 016B44 80015F44 90CD0012 */ lbu $t5, 0x12($a2) -/* 016B48 80015F48 358B0008 */ ori $t3, $t4, 8 -/* 016B4C 80015F4C 15A000C6 */ bnez $t5, .L80016268 -/* 016B50 80015F50 A4CB0014 */ sh $t3, 0x14($a2) -/* 016B54 80015F54 C484000C */ lwc1 $f4, 0xc($a0) -/* 016B58 80015F58 C4860010 */ lwc1 $f6, 0x10($a0) -/* 016B5C 80015F5C 460C2201 */ sub.s $f8, $f4, $f12 -/* 016B60 80015F60 E488000C */ swc1 $f8, 0xc($a0) -/* 016B64 80015F64 C7AA0064 */ lwc1 $f10, 0x64($sp) -/* 016B68 80015F68 C4880014 */ lwc1 $f8, 0x14($a0) -/* 016B6C 80015F6C 460A3101 */ sub.s $f4, $f6, $f10 -/* 016B70 80015F70 E4840010 */ swc1 $f4, 0x10($a0) -/* 016B74 80015F74 C7A60060 */ lwc1 $f6, 0x60($sp) -/* 016B78 80015F78 46006302 */ mul.s $f12, $f12, $f0 -/* 016B7C 80015F7C 46064281 */ sub.s $f10, $f8, $f6 -/* 016B80 80015F80 E48A0014 */ swc1 $f10, 0x14($a0) -/* 016B84 80015F84 C7A40060 */ lwc1 $f4, 0x60($sp) -/* 016B88 80015F88 00000000 */ nop -/* 016B8C 80015F8C 46002202 */ mul.s $f8, $f4, $f0 -/* 016B90 80015F90 E7A80060 */ swc1 $f8, 0x60($sp) -/* 016B94 80015F94 848E0048 */ lh $t6, 0x48($a0) -/* 016B98 80015F98 00000000 */ nop -/* 016B9C 80015F9C 152E0155 */ bne $t1, $t6, .L800164F4 -/* 016BA0 80015FA0 8FBF0014 */ lw $ra, 0x14($sp) -/* 016BA4 80015FA4 8C850064 */ lw $a1, 0x64($a0) -/* 016BA8 80015FA8 00001025 */ move $v0, $zero -/* 016BAC 80015FAC 80AF01D6 */ lb $t7, 0x1d6($a1) -/* 016BB0 80015FB0 3C01800E */ lui $at, 0x800e -/* 016BB4 80015FB4 152F0059 */ bne $t1, $t7, .L8001611C -/* 016BB8 80015FB8 00000000 */ nop -/* 016BBC 80015FBC 3C01800E */ lui $at, %hi(D_800E55C4) # $at, 0x800e -/* 016BC0 80015FC0 C42755C0 */ lwc1 $f7, %lo(D_800E55C0)($at) -/* 016BC4 80015FC4 C42655C4 */ lwc1 $f6, %lo(D_800E55C4)($at) -/* 016BC8 80015FC8 46008021 */ cvt.d.s $f0, $f16 -/* 016BCC 80015FCC 4620303C */ c.lt.d $f6, $f0 -/* 016BD0 80015FD0 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 016BD4 80015FD4 4500009A */ bc1f .L80016240 -/* 016BD8 80015FD8 00000000 */ nop -/* 016BDC 80015FDC 44815800 */ mtc1 $at, $f11 -/* 016BE0 80015FE0 44805000 */ mtc1 $zero, $f10 -/* 016BE4 80015FE4 3C01800E */ lui $at, %hi(D_800E55CC) # $at, 0x800e -/* 016BE8 80015FE8 4620503C */ c.lt.d $f10, $f0 -/* 016BEC 80015FEC 00000000 */ nop -/* 016BF0 80015FF0 45000002 */ bc1f .L80015FFC -/* 016BF4 80015FF4 00000000 */ nop -/* 016BF8 80015FF8 24020001 */ li $v0, 1 -.L80015FFC: -/* 016BFC 80015FFC 1040000E */ beqz $v0, .L80016038 -/* 016C00 80016000 00000000 */ nop -/* 016C04 80016004 C484001C */ lwc1 $f4, 0x1c($a0) -/* 016C08 80016008 C42155C8 */ lwc1 $f1, %lo(D_800E55C8)($at) -/* 016C0C 8001600C C42055CC */ lwc1 $f0, %lo(D_800E55CC)($at) -/* 016C10 80016010 46002221 */ cvt.d.s $f8, $f4 -/* 016C14 80016014 46204182 */ mul.d $f6, $f8, $f0 -/* 016C18 80016018 C4840024 */ lwc1 $f4, 0x24($a0) -/* 016C1C 8001601C 00000000 */ nop -/* 016C20 80016020 46002221 */ cvt.d.s $f8, $f4 -/* 016C24 80016024 462032A0 */ cvt.s.d $f10, $f6 -/* 016C28 80016028 46204182 */ mul.d $f6, $f8, $f0 -/* 016C2C 8001602C E48A001C */ swc1 $f10, 0x1c($a0) -/* 016C30 80016030 462032A0 */ cvt.s.d $f10, $f6 -/* 016C34 80016034 E48A0024 */ swc1 $f10, 0x24($a0) -.L80016038: -/* 016C38 80016038 10400081 */ beqz $v0, .L80016240 -/* 016C3C 8001603C 00000000 */ nop -/* 016C40 80016040 84D80014 */ lh $t8, 0x14($a2) -/* 016C44 80016044 240A0007 */ li $t2, 7 -/* 016C48 80016048 37190040 */ ori $t9, $t8, 0x40 -/* 016C4C 8001604C A4D90014 */ sh $t9, 0x14($a2) -/* 016C50 80016050 C484000C */ lwc1 $f4, 0xc($a0) -/* 016C54 80016054 C48C0024 */ lwc1 $f12, 0x24($a0) -/* 016C58 80016058 C4860014 */ lwc1 $f6, 0x14($a0) -/* 016C5C 8001605C 460C2202 */ mul.s $f8, $f4, $f12 -/* 016C60 80016060 C480001C */ lwc1 $f0, 0x1c($a0) -/* 016C64 80016064 C4E4000C */ lwc1 $f4, 0xc($a3) -/* 016C68 80016068 3C01800E */ lui $at, 0x800e -/* 016C6C 8001606C 46003282 */ mul.s $f10, $f6, $f0 -/* 016C70 80016070 460A4081 */ sub.s $f2, $f8, $f10 -/* 016C74 80016074 C4E80014 */ lwc1 $f8, 0x14($a3) -/* 016C78 80016078 460C2182 */ mul.s $f6, $f4, $f12 -/* 016C7C 8001607C A0AA01D2 */ sb $t2, 0x1d2($a1) -/* 016C80 80016080 46004282 */ mul.s $f10, $f8, $f0 -/* 016C84 80016084 44804000 */ mtc1 $zero, $f8 -/* 016C88 80016088 460A3101 */ sub.s $f4, $f6, $f10 -/* 016C8C 8001608C 46022081 */ sub.s $f2, $f4, $f2 -/* 016C90 80016090 4602403E */ c.le.s $f8, $f2 -/* 016C94 80016094 00000000 */ nop -/* 016C98 80016098 45000011 */ bc1f .L800160E0 -/* 016C9C 8001609C 00000000 */ nop -/* 016CA0 800160A0 3C01800E */ li $at, 0x800E0000 # -0.000000 -/* 016CA4 800160A4 C486001C */ lwc1 $f6, 0x1c($a0) -/* 016CA8 800160A8 C42155D0 */ lwc1 $f1, %lo(D_800E55D0)($at) -/* 016CAC 800160AC C42055D4 */ lwc1 $f0, %lo(D_800E55D4)($at) -/* 016CB0 800160B0 460032A1 */ cvt.d.s $f10, $f6 -/* 016CB4 800160B4 46205102 */ mul.d $f4, $f10, $f0 -/* 016CB8 800160B8 46202220 */ cvt.s.d $f8, $f4 -/* 016CBC 800160BC E4A80120 */ swc1 $f8, 0x120($a1) -/* 016CC0 800160C0 C4860024 */ lwc1 $f6, 0x24($a0) -/* 016CC4 800160C4 00000000 */ nop -/* 016CC8 800160C8 46003287 */ neg.s $f10, $f6 -/* 016CCC 800160CC 46005121 */ cvt.d.s $f4, $f10 -/* 016CD0 800160D0 46202202 */ mul.d $f8, $f4, $f0 -/* 016CD4 800160D4 462041A0 */ cvt.s.d $f6, $f8 -/* 016CD8 800160D8 10000059 */ b .L80016240 -/* 016CDC 800160DC E4A6011C */ swc1 $f6, 0x11c($a1) -.L800160E0: -/* 016CE0 800160E0 C48A001C */ lwc1 $f10, 0x1c($a0) -/* 016CE4 800160E4 C42155D8 */ lwc1 $f1, %lo(D_800E55D8)($at) -/* 016CE8 800160E8 C42055DC */ lwc1 $f0, %lo(D_800E55DC)($at) -/* 016CEC 800160EC 46005107 */ neg.s $f4, $f10 -/* 016CF0 800160F0 46002221 */ cvt.d.s $f8, $f4 -/* 016CF4 800160F4 46204182 */ mul.d $f6, $f8, $f0 -/* 016CF8 800160F8 462032A0 */ cvt.s.d $f10, $f6 -/* 016CFC 800160FC E4AA0120 */ swc1 $f10, 0x120($a1) -/* 016D00 80016100 C4840024 */ lwc1 $f4, 0x24($a0) -/* 016D04 80016104 00000000 */ nop -/* 016D08 80016108 46002221 */ cvt.d.s $f8, $f4 -/* 016D0C 8001610C 46204182 */ mul.d $f6, $f8, $f0 -/* 016D10 80016110 462032A0 */ cvt.s.d $f10, $f6 -/* 016D14 80016114 1000004A */ b .L80016240 -/* 016D18 80016118 E4AA011C */ swc1 $f10, 0x11c($a1) -.L8001611C: -/* 016D1C 8001611C C42555E0 */ lwc1 $f5, %lo(D_800E55E0)($at) -/* 016D20 80016120 C42455E4 */ lwc1 $f4, %lo(D_800E55E4)($at) -/* 016D24 80016124 46008021 */ cvt.d.s $f0, $f16 -/* 016D28 80016128 4620203C */ c.lt.d $f4, $f0 -/* 016D2C 8001612C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 016D30 80016130 45000018 */ bc1f .L80016194 -/* 016D34 80016134 00000000 */ nop -/* 016D38 80016138 44814800 */ mtc1 $at, $f9 -/* 016D3C 8001613C 44804000 */ mtc1 $zero, $f8 -/* 016D40 80016140 3C013FD0 */ li $at, 0x3FD00000 # 1.625000 -/* 016D44 80016144 4620403C */ c.lt.d $f8, $f0 -/* 016D48 80016148 00000000 */ nop -/* 016D4C 8001614C 45000002 */ bc1f .L80016158 -/* 016D50 80016150 00000000 */ nop -/* 016D54 80016154 24020001 */ li $v0, 1 -.L80016158: -/* 016D58 80016158 C486001C */ lwc1 $f6, 0x1c($a0) -/* 016D5C 8001615C C4840024 */ lwc1 $f4, 0x24($a0) -/* 016D60 80016160 460C3281 */ sub.s $f10, $f6, $f12 -/* 016D64 80016164 44815800 */ mtc1 $at, $f11 -/* 016D68 80016168 E48A001C */ swc1 $f10, 0x1c($a0) -/* 016D6C 8001616C C7A80060 */ lwc1 $f8, 0x60($sp) -/* 016D70 80016170 44805000 */ mtc1 $zero, $f10 -/* 016D74 80016174 46082181 */ sub.s $f6, $f4, $f8 -/* 016D78 80016178 462A0102 */ mul.d $f4, $f0, $f10 -/* 016D7C 8001617C E4860024 */ swc1 $f6, 0x24($a0) -/* 016D80 80016180 44803000 */ mtc1 $zero, $f6 -/* 016D84 80016184 00000000 */ nop -/* 016D88 80016188 E4A60030 */ swc1 $f6, 0x30($a1) -/* 016D8C 8001618C 46202220 */ cvt.s.d $f8, $f4 -/* 016D90 80016190 E4A8002C */ swc1 $f8, 0x2c($a1) -.L80016194: -/* 016D94 80016194 1040002A */ beqz $v0, .L80016240 -/* 016D98 80016198 00000000 */ nop -/* 016D9C 8001619C 84CC0014 */ lh $t4, 0x14($a2) -/* 016DA0 800161A0 3C01C000 */ li $at, 0xC0000000 # -2.000000 -/* 016DA4 800161A4 358B0040 */ ori $t3, $t4, 0x40 -/* 016DA8 800161A8 A4CB0014 */ sh $t3, 0x14($a2) -/* 016DAC 800161AC C48A000C */ lwc1 $f10, 0xc($a0) -/* 016DB0 800161B0 C48C0024 */ lwc1 $f12, 0x24($a0) -/* 016DB4 800161B4 C4880014 */ lwc1 $f8, 0x14($a0) -/* 016DB8 800161B8 460C5102 */ mul.s $f4, $f10, $f12 -/* 016DBC 800161BC C480001C */ lwc1 $f0, 0x1c($a0) -/* 016DC0 800161C0 C4EA000C */ lwc1 $f10, 0xc($a3) -/* 016DC4 800161C4 46004182 */ mul.s $f6, $f8, $f0 -/* 016DC8 800161C8 46062081 */ sub.s $f2, $f4, $f6 -/* 016DCC 800161CC C4E40014 */ lwc1 $f4, 0x14($a3) -/* 016DD0 800161D0 460C5202 */ mul.s $f8, $f10, $f12 -/* 016DD4 800161D4 00000000 */ nop -/* 016DD8 800161D8 46002182 */ mul.s $f6, $f4, $f0 -/* 016DDC 800161DC 44802000 */ mtc1 $zero, $f4 -/* 016DE0 800161E0 46064281 */ sub.s $f10, $f8, $f6 -/* 016DE4 800161E4 46025081 */ sub.s $f2, $f10, $f2 -/* 016DE8 800161E8 4602203E */ c.le.s $f4, $f2 -/* 016DEC 800161EC 00000000 */ nop -/* 016DF0 800161F0 45000005 */ bc1f .L80016208 -/* 016DF4 800161F4 00000000 */ nop -/* 016DF8 800161F8 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 016DFC 800161FC 44811000 */ mtc1 $at, $f2 -/* 016E00 80016200 10000004 */ b .L80016214 -/* 016E04 80016204 C4A80050 */ lwc1 $f8, 0x50($a1) -.L80016208: -/* 016E08 80016208 44811000 */ mtc1 $at, $f2 -/* 016E0C 8001620C 00000000 */ nop -/* 016E10 80016210 C4A80050 */ lwc1 $f8, 0x50($a1) -.L80016214: -/* 016E14 80016214 C4A0002C */ lwc1 $f0, 0x2c($a1) -/* 016E18 80016218 46024182 */ mul.s $f6, $f8, $f2 -/* 016E1C 8001621C C4A40058 */ lwc1 $f4, 0x58($a1) -/* 016E20 80016220 240D0007 */ li $t5, 7 -/* 016E24 80016224 A0AD01D2 */ sb $t5, 0x1d2($a1) -/* 016E28 80016228 46003282 */ mul.s $f10, $f6, $f0 -/* 016E2C 8001622C 00000000 */ nop -/* 016E30 80016230 46022202 */ mul.s $f8, $f4, $f2 -/* 016E34 80016234 E4AA011C */ swc1 $f10, 0x11c($a1) -/* 016E38 80016238 46004182 */ mul.s $f6, $f8, $f0 -/* 016E3C 8001623C E4A60120 */ swc1 $f6, 0x120($a1) -.L80016240: -/* 016E40 80016240 104000AC */ beqz $v0, .L800164F4 -/* 016E44 80016244 8FBF0014 */ lw $ra, 0x14($sp) -/* 016E48 80016248 84AE0000 */ lh $t6, ($a1) -/* 016E4C 8001624C 2401FFFF */ li $at, -1 -/* 016E50 80016250 11C100A8 */ beq $t6, $at, .L800164F4 -/* 016E54 80016254 8FBF0014 */ lw $ra, 0x14($sp) -/* 016E58 80016258 0C005940 */ jal func_80016500 -/* 016E5C 8001625C 00000000 */ nop -/* 016E60 80016260 100000A4 */ b .L800164F4 -/* 016E64 80016264 8FBF0014 */ lw $ra, 0x14($sp) -.L80016268: -/* 016E68 80016268 44811800 */ mtc1 $at, $f3 -/* 016E6C 8001626C 44801000 */ mtc1 $zero, $f2 -/* 016E70 80016270 460062A1 */ cvt.d.s $f10, $f12 -/* 016E74 80016274 46225102 */ mul.d $f4, $f10, $f2 -/* 016E78 80016278 C7A80064 */ lwc1 $f8, 0x64($sp) -/* 016E7C 8001627C 00000000 */ nop -/* 016E80 80016280 460041A1 */ cvt.d.s $f6, $f8 -/* 016E84 80016284 C7A80060 */ lwc1 $f8, 0x60($sp) -/* 016E88 80016288 46223282 */ mul.d $f10, $f6, $f2 -/* 016E8C 8001628C 46202320 */ cvt.s.d $f12, $f4 -/* 016E90 80016290 460041A1 */ cvt.d.s $f6, $f8 -/* 016E94 80016294 46205120 */ cvt.s.d $f4, $f10 -/* 016E98 80016298 46223282 */ mul.d $f10, $f6, $f2 -/* 016E9C 8001629C E7A40064 */ swc1 $f4, 0x64($sp) -/* 016EA0 800162A0 46205120 */ cvt.s.d $f4, $f10 -/* 016EA4 800162A4 E7A40060 */ swc1 $f4, 0x60($sp) -/* 016EA8 800162A8 910F0012 */ lbu $t7, 0x12($t0) -/* 016EAC 800162AC 00000000 */ nop -/* 016EB0 800162B0 11E0000D */ beqz $t7, .L800162E8 -/* 016EB4 800162B4 00000000 */ nop -/* 016EB8 800162B8 C488000C */ lwc1 $f8, 0xc($a0) -/* 016EBC 800162BC C48A0010 */ lwc1 $f10, 0x10($a0) -/* 016EC0 800162C0 460C4181 */ sub.s $f6, $f8, $f12 -/* 016EC4 800162C4 E486000C */ swc1 $f6, 0xc($a0) -/* 016EC8 800162C8 C7A40064 */ lwc1 $f4, 0x64($sp) -/* 016ECC 800162CC C4860014 */ lwc1 $f6, 0x14($a0) -/* 016ED0 800162D0 46045201 */ sub.s $f8, $f10, $f4 -/* 016ED4 800162D4 E4880010 */ swc1 $f8, 0x10($a0) -/* 016ED8 800162D8 C7AA0060 */ lwc1 $f10, 0x60($sp) -/* 016EDC 800162DC 00000000 */ nop -/* 016EE0 800162E0 460A3101 */ sub.s $f4, $f6, $f10 -/* 016EE4 800162E4 E4840014 */ swc1 $f4, 0x14($a0) -.L800162E8: -/* 016EE8 800162E8 C4E8000C */ lwc1 $f8, 0xc($a3) -/* 016EEC 800162EC C4EA0010 */ lwc1 $f10, 0x10($a3) -/* 016EF0 800162F0 460C4180 */ add.s $f6, $f8, $f12 -/* 016EF4 800162F4 E4E6000C */ swc1 $f6, 0xc($a3) -/* 016EF8 800162F8 C7A40064 */ lwc1 $f4, 0x64($sp) -/* 016EFC 800162FC C4E60014 */ lwc1 $f6, 0x14($a3) -/* 016F00 80016300 46045200 */ add.s $f8, $f10, $f4 -/* 016F04 80016304 E4E80010 */ swc1 $f8, 0x10($a3) -/* 016F08 80016308 C7AA0060 */ lwc1 $f10, 0x60($sp) -/* 016F0C 8001630C 46006302 */ mul.s $f12, $f12, $f0 -/* 016F10 80016310 460A3100 */ add.s $f4, $f6, $f10 -/* 016F14 80016314 E4E40014 */ swc1 $f4, 0x14($a3) -/* 016F18 80016318 C7A80060 */ lwc1 $f8, 0x60($sp) -/* 016F1C 8001631C 00000000 */ nop -/* 016F20 80016320 46004182 */ mul.s $f6, $f8, $f0 -/* 016F24 80016324 E7A60060 */ swc1 $f6, 0x60($sp) -/* 016F28 80016328 84980048 */ lh $t8, 0x48($a0) -/* 016F2C 8001632C 00000000 */ nop -/* 016F30 80016330 15380070 */ bne $t1, $t8, .L800164F4 -/* 016F34 80016334 8FBF0014 */ lw $ra, 0x14($sp) -/* 016F38 80016338 84F90048 */ lh $t9, 0x48($a3) -/* 016F3C 8001633C 3C01800E */ lui $at, %hi(D_800E55EC) # $at, 0x800e -/* 016F40 80016340 1539006C */ bne $t1, $t9, .L800164F4 -/* 016F44 80016344 8FBF0014 */ lw $ra, 0x14($sp) -/* 016F48 80016348 910A0012 */ lbu $t2, 0x12($t0) -/* 016F4C 8001634C 90CC0012 */ lbu $t4, 0x12($a2) -/* 016F50 80016350 C42755E8 */ lwc1 $f7, %lo(D_800E55E8)($at) -/* 016F54 80016354 014C5823 */ subu $t3, $t2, $t4 -/* 016F58 80016358 448B5000 */ mtc1 $t3, $f10 -/* 016F5C 8001635C C42655EC */ lwc1 $f6, %lo(D_800E55EC)($at) -/* 016F60 80016360 46805120 */ cvt.s.w $f4, $f10 -/* 016F64 80016364 8C850064 */ lw $a1, 0x64($a0) -/* 016F68 80016368 8CED0064 */ lw $t5, 0x64($a3) -/* 016F6C 8001636C 46002221 */ cvt.d.s $f8, $f4 -/* 016F70 80016370 46264282 */ mul.d $f10, $f8, $f6 -/* 016F74 80016374 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 016F78 80016378 44812000 */ mtc1 $at, $f4 -/* 016F7C 8001637C AFAD004C */ sw $t5, 0x4c($sp) -/* 016F80 80016380 80A20189 */ lb $v0, 0x189($a1) -/* 016F84 80016384 46002221 */ cvt.d.s $f8, $f4 -/* 016F88 80016388 462A4180 */ add.d $f6, $f8, $f10 -/* 016F8C 8001638C 10400006 */ beqz $v0, .L800163A8 -/* 016F90 80016390 462033A0 */ cvt.s.d $f14, $f6 -/* 016F94 80016394 81AF0189 */ lb $t7, 0x189($t5) -/* 016F98 80016398 00000000 */ nop -/* 016F9C 8001639C 15E00003 */ bnez $t7, .L800163AC -/* 016FA0 800163A0 8FB8004C */ lw $t8, 0x4c($sp) -/* 016FA4 800163A4 A1A201DB */ sb $v0, 0x1db($t5) -.L800163A8: -/* 016FA8 800163A8 8FB8004C */ lw $t8, 0x4c($sp) -.L800163AC: -/* 016FAC 800163AC 3C01800E */ lui $at, %hi(D_800E55F4) # $at, 0x800e -/* 016FB0 800163B0 83020189 */ lb $v0, 0x189($t8) -/* 016FB4 800163B4 00000000 */ nop -/* 016FB8 800163B8 10400006 */ beqz $v0, .L800163D4 -/* 016FBC 800163BC 00000000 */ nop -/* 016FC0 800163C0 80B90189 */ lb $t9, 0x189($a1) -/* 016FC4 800163C4 00000000 */ nop -/* 016FC8 800163C8 17200002 */ bnez $t9, .L800163D4 -/* 016FCC 800163CC 00000000 */ nop -/* 016FD0 800163D0 A0A201DB */ sb $v0, 0x1db($a1) -.L800163D4: -/* 016FD4 800163D4 80AA01D6 */ lb $t2, 0x1d6($a1) -/* 016FD8 800163D8 00001025 */ move $v0, $zero -/* 016FDC 800163DC 152A0004 */ bne $t1, $t2, .L800163F0 -/* 016FE0 800163E0 00000000 */ nop -/* 016FE4 800163E4 24020001 */ li $v0, 1 -/* 016FE8 800163E8 10000014 */ b .L8001643C -/* 016FEC 800163EC E7AC0068 */ swc1 $f12, 0x68($sp) -.L800163F0: -/* 016FF0 800163F0 C42155F0 */ lwc1 $f1, %lo(D_800E55F0)($at) -/* 016FF4 800163F4 C42055F4 */ lwc1 $f0, %lo(D_800E55F4)($at) -/* 016FF8 800163F8 46008121 */ cvt.d.s $f4, $f16 -/* 016FFC 800163FC 4624003C */ c.lt.d $f0, $f4 -/* 017000 80016400 E7AC0068 */ swc1 $f12, 0x68($sp) -/* 017004 80016404 4500000D */ bc1f .L8001643C -/* 017008 80016408 00000000 */ nop -/* 01700C 8001640C C7A80068 */ lwc1 $f8, 0x68($sp) -/* 017010 80016410 24020001 */ li $v0, 1 -/* 017014 80016414 460042A1 */ cvt.d.s $f10, $f8 -/* 017018 80016418 46225182 */ mul.d $f6, $f10, $f2 -/* 01701C 8001641C C7A80060 */ lwc1 $f8, 0x60($sp) -/* 017020 80016420 00000000 */ nop -/* 017024 80016424 460042A1 */ cvt.d.s $f10, $f8 -/* 017028 80016428 46203120 */ cvt.s.d $f4, $f6 -/* 01702C 8001642C 46225182 */ mul.d $f6, $f10, $f2 -/* 017030 80016430 E7A40068 */ swc1 $f4, 0x68($sp) -/* 017034 80016434 46203120 */ cvt.s.d $f4, $f6 -/* 017038 80016438 E7A40060 */ swc1 $f4, 0x60($sp) -.L8001643C: -/* 01703C 8001643C C7AC0068 */ lwc1 $f12, 0x68($sp) -/* 017040 80016440 1040002C */ beqz $v0, .L800164F4 -/* 017044 80016444 8FBF0014 */ lw $ra, 0x14($sp) -/* 017048 80016448 910C0012 */ lbu $t4, 0x12($t0) -/* 01704C 8001644C 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 017050 80016450 11800019 */ beqz $t4, .L800164B8 -/* 017054 80016454 00000000 */ nop -/* 017058 80016458 44814800 */ mtc1 $at, $f9 -/* 01705C 8001645C 44804000 */ mtc1 $zero, $f8 -/* 017060 80016460 460072A1 */ cvt.d.s $f10, $f14 -/* 017064 80016464 462A4181 */ sub.d $f6, $f8, $f10 -/* 017068 80016468 E7AC0068 */ swc1 $f12, 0x68($sp) -/* 01706C 8001646C C7A80068 */ lwc1 $f8, 0x68($sp) -/* 017070 80016470 46203020 */ cvt.s.d $f0, $f6 -/* 017074 80016474 C484001C */ lwc1 $f4, 0x1c($a0) -/* 017078 80016478 46004282 */ mul.s $f10, $f8, $f0 -/* 01707C 8001647C C4880024 */ lwc1 $f8, 0x24($a0) -/* 017080 80016480 460A2181 */ sub.s $f6, $f4, $f10 -/* 017084 80016484 E486001C */ swc1 $f6, 0x1c($a0) -/* 017088 80016488 C7A40060 */ lwc1 $f4, 0x60($sp) -/* 01708C 8001648C 00000000 */ nop -/* 017090 80016490 46002282 */ mul.s $f10, $f4, $f0 -/* 017094 80016494 460A4181 */ sub.s $f6, $f8, $f10 -/* 017098 80016498 E4860024 */ swc1 $f6, 0x24($a0) -/* 01709C 8001649C E7AE0090 */ swc1 $f14, 0x90($sp) -/* 0170A0 800164A0 0C005940 */ jal func_80016500 -/* 0170A4 800164A4 AFA700A4 */ sw $a3, 0xa4($sp) -/* 0170A8 800164A8 8FA700A4 */ lw $a3, 0xa4($sp) -/* 0170AC 800164AC C7AE0090 */ lwc1 $f14, 0x90($sp) -/* 0170B0 800164B0 C7AC0068 */ lwc1 $f12, 0x68($sp) -/* 0170B4 800164B4 00000000 */ nop -.L800164B8: -/* 0170B8 800164B8 460E6202 */ mul.s $f8, $f12, $f14 -/* 0170BC 800164BC C4E4001C */ lwc1 $f4, 0x1c($a3) -/* 0170C0 800164C0 C4E60024 */ lwc1 $f6, 0x24($a3) -/* 0170C4 800164C4 00E02025 */ move $a0, $a3 -/* 0170C8 800164C8 46082280 */ add.s $f10, $f4, $f8 -/* 0170CC 800164CC E4EA001C */ swc1 $f10, 0x1c($a3) -/* 0170D0 800164D0 C7A40060 */ lwc1 $f4, 0x60($sp) -/* 0170D4 800164D4 00000000 */ nop -/* 0170D8 800164D8 460E2202 */ mul.s $f8, $f4, $f14 -/* 0170DC 800164DC 46083280 */ add.s $f10, $f6, $f8 -/* 0170E0 800164E0 E4EA0024 */ swc1 $f10, 0x24($a3) -/* 0170E4 800164E4 8FA5004C */ lw $a1, 0x4c($sp) -/* 0170E8 800164E8 0C005940 */ jal func_80016500 -/* 0170EC 800164EC 00000000 */ nop -/* 0170F0 800164F0 8FBF0014 */ lw $ra, 0x14($sp) -.L800164F4: -/* 0170F4 800164F4 27BD00A0 */ addiu $sp, $sp, 0xa0 -/* 0170F8 800164F8 03E00008 */ jr $ra -/* 0170FC 800164FC 00000000 */ nop - -glabel func_80016500 -/* 017100 80016500 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 017104 80016504 AFBF001C */ sw $ra, 0x1c($sp) -/* 017108 80016508 AFB00018 */ sw $s0, 0x18($sp) -/* 01710C 8001650C AFA40040 */ sw $a0, 0x40($sp) -/* 017110 80016510 C4A4002C */ lwc1 $f4, 0x2c($a1) -/* 017114 80016514 00A08025 */ move $s0, $a1 -/* 017118 80016518 E7A40030 */ swc1 $f4, 0x30($sp) -/* 01711C 8001651C 80AE01D6 */ lb $t6, 0x1d6($a1) -/* 017120 80016520 84A201A0 */ lh $v0, 0x1a0($a1) -/* 017124 80016524 15C0000B */ bnez $t6, .L80016554 -/* 017128 80016528 00022023 */ negu $a0, $v0 -/* 01712C 8001652C 80AF01E6 */ lb $t7, 0x1e6($a1) -/* 017130 80016530 00000000 */ nop -/* 017134 80016534 11E00007 */ beqz $t7, .L80016554 -/* 017138 80016538 00022023 */ negu $a0, $v0 -/* 01713C 8001653C 8CB8010C */ lw $t8, 0x10c($a1) -/* 017140 80016540 00000000 */ nop -/* 017144 80016544 00581021 */ addu $v0, $v0, $t8 -/* 017148 80016548 0002CC00 */ sll $t9, $v0, 0x10 -/* 01714C 8001654C 00191403 */ sra $v0, $t9, 0x10 -/* 017150 80016550 00022023 */ negu $a0, $v0 -.L80016554: -/* 017154 80016554 00044C00 */ sll $t1, $a0, 0x10 -/* 017158 80016558 00092403 */ sra $a0, $t1, 0x10 -/* 01715C 8001655C 0C01C1FE */ jal func_800707F8 -/* 017160 80016560 AFA40020 */ sw $a0, 0x20($sp) -/* 017164 80016564 8FA40020 */ lw $a0, 0x20($sp) -/* 017168 80016568 0C01C1F1 */ jal func_800707C4 -/* 01716C 8001656C E7A0002C */ swc1 $f0, 0x2c($sp) -/* 017170 80016570 8FAB0040 */ lw $t3, 0x40($sp) -/* 017174 80016574 C7A2002C */ lwc1 $f2, 0x2c($sp) -/* 017178 80016578 C566001C */ lwc1 $f6, 0x1c($t3) -/* 01717C 8001657C C56A0024 */ lwc1 $f10, 0x24($t3) -/* 017180 80016580 46023202 */ mul.s $f8, $f6, $f2 -/* 017184 80016584 860D0000 */ lh $t5, ($s0) -/* 017188 80016588 2401FFFF */ li $at, -1 -/* 01718C 8001658C 46005402 */ mul.s $f16, $f10, $f0 -/* 017190 80016590 46104480 */ add.s $f18, $f8, $f16 -/* 017194 80016594 E6120030 */ swc1 $f18, 0x30($s0) -/* 017198 80016598 8FAC0040 */ lw $t4, 0x40($sp) -/* 01719C 8001659C 00000000 */ nop -/* 0171A0 800165A0 C584001C */ lwc1 $f4, 0x1c($t4) -/* 0171A4 800165A4 C5880024 */ lwc1 $f8, 0x24($t4) -/* 0171A8 800165A8 46002187 */ neg.s $f6, $f4 -/* 0171AC 800165AC 46003282 */ mul.s $f10, $f6, $f0 -/* 0171B0 800165B0 00000000 */ nop -/* 0171B4 800165B4 46024402 */ mul.s $f16, $f8, $f2 -/* 0171B8 800165B8 46105480 */ add.s $f18, $f10, $f16 -/* 0171BC 800165BC 11A1005E */ beq $t5, $at, .L80016738 -/* 0171C0 800165C0 E612002C */ swc1 $f18, 0x2c($s0) -/* 0171C4 800165C4 C7A40030 */ lwc1 $f4, 0x30($sp) -/* 0171C8 800165C8 C606002C */ lwc1 $f6, 0x2c($s0) -/* 0171CC 800165CC 3C014160 */ li $at, 0x41600000 # 14.000000 -/* 0171D0 800165D0 44815000 */ mtc1 $at, $f10 -/* 0171D4 800165D4 46062201 */ sub.s $f8, $f4, $f6 -/* 0171D8 800165D8 460A4402 */ mul.s $f16, $f8, $f10 -/* 0171DC 800165DC 444EF800 */ cfc1 $t6, $31 -/* 0171E0 800165E0 00000000 */ nop -/* 0171E4 800165E4 35C10003 */ ori $at, $t6, 3 -/* 0171E8 800165E8 38210002 */ xori $at, $at, 2 -/* 0171EC 800165EC 44C1F800 */ ctc1 $at, $31 -/* 0171F0 800165F0 00000000 */ nop -/* 0171F4 800165F4 460084A4 */ cvt.w.s $f18, $f16 -/* 0171F8 800165F8 44029000 */ mfc1 $v0, $f18 -/* 0171FC 800165FC 44CEF800 */ ctc1 $t6, $31 -/* 017200 80016600 04410002 */ bgez $v0, .L8001660C -/* 017204 80016604 00000000 */ nop -/* 017208 80016608 00021023 */ negu $v0, $v0 -.L8001660C: -/* 01720C 8001660C 24420023 */ addiu $v0, $v0, 0x23 -/* 017210 80016610 28410080 */ slti $at, $v0, 0x80 -/* 017214 80016614 14200002 */ bnez $at, .L80016620 -/* 017218 80016618 2404000D */ li $a0, 13 -/* 01721C 8001661C 2402007F */ li $v0, 127 -.L80016620: -/* 017220 80016620 820301F6 */ lb $v1, 0x1f6($s0) -/* 017224 80016624 26050220 */ addiu $a1, $s0, 0x220 -/* 017228 80016628 1460000B */ bnez $v1, .L80016658 -/* 01722C 8001662C 00000000 */ nop -/* 017230 80016630 0C000741 */ jal func_80001D04 -/* 017234 80016634 AFA20038 */ sw $v0, 0x38($sp) -/* 017238 80016638 8FA20038 */ lw $v0, 0x38($sp) -/* 01723C 8001663C 8E050220 */ lw $a1, 0x220($s0) -/* 017240 80016640 2404000D */ li $a0, 13 -/* 017244 80016644 0C0007EE */ jal func_80001FB8 -/* 017248 80016648 304600FF */ andi $a2, $v0, 0xff -/* 01724C 8001664C 8FA20038 */ lw $v0, 0x38($sp) -/* 017250 80016650 820301F6 */ lb $v1, 0x1f6($s0) -/* 017254 80016654 00000000 */ nop -.L80016658: -/* 017258 80016658 14600010 */ bnez $v1, .L8001669C -/* 01725C 8001665C 28410038 */ slti $at, $v0, 0x38 -/* 017260 80016660 1420000F */ bnez $at, .L800166A0 -/* 017264 80016664 28410038 */ slti $at, $v0, 0x38 -/* 017268 80016668 820F01D8 */ lb $t7, 0x1d8($s0) -/* 01726C 8001666C 24050012 */ li $a1, 18 -/* 017270 80016670 15E00006 */ bnez $t7, .L8001668C -/* 017274 80016674 00000000 */ nop -/* 017278 80016678 86040000 */ lh $a0, ($s0) -/* 01727C 8001667C 0C01C8D2 */ jal func_80072348 -/* 017280 80016680 AFA20038 */ sw $v0, 0x38($sp) -/* 017284 80016684 8FA20038 */ lw $v0, 0x38($sp) -/* 017288 80016688 00000000 */ nop -.L8001668C: -/* 01728C 8001668C 921801F3 */ lbu $t8, 0x1f3($s0) -/* 017290 80016690 00000000 */ nop -/* 017294 80016694 37190008 */ ori $t9, $t8, 8 -/* 017298 80016698 A21901F3 */ sb $t9, 0x1f3($s0) -.L8001669C: -/* 01729C 8001669C 28410038 */ slti $at, $v0, 0x38 -.L800166A0: -/* 0172A0 800166A0 14200005 */ bnez $at, .L800166B8 -/* 0172A4 800166A4 240501C2 */ li $a1, 450 -/* 0172A8 800166A8 8FA40040 */ lw $a0, 0x40($sp) -/* 0172AC 800166AC 24060008 */ li $a2, 8 -/* 0172B0 800166B0 0C015C2E */ jal func_800570B8 -/* 0172B4 800166B4 24070001 */ li $a3, 1 -.L800166B8: -/* 0172B8 800166B8 C7A40030 */ lwc1 $f4, 0x30($sp) -/* 0172BC 800166BC C606002C */ lwc1 $f6, 0x2c($s0) -/* 0172C0 800166C0 86040000 */ lh $a0, ($s0) -/* 0172C4 800166C4 46062201 */ sub.s $f8, $f4, $f6 -/* 0172C8 800166C8 2409001E */ li $t1, 30 -/* 0172CC 800166CC 4448F800 */ cfc1 $t0, $31 -/* 0172D0 800166D0 00000000 */ nop -/* 0172D4 800166D4 35010003 */ ori $at, $t0, 3 -/* 0172D8 800166D8 38210002 */ xori $at, $at, 2 -/* 0172DC 800166DC 44C1F800 */ ctc1 $at, $31 -/* 0172E0 800166E0 00000000 */ nop -/* 0172E4 800166E4 460042A4 */ cvt.w.s $f10, $f8 -/* 0172E8 800166E8 44035000 */ mfc1 $v1, $f10 -/* 0172EC 800166EC 44C8F800 */ ctc1 $t0, $31 -/* 0172F0 800166F0 04610003 */ bgez $v1, .L80016700 -/* 0172F4 800166F4 28610004 */ slti $at, $v1, 4 -/* 0172F8 800166F8 00031823 */ negu $v1, $v1 -/* 0172FC 800166FC 28610004 */ slti $at, $v1, 4 -.L80016700: -/* 017300 80016700 14200002 */ bnez $at, .L8001670C -/* 017304 80016704 00000000 */ nop -/* 017308 80016708 24030003 */ li $v1, 3 -.L8001670C: -/* 01730C 8001670C A20901F6 */ sb $t1, 0x1f6($s0) -/* 017310 80016710 0C01997A */ jal func_800665E8 -/* 017314 80016714 AFA3003C */ sw $v1, 0x3c($sp) -/* 017318 80016718 0C01A748 */ jal func_80069D20 -/* 01731C 8001671C 00000000 */ nop -/* 017320 80016720 8FA3003C */ lw $v1, 0x3c($sp) -/* 017324 80016724 00000000 */ nop -/* 017328 80016728 44838000 */ mtc1 $v1, $f16 -/* 01732C 8001672C 00000000 */ nop -/* 017330 80016730 468084A0 */ cvt.s.w $f18, $f16 -/* 017334 80016734 E4520030 */ swc1 $f18, 0x30($v0) -.L80016738: -/* 017338 80016738 8FBF001C */ lw $ra, 0x1c($sp) -/* 01733C 8001673C 8FB00018 */ lw $s0, 0x18($sp) -/* 017340 80016740 03E00008 */ jr $ra -/* 017344 80016744 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_80016748 -/* 017348 80016748 27BDFF10 */ addiu $sp, $sp, -0xf0 -/* 01734C 8001674C AFBF007C */ sw $ra, 0x7c($sp) -/* 017350 80016750 AFBE0078 */ sw $fp, 0x78($sp) -/* 017354 80016754 AFB70074 */ sw $s7, 0x74($sp) -/* 017358 80016758 AFB60070 */ sw $s6, 0x70($sp) -/* 01735C 8001675C AFB5006C */ sw $s5, 0x6c($sp) -/* 017360 80016760 AFB40068 */ sw $s4, 0x68($sp) -/* 017364 80016764 AFB30064 */ sw $s3, 0x64($sp) -/* 017368 80016768 AFB20060 */ sw $s2, 0x60($sp) -/* 01736C 8001676C AFB1005C */ sw $s1, 0x5c($sp) -/* 017370 80016770 AFB00058 */ sw $s0, 0x58($sp) -/* 017374 80016774 E7BF0050 */ swc1 $f31, 0x50($sp) -/* 017378 80016778 E7BE0054 */ swc1 $f30, 0x54($sp) -/* 01737C 8001677C E7BD0048 */ swc1 $f29, 0x48($sp) -/* 017380 80016780 E7BC004C */ swc1 $f28, 0x4c($sp) -/* 017384 80016784 E7BB0040 */ swc1 $f27, 0x40($sp) -/* 017388 80016788 E7BA0044 */ swc1 $f26, 0x44($sp) -/* 01738C 8001678C E7B90038 */ swc1 $f25, 0x38($sp) -/* 017390 80016790 E7B8003C */ swc1 $f24, 0x3c($sp) -/* 017394 80016794 E7B70030 */ swc1 $f23, 0x30($sp) -/* 017398 80016798 E7B60034 */ swc1 $f22, 0x34($sp) -/* 01739C 8001679C E7B50028 */ swc1 $f21, 0x28($sp) -/* 0173A0 800167A0 E7B4002C */ swc1 $f20, 0x2c($sp) -/* 0173A4 800167A4 8CAE0044 */ lw $t6, 0x44($a1) -/* 0173A8 800167A8 00808025 */ move $s0, $a0 -/* 0173AC 800167AC 11C000ED */ beqz $t6, .L80016B64 -/* 0173B0 800167B0 00A0A825 */ move $s5, $a1 -/* 0173B4 800167B4 8CAF0068 */ lw $t7, 0x68($a1) -/* 0173B8 800167B8 C484000C */ lwc1 $f4, 0xc($a0) -/* 0173BC 800167BC C4A6000C */ lwc1 $f6, 0xc($a1) -/* 0173C0 800167C0 8DE20000 */ lw $v0, ($t7) -/* 0173C4 800167C4 46062201 */ sub.s $f8, $f4, $f6 -/* 0173C8 800167C8 8C530000 */ lw $s3, ($v0) -/* 0173CC 800167CC E7A800A8 */ swc1 $f8, 0xa8($sp) -/* 0173D0 800167D0 C4B00010 */ lwc1 $f16, 0x10($a1) -/* 0173D4 800167D4 C48A0010 */ lwc1 $f10, 0x10($a0) -/* 0173D8 800167D8 00000000 */ nop -/* 0173DC 800167DC 46105481 */ sub.s $f18, $f10, $f16 -/* 0173E0 800167E0 C7AA00A8 */ lwc1 $f10, 0xa8($sp) -/* 0173E4 800167E4 E7B200A4 */ swc1 $f18, 0xa4($sp) -/* 0173E8 800167E8 C4A60014 */ lwc1 $f6, 0x14($a1) -/* 0173EC 800167EC C4840014 */ lwc1 $f4, 0x14($a0) -/* 0173F0 800167F0 460A5402 */ mul.s $f16, $f10, $f10 -/* 0173F4 800167F4 C7B200A4 */ lwc1 $f18, 0xa4($sp) -/* 0173F8 800167F8 46062201 */ sub.s $f8, $f4, $f6 -/* 0173FC 800167FC 46129102 */ mul.s $f4, $f18, $f18 -/* 017400 80016800 E7A800A0 */ swc1 $f8, 0xa0($sp) -/* 017404 80016804 C7A800A0 */ lwc1 $f8, 0xa0($sp) -/* 017408 80016808 00000000 */ nop -/* 01740C 8001680C 46084282 */ mul.s $f10, $f8, $f8 -/* 017410 80016810 46048180 */ add.s $f6, $f16, $f4 -/* 017414 80016814 0C0326B4 */ jal sqrtf -/* 017418 80016818 460A3300 */ add.s $f12, $f6, $f10 -/* 01741C 8001681C C672003C */ lwc1 $f18, 0x3c($s3) -/* 017420 80016820 3C014049 */ li $at, 0x40490000 # 3.140625 -/* 017424 80016824 4481F800 */ mtc1 $at, $f31 -/* 017428 80016828 4480F000 */ mtc1 $zero, $f30 -/* 01742C 8001682C 46009421 */ cvt.d.s $f16, $f18 -/* 017430 80016830 463E8100 */ add.d $f4, $f16, $f30 -/* 017434 80016834 27A400AC */ addiu $a0, $sp, 0xac -/* 017438 80016838 46000221 */ cvt.d.s $f8, $f0 -/* 01743C 8001683C 4628203C */ c.lt.d $f4, $f8 -/* 017440 80016840 00000000 */ nop -/* 017444 80016844 450100C8 */ bc1t .L80016B68 -/* 017448 80016848 8FBF007C */ lw $ra, 0x7c($sp) -/* 01744C 8001684C 8E16004C */ lw $s6, 0x4c($s0) -/* 017450 80016850 8EB4004C */ lw $s4, 0x4c($s5) -/* 017454 80016854 0C01BF0C */ jal func_8006FC30 -/* 017458 80016858 02A02825 */ move $a1, $s5 -/* 01745C 8001685C 86780020 */ lh $t8, 0x20($s3) -/* 017460 80016860 0000F025 */ move $fp, $zero -/* 017464 80016864 1B0000BF */ blez $t8, .L80016B64 -/* 017468 80016868 00009025 */ move $s2, $zero -/* 01746C 8001686C 3C01800E */ lui $at, %hi(D_800E55FC) # $at, 0x800e -/* 017470 80016870 C43D55F8 */ lwc1 $f29, %lo(D_800E55F8)($at) -/* 017474 80016874 C43C55FC */ lwc1 $f28, %lo(D_800E55FC)($at) -/* 017478 80016878 3C01800E */ lui $at, %hi(D_800E5604) # $at, 0x800e -/* 01747C 8001687C C43B5600 */ lwc1 $f27, %lo(D_800E5600)($at) -/* 017480 80016880 C43A5604 */ lwc1 $f26, %lo(D_800E5604)($at) -/* 017484 80016884 4480C000 */ mtc1 $zero, $f24 -/* 017488 80016888 2417000A */ li $s7, 10 -.L8001688C: -/* 01748C 8001688C 8E68001C */ lw $t0, 0x1c($s3) -/* 017490 80016890 8EB90044 */ lw $t9, 0x44($s5) -/* 017494 80016894 01124821 */ addu $t1, $t0, $s2 -/* 017498 80016898 852A0000 */ lh $t2, ($t1) -/* 01749C 8001689C 27A400AC */ addiu $a0, $sp, 0xac -/* 0174A0 800168A0 01570019 */ multu $t2, $s7 -/* 0174A4 800168A4 00005812 */ mflo $t3 -/* 0174A8 800168A8 032B6021 */ addu $t4, $t9, $t3 -/* 0174AC 800168AC 858D0000 */ lh $t5, ($t4) -/* 0174B0 800168B0 00000000 */ nop -/* 0174B4 800168B4 448D3000 */ mtc1 $t5, $f6 -/* 0174B8 800168B8 00000000 */ nop -/* 0174BC 800168BC 468032A0 */ cvt.s.w $f10, $f6 -/* 0174C0 800168C0 E7AA00A8 */ swc1 $f10, 0xa8($sp) -/* 0174C4 800168C4 8E6F001C */ lw $t7, 0x1c($s3) -/* 0174C8 800168C8 8EAE0044 */ lw $t6, 0x44($s5) -/* 0174CC 800168CC 01F2C021 */ addu $t8, $t7, $s2 -/* 0174D0 800168D0 87080000 */ lh $t0, ($t8) -/* 0174D4 800168D4 8FA500A8 */ lw $a1, 0xa8($sp) -/* 0174D8 800168D8 01170019 */ multu $t0, $s7 -/* 0174DC 800168DC 00004812 */ mflo $t1 -/* 0174E0 800168E0 01C95021 */ addu $t2, $t6, $t1 -/* 0174E4 800168E4 85590002 */ lh $t9, 2($t2) -/* 0174E8 800168E8 27AA00A4 */ addiu $t2, $sp, 0xa4 -/* 0174EC 800168EC 44999000 */ mtc1 $t9, $f18 -/* 0174F0 800168F0 27B900A0 */ addiu $t9, $sp, 0xa0 -/* 0174F4 800168F4 46809420 */ cvt.s.w $f16, $f18 -/* 0174F8 800168F8 27A900A8 */ addiu $t1, $sp, 0xa8 -/* 0174FC 800168FC E7B000A4 */ swc1 $f16, 0xa4($sp) -/* 017500 80016900 8E6C001C */ lw $t4, 0x1c($s3) -/* 017504 80016904 8EAB0044 */ lw $t3, 0x44($s5) -/* 017508 80016908 01926821 */ addu $t5, $t4, $s2 -/* 01750C 8001690C 85AF0000 */ lh $t7, ($t5) -/* 017510 80016910 8FA600A4 */ lw $a2, 0xa4($sp) -/* 017514 80016914 01F70019 */ multu $t7, $s7 -/* 017518 80016918 0000C012 */ mflo $t8 -/* 01751C 8001691C 01784021 */ addu $t0, $t3, $t8 -/* 017520 80016920 850E0004 */ lh $t6, 4($t0) -/* 017524 80016924 AFB90018 */ sw $t9, 0x18($sp) -/* 017528 80016928 448E2000 */ mtc1 $t6, $f4 -/* 01752C 8001692C AFAA0014 */ sw $t2, 0x14($sp) -/* 017530 80016930 46802220 */ cvt.s.w $f8, $f4 -/* 017534 80016934 AFA90010 */ sw $t1, 0x10($sp) -/* 017538 80016938 E7A800A0 */ swc1 $f8, 0xa0($sp) -/* 01753C 8001693C 8FA700A0 */ lw $a3, 0xa0($sp) -/* 017540 80016940 0C01BD93 */ jal func_8006F64C -/* 017544 80016944 00000000 */ nop -/* 017548 80016948 8E6C001C */ lw $t4, 0x1c($s3) -/* 01754C 8001694C 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 017550 80016950 01926821 */ addu $t5, $t4, $s2 -/* 017554 80016954 85AF0002 */ lh $t7, 2($t5) -/* 017558 80016958 44819000 */ mtc1 $at, $f18 -/* 01755C 8001695C 448F3000 */ mtc1 $t7, $f6 -/* 017560 80016960 C6A40008 */ lwc1 $f4, 8($s5) -/* 017564 80016964 468032A0 */ cvt.s.w $f10, $f6 -/* 017568 80016968 00000000 */ nop -/* 01756C 8001696C 46125403 */ div.s $f16, $f10, $f18 -/* 017570 80016970 C7B200A8 */ lwc1 $f18, 0xa8($sp) -/* 017574 80016974 46048202 */ mul.s $f8, $f16, $f4 -/* 017578 80016978 C610000C */ lwc1 $f16, 0xc($s0) -/* 01757C 8001697C 460041A1 */ cvt.d.s $f6, $f8 -/* 017580 80016980 463E3282 */ mul.d $f10, $f6, $f30 -/* 017584 80016984 46109101 */ sub.s $f4, $f18, $f16 -/* 017588 80016988 C7A800A4 */ lwc1 $f8, 0xa4($sp) -/* 01758C 8001698C E7A400A8 */ swc1 $f4, 0xa8($sp) -/* 017590 80016990 C6060010 */ lwc1 $f6, 0x10($s0) -/* 017594 80016994 462055A0 */ cvt.s.d $f22, $f10 -/* 017598 80016998 C7B200A0 */ lwc1 $f18, 0xa0($sp) -/* 01759C 8001699C 46064281 */ sub.s $f10, $f8, $f6 -/* 0175A0 800169A0 E7AA00A4 */ swc1 $f10, 0xa4($sp) -/* 0175A4 800169A4 46042182 */ mul.s $f6, $f4, $f4 -/* 0175A8 800169A8 C6100014 */ lwc1 $f16, 0x14($s0) -/* 0175AC 800169AC 00000000 */ nop -/* 0175B0 800169B0 46109201 */ sub.s $f8, $f18, $f16 -/* 0175B4 800169B4 460A5482 */ mul.s $f18, $f10, $f10 -/* 0175B8 800169B8 E7A800A0 */ swc1 $f8, 0xa0($sp) -/* 0175BC 800169BC 46084102 */ mul.s $f4, $f8, $f8 -/* 0175C0 800169C0 46123400 */ add.s $f16, $f6, $f18 -/* 0175C4 800169C4 0C0326B4 */ jal sqrtf -/* 0175C8 800169C8 46048300 */ add.s $f12, $f16, $f4 -/* 0175CC 800169CC 828B0010 */ lb $t3, 0x10($s4) -/* 0175D0 800169D0 00000000 */ nop -/* 0175D4 800169D4 448B5000 */ mtc1 $t3, $f10 -/* 0175D8 800169D8 00000000 */ nop -/* 0175DC 800169DC 468051A0 */ cvt.s.w $f6, $f10 -/* 0175E0 800169E0 4606B580 */ add.s $f22, $f22, $f6 -/* 0175E4 800169E4 4616003C */ c.lt.s $f0, $f22 -/* 0175E8 800169E8 00000000 */ nop -/* 0175EC 800169EC 45000058 */ bc1f .L80016B50 -/* 0175F0 800169F0 00000000 */ nop -/* 0175F4 800169F4 4600C03C */ c.lt.s $f24, $f0 -/* 0175F8 800169F8 00000000 */ nop -/* 0175FC 800169FC 45000054 */ bc1f .L80016B50 -/* 017600 80016A00 00000000 */ nop -/* 017604 80016A04 4600B481 */ sub.s $f18, $f22, $f0 -/* 017608 80016A08 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 01760C 80016A0C 46009503 */ div.s $f20, $f18, $f0 -/* 017610 80016A10 86D80014 */ lh $t8, 0x14($s6) -/* 017614 80016A14 44814000 */ mtc1 $at, $f8 -/* 017618 80016A18 37080008 */ ori $t0, $t8, 8 -/* 01761C 80016A1C A6C80014 */ sh $t0, 0x14($s6) -/* 017620 80016A20 868E0014 */ lh $t6, 0x14($s4) -/* 017624 80016A24 24010001 */ li $at, 1 -/* 017628 80016A28 35C90008 */ ori $t1, $t6, 8 -/* 01762C 80016A2C A6890014 */ sh $t1, 0x14($s4) -/* 017630 80016A30 AED50000 */ sw $s5, ($s6) -/* 017634 80016A34 AE900000 */ sw $s0, ($s4) -/* 017638 80016A38 A2C00013 */ sb $zero, 0x13($s6) -/* 01763C 80016A3C 4608A503 */ div.s $f20, $f20, $f8 -/* 017640 80016A40 A2800013 */ sb $zero, 0x13($s4) -/* 017644 80016A44 C7B000A8 */ lwc1 $f16, 0xa8($sp) -/* 017648 80016A48 C7AA00A4 */ lwc1 $f10, 0xa4($sp) -/* 01764C 80016A4C C7B200A0 */ lwc1 $f18, 0xa0($sp) -/* 017650 80016A50 46148102 */ mul.s $f4, $f16, $f20 -/* 017654 80016A54 00000000 */ nop -/* 017658 80016A58 46145182 */ mul.s $f6, $f10, $f20 -/* 01765C 80016A5C E7A400A8 */ swc1 $f4, 0xa8($sp) -/* 017660 80016A60 46149202 */ mul.s $f8, $f18, $f20 -/* 017664 80016A64 E7A600A4 */ swc1 $f6, 0xa4($sp) -/* 017668 80016A68 E7A800A0 */ swc1 $f8, 0xa0($sp) -/* 01766C 80016A6C C610000C */ lwc1 $f16, 0xc($s0) -/* 017670 80016A70 C6060010 */ lwc1 $f6, 0x10($s0) -/* 017674 80016A74 46048281 */ sub.s $f10, $f16, $f4 -/* 017678 80016A78 C6100014 */ lwc1 $f16, 0x14($s0) -/* 01767C 80016A7C E60A000C */ swc1 $f10, 0xc($s0) -/* 017680 80016A80 C7B200A4 */ lwc1 $f18, 0xa4($sp) -/* 017684 80016A84 860A0048 */ lh $t2, 0x48($s0) -/* 017688 80016A88 46123201 */ sub.s $f8, $f6, $f18 -/* 01768C 80016A8C E6080010 */ swc1 $f8, 0x10($s0) -/* 017690 80016A90 C7A400A0 */ lwc1 $f4, 0xa0($sp) -/* 017694 80016A94 00000000 */ nop -/* 017698 80016A98 46048281 */ sub.s $f10, $f16, $f4 -/* 01769C 80016A9C 1541002C */ bne $t2, $at, .L80016B50 -/* 0176A0 80016AA0 E60A0014 */ swc1 $f10, 0x14($s0) -/* 0176A4 80016AA4 8E110064 */ lw $s1, 0x64($s0) -/* 0176A8 80016AA8 00000000 */ nop -/* 0176AC 80016AAC 823901D8 */ lb $t9, 0x1d8($s1) -/* 0176B0 80016AB0 00000000 */ nop -/* 0176B4 80016AB4 17200004 */ bnez $t9, .L80016AC8 -/* 0176B8 80016AB8 00000000 */ nop -/* 0176BC 80016ABC 86240000 */ lh $a0, ($s1) -/* 0176C0 80016AC0 0C01C8D2 */ jal func_80072348 -/* 0176C4 80016AC4 24050012 */ li $a1, 18 -.L80016AC8: -/* 0176C8 80016AC8 822C01D6 */ lb $t4, 0x1d6($s1) -/* 0176CC 80016ACC 24010001 */ li $at, 1 -/* 0176D0 80016AD0 1581000F */ bne $t4, $at, .L80016B10 -/* 0176D4 80016AD4 00000000 */ nop -/* 0176D8 80016AD8 4600A1A1 */ cvt.d.s $f6, $f20 -/* 0176DC 80016ADC 4626D03C */ c.lt.d $f26, $f6 -/* 0176E0 80016AE0 C7A800A8 */ lwc1 $f8, 0xa8($sp) -/* 0176E4 80016AE4 4500001A */ bc1f .L80016B50 -/* 0176E8 80016AE8 00000000 */ nop -/* 0176EC 80016AEC C612001C */ lwc1 $f18, 0x1c($s0) -/* 0176F0 80016AF0 C6040024 */ lwc1 $f4, 0x24($s0) -/* 0176F4 80016AF4 46089401 */ sub.s $f16, $f18, $f8 -/* 0176F8 80016AF8 E610001C */ swc1 $f16, 0x1c($s0) -/* 0176FC 80016AFC C7AA00A0 */ lwc1 $f10, 0xa0($sp) -/* 017700 80016B00 00000000 */ nop -/* 017704 80016B04 460A2181 */ sub.s $f6, $f4, $f10 -/* 017708 80016B08 10000011 */ b .L80016B50 -/* 01770C 80016B0C E6060024 */ swc1 $f6, 0x24($s0) -.L80016B10: -/* 017710 80016B10 4600A4A1 */ cvt.d.s $f18, $f20 -/* 017714 80016B14 4632E03C */ c.lt.d $f28, $f18 -/* 017718 80016B18 C7B000A8 */ lwc1 $f16, 0xa8($sp) -/* 01771C 80016B1C 4500000C */ bc1f .L80016B50 -/* 017720 80016B20 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 017724 80016B24 C608001C */ lwc1 $f8, 0x1c($s0) -/* 017728 80016B28 C60A0024 */ lwc1 $f10, 0x24($s0) -/* 01772C 80016B2C 46104101 */ sub.s $f4, $f8, $f16 -/* 017730 80016B30 44814000 */ mtc1 $at, $f8 -/* 017734 80016B34 E604001C */ swc1 $f4, 0x1c($s0) -/* 017738 80016B38 C7A600A0 */ lwc1 $f6, 0xa0($sp) -/* 01773C 80016B3C 4608A402 */ mul.s $f16, $f20, $f8 -/* 017740 80016B40 46065481 */ sub.s $f18, $f10, $f6 -/* 017744 80016B44 E6120024 */ swc1 $f18, 0x24($s0) -/* 017748 80016B48 E630002C */ swc1 $f16, 0x2c($s1) -/* 01774C 80016B4C E6380030 */ swc1 $f24, 0x30($s1) -.L80016B50: -/* 017750 80016B50 866D0020 */ lh $t5, 0x20($s3) -/* 017754 80016B54 27DE0002 */ addiu $fp, $fp, 2 -/* 017758 80016B58 03CD082A */ slt $at, $fp, $t5 -/* 01775C 80016B5C 1420FF4B */ bnez $at, .L8001688C -/* 017760 80016B60 26520004 */ addiu $s2, $s2, 4 -.L80016B64: -/* 017764 80016B64 8FBF007C */ lw $ra, 0x7c($sp) -.L80016B68: -/* 017768 80016B68 C7B50028 */ lwc1 $f21, 0x28($sp) -/* 01776C 80016B6C C7B4002C */ lwc1 $f20, 0x2c($sp) -/* 017770 80016B70 C7B70030 */ lwc1 $f23, 0x30($sp) -/* 017774 80016B74 C7B60034 */ lwc1 $f22, 0x34($sp) -/* 017778 80016B78 C7B90038 */ lwc1 $f25, 0x38($sp) -/* 01777C 80016B7C C7B8003C */ lwc1 $f24, 0x3c($sp) -/* 017780 80016B80 C7BB0040 */ lwc1 $f27, 0x40($sp) -/* 017784 80016B84 C7BA0044 */ lwc1 $f26, 0x44($sp) -/* 017788 80016B88 C7BD0048 */ lwc1 $f29, 0x48($sp) -/* 01778C 80016B8C C7BC004C */ lwc1 $f28, 0x4c($sp) -/* 017790 80016B90 C7BF0050 */ lwc1 $f31, 0x50($sp) -/* 017794 80016B94 C7BE0054 */ lwc1 $f30, 0x54($sp) -/* 017798 80016B98 8FB00058 */ lw $s0, 0x58($sp) -/* 01779C 80016B9C 8FB1005C */ lw $s1, 0x5c($sp) -/* 0177A0 80016BA0 8FB20060 */ lw $s2, 0x60($sp) -/* 0177A4 80016BA4 8FB30064 */ lw $s3, 0x64($sp) -/* 0177A8 80016BA8 8FB40068 */ lw $s4, 0x68($sp) -/* 0177AC 80016BAC 8FB5006C */ lw $s5, 0x6c($sp) -/* 0177B0 80016BB0 8FB60070 */ lw $s6, 0x70($sp) -/* 0177B4 80016BB4 8FB70074 */ lw $s7, 0x74($sp) -/* 0177B8 80016BB8 8FBE0078 */ lw $fp, 0x78($sp) -/* 0177BC 80016BBC 03E00008 */ jr $ra -/* 0177C0 80016BC0 27BD00F0 */ addiu $sp, $sp, 0xf0 - -glabel func_80016BC4 -/* 0177C4 80016BC4 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 0177C8 80016BC8 AFBF0024 */ sw $ra, 0x24($sp) -/* 0177CC 80016BCC AFB20020 */ sw $s2, 0x20($sp) -/* 0177D0 80016BD0 AFB1001C */ sw $s1, 0x1c($sp) -/* 0177D4 80016BD4 AFB00018 */ sw $s0, 0x18($sp) -/* 0177D8 80016BD8 8C8E005C */ lw $t6, 0x5c($a0) -/* 0177DC 80016BDC 00809025 */ move $s2, $a0 -/* 0177E0 80016BE0 0C005C27 */ jal func_8001709C -/* 0177E4 80016BE4 A1C00104 */ sb $zero, 0x104($t6) -/* 0177E8 80016BE8 0C005C27 */ jal func_8001709C -/* 0177EC 80016BEC 02402025 */ move $a0, $s2 -/* 0177F0 80016BF0 8E4F0040 */ lw $t7, 0x40($s2) -/* 0177F4 80016BF4 00008825 */ move $s1, $zero -/* 0177F8 80016BF8 81E30055 */ lb $v1, 0x55($t7) -/* 0177FC 80016BFC 00008025 */ move $s0, $zero -/* 017800 80016C00 18600014 */ blez $v1, .L80016C54 -/* 017804 80016C04 8FBF0024 */ lw $ra, 0x24($sp) -.L80016C08: -/* 017808 80016C08 8E580068 */ lw $t8, 0x68($s2) -/* 01780C 80016C0C 00000000 */ nop -/* 017810 80016C10 0310C821 */ addu $t9, $t8, $s0 -/* 017814 80016C14 8F220000 */ lw $v0, ($t9) -/* 017818 80016C18 00000000 */ nop -/* 01781C 80016C1C 10400008 */ beqz $v0, .L80016C40 -/* 017820 80016C20 00000000 */ nop -/* 017824 80016C24 8C440000 */ lw $a0, ($v0) -/* 017828 80016C28 0C01805F */ jal func_8006017C -/* 01782C 80016C2C 00000000 */ nop -/* 017830 80016C30 8E480040 */ lw $t0, 0x40($s2) -/* 017834 80016C34 00000000 */ nop -/* 017838 80016C38 81030055 */ lb $v1, 0x55($t0) -/* 01783C 80016C3C 00000000 */ nop -.L80016C40: -/* 017840 80016C40 26310001 */ addiu $s1, $s1, 1 -/* 017844 80016C44 0223082A */ slt $at, $s1, $v1 -/* 017848 80016C48 1420FFEF */ bnez $at, .L80016C08 -/* 01784C 80016C4C 26100004 */ addiu $s0, $s0, 4 -/* 017850 80016C50 8FBF0024 */ lw $ra, 0x24($sp) -.L80016C54: -/* 017854 80016C54 8FB00018 */ lw $s0, 0x18($sp) -/* 017858 80016C58 8FB1001C */ lw $s1, 0x1c($sp) -/* 01785C 80016C5C 8FB20020 */ lw $s2, 0x20($sp) -/* 017860 80016C60 03E00008 */ jr $ra -/* 017864 80016C64 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80016C68 -/* 017868 80016C68 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 01786C 80016C6C AFB60050 */ sw $s6, 0x50($sp) -/* 017870 80016C70 3C168012 */ lui $s6, %hi(D_8011AE5C) # $s6, 0x8012 -/* 017874 80016C74 26D6AE5C */ addiu $s6, %lo(D_8011AE5C) # addiu $s6, $s6, -0x51a4 -/* 017878 80016C78 8ECE0000 */ lw $t6, ($s6) -/* 01787C 80016C7C E7BA0034 */ swc1 $f26, 0x34($sp) -/* 017880 80016C80 E7B60024 */ swc1 $f22, 0x24($sp) -/* 017884 80016C84 4486B000 */ mtc1 $a2, $f22 -/* 017888 80016C88 4487D000 */ mtc1 $a3, $f26 -/* 01788C 80016C8C AFB1003C */ sw $s1, 0x3c($sp) -/* 017890 80016C90 E7B90028 */ swc1 $f25, 0x28($sp) -/* 017894 80016C94 E7B8002C */ swc1 $f24, 0x2c($sp) -/* 017898 80016C98 E7B50018 */ swc1 $f21, 0x18($sp) -/* 01789C 80016C9C E7B4001C */ swc1 $f20, 0x1c($sp) -/* 0178A0 80016CA0 46006506 */ mov.s $f20, $f12 -/* 0178A4 80016CA4 46007606 */ mov.s $f24, $f14 -/* 0178A8 80016CA8 AFBF0054 */ sw $ra, 0x54($sp) -/* 0178AC 80016CAC AFB5004C */ sw $s5, 0x4c($sp) -/* 0178B0 80016CB0 AFB40048 */ sw $s4, 0x48($sp) -/* 0178B4 80016CB4 AFB30044 */ sw $s3, 0x44($sp) -/* 0178B8 80016CB8 AFB20040 */ sw $s2, 0x40($sp) -/* 0178BC 80016CBC AFB00038 */ sw $s0, 0x38($sp) -/* 0178C0 80016CC0 E7BB0030 */ swc1 $f27, 0x30($sp) -/* 0178C4 80016CC4 E7B70020 */ swc1 $f23, 0x20($sp) -/* 0178C8 80016CC8 19C00034 */ blez $t6, .L80016D9C -/* 0178CC 80016CCC 00008825 */ move $s1, $zero -/* 0178D0 80016CD0 3C148012 */ lui $s4, %hi(D_8011AE58) # $s4, 0x8012 -/* 0178D4 80016CD4 8FB30068 */ lw $s3, 0x68($sp) -/* 0178D8 80016CD8 2694AE58 */ addiu $s4, %lo(D_8011AE58) # addiu $s4, $s4, -0x51a8 -/* 0178DC 80016CDC 00009025 */ move $s2, $zero -/* 0178E0 80016CE0 24150055 */ li $s5, 85 -.L80016CE4: -/* 0178E4 80016CE4 8E8F0000 */ lw $t7, ($s4) -/* 0178E8 80016CE8 00000000 */ nop -/* 0178EC 80016CEC 01F2C021 */ addu $t8, $t7, $s2 -/* 0178F0 80016CF0 8F100000 */ lw $s0, ($t8) -/* 0178F4 80016CF4 00000000 */ nop -/* 0178F8 80016CF8 86190006 */ lh $t9, 6($s0) -/* 0178FC 80016CFC 00000000 */ nop -/* 017900 80016D00 33288000 */ andi $t0, $t9, 0x8000 -/* 017904 80016D04 15000020 */ bnez $t0, .L80016D88 -/* 017908 80016D08 00000000 */ nop -/* 01790C 80016D0C 86090048 */ lh $t1, 0x48($s0) -/* 017910 80016D10 00000000 */ nop -/* 017914 80016D14 16A9001C */ bne $s5, $t1, .L80016D88 -/* 017918 80016D18 00000000 */ nop -/* 01791C 80016D1C C604000C */ lwc1 $f4, 0xc($s0) -/* 017920 80016D20 C6060014 */ lwc1 $f6, 0x14($s0) -/* 017924 80016D24 46142081 */ sub.s $f2, $f4, $f20 -/* 017928 80016D28 1660000C */ bnez $s3, .L80016D5C -/* 01792C 80016D2C 46163381 */ sub.s $f14, $f6, $f22 -/* 017930 80016D30 C6080010 */ lwc1 $f8, 0x10($s0) -/* 017934 80016D34 46021282 */ mul.s $f10, $f2, $f2 -/* 017938 80016D38 46184001 */ sub.s $f0, $f8, $f24 -/* 01793C 80016D3C 46000402 */ mul.s $f16, $f0, $f0 -/* 017940 80016D40 00000000 */ nop -/* 017944 80016D44 460E7102 */ mul.s $f4, $f14, $f14 -/* 017948 80016D48 46105480 */ add.s $f18, $f10, $f16 -/* 01794C 80016D4C 0C0326B4 */ jal sqrtf -/* 017950 80016D50 46049300 */ add.s $f12, $f18, $f4 -/* 017954 80016D54 10000007 */ b .L80016D74 -/* 017958 80016D58 461A003C */ c.lt.s $f0, $f26 -.L80016D5C: -/* 01795C 80016D5C 46021182 */ mul.s $f6, $f2, $f2 -/* 017960 80016D60 00000000 */ nop -/* 017964 80016D64 460E7202 */ mul.s $f8, $f14, $f14 -/* 017968 80016D68 0C0326B4 */ jal sqrtf -/* 01796C 80016D6C 46083300 */ add.s $f12, $f6, $f8 -/* 017970 80016D70 461A003C */ c.lt.s $f0, $f26 -.L80016D74: -/* 017974 80016D74 00000000 */ nop -/* 017978 80016D78 45000003 */ bc1f .L80016D88 -/* 01797C 80016D7C 00000000 */ nop -/* 017980 80016D80 10000007 */ b .L80016DA0 -/* 017984 80016D84 02001025 */ move $v0, $s0 -.L80016D88: -/* 017988 80016D88 8ECA0000 */ lw $t2, ($s6) -/* 01798C 80016D8C 26310001 */ addiu $s1, $s1, 1 -/* 017990 80016D90 022A082A */ slt $at, $s1, $t2 -/* 017994 80016D94 1420FFD3 */ bnez $at, .L80016CE4 -/* 017998 80016D98 26520004 */ addiu $s2, $s2, 4 -.L80016D9C: -/* 01799C 80016D9C 00001025 */ move $v0, $zero -.L80016DA0: -/* 0179A0 80016DA0 8FBF0054 */ lw $ra, 0x54($sp) -/* 0179A4 80016DA4 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 0179A8 80016DA8 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 0179AC 80016DAC C7B70020 */ lwc1 $f23, 0x20($sp) -/* 0179B0 80016DB0 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 0179B4 80016DB4 C7B90028 */ lwc1 $f25, 0x28($sp) -/* 0179B8 80016DB8 C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 0179BC 80016DBC C7BB0030 */ lwc1 $f27, 0x30($sp) -/* 0179C0 80016DC0 C7BA0034 */ lwc1 $f26, 0x34($sp) -/* 0179C4 80016DC4 8FB00038 */ lw $s0, 0x38($sp) -/* 0179C8 80016DC8 8FB1003C */ lw $s1, 0x3c($sp) -/* 0179CC 80016DCC 8FB20040 */ lw $s2, 0x40($sp) -/* 0179D0 80016DD0 8FB30044 */ lw $s3, 0x44($sp) -/* 0179D4 80016DD4 8FB40048 */ lw $s4, 0x48($sp) -/* 0179D8 80016DD8 8FB5004C */ lw $s5, 0x4c($sp) -/* 0179DC 80016DDC 8FB60050 */ lw $s6, 0x50($sp) -/* 0179E0 80016DE0 03E00008 */ jr $ra -/* 0179E4 80016DE4 27BD0058 */ addiu $sp, $sp, 0x58 - -glabel func_80016DE8 -/* 0179E8 80016DE8 27BDFF48 */ addiu $sp, $sp, -0xb8 -/* 0179EC 80016DEC AFB6004C */ sw $s6, 0x4c($sp) -/* 0179F0 80016DF0 3C168012 */ lui $s6, %hi(D_8011AEF0) # $s6, 0x8012 -/* 0179F4 80016DF4 26D6AEF0 */ addiu $s6, %lo(D_8011AEF0) # addiu $s6, $s6, -0x5110 -/* 0179F8 80016DF8 8EC20000 */ lw $v0, ($s6) -/* 0179FC 80016DFC E7BA002C */ swc1 $f26, 0x2c($sp) -/* 017A00 80016E00 E7B6001C */ swc1 $f22, 0x1c($sp) -/* 017A04 80016E04 4486B000 */ mtc1 $a2, $f22 -/* 017A08 80016E08 4487D000 */ mtc1 $a3, $f26 -/* 017A0C 80016E0C AFB40044 */ sw $s4, 0x44($sp) -/* 017A10 80016E10 E7B90020 */ swc1 $f25, 0x20($sp) -/* 017A14 80016E14 E7B80024 */ swc1 $f24, 0x24($sp) -/* 017A18 80016E18 E7B50010 */ swc1 $f21, 0x10($sp) -/* 017A1C 80016E1C E7B40014 */ swc1 $f20, 0x14($sp) -/* 017A20 80016E20 46006506 */ mov.s $f20, $f12 -/* 017A24 80016E24 46007606 */ mov.s $f24, $f14 -/* 017A28 80016E28 AFBF0054 */ sw $ra, 0x54($sp) -/* 017A2C 80016E2C AFB70050 */ sw $s7, 0x50($sp) -/* 017A30 80016E30 AFB50048 */ sw $s5, 0x48($sp) -/* 017A34 80016E34 AFB30040 */ sw $s3, 0x40($sp) -/* 017A38 80016E38 AFB2003C */ sw $s2, 0x3c($sp) -/* 017A3C 80016E3C AFB10038 */ sw $s1, 0x38($sp) -/* 017A40 80016E40 AFB00034 */ sw $s0, 0x34($sp) -/* 017A44 80016E44 E7BB0028 */ swc1 $f27, 0x28($sp) -/* 017A48 80016E48 E7B70018 */ swc1 $f23, 0x18($sp) -/* 017A4C 80016E4C 1840007F */ blez $v0, .L8001704C -/* 017A50 80016E50 0000A025 */ move $s4, $zero -/* 017A54 80016E54 1840003C */ blez $v0, .L80016F48 -/* 017A58 80016E58 00008825 */ move $s1, $zero -/* 017A5C 80016E5C 3C138012 */ lui $s3, %hi(D_8011AEE4) # $s3, 0x8012 -/* 017A60 80016E60 8FB500C8 */ lw $s5, 0xc8($sp) -/* 017A64 80016E64 8FB000CC */ lw $s0, 0xcc($sp) -/* 017A68 80016E68 2673AEE4 */ addiu $s3, %lo(D_8011AEE4) # addiu $s3, $s3, -0x511c -/* 017A6C 80016E6C 00009025 */ move $s2, $zero -/* 017A70 80016E70 27B70098 */ addiu $s7, $sp, 0x98 -.L80016E74: -/* 017A74 80016E74 8E6E0000 */ lw $t6, ($s3) -/* 017A78 80016E78 00000000 */ nop -/* 017A7C 80016E7C 01D27821 */ addu $t7, $t6, $s2 -/* 017A80 80016E80 8DE20000 */ lw $v0, ($t7) -/* 017A84 80016E84 00000000 */ nop -/* 017A88 80016E88 8C430064 */ lw $v1, 0x64($v0) -/* 017A8C 80016E8C 00000000 */ nop -/* 017A90 80016E90 84640000 */ lh $a0, ($v1) -/* 017A94 80016E94 00000000 */ nop -/* 017A98 80016E98 04800026 */ bltz $a0, .L80016F34 -/* 017A9C 80016E9C 28810004 */ slti $at, $a0, 4 -/* 017AA0 80016EA0 10200024 */ beqz $at, .L80016F34 -/* 017AA4 80016EA4 00000000 */ nop -/* 017AA8 80016EA8 12A0000B */ beqz $s5, .L80016ED8 -/* 017AAC 80016EAC 00000000 */ nop -/* 017AB0 80016EB0 C444000C */ lwc1 $f4, 0xc($v0) -/* 017AB4 80016EB4 C4460014 */ lwc1 $f6, 0x14($v0) -/* 017AB8 80016EB8 46142001 */ sub.s $f0, $f4, $f20 -/* 017ABC 80016EBC 46000202 */ mul.s $f8, $f0, $f0 -/* 017AC0 80016EC0 46163081 */ sub.s $f2, $f6, $f22 -/* 017AC4 80016EC4 46021282 */ mul.s $f10, $f2, $f2 -/* 017AC8 80016EC8 0C0326B4 */ jal sqrtf -/* 017ACC 80016ECC 460A4300 */ add.s $f12, $f8, $f10 -/* 017AD0 80016ED0 1000000E */ b .L80016F0C -/* 017AD4 80016ED4 461A003C */ c.lt.s $f0, $f26 -.L80016ED8: -/* 017AD8 80016ED8 C450000C */ lwc1 $f16, 0xc($v0) -/* 017ADC 80016EDC C4520010 */ lwc1 $f18, 0x10($v0) -/* 017AE0 80016EE0 46148001 */ sub.s $f0, $f16, $f20 -/* 017AE4 80016EE4 C4440014 */ lwc1 $f4, 0x14($v0) -/* 017AE8 80016EE8 46000182 */ mul.s $f6, $f0, $f0 -/* 017AEC 80016EEC 46189381 */ sub.s $f14, $f18, $f24 -/* 017AF0 80016EF0 460E7202 */ mul.s $f8, $f14, $f14 -/* 017AF4 80016EF4 46162081 */ sub.s $f2, $f4, $f22 -/* 017AF8 80016EF8 46021402 */ mul.s $f16, $f2, $f2 -/* 017AFC 80016EFC 46083280 */ add.s $f10, $f6, $f8 -/* 017B00 80016F00 0C0326B4 */ jal sqrtf -/* 017B04 80016F04 46105300 */ add.s $f12, $f10, $f16 -/* 017B08 80016F08 461A003C */ c.lt.s $f0, $f26 -.L80016F0C: -/* 017B0C 80016F0C 00141080 */ sll $v0, $s4, 2 -/* 017B10 80016F10 45000008 */ bc1f .L80016F34 -/* 017B14 80016F14 02E2C021 */ addu $t8, $s7, $v0 -/* 017B18 80016F18 E7000000 */ swc1 $f0, ($t8) -/* 017B1C 80016F1C 8E790000 */ lw $t9, ($s3) -/* 017B20 80016F20 02025021 */ addu $t2, $s0, $v0 -/* 017B24 80016F24 03324021 */ addu $t0, $t9, $s2 -/* 017B28 80016F28 8D090000 */ lw $t1, ($t0) -/* 017B2C 80016F2C 26940001 */ addiu $s4, $s4, 1 -/* 017B30 80016F30 AD490000 */ sw $t1, ($t2) -.L80016F34: -/* 017B34 80016F34 8ECB0000 */ lw $t3, ($s6) -/* 017B38 80016F38 26310001 */ addiu $s1, $s1, 1 -/* 017B3C 80016F3C 022B082A */ slt $at, $s1, $t3 -/* 017B40 80016F40 1420FFCC */ bnez $at, .L80016E74 -/* 017B44 80016F44 26520004 */ addiu $s2, $s2, 4 -.L80016F48: -/* 017B48 80016F48 8FB000CC */ lw $s0, 0xcc($sp) -/* 017B4C 80016F4C 2A810002 */ slti $at, $s4, 2 -/* 017B50 80016F50 1420003E */ bnez $at, .L8001704C -/* 017B54 80016F54 2691FFFF */ addiu $s1, $s4, -1 -/* 017B58 80016F58 1A20003D */ blez $s1, .L80017050 -/* 017B5C 80016F5C 8FBF0054 */ lw $ra, 0x54($sp) -.L80016F60: -/* 017B60 80016F60 1A200037 */ blez $s1, .L80017040 -/* 017B64 80016F64 00001025 */ move $v0, $zero -/* 017B68 80016F68 32230001 */ andi $v1, $s1, 1 -/* 017B6C 80016F6C 10600010 */ beqz $v1, .L80016FB0 -/* 017B70 80016F70 27AD0098 */ addiu $t5, $sp, 0x98 -/* 017B74 80016F74 C7B2009C */ lwc1 $f18, 0x9c($sp) -/* 017B78 80016F78 C7A40098 */ lwc1 $f4, 0x98($sp) -/* 017B7C 80016F7C 24020001 */ li $v0, 1 -/* 017B80 80016F80 4604903C */ c.lt.s $f18, $f4 -/* 017B84 80016F84 00000000 */ nop -/* 017B88 80016F88 45000008 */ bc1f .L80016FAC -/* 017B8C 80016F8C 00000000 */ nop -/* 017B90 80016F90 8E040000 */ lw $a0, ($s0) -/* 017B94 80016F94 E7B20098 */ swc1 $f18, 0x98($sp) -/* 017B98 80016F98 8E0C0004 */ lw $t4, 4($s0) -/* 017B9C 80016F9C 00000000 */ nop -/* 017BA0 80016FA0 AE0C0000 */ sw $t4, ($s0) -/* 017BA4 80016FA4 E7A4009C */ swc1 $f4, 0x9c($sp) -/* 017BA8 80016FA8 AE040004 */ sw $a0, 4($s0) -.L80016FAC: -/* 017BAC 80016FAC 10510024 */ beq $v0, $s1, .L80017040 -.L80016FB0: -/* 017BB0 80016FB0 00022880 */ sll $a1, $v0, 2 -/* 017BB4 80016FB4 00117080 */ sll $t6, $s1, 2 -/* 017BB8 80016FB8 01CD3021 */ addu $a2, $t6, $t5 -/* 017BBC 80016FBC 00AD1821 */ addu $v1, $a1, $t5 -.L80016FC0: -/* 017BC0 80016FC0 C4600004 */ lwc1 $f0, 4($v1) -/* 017BC4 80016FC4 C46C0000 */ lwc1 $f12, ($v1) -/* 017BC8 80016FC8 02051021 */ addu $v0, $s0, $a1 -/* 017BCC 80016FCC 460C003C */ c.lt.s $f0, $f12 -/* 017BD0 80016FD0 00000000 */ nop -/* 017BD4 80016FD4 4500000A */ bc1f .L80017000 -/* 017BD8 80016FD8 00000000 */ nop -/* 017BDC 80016FDC 8C440000 */ lw $a0, ($v0) -/* 017BE0 80016FE0 E4600000 */ swc1 $f0, ($v1) -/* 017BE4 80016FE4 8C4F0004 */ lw $t7, 4($v0) -/* 017BE8 80016FE8 00000000 */ nop -/* 017BEC 80016FEC AC4F0000 */ sw $t7, ($v0) -/* 017BF0 80016FF0 E46C0004 */ swc1 $f12, 4($v1) -/* 017BF4 80016FF4 AC440004 */ sw $a0, 4($v0) -/* 017BF8 80016FF8 C4600004 */ lwc1 $f0, 4($v1) -/* 017BFC 80016FFC 00000000 */ nop -.L80017000: -/* 017C00 80017000 C46C0008 */ lwc1 $f12, 8($v1) -/* 017C04 80017004 02051021 */ addu $v0, $s0, $a1 -/* 017C08 80017008 4600603C */ c.lt.s $f12, $f0 -/* 017C0C 8001700C 00000000 */ nop -/* 017C10 80017010 45000008 */ bc1f .L80017034 -/* 017C14 80017014 00000000 */ nop -/* 017C18 80017018 8C440004 */ lw $a0, 4($v0) -/* 017C1C 8001701C E46C0004 */ swc1 $f12, 4($v1) -/* 017C20 80017020 8C580008 */ lw $t8, 8($v0) -/* 017C24 80017024 00000000 */ nop -/* 017C28 80017028 AC580004 */ sw $t8, 4($v0) -/* 017C2C 8001702C E4600008 */ swc1 $f0, 8($v1) -/* 017C30 80017030 AC440008 */ sw $a0, 8($v0) -.L80017034: -/* 017C34 80017034 24630008 */ addiu $v1, $v1, 8 -/* 017C38 80017038 1466FFE1 */ bne $v1, $a2, .L80016FC0 -/* 017C3C 8001703C 24A50008 */ addiu $a1, $a1, 8 -.L80017040: -/* 017C40 80017040 2631FFFF */ addiu $s1, $s1, -1 -/* 017C44 80017044 1620FFC6 */ bnez $s1, .L80016F60 -/* 017C48 80017048 00000000 */ nop -.L8001704C: -/* 017C4C 8001704C 8FBF0054 */ lw $ra, 0x54($sp) -.L80017050: -/* 017C50 80017050 02801025 */ move $v0, $s4 -/* 017C54 80017054 8FB40044 */ lw $s4, 0x44($sp) -/* 017C58 80017058 C7B50010 */ lwc1 $f21, 0x10($sp) -/* 017C5C 8001705C C7B40014 */ lwc1 $f20, 0x14($sp) -/* 017C60 80017060 C7B70018 */ lwc1 $f23, 0x18($sp) -/* 017C64 80017064 C7B6001C */ lwc1 $f22, 0x1c($sp) -/* 017C68 80017068 C7B90020 */ lwc1 $f25, 0x20($sp) -/* 017C6C 8001706C C7B80024 */ lwc1 $f24, 0x24($sp) -/* 017C70 80017070 C7BB0028 */ lwc1 $f27, 0x28($sp) -/* 017C74 80017074 C7BA002C */ lwc1 $f26, 0x2c($sp) -/* 017C78 80017078 8FB00034 */ lw $s0, 0x34($sp) -/* 017C7C 8001707C 8FB10038 */ lw $s1, 0x38($sp) -/* 017C80 80017080 8FB2003C */ lw $s2, 0x3c($sp) -/* 017C84 80017084 8FB30040 */ lw $s3, 0x40($sp) -/* 017C88 80017088 8FB50048 */ lw $s5, 0x48($sp) -/* 017C8C 8001708C 8FB6004C */ lw $s6, 0x4c($sp) -/* 017C90 80017090 8FB70050 */ lw $s7, 0x50($sp) -/* 017C94 80017094 03E00008 */ jr $ra -/* 017C98 80017098 27BD00B8 */ addiu $sp, $sp, 0xb8 - -glabel func_8001709C -/* 017C9C 8001709C 27BDFF70 */ addiu $sp, $sp, -0x90 -/* 017CA0 800170A0 AFBF001C */ sw $ra, 0x1c($sp) -/* 017CA4 800170A4 AFB00018 */ sw $s0, 0x18($sp) -/* 017CA8 800170A8 8C90005C */ lw $s0, 0x5c($a0) -/* 017CAC 800170AC 00803825 */ move $a3, $a0 -/* 017CB0 800170B0 920E0104 */ lbu $t6, 0x104($s0) -/* 017CB4 800170B4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 017CB8 800170B8 25CF0001 */ addiu $t7, $t6, 1 -/* 017CBC 800170BC 31F80001 */ andi $t8, $t7, 1 -/* 017CC0 800170C0 A2180104 */ sb $t8, 0x104($s0) -/* 017CC4 800170C4 84EA0000 */ lh $t2, ($a3) -/* 017CC8 800170C8 44812000 */ mtc1 $at, $f4 -/* 017CCC 800170CC 000A5823 */ negu $t3, $t2 -/* 017CD0 800170D0 A7AB0078 */ sh $t3, 0x78($sp) -/* 017CD4 800170D4 84EC0002 */ lh $t4, 2($a3) -/* 017CD8 800170D8 330800FF */ andi $t0, $t8, 0xff -/* 017CDC 800170DC 000C6823 */ negu $t5, $t4 -/* 017CE0 800170E0 A7AD007A */ sh $t5, 0x7a($sp) -/* 017CE4 800170E4 84EE0004 */ lh $t6, 4($a3) -/* 017CE8 800170E8 E7A40080 */ swc1 $f4, 0x80($sp) -/* 017CEC 800170EC 000E7823 */ negu $t7, $t6 -/* 017CF0 800170F0 A7AF007C */ sh $t7, 0x7c($sp) -/* 017CF4 800170F4 C4E6000C */ lwc1 $f6, 0xc($a3) -/* 017CF8 800170F8 00084980 */ sll $t1, $t0, 6 -/* 017CFC 800170FC 46003207 */ neg.s $f8, $f6 -/* 017D00 80017100 E7A80084 */ swc1 $f8, 0x84($sp) -/* 017D04 80017104 C4EA0010 */ lwc1 $f10, 0x10($a3) -/* 017D08 80017108 02092021 */ addu $a0, $s0, $t1 -/* 017D0C 8001710C 46005407 */ neg.s $f16, $f10 -/* 017D10 80017110 E7B00088 */ swc1 $f16, 0x88($sp) -/* 017D14 80017114 C4F20014 */ lwc1 $f18, 0x14($a3) -/* 017D18 80017118 AFA70090 */ sw $a3, 0x90($sp) -/* 017D1C 8001711C 46009107 */ neg.s $f4, $f18 -/* 017D20 80017120 E7A4008C */ swc1 $f4, 0x8c($sp) -/* 017D24 80017124 AFA4006C */ sw $a0, 0x6c($sp) -/* 017D28 80017128 0C01BF9D */ jal func_8006FE74 -/* 017D2C 8001712C 27A50078 */ addiu $a1, $sp, 0x78 -/* 017D30 80017130 8FA70090 */ lw $a3, 0x90($sp) -/* 017D34 80017134 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 017D38 80017138 C4E60008 */ lwc1 $f6, 8($a3) -/* 017D3C 8001713C 44816800 */ mtc1 $at, $f13 -/* 017D40 80017140 44806000 */ mtc1 $zero, $f12 -/* 017D44 80017144 46003221 */ cvt.d.s $f8, $f6 -/* 017D48 80017148 00000000 */ nop -/* 017D4C 8001714C 46286283 */ div.d $f10, $f12, $f8 -/* 017D50 80017150 8FA4006C */ lw $a0, 0x6c($sp) -/* 017D54 80017154 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 017D58 80017158 44800000 */ mtc1 $zero, $f0 -/* 017D5C 8001715C 44818000 */ mtc1 $at, $f16 -/* 017D60 80017160 27A2002C */ addiu $v0, $sp, 0x2c -/* 017D64 80017164 27A3006C */ addiu $v1, $sp, 0x6c -/* 017D68 80017168 27A5002C */ addiu $a1, $sp, 0x2c -/* 017D6C 8001716C 00803025 */ move $a2, $a0 -/* 017D70 80017170 462050A0 */ cvt.s.d $f2, $f10 -.L80017174: -/* 017D74 80017174 24420010 */ addiu $v0, $v0, 0x10 -/* 017D78 80017178 E440FFF0 */ swc1 $f0, -0x10($v0) -/* 017D7C 8001717C E440FFF4 */ swc1 $f0, -0xc($v0) -/* 017D80 80017180 E440FFF8 */ swc1 $f0, -8($v0) -/* 017D84 80017184 1443FFFB */ bne $v0, $v1, .L80017174 -/* 017D88 80017188 E440FFFC */ swc1 $f0, -4($v0) -/* 017D8C 8001718C E7A2002C */ swc1 $f2, 0x2c($sp) -/* 017D90 80017190 E7A20040 */ swc1 $f2, 0x40($sp) -/* 017D94 80017194 E7A20054 */ swc1 $f2, 0x54($sp) -/* 017D98 80017198 E7B00068 */ swc1 $f16, 0x68($sp) -/* 017D9C 8001719C AFA70090 */ sw $a3, 0x90($sp) -/* 017DA0 800171A0 0C01BDDA */ jal func_8006F768 -/* 017DA4 800171A4 E7A20070 */ swc1 $f2, 0x70($sp) -/* 017DA8 800171A8 C7A20070 */ lwc1 $f2, 0x70($sp) -/* 017DAC 800171AC 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 017DB0 800171B0 44816800 */ mtc1 $at, $f13 -/* 017DB4 800171B4 44806000 */ mtc1 $zero, $f12 -/* 017DB8 800171B8 460014A1 */ cvt.d.s $f18, $f2 -/* 017DBC 800171BC 00000000 */ nop -/* 017DC0 800171C0 46326103 */ div.d $f4, $f12, $f18 -/* 017DC4 800171C4 8FA70090 */ lw $a3, 0x90($sp) -/* 017DC8 800171C8 27A50078 */ addiu $a1, $sp, 0x78 -/* 017DCC 800171CC 84F80000 */ lh $t8, ($a3) -/* 017DD0 800171D0 00000000 */ nop -/* 017DD4 800171D4 A7B80078 */ sh $t8, 0x78($sp) -/* 017DD8 800171D8 84F90002 */ lh $t9, 2($a3) -/* 017DDC 800171DC 00000000 */ nop -/* 017DE0 800171E0 A7B9007A */ sh $t9, 0x7a($sp) -/* 017DE4 800171E4 84E80004 */ lh $t0, 4($a3) -/* 017DE8 800171E8 00000000 */ nop -/* 017DEC 800171EC A7A8007C */ sh $t0, 0x7c($sp) -/* 017DF0 800171F0 462021A0 */ cvt.s.d $f6, $f4 -/* 017DF4 800171F4 E7A60080 */ swc1 $f6, 0x80($sp) -/* 017DF8 800171F8 C4E8000C */ lwc1 $f8, 0xc($a3) -/* 017DFC 800171FC 00000000 */ nop -/* 017E00 80017200 E7A80084 */ swc1 $f8, 0x84($sp) -/* 017E04 80017204 C4EA0010 */ lwc1 $f10, 0x10($a3) -/* 017E08 80017208 00000000 */ nop -/* 017E0C 8001720C E7AA0088 */ swc1 $f10, 0x88($sp) -/* 017E10 80017210 C4F00014 */ lwc1 $f16, 0x14($a3) -/* 017E14 80017214 00000000 */ nop -/* 017E18 80017218 E7B0008C */ swc1 $f16, 0x8c($sp) -/* 017E1C 8001721C 92090104 */ lbu $t1, 0x104($s0) -/* 017E20 80017220 00000000 */ nop -/* 017E24 80017224 252B0002 */ addiu $t3, $t1, 2 -/* 017E28 80017228 000B6180 */ sll $t4, $t3, 6 -/* 017E2C 8001722C 0C01BF0C */ jal func_8006FC30 -/* 017E30 80017230 020C2021 */ addu $a0, $s0, $t4 -/* 017E34 80017234 AE000100 */ sw $zero, 0x100($s0) -/* 017E38 80017238 8FBF001C */ lw $ra, 0x1c($sp) -/* 017E3C 8001723C 8FB00018 */ lw $s0, 0x18($sp) -/* 017E40 80017240 03E00008 */ jr $ra -/* 017E44 80017244 27BD0090 */ addiu $sp, $sp, 0x90 - -glabel func_80017248 -/* 017E48 80017248 27BDFE88 */ addiu $sp, $sp, -0x178 -/* 017E4C 8001724C AFB50054 */ sw $s5, 0x54($sp) -/* 017E50 80017250 3C158012 */ lui $s5, %hi(D_8011AE70) # $s5, 0x8012 -/* 017E54 80017254 26B5AE70 */ addiu $s5, %lo(D_8011AE70) # addiu $s5, $s5, -0x5190 -/* 017E58 80017258 8EAE0000 */ lw $t6, ($s5) -/* 017E5C 8001725C AFBF0064 */ sw $ra, 0x64($sp) -/* 017E60 80017260 AFBE0060 */ sw $fp, 0x60($sp) -/* 017E64 80017264 AFB7005C */ sw $s7, 0x5c($sp) -/* 017E68 80017268 AFB60058 */ sw $s6, 0x58($sp) -/* 017E6C 8001726C AFB40050 */ sw $s4, 0x50($sp) -/* 017E70 80017270 AFB3004C */ sw $s3, 0x4c($sp) -/* 017E74 80017274 AFB20048 */ sw $s2, 0x48($sp) -/* 017E78 80017278 AFB10044 */ sw $s1, 0x44($sp) -/* 017E7C 8001727C AFB00040 */ sw $s0, 0x40($sp) -/* 017E80 80017280 E7B50038 */ swc1 $f21, 0x38($sp) -/* 017E84 80017284 E7B4003C */ swc1 $f20, 0x3c($sp) -/* 017E88 80017288 AFA5017C */ sw $a1, 0x17c($sp) -/* 017E8C 8001728C AFA70184 */ sw $a3, 0x184($sp) -/* 017E90 80017290 AFA00160 */ sw $zero, 0x160($sp) -/* 017E94 80017294 AFA00170 */ sw $zero, 0x170($sp) -/* 017E98 80017298 19C0007B */ blez $t6, .L80017488 -/* 017E9C 8001729C AFA60180 */ sw $a2, 0x180($sp) -/* 017EA0 800172A0 00009025 */ move $s2, $zero -/* 017EA4 800172A4 AFA40178 */ sw $a0, 0x178($sp) -/* 017EA8 800172A8 AFA60180 */ sw $a2, 0x180($sp) -/* 017EAC 800172AC 27B4008C */ addiu $s4, $sp, 0x8c -/* 017EB0 800172B0 27B300B4 */ addiu $s3, $sp, 0xb4 -/* 017EB4 800172B4 27B000B8 */ addiu $s0, $sp, 0xb8 -.L800172B8: -/* 017EB8 800172B8 3C0F8012 */ lui $t7, %hi(D_8011AE6C) # $t7, 0x8012 -/* 017EBC 800172BC 8DEFAE6C */ lw $t7, %lo(D_8011AE6C)($t7) -/* 017EC0 800172C0 8FA40178 */ lw $a0, 0x178($sp) -/* 017EC4 800172C4 01F2C021 */ addu $t8, $t7, $s2 -/* 017EC8 800172C8 8F020000 */ lw $v0, ($t8) -/* 017ECC 800172CC 00000000 */ nop -/* 017ED0 800172D0 804A003A */ lb $t2, 0x3a($v0) -/* 017ED4 800172D4 8C590068 */ lw $t9, 0x68($v0) -/* 017ED8 800172D8 000A5880 */ sll $t3, $t2, 2 -/* 017EDC 800172DC 032B6021 */ addu $t4, $t9, $t3 -/* 017EE0 800172E0 8D830000 */ lw $v1, ($t4) -/* 017EE4 800172E4 00000000 */ nop -/* 017EE8 800172E8 8C6D0000 */ lw $t5, ($v1) -/* 017EEC 800172EC 00000000 */ nop -/* 017EF0 800172F0 AFAD0154 */ sw $t5, 0x154($sp) -/* 017EF4 800172F4 C486000C */ lwc1 $f6, 0xc($a0) -/* 017EF8 800172F8 C444000C */ lwc1 $f4, 0xc($v0) -/* 017EFC 800172FC C48A0010 */ lwc1 $f10, 0x10($a0) -/* 017F00 80017300 46062381 */ sub.s $f14, $f4, $f6 -/* 017F04 80017304 C4480010 */ lwc1 $f8, 0x10($v0) -/* 017F08 80017308 460E7102 */ mul.s $f4, $f14, $f14 -/* 017F0C 8001730C 460A4001 */ sub.s $f0, $f8, $f10 -/* 017F10 80017310 C4920014 */ lwc1 $f18, 0x14($a0) -/* 017F14 80017314 C4500014 */ lwc1 $f16, 0x14($v0) -/* 017F18 80017318 46000182 */ mul.s $f6, $f0, $f0 -/* 017F1C 8001731C 46128081 */ sub.s $f2, $f16, $f18 -/* 017F20 80017320 AFA20158 */ sw $v0, 0x158($sp) -/* 017F24 80017324 46021282 */ mul.s $f10, $f2, $f2 -/* 017F28 80017328 46062200 */ add.s $f8, $f4, $f6 -/* 017F2C 8001732C 0C0326B4 */ jal sqrtf -/* 017F30 80017330 460A4300 */ add.s $f12, $f8, $f10 -/* 017F34 80017334 444EF800 */ cfc1 $t6, $31 -/* 017F38 80017338 8FA40158 */ lw $a0, 0x158($sp) -/* 017F3C 8001733C 35C10003 */ ori $at, $t6, 3 -/* 017F40 80017340 38210002 */ xori $at, $at, 2 -/* 017F44 80017344 44C1F800 */ ctc1 $at, $31 -/* 017F48 80017348 8C83004C */ lw $v1, 0x4c($a0) -/* 017F4C 8001734C 46000424 */ cvt.w.s $f16, $f0 -/* 017F50 80017350 846F0014 */ lh $t7, 0x14($v1) -/* 017F54 80017354 44028000 */ mfc1 $v0, $f16 -/* 017F58 80017358 44CEF800 */ ctc1 $t6, $31 -/* 017F5C 8001735C 31F80020 */ andi $t8, $t7, 0x20 -/* 017F60 80017360 13000002 */ beqz $t8, .L8001736C -/* 017F64 80017364 0040F025 */ move $fp, $v0 -/* 017F68 80017368 0002F0C3 */ sra $fp, $v0, 3 -.L8001736C: -/* 017F6C 8001736C 2BC10100 */ slti $at, $fp, 0x100 -/* 017F70 80017370 14200002 */ bnez $at, .L8001737C -/* 017F74 80017374 26520004 */ addiu $s2, $s2, 4 -/* 017F78 80017378 241E00FF */ li $fp, 255 -.L8001737C: -/* 017F7C 8001737C 906A0013 */ lbu $t2, 0x13($v1) -/* 017F80 80017380 00000000 */ nop -/* 017F84 80017384 03CA082A */ slt $at, $fp, $t2 -/* 017F88 80017388 10200007 */ beqz $at, .L800173A8 -/* 017F8C 8001738C 8FAC0154 */ lw $t4, 0x154($sp) -/* 017F90 80017390 A07E0013 */ sb $fp, 0x13($v1) -/* 017F94 80017394 8C8B004C */ lw $t3, 0x4c($a0) -/* 017F98 80017398 8FB90178 */ lw $t9, 0x178($sp) -/* 017F9C 8001739C 00000000 */ nop -/* 017FA0 800173A0 AD790000 */ sw $t9, ($t3) -/* 017FA4 800173A4 8FAC0154 */ lw $t4, 0x154($sp) -.L800173A8: -/* 017FA8 800173A8 C4880008 */ lwc1 $f8, 8($a0) -/* 017FAC 800173AC C586003C */ lwc1 $f6, 0x3c($t4) -/* 017FB0 800173B0 3C0141C8 */ li $at, 0x41C80000 # 25.000000 -/* 017FB4 800173B4 46083282 */ mul.s $f10, $f6, $f8 -/* 017FB8 800173B8 44819000 */ mtc1 $at, $f18 -/* 017FBC 800173BC 8FA50160 */ lw $a1, 0x160($sp) -/* 017FC0 800173C0 8FAD0170 */ lw $t5, 0x170($sp) -/* 017FC4 800173C4 46120101 */ sub.s $f4, $f0, $f18 -/* 017FC8 800173C8 00051080 */ sll $v0, $a1, 2 -/* 017FCC 800173CC 460A203C */ c.lt.s $f4, $f10 -/* 017FD0 800173D0 02627021 */ addu $t6, $s3, $v0 -/* 017FD4 800173D4 45000022 */ bc1f .L80017460 -/* 017FD8 800173D8 02821821 */ addu $v1, $s4, $v0 -/* 017FDC 800173DC ADCD0000 */ sw $t5, ($t6) -/* 017FE0 800173E0 E4600000 */ swc1 $f0, ($v1) -/* 017FE4 800173E4 18A0001C */ blez $a1, .L80017458 -/* 017FE8 800173E8 00A08825 */ move $s1, $a1 -/* 017FEC 800173EC C470FFFC */ lwc1 $f16, -4($v1) -/* 017FF0 800173F0 C4720000 */ lwc1 $f18, ($v1) -/* 017FF4 800173F4 00112080 */ sll $a0, $s1, 2 -/* 017FF8 800173F8 4612803C */ c.lt.s $f16, $f18 -/* 017FFC 800173FC 02841821 */ addu $v1, $s4, $a0 -/* 018000 80017400 45000015 */ bc1f .L80017458 -/* 018004 80017404 00000000 */ nop -/* 018008 80017408 C460FFFC */ lwc1 $f0, -4($v1) -/* 01800C 8001740C C4620000 */ lwc1 $f2, ($v1) -/* 018010 80017410 02641021 */ addu $v0, $s3, $a0 -.L80017414: -/* 018014 80017414 8C480000 */ lw $t0, ($v0) -/* 018018 80017418 8C4FFFFC */ lw $t7, -4($v0) -/* 01801C 8001741C 2442FFFC */ addiu $v0, $v0, -4 -/* 018020 80017420 0050082B */ sltu $at, $v0, $s0 -/* 018024 80017424 E4600000 */ swc1 $f0, ($v1) -/* 018028 80017428 E462FFFC */ swc1 $f2, -4($v1) -/* 01802C 8001742C 2463FFFC */ addiu $v1, $v1, -4 -/* 018030 80017430 AC480000 */ sw $t0, ($v0) -/* 018034 80017434 14200008 */ bnez $at, .L80017458 -/* 018038 80017438 AC4F0004 */ sw $t7, 4($v0) -/* 01803C 8001743C C460FFFC */ lwc1 $f0, -4($v1) -/* 018040 80017440 C4620000 */ lwc1 $f2, ($v1) -/* 018044 80017444 00000000 */ nop -/* 018048 80017448 4602003C */ c.lt.s $f0, $f2 -/* 01804C 8001744C 00000000 */ nop -/* 018050 80017450 4501FFF0 */ bc1t .L80017414 -/* 018054 80017454 00000000 */ nop -.L80017458: -/* 018058 80017458 24A50001 */ addiu $a1, $a1, 1 -/* 01805C 8001745C AFA50160 */ sw $a1, 0x160($sp) -.L80017460: -/* 018060 80017460 8FB80170 */ lw $t8, 0x170($sp) -/* 018064 80017464 8EB90000 */ lw $t9, ($s5) -/* 018068 80017468 270A0001 */ addiu $t2, $t8, 1 -/* 01806C 8001746C 8FA50160 */ lw $a1, 0x160($sp) -/* 018070 80017470 0159082A */ slt $at, $t2, $t9 -/* 018074 80017474 1420FF90 */ bnez $at, .L800172B8 -/* 018078 80017478 AFAA0170 */ sw $t2, 0x170($sp) -/* 01807C 8001747C 8FA40178 */ lw $a0, 0x178($sp) -/* 018080 80017480 AFA00170 */ sw $zero, 0x170($sp) -/* 018084 80017484 AFA50160 */ sw $a1, 0x160($sp) -.L80017488: -/* 018088 80017488 8FAB0160 */ lw $t3, 0x160($sp) -/* 01808C 8001748C 8FA60180 */ lw $a2, 0x180($sp) -/* 018090 80017490 196000F8 */ blez $t3, .L80017874 -/* 018094 80017494 00003825 */ move $a3, $zero -/* 018098 80017498 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 01809C 8001749C 27A900B4 */ addiu $t1, $sp, 0xb4 -/* 0180A0 800174A0 4481A800 */ mtc1 $at, $f21 -/* 0180A4 800174A4 4480A000 */ mtc1 $zero, $f20 -/* 0180A8 800174A8 AFA90088 */ sw $t1, 0x88($sp) -/* 0180AC 800174AC AFA40178 */ sw $a0, 0x178($sp) -/* 0180B0 800174B0 AFA60180 */ sw $a2, 0x180($sp) -/* 0180B4 800174B4 AFA00168 */ sw $zero, 0x168($sp) -.L800174B8: -/* 0180B8 800174B8 8FA90088 */ lw $t1, 0x88($sp) -/* 0180BC 800174BC 3C0C8012 */ lui $t4, %hi(D_8011AE6C) # $t4, 0x8012 -/* 0180C0 800174C0 8D2D0000 */ lw $t5, ($t1) -/* 0180C4 800174C4 8D8CAE6C */ lw $t4, %lo(D_8011AE6C)($t4) -/* 0180C8 800174C8 000D7080 */ sll $t6, $t5, 2 -/* 0180CC 800174CC 018E7821 */ addu $t7, $t4, $t6 -/* 0180D0 800174D0 8DE50000 */ lw $a1, ($t7) -/* 0180D4 800174D4 8FA40178 */ lw $a0, 0x178($sp) -/* 0180D8 800174D8 80AA003A */ lb $t2, 0x3a($a1) -/* 0180DC 800174DC 8CB80068 */ lw $t8, 0x68($a1) -/* 0180E0 800174E0 000AC880 */ sll $t9, $t2, 2 -/* 0180E4 800174E4 03195821 */ addu $t3, $t8, $t9 -/* 0180E8 800174E8 8D630000 */ lw $v1, ($t3) -/* 0180EC 800174EC 24080001 */ li $t0, 1 -/* 0180F0 800174F0 8C6D0000 */ lw $t5, ($v1) -/* 0180F4 800174F4 00008825 */ move $s1, $zero -/* 0180F8 800174F8 AFAD0154 */ sw $t5, 0x154($sp) -/* 0180FC 800174FC 8CA2005C */ lw $v0, 0x5c($a1) -/* 018100 80017500 0000F025 */ move $fp, $zero -/* 018104 80017504 904C0104 */ lbu $t4, 0x104($v0) -/* 018108 80017508 AFA8016C */ sw $t0, 0x16c($sp) -/* 01810C 8001750C 258E0001 */ addiu $t6, $t4, 1 -/* 018110 80017510 31CA0001 */ andi $t2, $t6, 1 -/* 018114 80017514 000AC180 */ sll $t8, $t2, 6 -/* 018118 80017518 0058C821 */ addu $t9, $v0, $t8 -/* 01811C 8001751C AFB900DC */ sw $t9, 0xdc($sp) -/* 018120 80017520 0C005E43 */ jal func_8001790C -/* 018124 80017524 AFA50158 */ sw $a1, 0x158($sp) -/* 018128 80017528 8FA8016C */ lw $t0, 0x16c($sp) -/* 01812C 8001752C 1040002C */ beqz $v0, .L800175E0 -/* 018130 80017530 AFA2014C */ sw $v0, 0x14c($sp) -/* 018134 80017534 8FAB017C */ lw $t3, 0x17c($sp) -/* 018138 80017538 27B2013C */ addiu $s2, $sp, 0x13c -/* 01813C 8001753C 19600041 */ blez $t3, .L80017644 -/* 018140 80017540 00408025 */ move $s0, $v0 -/* 018144 80017544 8FB10188 */ lw $s1, 0x188($sp) -/* 018148 80017548 27B3012C */ addiu $s3, $sp, 0x12c -/* 01814C 8001754C 27B4011C */ addiu $s4, $sp, 0x11c -/* 018150 80017550 27B50100 */ addiu $s5, $sp, 0x100 -/* 018154 80017554 27B600F0 */ addiu $s6, $sp, 0xf0 -/* 018158 80017558 27B700E0 */ addiu $s7, $sp, 0xe0 -.L8001755C: -/* 01815C 8001755C C606000C */ lwc1 $f6, 0xc($s0) -/* 018160 80017560 00000000 */ nop -/* 018164 80017564 E6460000 */ swc1 $f6, ($s2) -/* 018168 80017568 C6080010 */ lwc1 $f8, 0x10($s0) -/* 01816C 8001756C 00000000 */ nop -/* 018170 80017570 E6680000 */ swc1 $f8, ($s3) -/* 018174 80017574 C6040014 */ lwc1 $f4, 0x14($s0) -/* 018178 80017578 00000000 */ nop -/* 01817C 8001757C E6840000 */ swc1 $f4, ($s4) -/* 018180 80017580 8E270008 */ lw $a3, 8($s1) -/* 018184 80017584 8E260004 */ lw $a2, 4($s1) -/* 018188 80017588 8E250000 */ lw $a1, ($s1) -/* 01818C 8001758C 8FA400DC */ lw $a0, 0xdc($sp) -/* 018190 80017590 AFA8016C */ sw $t0, 0x16c($sp) -/* 018194 80017594 AFB70018 */ sw $s7, 0x18($sp) -/* 018198 80017598 AFB60014 */ sw $s6, 0x14($sp) -/* 01819C 8001759C 0C01BD93 */ jal func_8006F64C -/* 0181A0 800175A0 AFB50010 */ sw $s5, 0x10($sp) -/* 0181A4 800175A4 8FAD017C */ lw $t5, 0x17c($sp) -/* 0181A8 800175A8 27DE0001 */ addiu $fp, $fp, 1 -/* 0181AC 800175AC 8FA8016C */ lw $t0, 0x16c($sp) -/* 0181B0 800175B0 26520004 */ addiu $s2, $s2, 4 -/* 0181B4 800175B4 26730004 */ addiu $s3, $s3, 4 -/* 0181B8 800175B8 26940004 */ addiu $s4, $s4, 4 -/* 0181BC 800175BC 26B50004 */ addiu $s5, $s5, 4 -/* 0181C0 800175C0 26D60004 */ addiu $s6, $s6, 4 -/* 0181C4 800175C4 26F70004 */ addiu $s7, $s7, 4 -/* 0181C8 800175C8 2610000C */ addiu $s0, $s0, 0xc -/* 0181CC 800175CC 17CDFFE3 */ bne $fp, $t5, .L8001755C -/* 0181D0 800175D0 2631000C */ addiu $s1, $s1, 0xc -/* 0181D4 800175D4 00008825 */ move $s1, $zero -/* 0181D8 800175D8 1000001A */ b .L80017644 -/* 0181DC 800175DC 0000F025 */ move $fp, $zero -.L800175E0: -/* 0181E0 800175E0 8FAC017C */ lw $t4, 0x17c($sp) -/* 0181E4 800175E4 27B2013C */ addiu $s2, $sp, 0x13c -/* 0181E8 800175E8 19800016 */ blez $t4, .L80017644 -/* 0181EC 800175EC 27B3012C */ addiu $s3, $sp, 0x12c -/* 0181F0 800175F0 8FB00184 */ lw $s0, 0x184($sp) -/* 0181F4 800175F4 27B4011C */ addiu $s4, $sp, 0x11c -.L800175F8: -/* 0181F8 800175F8 8E050000 */ lw $a1, ($s0) -/* 0181FC 800175FC 8E060004 */ lw $a2, 4($s0) -/* 018200 80017600 8E070008 */ lw $a3, 8($s0) -/* 018204 80017604 8FA400DC */ lw $a0, 0xdc($sp) -/* 018208 80017608 AFA8016C */ sw $t0, 0x16c($sp) -/* 01820C 8001760C AFB40018 */ sw $s4, 0x18($sp) -/* 018210 80017610 AFB30014 */ sw $s3, 0x14($sp) -/* 018214 80017614 0C01BD93 */ jal func_8006F64C -/* 018218 80017618 AFB20010 */ sw $s2, 0x10($sp) -/* 01821C 8001761C 8FAE017C */ lw $t6, 0x17c($sp) -/* 018220 80017620 27DE0001 */ addiu $fp, $fp, 1 -/* 018224 80017624 8FA8016C */ lw $t0, 0x16c($sp) -/* 018228 80017628 26520004 */ addiu $s2, $s2, 4 -/* 01822C 8001762C 26730004 */ addiu $s3, $s3, 4 -/* 018230 80017630 26940004 */ addiu $s4, $s4, 4 -/* 018234 80017634 17CEFFF0 */ bne $fp, $t6, .L800175F8 -/* 018238 80017638 2610000C */ addiu $s0, $s0, 0xc -/* 01823C 8001763C 00008825 */ move $s1, $zero -/* 018240 80017640 0000F025 */ move $fp, $zero -.L80017644: -/* 018244 80017644 8FAF017C */ lw $t7, 0x17c($sp) -/* 018248 80017648 27B50100 */ addiu $s5, $sp, 0x100 -/* 01824C 8001764C 19E00015 */ blez $t7, .L800176A4 -/* 018250 80017650 27B600F0 */ addiu $s6, $sp, 0xf0 -/* 018254 80017654 8FB10188 */ lw $s1, 0x188($sp) -/* 018258 80017658 27B700E0 */ addiu $s7, $sp, 0xe0 -.L8001765C: -/* 01825C 8001765C 8E250000 */ lw $a1, ($s1) -/* 018260 80017660 8E260004 */ lw $a2, 4($s1) -/* 018264 80017664 8E270008 */ lw $a3, 8($s1) -/* 018268 80017668 8FA400DC */ lw $a0, 0xdc($sp) -/* 01826C 8001766C AFA8016C */ sw $t0, 0x16c($sp) -/* 018270 80017670 AFB70018 */ sw $s7, 0x18($sp) -/* 018274 80017674 AFB60014 */ sw $s6, 0x14($sp) -/* 018278 80017678 0C01BD93 */ jal func_8006F64C -/* 01827C 8001767C AFB50010 */ sw $s5, 0x10($sp) -/* 018280 80017680 8FAA017C */ lw $t2, 0x17c($sp) -/* 018284 80017684 27DE0001 */ addiu $fp, $fp, 1 -/* 018288 80017688 8FA8016C */ lw $t0, 0x16c($sp) -/* 01828C 8001768C 26B50004 */ addiu $s5, $s5, 4 -/* 018290 80017690 26D60004 */ addiu $s6, $s6, 4 -/* 018294 80017694 26F70004 */ addiu $s7, $s7, 4 -/* 018298 80017698 17CAFFF0 */ bne $fp, $t2, .L8001765C -/* 01829C 8001769C 2631000C */ addiu $s1, $s1, 0xc -/* 0182A0 800176A0 00008825 */ move $s1, $zero -.L800176A4: -/* 0182A4 800176A4 8FA60180 */ lw $a2, 0x180($sp) -/* 0182A8 800176A8 27B8012C */ addiu $t8, $sp, 0x12c -/* 0182AC 800176AC ACC00000 */ sw $zero, ($a2) -/* 0182B0 800176B0 8FAF0190 */ lw $t7, 0x190($sp) -/* 0182B4 800176B4 8FAE018C */ lw $t6, 0x18c($sp) -/* 0182B8 800176B8 8FAA0158 */ lw $t2, 0x158($sp) -/* 0182BC 800176BC 27B9011C */ addiu $t9, $sp, 0x11c -/* 0182C0 800176C0 27AB0100 */ addiu $t3, $sp, 0x100 -/* 0182C4 800176C4 27AD00F0 */ addiu $t5, $sp, 0xf0 -/* 0182C8 800176C8 27AC00E0 */ addiu $t4, $sp, 0xe0 -/* 0182CC 800176CC AFAC0020 */ sw $t4, 0x20($sp) -/* 0182D0 800176D0 AFAD001C */ sw $t5, 0x1c($sp) -/* 0182D4 800176D4 AFAB0018 */ sw $t3, 0x18($sp) -/* 0182D8 800176D8 AFB90014 */ sw $t9, 0x14($sp) -/* 0182DC 800176DC AFB80010 */ sw $t8, 0x10($sp) -/* 0182E0 800176E0 AFAF0028 */ sw $t7, 0x28($sp) -/* 0182E4 800176E4 AFAE0024 */ sw $t6, 0x24($sp) -/* 0182E8 800176E8 C54A0008 */ lwc1 $f10, 8($t2) -/* 0182EC 800176EC 8FA5017C */ lw $a1, 0x17c($sp) -/* 0182F0 800176F0 46005421 */ cvt.d.s $f16, $f10 -/* 0182F4 800176F4 00000000 */ nop -/* 0182F8 800176F8 4630A483 */ div.d $f18, $f20, $f16 -/* 0182FC 800176FC 8FA40154 */ lw $a0, 0x154($sp) -/* 018300 80017700 AFA8016C */ sw $t0, 0x16c($sp) -/* 018304 80017704 27A7013C */ addiu $a3, $sp, 0x13c -/* 018308 80017708 462091A0 */ cvt.s.d $f6, $f18 -/* 01830C 8001770C 0C005E86 */ jal func_80017A18 -/* 018310 80017710 E7A6002C */ swc1 $f6, 0x2c($sp) -/* 018314 80017714 8FA8016C */ lw $t0, 0x16c($sp) -/* 018318 80017718 10400006 */ beqz $v0, .L80017734 -/* 01831C 8001771C 00409025 */ move $s2, $v0 -/* 018320 80017720 8FA50158 */ lw $a1, 0x158($sp) -/* 018324 80017724 8FB80178 */ lw $t8, 0x178($sp) -/* 018328 80017728 8CB9005C */ lw $t9, 0x5c($a1) -/* 01832C 8001772C 00000000 */ nop -/* 018330 80017730 AF380100 */ sw $t8, 0x100($t9) -.L80017734: -/* 018334 80017734 3C0B8012 */ lui $t3, %hi(D_8011AD24) # $t3, 0x8012 -/* 018338 80017738 816BAD24 */ lb $t3, %lo(D_8011AD24)($t3) -/* 01833C 8001773C 8FA50158 */ lw $a1, 0x158($sp) -/* 018340 80017740 15600007 */ bnez $t3, .L80017760 -/* 018344 80017744 0000F025 */ move $fp, $zero -/* 018348 80017748 8FA40178 */ lw $a0, 0x178($sp) -/* 01834C 8001774C 0C005E5E */ jal func_80017978 -/* 018350 80017750 AFA8016C */ sw $t0, 0x16c($sp) -/* 018354 80017754 8FA8016C */ lw $t0, 0x16c($sp) -/* 018358 80017758 8FA50158 */ lw $a1, 0x158($sp) -/* 01835C 8001775C AFA2014C */ sw $v0, 0x14c($sp) -.L80017760: -/* 018360 80017760 8CA2005C */ lw $v0, 0x5c($a1) -/* 018364 80017764 8FB8017C */ lw $t8, 0x17c($sp) -/* 018368 80017768 904D0104 */ lbu $t5, 0x104($v0) -/* 01836C 8001776C 00000000 */ nop -/* 018370 80017770 25AE0002 */ addiu $t6, $t5, 2 -/* 018374 80017774 000E7980 */ sll $t7, $t6, 6 -/* 018378 80017778 004F5021 */ addu $t2, $v0, $t7 -/* 01837C 8001777C 1B000030 */ blez $t8, .L80017840 -/* 018380 80017780 AFAA00DC */ sw $t2, 0xdc($sp) -.L80017784: -/* 018384 80017784 8FB9014C */ lw $t9, 0x14c($sp) -/* 018388 80017788 00115880 */ sll $t3, $s1, 2 -/* 01838C 8001778C 1320000D */ beqz $t9, .L800177C4 -/* 018390 80017790 02487824 */ and $t7, $s2, $t0 -/* 018394 80017794 001E1080 */ sll $v0, $fp, 2 -/* 018398 80017798 03A26821 */ addu $t5, $sp, $v0 -/* 01839C 8001779C C5A80100 */ lwc1 $f8, 0x100($t5) -/* 0183A0 800177A0 032B8021 */ addu $s0, $t9, $t3 -/* 0183A4 800177A4 03A26021 */ addu $t4, $sp, $v0 -/* 0183A8 800177A8 E608000C */ swc1 $f8, 0xc($s0) -/* 0183AC 800177AC C58400F0 */ lwc1 $f4, 0xf0($t4) -/* 0183B0 800177B0 03A27021 */ addu $t6, $sp, $v0 -/* 0183B4 800177B4 E6040010 */ swc1 $f4, 0x10($s0) -/* 0183B8 800177B8 C5CA00E0 */ lwc1 $f10, 0xe0($t6) -/* 0183BC 800177BC 00000000 */ nop -/* 0183C0 800177C0 E60A0014 */ swc1 $f10, 0x14($s0) -.L800177C4: -/* 0183C4 800177C4 11E00018 */ beqz $t7, .L80017828 -/* 0183C8 800177C8 001E1080 */ sll $v0, $fp, 2 -/* 0183CC 800177CC 03A25021 */ addu $t2, $sp, $v0 -/* 0183D0 800177D0 03A2C021 */ addu $t8, $sp, $v0 -/* 0183D4 800177D4 03A2C821 */ addu $t9, $sp, $v0 -/* 0183D8 800177D8 8FA30188 */ lw $v1, 0x188($sp) -/* 0183DC 800177DC 8F2700E0 */ lw $a3, 0xe0($t9) -/* 0183E0 800177E0 8F0600F0 */ lw $a2, 0xf0($t8) -/* 0183E4 800177E4 8D450100 */ lw $a1, 0x100($t2) -/* 0183E8 800177E8 262A0002 */ addiu $t2, $s1, 2 -/* 0183EC 800177EC 262C0001 */ addiu $t4, $s1, 1 -/* 0183F0 800177F0 000C7080 */ sll $t6, $t4, 2 -/* 0183F4 800177F4 000AC080 */ sll $t8, $t2, 2 -/* 0183F8 800177F8 00115880 */ sll $t3, $s1, 2 -/* 0183FC 800177FC 8FA400DC */ lw $a0, 0xdc($sp) -/* 018400 80017800 01636821 */ addu $t5, $t3, $v1 -/* 018404 80017804 0303C821 */ addu $t9, $t8, $v1 -/* 018408 80017808 01C37821 */ addu $t7, $t6, $v1 -/* 01840C 8001780C AFAF0014 */ sw $t7, 0x14($sp) -/* 018410 80017810 AFB90018 */ sw $t9, 0x18($sp) -/* 018414 80017814 AFAD0010 */ sw $t5, 0x10($sp) -/* 018418 80017818 0C01BD93 */ jal func_8006F64C -/* 01841C 8001781C AFA8016C */ sw $t0, 0x16c($sp) -/* 018420 80017820 8FA8016C */ lw $t0, 0x16c($sp) -/* 018424 80017824 00000000 */ nop -.L80017828: -/* 018428 80017828 8FAD017C */ lw $t5, 0x17c($sp) -/* 01842C 8001782C 27DE0001 */ addiu $fp, $fp, 1 -/* 018430 80017830 00085840 */ sll $t3, $t0, 1 -/* 018434 80017834 01604025 */ move $t0, $t3 -/* 018438 80017838 17CDFFD2 */ bne $fp, $t5, .L80017784 -/* 01843C 8001783C 26310003 */ addiu $s1, $s1, 3 -.L80017840: -/* 018440 80017840 8FAC0168 */ lw $t4, 0x168($sp) -/* 018444 80017844 8FAF0170 */ lw $t7, 0x170($sp) -/* 018448 80017848 8FB80088 */ lw $t8, 0x88($sp) -/* 01844C 8001784C 8FAB0160 */ lw $t3, 0x160($sp) -/* 018450 80017850 01927025 */ or $t6, $t4, $s2 -/* 018454 80017854 25EA0001 */ addiu $t2, $t7, 1 -/* 018458 80017858 27190004 */ addiu $t9, $t8, 4 -/* 01845C 8001785C AFAE0168 */ sw $t6, 0x168($sp) -/* 018460 80017860 AFB90088 */ sw $t9, 0x88($sp) -/* 018464 80017864 154BFF14 */ bne $t2, $t3, .L800174B8 -/* 018468 80017868 AFAA0170 */ sw $t2, 0x170($sp) -/* 01846C 8001786C 8FA60180 */ lw $a2, 0x180($sp) -/* 018470 80017870 01C03825 */ move $a3, $t6 -.L80017874: -/* 018474 80017874 30ED0001 */ andi $t5, $a3, 1 -/* 018478 80017878 11A00003 */ beqz $t5, .L80017888 -/* 01847C 8001787C ACC00000 */ sw $zero, ($a2) -/* 018480 80017880 240F0001 */ li $t7, 1 -/* 018484 80017884 ACCF0000 */ sw $t7, ($a2) -.L80017888: -/* 018488 80017888 30F80002 */ andi $t8, $a3, 2 -/* 01848C 8001788C 13000005 */ beqz $t8, .L800178A4 -/* 018490 80017890 30EB0004 */ andi $t3, $a3, 4 -/* 018494 80017894 8CD90000 */ lw $t9, ($a2) -/* 018498 80017898 00000000 */ nop -/* 01849C 8001789C 272A0001 */ addiu $t2, $t9, 1 -/* 0184A0 800178A0 ACCA0000 */ sw $t2, ($a2) -.L800178A4: -/* 0184A4 800178A4 11600005 */ beqz $t3, .L800178BC -/* 0184A8 800178A8 30EC0008 */ andi $t4, $a3, 8 -/* 0184AC 800178AC 8CCE0000 */ lw $t6, ($a2) -/* 0184B0 800178B0 00000000 */ nop -/* 0184B4 800178B4 25CD0001 */ addiu $t5, $t6, 1 -/* 0184B8 800178B8 ACCD0000 */ sw $t5, ($a2) -.L800178BC: -/* 0184BC 800178BC 11800005 */ beqz $t4, .L800178D4 -/* 0184C0 800178C0 00E01025 */ move $v0, $a3 -/* 0184C4 800178C4 8CCF0000 */ lw $t7, ($a2) -/* 0184C8 800178C8 00000000 */ nop -/* 0184CC 800178CC 25F80001 */ addiu $t8, $t7, 1 -/* 0184D0 800178D0 ACD80000 */ sw $t8, ($a2) -.L800178D4: -/* 0184D4 800178D4 8FBF0064 */ lw $ra, 0x64($sp) -/* 0184D8 800178D8 C7B50038 */ lwc1 $f21, 0x38($sp) -/* 0184DC 800178DC C7B4003C */ lwc1 $f20, 0x3c($sp) -/* 0184E0 800178E0 8FB00040 */ lw $s0, 0x40($sp) -/* 0184E4 800178E4 8FB10044 */ lw $s1, 0x44($sp) -/* 0184E8 800178E8 8FB20048 */ lw $s2, 0x48($sp) -/* 0184EC 800178EC 8FB3004C */ lw $s3, 0x4c($sp) -/* 0184F0 800178F0 8FB40050 */ lw $s4, 0x50($sp) -/* 0184F4 800178F4 8FB50054 */ lw $s5, 0x54($sp) -/* 0184F8 800178F8 8FB60058 */ lw $s6, 0x58($sp) -/* 0184FC 800178FC 8FB7005C */ lw $s7, 0x5c($sp) -/* 018500 80017900 8FBE0060 */ lw $fp, 0x60($sp) -/* 018504 80017904 03E00008 */ jr $ra -/* 018508 80017908 27BD0178 */ addiu $sp, $sp, 0x178 - -glabel func_8001790C -/* 01850C 8001790C 3C068012 */ lui $a2, %hi(D_8011AFF4) # $a2, 0x8012 -/* 018510 80017910 8CC6AFF4 */ lw $a2, %lo(D_8011AFF4)($a2) -/* 018514 80017914 00001025 */ move $v0, $zero -/* 018518 80017918 00027180 */ sll $t6, $v0, 6 -.L8001791C: -/* 01851C 8001791C 01C61821 */ addu $v1, $t6, $a2 -/* 018520 80017920 8C6F0000 */ lw $t7, ($v1) -/* 018524 80017924 24420001 */ addiu $v0, $v0, 1 -/* 018528 80017928 11E0000C */ beqz $t7, .L8001795C -/* 01852C 8001792C 00024400 */ sll $t0, $v0, 0x10 -/* 018530 80017930 8C780004 */ lw $t8, 4($v1) -/* 018534 80017934 00000000 */ nop -/* 018538 80017938 14980008 */ bne $a0, $t8, .L8001795C -/* 01853C 8001793C 00000000 */ nop -/* 018540 80017940 8C790008 */ lw $t9, 8($v1) -/* 018544 80017944 00000000 */ nop -/* 018548 80017948 14B90005 */ bne $a1, $t9, .L80017960 -/* 01854C 8001794C 00081403 */ sra $v0, $t0, 0x10 -/* 018550 80017950 AC600000 */ sw $zero, ($v1) -/* 018554 80017954 03E00008 */ jr $ra -/* 018558 80017958 00601025 */ move $v0, $v1 - -.L8001795C: -/* 01855C 8001795C 00081403 */ sra $v0, $t0, 0x10 -.L80017960: -/* 018560 80017960 28410010 */ slti $at, $v0, 0x10 -/* 018564 80017964 1420FFED */ bnez $at, .L8001791C -/* 018568 80017968 00027180 */ sll $t6, $v0, 6 -/* 01856C 8001796C 00001025 */ move $v0, $zero -/* 018570 80017970 03E00008 */ jr $ra -/* 018574 80017974 00000000 */ nop - -glabel func_80017978 -/* 018578 80017978 3C068012 */ lui $a2, %hi(D_8011AFF4) # $a2, 0x8012 -/* 01857C 8001797C 8CC6AFF4 */ lw $a2, %lo(D_8011AFF4)($a2) -/* 018580 80017980 00001025 */ move $v0, $zero -/* 018584 80017984 00027180 */ sll $t6, $v0, 6 -.L80017988: -/* 018588 80017988 01C61821 */ addu $v1, $t6, $a2 -/* 01858C 8001798C 8C6F0000 */ lw $t7, ($v1) -/* 018590 80017990 24420001 */ addiu $v0, $v0, 1 -/* 018594 80017994 15E00007 */ bnez $t7, .L800179B4 -/* 018598 80017998 0002CC00 */ sll $t9, $v0, 0x10 -/* 01859C 8001799C 24180002 */ li $t8, 2 -/* 0185A0 800179A0 AC640004 */ sw $a0, 4($v1) -/* 0185A4 800179A4 AC650008 */ sw $a1, 8($v1) -/* 0185A8 800179A8 AC780000 */ sw $t8, ($v1) -/* 0185AC 800179AC 03E00008 */ jr $ra -/* 0185B0 800179B0 00601025 */ move $v0, $v1 - -.L800179B4: -/* 0185B4 800179B4 00191403 */ sra $v0, $t9, 0x10 -/* 0185B8 800179B8 28410010 */ slti $at, $v0, 0x10 -/* 0185BC 800179BC 1420FFF2 */ bnez $at, .L80017988 -/* 0185C0 800179C0 00027180 */ sll $t6, $v0, 6 -/* 0185C4 800179C4 00001025 */ move $v0, $zero -/* 0185C8 800179C8 03E00008 */ jr $ra -/* 0185CC 800179CC 00000000 */ nop - -glabel func_800179D0 -/* 0185D0 800179D0 3C058012 */ lui $a1, %hi(D_8011AFF4) # $a1, 0x8012 -/* 0185D4 800179D4 00001025 */ move $v0, $zero -/* 0185D8 800179D8 24A5AFF4 */ addiu $a1, %lo(D_8011AFF4) # addiu $a1, $a1, -0x500c -.L800179DC: -/* 0185DC 800179DC 8CAF0000 */ lw $t7, ($a1) -/* 0185E0 800179E0 00027180 */ sll $t6, $v0, 6 -/* 0185E4 800179E4 01CF1821 */ addu $v1, $t6, $t7 -/* 0185E8 800179E8 8C640000 */ lw $a0, ($v1) -/* 0185EC 800179EC 24420001 */ addiu $v0, $v0, 1 -/* 0185F0 800179F0 10800003 */ beqz $a0, .L80017A00 -/* 0185F4 800179F4 0002CC00 */ sll $t9, $v0, 0x10 -/* 0185F8 800179F8 2498FFFF */ addiu $t8, $a0, -1 -/* 0185FC 800179FC AC780000 */ sw $t8, ($v1) -.L80017A00: -/* 018600 80017A00 00191403 */ sra $v0, $t9, 0x10 -/* 018604 80017A04 28410010 */ slti $at, $v0, 0x10 -/* 018608 80017A08 1420FFF4 */ bnez $at, .L800179DC -/* 01860C 80017A0C 00000000 */ nop -/* 018610 80017A10 03E00008 */ jr $ra -/* 018614 80017A14 00000000 */ nop - -glabel func_80017A18 -/* 018618 80017A18 27BDFEE0 */ addiu $sp, $sp, -0x120 -/* 01861C 80017A1C AFBF005C */ sw $ra, 0x5c($sp) -/* 018620 80017A20 AFBE0058 */ sw $fp, 0x58($sp) -/* 018624 80017A24 AFB70054 */ sw $s7, 0x54($sp) -/* 018628 80017A28 AFB60050 */ sw $s6, 0x50($sp) -/* 01862C 80017A2C AFB5004C */ sw $s5, 0x4c($sp) -/* 018630 80017A30 AFB40048 */ sw $s4, 0x48($sp) -/* 018634 80017A34 AFB30044 */ sw $s3, 0x44($sp) -/* 018638 80017A38 AFB20040 */ sw $s2, 0x40($sp) -/* 01863C 80017A3C AFB1003C */ sw $s1, 0x3c($sp) -/* 018640 80017A40 AFB00038 */ sw $s0, 0x38($sp) -/* 018644 80017A44 E7BF0030 */ swc1 $f31, 0x30($sp) -/* 018648 80017A48 E7BE0034 */ swc1 $f30, 0x34($sp) -/* 01864C 80017A4C E7BD0028 */ swc1 $f29, 0x28($sp) -/* 018650 80017A50 E7BC002C */ swc1 $f28, 0x2c($sp) -/* 018654 80017A54 E7BB0020 */ swc1 $f27, 0x20($sp) -/* 018658 80017A58 E7BA0024 */ swc1 $f26, 0x24($sp) -/* 01865C 80017A5C E7B90018 */ swc1 $f25, 0x18($sp) -/* 018660 80017A60 E7B8001C */ swc1 $f24, 0x1c($sp) -/* 018664 80017A64 E7B70010 */ swc1 $f23, 0x10($sp) -/* 018668 80017A68 E7B60014 */ swc1 $f22, 0x14($sp) -/* 01866C 80017A6C E7B50008 */ swc1 $f21, 8($sp) -/* 018670 80017A70 E7B4000C */ swc1 $f20, 0xc($sp) -/* 018674 80017A74 AFA50124 */ sw $a1, 0x124($sp) -/* 018678 80017A78 AFA60128 */ sw $a2, 0x128($sp) -/* 01867C 80017A7C AFA000F8 */ sw $zero, 0xf8($sp) -/* 018680 80017A80 8C880010 */ lw $t0, 0x10($a0) -/* 018684 80017A84 00808025 */ move $s0, $a0 -/* 018688 80017A88 24160001 */ li $s6, 1 -/* 01868C 80017A8C 18A000E0 */ blez $a1, .L80017E10 -/* 018690 80017A90 00008825 */ move $s1, $zero -/* 018694 80017A94 8FAF0144 */ lw $t7, 0x144($sp) -/* 018698 80017A98 3C014080 */ li $at, 0x40800000 # 4.000000 -/* 01869C 80017A9C 00E0B825 */ move $s7, $a3 -/* 0186A0 80017AA0 4481C000 */ mtc1 $at, $f24 -/* 0186A4 80017AA4 8FB20138 */ lw $s2, 0x138($sp) -/* 0186A8 80017AA8 8FB3013C */ lw $s3, 0x13c($sp) -/* 0186AC 80017AAC 8FB40140 */ lw $s4, 0x140($sp) -/* 0186B0 80017AB0 8FBE0130 */ lw $fp, 0x130($sp) -/* 0186B4 80017AB4 8FBF0134 */ lw $ra, 0x134($sp) -/* 0186B8 80017AB8 8FB50148 */ lw $s5, 0x148($sp) -/* 0186BC 80017ABC 24070001 */ li $a3, 1 -/* 0186C0 80017AC0 AFAF0080 */ sw $t7, 0x80($sp) -.L80017AC4: -/* 0186C4 80017AC4 C6440000 */ lwc1 $f4, ($s2) -/* 0186C8 80017AC8 8FAE0080 */ lw $t6, 0x80($sp) -/* 0186CC 80017ACC E7A400BC */ swc1 $f4, 0xbc($sp) -/* 0186D0 80017AD0 C6880000 */ lwc1 $f8, ($s4) -/* 0186D4 80017AD4 C67E0000 */ lwc1 $f30, ($s3) -/* 0186D8 80017AD8 E7A800B4 */ swc1 $f8, 0xb4($sp) -/* 0186DC 80017ADC C7AA014C */ lwc1 $f10, 0x14c($sp) -/* 0186E0 80017AE0 C5C60000 */ lwc1 $f6, ($t6) -/* 0186E4 80017AE4 C6F20000 */ lwc1 $f18, ($s7) -/* 0186E8 80017AE8 460A3102 */ mul.s $f4, $f6, $f10 -/* 0186EC 80017AEC C7D40000 */ lwc1 $f20, ($fp) -/* 0186F0 80017AF0 C7F60000 */ lwc1 $f22, ($ra) -/* 0186F4 80017AF4 26F70004 */ addiu $s7, $s7, 4 -/* 0186F8 80017AF8 E7A400C0 */ swc1 $f4, 0xc0($sp) -/* 0186FC 80017AFC 860B0032 */ lh $t3, 0x32($s0) -/* 018700 80017B00 00006025 */ move $t4, $zero -/* 018704 80017B04 00006825 */ move $t5, $zero -.L80017B08: -/* 018708 80017B08 196000A7 */ blez $t3, .L80017DA8 -/* 01870C 80017B0C 00005025 */ move $t2, $zero -/* 018710 80017B10 E7B200A4 */ swc1 $f18, 0xa4($sp) -/* 018714 80017B14 E7B400A0 */ swc1 $f20, 0xa0($sp) -/* 018718 80017B18 E7B6009C */ swc1 $f22, 0x9c($sp) -.L80017B1C: -/* 01871C 80017B1C 8E18000C */ lw $t8, 0xc($s0) -/* 018720 80017B20 C7BC00A4 */ lwc1 $f28, 0xa4($sp) -/* 018724 80017B24 C7A600A0 */ lwc1 $f6, 0xa0($sp) -/* 018728 80017B28 C7B4009C */ lwc1 $f20, 0x9c($sp) -/* 01872C 80017B2C 000AC8C0 */ sll $t9, $t2, 3 -/* 018730 80017B30 03194821 */ addu $t1, $t8, $t9 -/* 018734 80017B34 952F0000 */ lhu $t7, ($t1) -/* 018738 80017B38 C7B200C0 */ lwc1 $f18, 0xc0($sp) -/* 01873C 80017B3C 000F7100 */ sll $t6, $t7, 4 -/* 018740 80017B40 010E1021 */ addu $v0, $t0, $t6 -/* 018744 80017B44 C45A0004 */ lwc1 $f26, 4($v0) -/* 018748 80017B48 C4500000 */ lwc1 $f16, ($v0) -/* 01874C 80017B4C 4606D382 */ mul.s $f14, $f26, $f6 -/* 018750 80017B50 C44C0008 */ lwc1 $f12, 8($v0) -/* 018754 80017B54 C44A000C */ lwc1 $f10, 0xc($v0) -/* 018758 80017B58 E7B000E4 */ swc1 $f16, 0xe4($sp) -/* 01875C 80017B5C 461C8102 */ mul.s $f4, $f16, $f28 -/* 018760 80017B60 C7B000E4 */ lwc1 $f16, 0xe4($sp) -/* 018764 80017B64 E7AC00DC */ swc1 $f12, 0xdc($sp) -/* 018768 80017B68 C7A800DC */ lwc1 $f8, 0xdc($sp) -/* 01876C 80017B6C 46146302 */ mul.s $f12, $f12, $f20 -/* 018770 80017B70 460E2100 */ add.s $f4, $f4, $f14 -/* 018774 80017B74 E7A60064 */ swc1 $f6, 0x64($sp) -/* 018778 80017B78 C7A600B4 */ lwc1 $f6, 0xb4($sp) -/* 01877C 80017B7C 461ED382 */ mul.s $f14, $f26, $f30 -/* 018780 80017B80 460C2100 */ add.s $f4, $f4, $f12 -/* 018784 80017B84 E7AA00D8 */ swc1 $f10, 0xd8($sp) -/* 018788 80017B88 C7AC00D8 */ lwc1 $f12, 0xd8($sp) -/* 01878C 80017B8C 46064202 */ mul.s $f8, $f8, $f6 -/* 018790 80017B90 460A2280 */ add.s $f10, $f4, $f10 -/* 018794 80017B94 C7A400BC */ lwc1 $f4, 0xbc($sp) -/* 018798 80017B98 3C01800E */ lui $at, %hi(D_800E5608) # $at, 0x800e -/* 01879C 80017B9C 46048402 */ mul.s $f16, $f16, $f4 -/* 0187A0 80017BA0 46125001 */ sub.s $f0, $f10, $f18 -/* 0187A4 80017BA4 C42A560C */ lwc1 $f10, %lo(D_800E560C)($at) -/* 0187A8 80017BA8 E7BC0060 */ swc1 $f28, 0x60($sp) -/* 0187AC 80017BAC 460E8380 */ add.s $f14, $f16, $f14 -/* 0187B0 80017BB0 E7B40068 */ swc1 $f20, 0x68($sp) -/* 0187B4 80017BB4 46087380 */ add.s $f14, $f14, $f8 -/* 0187B8 80017BB8 E7B00074 */ swc1 $f16, 0x74($sp) -/* 0187BC 80017BBC 460C7300 */ add.s $f12, $f14, $f12 -/* 0187C0 80017BC0 C42B5608 */ lwc1 $f11, %lo(D_800E5608)($at) -/* 0187C4 80017BC4 460003A1 */ cvt.d.s $f14, $f0 -/* 0187C8 80017BC8 462E503E */ c.le.d $f10, $f14 -/* 0187CC 80017BCC 46126581 */ sub.s $f22, $f12, $f18 -/* 0187D0 80017BD0 4500006D */ bc1f .L80017D88 -/* 0187D4 80017BD4 E7A80070 */ swc1 $f8, 0x70($sp) -/* 0187D8 80017BD8 3C01800E */ lui $at, %hi(D_800E5614) # $at, 0x800e -/* 0187DC 80017BDC C4295610 */ lwc1 $f9, %lo(D_800E5610)($at) -/* 0187E0 80017BE0 C4285614 */ lwc1 $f8, %lo(D_800E5614)($at) -/* 0187E4 80017BE4 4600B2A1 */ cvt.d.s $f10, $f22 -/* 0187E8 80017BE8 4628503C */ c.lt.d $f10, $f8 -/* 0187EC 80017BEC C7AA0060 */ lwc1 $f10, 0x60($sp) -/* 0187F0 80017BF0 45000065 */ bc1f .L80017D88 -/* 0187F4 80017BF4 24060001 */ li $a2, 1 -/* 0187F8 80017BF8 460A2301 */ sub.s $f12, $f4, $f10 -/* 0187FC 80017BFC C7A40068 */ lwc1 $f4, 0x68($sp) -/* 018800 80017C00 C7A80064 */ lwc1 $f8, 0x64($sp) -/* 018804 80017C04 46160032 */ c.eq.s $f0, $f22 -/* 018808 80017C08 00001025 */ move $v0, $zero -/* 01880C 80017C0C 46043701 */ sub.s $f28, $f6, $f4 -/* 018810 80017C10 45010004 */ bc1t .L80017C24 -/* 018814 80017C14 4608F381 */ sub.s $f14, $f30, $f8 -/* 018818 80017C18 46160281 */ sub.s $f10, $f0, $f22 -/* 01881C 80017C1C 10000003 */ b .L80017C2C -/* 018820 80017C20 460A0083 */ div.s $f2, $f0, $f10 -.L80017C24: -/* 018824 80017C24 44801000 */ mtc1 $zero, $f2 -/* 018828 80017C28 00000000 */ nop -.L80017C2C: -/* 01882C 80017C2C 46026202 */ mul.s $f8, $f12, $f2 -/* 018830 80017C30 C7A600A4 */ lwc1 $f6, 0xa4($sp) -/* 018834 80017C34 C7AA00A0 */ lwc1 $f10, 0xa0($sp) -/* 018838 80017C38 00021840 */ sll $v1, $v0, 1 -/* 01883C 80017C3C 46027102 */ mul.s $f4, $f14, $f2 -/* 018840 80017C40 46064400 */ add.s $f16, $f8, $f6 -/* 018844 80017C44 C7A6009C */ lwc1 $f6, 0x9c($sp) -/* 018848 80017C48 01232021 */ addu $a0, $t1, $v1 -/* 01884C 80017C4C 4602E202 */ mul.s $f8, $f28, $f2 -/* 018850 80017C50 460A2480 */ add.s $f18, $f4, $f10 -/* 018854 80017C54 46064500 */ add.s $f20, $f8, $f6 -.L80017C58: -/* 018858 80017C58 94980002 */ lhu $t8, 2($a0) -/* 01885C 80017C5C 24630002 */ addiu $v1, $v1, 2 -/* 018860 80017C60 0018C900 */ sll $t9, $t8, 4 -/* 018864 80017C64 01191021 */ addu $v0, $t0, $t9 -/* 018868 80017C68 C4400000 */ lwc1 $f0, ($v0) -/* 01886C 80017C6C C4420004 */ lwc1 $f2, 4($v0) -/* 018870 80017C70 46100102 */ mul.s $f4, $f0, $f16 -/* 018874 80017C74 C44C0008 */ lwc1 $f12, 8($v0) -/* 018878 80017C78 C44E000C */ lwc1 $f14, 0xc($v0) -/* 01887C 80017C7C 28610006 */ slti $at, $v1, 6 -/* 018880 80017C80 46121282 */ mul.s $f10, $f2, $f18 -/* 018884 80017C84 00000000 */ nop -/* 018888 80017C88 46146182 */ mul.s $f6, $f12, $f20 -/* 01888C 80017C8C 460A2200 */ add.s $f8, $f4, $f10 -/* 018890 80017C90 46064100 */ add.s $f4, $f8, $f6 -/* 018894 80017C94 460E2280 */ add.s $f10, $f4, $f14 -/* 018898 80017C98 460AC03C */ c.lt.s $f24, $f10 -/* 01889C 80017C9C 00000000 */ nop -/* 0188A0 80017CA0 45000002 */ bc1f .L80017CAC -/* 0188A4 80017CA4 00000000 */ nop -/* 0188A8 80017CA8 00003025 */ move $a2, $zero -.L80017CAC: -/* 0188AC 80017CAC 10200003 */ beqz $at, .L80017CBC -/* 0188B0 80017CB0 24840002 */ addiu $a0, $a0, 2 -/* 0188B4 80017CB4 10C7FFE8 */ beq $a2, $a3, .L80017C58 -/* 0188B8 80017CB8 00000000 */ nop -.L80017CBC: -/* 0188BC 80017CBC 10C00032 */ beqz $a2, .L80017D88 -/* 0188C0 80017CC0 3C01800E */ lui $at, %hi(D_800E561C) # $at, 0x800e -/* 0188C4 80017CC4 C4295618 */ lwc1 $f9, %lo(D_800E5618)($at) -/* 0188C8 80017CC8 C428561C */ lwc1 $f8, %lo(D_800E561C)($at) -/* 0188CC 80017CCC 4600D1A1 */ cvt.d.s $f6, $f26 -/* 0188D0 80017CD0 4626403C */ c.lt.d $f8, $f6 -/* 0188D4 80017CD4 240D0001 */ li $t5, 1 -/* 0188D8 80017CD8 4500000A */ bc1f .L80017D04 -/* 0188DC 80017CDC 02B11021 */ addu $v0, $s5, $s1 -/* 0188E0 80017CE0 C7A40074 */ lwc1 $f4, 0x74($sp) -/* 0188E4 80017CE4 C7AA0070 */ lwc1 $f10, 0x70($sp) -/* 0188E8 80017CE8 C7A600D8 */ lwc1 $f6, 0xd8($sp) -/* 0188EC 80017CEC 460A2200 */ add.s $f8, $f4, $f10 -/* 0188F0 80017CF0 C7AA00C0 */ lwc1 $f10, 0xc0($sp) -/* 0188F4 80017CF4 46064100 */ add.s $f4, $f8, $f6 -/* 0188F8 80017CF8 46045201 */ sub.s $f8, $f10, $f4 -/* 0188FC 80017CFC 1000000D */ b .L80017D34 -/* 018900 80017D00 461A4783 */ div.s $f30, $f8, $f26 -.L80017D04: -/* 018904 80017D04 C7AA00E4 */ lwc1 $f10, 0xe4($sp) -/* 018908 80017D08 C7A600BC */ lwc1 $f6, 0xbc($sp) -/* 01890C 80017D0C 460AB102 */ mul.s $f4, $f22, $f10 -/* 018910 80017D10 46043201 */ sub.s $f8, $f6, $f4 -/* 018914 80017D14 C7A400DC */ lwc1 $f4, 0xdc($sp) -/* 018918 80017D18 461AB282 */ mul.s $f10, $f22, $f26 -/* 01891C 80017D1C E7A800BC */ swc1 $f8, 0xbc($sp) -/* 018920 80017D20 C7A600B4 */ lwc1 $f6, 0xb4($sp) -/* 018924 80017D24 4604B202 */ mul.s $f8, $f22, $f4 -/* 018928 80017D28 460AF781 */ sub.s $f30, $f30, $f10 -/* 01892C 80017D2C 46083281 */ sub.s $f10, $f6, $f8 -/* 018930 80017D30 E7AA00B4 */ swc1 $f10, 0xb4($sp) -.L80017D34: -/* 018934 80017D34 258C0001 */ addiu $t4, $t4, 1 -/* 018938 80017D38 2981000B */ slti $at, $t4, 0xb -/* 01893C 80017D3C 14200007 */ bnez $at, .L80017D5C -/* 018940 80017D40 00000000 */ nop -/* 018944 80017D44 C7A400A4 */ lwc1 $f4, 0xa4($sp) -/* 018948 80017D48 C7A6009C */ lwc1 $f6, 0x9c($sp) -/* 01894C 80017D4C C7BE00A0 */ lwc1 $f30, 0xa0($sp) -/* 018950 80017D50 00006825 */ move $t5, $zero -/* 018954 80017D54 E7A400BC */ swc1 $f4, 0xbc($sp) -/* 018958 80017D58 E7A600B4 */ swc1 $f6, 0xb4($sp) -.L80017D5C: -/* 01895C 80017D5C A0400000 */ sb $zero, ($v0) -/* 018960 80017D60 C7A800BC */ lwc1 $f8, 0xbc($sp) -/* 018964 80017D64 00000000 */ nop -/* 018968 80017D68 E6480000 */ swc1 $f8, ($s2) -/* 01896C 80017D6C E67E0000 */ swc1 $f30, ($s3) -/* 018970 80017D70 C7AA00B4 */ lwc1 $f10, 0xb4($sp) -/* 018974 80017D74 00000000 */ nop -/* 018978 80017D78 E68A0000 */ swc1 $f10, ($s4) -/* 01897C 80017D7C 860B0032 */ lh $t3, 0x32($s0) -/* 018980 80017D80 00000000 */ nop -/* 018984 80017D84 01605025 */ move $t2, $t3 -.L80017D88: -/* 018988 80017D88 254A0001 */ addiu $t2, $t2, 1 -/* 01898C 80017D8C 014B082A */ slt $at, $t2, $t3 -/* 018990 80017D90 1420FF62 */ bnez $at, .L80017B1C -/* 018994 80017D94 00000000 */ nop -/* 018998 80017D98 C7B6009C */ lwc1 $f22, 0x9c($sp) -/* 01899C 80017D9C C7B400A0 */ lwc1 $f20, 0xa0($sp) -/* 0189A0 80017DA0 C7B200A4 */ lwc1 $f18, 0xa4($sp) -/* 0189A4 80017DA4 00000000 */ nop -.L80017DA8: -/* 0189A8 80017DA8 15A0FF57 */ bnez $t5, .L80017B08 -/* 0189AC 80017DAC 00006825 */ move $t5, $zero -/* 0189B0 80017DB0 1980000B */ blez $t4, .L80017DE0 -/* 0189B4 80017DB4 26310001 */ addiu $s1, $s1, 1 -/* 0189B8 80017DB8 8FAF0128 */ lw $t7, 0x128($sp) -/* 0189BC 80017DBC 00000000 */ nop -/* 0189C0 80017DC0 8DEE0000 */ lw $t6, ($t7) -/* 0189C4 80017DC4 00000000 */ nop -/* 0189C8 80017DC8 25D80001 */ addiu $t8, $t6, 1 -/* 0189CC 80017DCC ADF80000 */ sw $t8, ($t7) -/* 0189D0 80017DD0 8FB900F8 */ lw $t9, 0xf8($sp) -/* 0189D4 80017DD4 00000000 */ nop -/* 0189D8 80017DD8 03367025 */ or $t6, $t9, $s6 -/* 0189DC 80017DDC AFAE00F8 */ sw $t6, 0xf8($sp) -.L80017DE0: -/* 0189E0 80017DE0 8FAF0080 */ lw $t7, 0x80($sp) -/* 0189E4 80017DE4 8FAE0124 */ lw $t6, 0x124($sp) -/* 0189E8 80017DE8 0016C040 */ sll $t8, $s6, 1 -/* 0189EC 80017DEC 25F90004 */ addiu $t9, $t7, 4 -/* 0189F0 80017DF0 AFB90080 */ sw $t9, 0x80($sp) -/* 0189F4 80017DF4 26520004 */ addiu $s2, $s2, 4 -/* 0189F8 80017DF8 26730004 */ addiu $s3, $s3, 4 -/* 0189FC 80017DFC 26940004 */ addiu $s4, $s4, 4 -/* 018A00 80017E00 27DE0004 */ addiu $fp, $fp, 4 -/* 018A04 80017E04 27FF0004 */ addiu $ra, $ra, 4 -/* 018A08 80017E08 162EFF2E */ bne $s1, $t6, .L80017AC4 -/* 018A0C 80017E0C 0300B025 */ move $s6, $t8 -.L80017E10: -/* 018A10 80017E10 8FBF005C */ lw $ra, 0x5c($sp) -/* 018A14 80017E14 8FA200F8 */ lw $v0, 0xf8($sp) -/* 018A18 80017E18 C7B50008 */ lwc1 $f21, 8($sp) -/* 018A1C 80017E1C C7B4000C */ lwc1 $f20, 0xc($sp) -/* 018A20 80017E20 C7B70010 */ lwc1 $f23, 0x10($sp) -/* 018A24 80017E24 C7B60014 */ lwc1 $f22, 0x14($sp) -/* 018A28 80017E28 C7B90018 */ lwc1 $f25, 0x18($sp) -/* 018A2C 80017E2C C7B8001C */ lwc1 $f24, 0x1c($sp) -/* 018A30 80017E30 C7BB0020 */ lwc1 $f27, 0x20($sp) -/* 018A34 80017E34 C7BA0024 */ lwc1 $f26, 0x24($sp) -/* 018A38 80017E38 C7BD0028 */ lwc1 $f29, 0x28($sp) -/* 018A3C 80017E3C C7BC002C */ lwc1 $f28, 0x2c($sp) -/* 018A40 80017E40 C7BF0030 */ lwc1 $f31, 0x30($sp) -/* 018A44 80017E44 C7BE0034 */ lwc1 $f30, 0x34($sp) -/* 018A48 80017E48 8FB00038 */ lw $s0, 0x38($sp) -/* 018A4C 80017E4C 8FB1003C */ lw $s1, 0x3c($sp) -/* 018A50 80017E50 8FB20040 */ lw $s2, 0x40($sp) -/* 018A54 80017E54 8FB30044 */ lw $s3, 0x44($sp) -/* 018A58 80017E58 8FB40048 */ lw $s4, 0x48($sp) -/* 018A5C 80017E5C 8FB5004C */ lw $s5, 0x4c($sp) -/* 018A60 80017E60 8FB60050 */ lw $s6, 0x50($sp) -/* 018A64 80017E64 8FB70054 */ lw $s7, 0x54($sp) -/* 018A68 80017E68 8FBE0058 */ lw $fp, 0x58($sp) -/* 018A6C 80017E6C 03E00008 */ jr $ra -/* 018A70 80017E70 27BD0120 */ addiu $sp, $sp, 0x120 - -glabel func_80017E74 -/* 018A74 80017E74 3C018012 */ lui $at, %hi(D_8011AED8) # $at, 0x8012 -/* 018A78 80017E78 A424AED8 */ sh $a0, %lo(D_8011AED8)($at) -/* 018A7C 80017E7C 3C018012 */ lui $at, 0x8012 -/* 018A80 80017E80 03E00008 */ jr $ra -/* 018A84 80017E84 AC20ADAC */ sw $zero, -0x5254($at) - -/* 018A88 80017E88 3C028012 */ lui $v0, %hi(D_8011AED8) # $v0, 0x8012 -/* 018A8C 80017E8C 8442AED8 */ lh $v0, %lo(D_8011AED8)($v0) -/* 018A90 80017E90 03E00008 */ jr $ra -/* 018A94 80017E94 00000000 */ nop - -glabel func_80017E98 -/* 018A98 80017E98 27BDFEE8 */ addiu $sp, $sp, -0x118 -/* 018A9C 80017E9C 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 -/* 018AA0 80017EA0 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) -/* 018AA4 80017EA4 AFB30044 */ sw $s3, 0x44($sp) -/* 018AA8 80017EA8 3C018012 */ lui $at, %hi(D_8011AED0) # $at, 0x8012 -/* 018AAC 80017EAC AFBF005C */ sw $ra, 0x5c($sp) -/* 018AB0 80017EB0 AFBE0058 */ sw $fp, 0x58($sp) -/* 018AB4 80017EB4 AFB70054 */ sw $s7, 0x54($sp) -/* 018AB8 80017EB8 AFB60050 */ sw $s6, 0x50($sp) -/* 018ABC 80017EBC AFB5004C */ sw $s5, 0x4c($sp) -/* 018AC0 80017EC0 AFB40048 */ sw $s4, 0x48($sp) -/* 018AC4 80017EC4 AFB20040 */ sw $s2, 0x40($sp) -/* 018AC8 80017EC8 AFB1003C */ sw $s1, 0x3c($sp) -/* 018ACC 80017ECC AFB00038 */ sw $s0, 0x38($sp) -/* 018AD0 80017ED0 E7B70030 */ swc1 $f23, 0x30($sp) -/* 018AD4 80017ED4 E7B60034 */ swc1 $f22, 0x34($sp) -/* 018AD8 80017ED8 E7B50028 */ swc1 $f21, 0x28($sp) -/* 018ADC 80017EDC E7B4002C */ swc1 $f20, 0x2c($sp) -/* 018AE0 80017EE0 00005025 */ move $t2, $zero -/* 018AE4 80017EE4 AC20AED0 */ sw $zero, %lo(D_8011AED0)($at) -/* 018AE8 80017EE8 18600047 */ blez $v1, .L80018008 -/* 018AEC 80017EEC 00009825 */ move $s3, $zero -/* 018AF0 80017EF0 3C148012 */ lui $s4, %hi(D_8011AECC) # $s4, 0x8012 -/* 018AF4 80017EF4 3C098012 */ lui $t1, %hi(D_8011AED8) # $t1, 0x8012 -/* 018AF8 80017EF8 3C068012 */ lui $a2, %hi(D_8011AE58) # $a2, 0x8012 -/* 018AFC 80017EFC 24C6AE58 */ addiu $a2, %lo(D_8011AE58) # addiu $a2, $a2, -0x51a8 -/* 018B00 80017F00 2529AED8 */ addiu $t1, %lo(D_8011AED8) # addiu $t1, $t1, -0x5128 -/* 018B04 80017F04 2694AECC */ addiu $s4, %lo(D_8011AECC) # addiu $s4, $s4, -0x5134 -/* 018B08 80017F08 00001025 */ move $v0, $zero -/* 018B0C 80017F0C 2408000D */ li $t0, 13 -/* 018B10 80017F10 2405003C */ li $a1, 60 -.L80017F14: -/* 018B14 80017F14 8CCE0000 */ lw $t6, ($a2) -/* 018B18 80017F18 26730001 */ addiu $s3, $s3, 1 -/* 018B1C 80017F1C 01C27821 */ addu $t7, $t6, $v0 -/* 018B20 80017F20 8DF00000 */ lw $s0, ($t7) -/* 018B24 80017F24 00000000 */ nop -/* 018B28 80017F28 86180006 */ lh $t8, 6($s0) -/* 018B2C 80017F2C 00000000 */ nop -/* 018B30 80017F30 33198000 */ andi $t9, $t8, 0x8000 -/* 018B34 80017F34 17200032 */ bnez $t9, .L80018000 -/* 018B38 80017F38 0263082A */ slt $at, $s3, $v1 -/* 018B3C 80017F3C 860B0048 */ lh $t3, 0x48($s0) -/* 018B40 80017F40 3C078012 */ lui $a3, %hi(D_8011AED0) # $a3, 0x8012 -/* 018B44 80017F44 150B002E */ bne $t0, $t3, .L80018000 -/* 018B48 80017F48 0263082A */ slt $at, $s3, $v1 -/* 018B4C 80017F4C 8CE7AED0 */ lw $a3, %lo(D_8011AED0)($a3) -/* 018B50 80017F50 00000000 */ nop -/* 018B54 80017F54 28E1003C */ slti $at, $a3, 0x3c -/* 018B58 80017F58 10200029 */ beqz $at, .L80018000 -/* 018B5C 80017F5C 0263082A */ slt $at, $s3, $v1 -/* 018B60 80017F60 8E17003C */ lw $s7, 0x3c($s0) -/* 018B64 80017F64 852C0000 */ lh $t4, ($t1) -/* 018B68 80017F68 82ED001A */ lb $t5, 0x1a($s7) -/* 018B6C 80017F6C 00000000 */ nop -/* 018B70 80017F70 158D0023 */ bne $t4, $t5, .L80018000 -/* 018B74 80017F74 0263082A */ slt $at, $s3, $v1 -/* 018B78 80017F78 00E50019 */ multu $a3, $a1 -/* 018B7C 80017F7C 8E8E0000 */ lw $t6, ($s4) -/* 018B80 80017F80 3C078012 */ lui $a3, %hi(D_8011AED0) # $a3, 0x8012 -/* 018B84 80017F84 24E7AED0 */ addiu $a3, %lo(D_8011AED0) # addiu $a3, $a3, -0x5130 -/* 018B88 80017F88 00007812 */ mflo $t7 -/* 018B8C 80017F8C 01CFC021 */ addu $t8, $t6, $t7 -/* 018B90 80017F90 AF100028 */ sw $s0, 0x28($t8) -/* 018B94 80017F94 92F90017 */ lbu $t9, 0x17($s7) -/* 018B98 80017F98 92E40009 */ lbu $a0, 9($s7) -/* 018B9C 80017F9C 13200003 */ beqz $t9, .L80017FAC -/* 018BA0 80017FA0 00000000 */ nop -/* 018BA4 80017FA4 248400FF */ addiu $a0, $a0, 0xff -/* 018BA8 80017FA8 254A0001 */ addiu $t2, $t2, 1 -.L80017FAC: -/* 018BAC 80017FAC 8CEC0000 */ lw $t4, ($a3) -/* 018BB0 80017FB0 8E8B0000 */ lw $t3, ($s4) -/* 018BB4 80017FB4 01850019 */ multu $t4, $a1 -/* 018BB8 80017FB8 240FFFFF */ li $t7, -1 -/* 018BBC 80017FBC 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 -/* 018BC0 80017FC0 00006812 */ mflo $t5 -/* 018BC4 80017FC4 016D7021 */ addu $t6, $t3, $t5 -/* 018BC8 80017FC8 A5C4002C */ sh $a0, 0x2c($t6) -/* 018BCC 80017FCC 8CF90000 */ lw $t9, ($a3) -/* 018BD0 80017FD0 8E980000 */ lw $t8, ($s4) -/* 018BD4 80017FD4 03250019 */ multu $t9, $a1 -/* 018BD8 80017FD8 00006012 */ mflo $t4 -/* 018BDC 80017FDC 030C5821 */ addu $t3, $t8, $t4 -/* 018BE0 80017FE0 A16F003A */ sb $t7, 0x3a($t3) -/* 018BE4 80017FE4 8CED0000 */ lw $t5, ($a3) -/* 018BE8 80017FE8 00000000 */ nop -/* 018BEC 80017FEC 25AE0001 */ addiu $t6, $t5, 1 -/* 018BF0 80017FF0 ACEE0000 */ sw $t6, ($a3) -/* 018BF4 80017FF4 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) -/* 018BF8 80017FF8 00000000 */ nop -/* 018BFC 80017FFC 0263082A */ slt $at, $s3, $v1 -.L80018000: -/* 018C00 80018000 1420FFC4 */ bnez $at, .L80017F14 -/* 018C04 80018004 24420004 */ addiu $v0, $v0, 4 -.L80018008: -/* 018C08 80018008 3C078012 */ lui $a3, %hi(D_8011AED0) # $a3, 0x8012 -/* 018C0C 8001800C 8CE7AED0 */ lw $a3, %lo(D_8011AED0)($a3) -/* 018C10 80018010 3C148012 */ lui $s4, %hi(D_8011AECC) # $s4, 0x8012 -/* 018C14 80018014 8FB20104 */ lw $s2, 0x104($sp) -/* 018C18 80018018 2694AECC */ addiu $s4, %lo(D_8011AECC) # addiu $s4, $s4, -0x5134 -/* 018C1C 8001801C 00004825 */ move $t1, $zero -/* 018C20 80018020 24E6FFFF */ addiu $a2, $a3, -1 -/* 018C24 80018024 24080001 */ li $t0, 1 -.L80018028: -/* 018C28 80018028 18C00023 */ blez $a2, .L800180B8 -/* 018C2C 8001802C 00009825 */ move $s3, $zero -/* 018C30 80018030 00008825 */ move $s1, $zero -.L80018034: -/* 018C34 80018034 8E990000 */ lw $t9, ($s4) -/* 018C38 80018038 26730001 */ addiu $s3, $s3, 1 -/* 018C3C 8001803C 03311021 */ addu $v0, $t9, $s1 -/* 018C40 80018040 8443002C */ lh $v1, 0x2c($v0) -/* 018C44 80018044 84440068 */ lh $a0, 0x68($v0) -/* 018C48 80018048 00000000 */ nop -/* 018C4C 8001804C 14640003 */ bne $v1, $a0, .L8001805C -/* 018C50 80018050 0083082A */ slt $at, $a0, $v1 -/* 018C54 80018054 24090001 */ li $t1, 1 -/* 018C58 80018058 00609025 */ move $s2, $v1 -.L8001805C: -/* 018C5C 8001805C 10200014 */ beqz $at, .L800180B0 -/* 018C60 80018060 0266082A */ slt $at, $s3, $a2 -/* 018C64 80018064 A444002C */ sh $a0, 0x2c($v0) -/* 018C68 80018068 8E980000 */ lw $t8, ($s4) -/* 018C6C 8001806C 8C500028 */ lw $s0, 0x28($v0) -/* 018C70 80018070 03111021 */ addu $v0, $t8, $s1 -/* 018C74 80018074 8C4C0064 */ lw $t4, 0x64($v0) -/* 018C78 80018078 3C078012 */ lui $a3, %hi(D_8011AED0) # $a3, 0x8012 -/* 018C7C 8001807C AC4C0028 */ sw $t4, 0x28($v0) -/* 018C80 80018080 8E8F0000 */ lw $t7, ($s4) -/* 018C84 80018084 00004025 */ move $t0, $zero -/* 018C88 80018088 01F15821 */ addu $t3, $t7, $s1 -/* 018C8C 8001808C A5630068 */ sh $v1, 0x68($t3) -/* 018C90 80018090 8E8D0000 */ lw $t5, ($s4) -/* 018C94 80018094 00000000 */ nop -/* 018C98 80018098 01B17021 */ addu $t6, $t5, $s1 -/* 018C9C 8001809C ADD00064 */ sw $s0, 0x64($t6) -/* 018CA0 800180A0 8CE7AED0 */ lw $a3, %lo(D_8011AED0)($a3) -/* 018CA4 800180A4 00000000 */ nop -/* 018CA8 800180A8 24E6FFFF */ addiu $a2, $a3, -1 -/* 018CAC 800180AC 0266082A */ slt $at, $s3, $a2 -.L800180B0: -/* 018CB0 800180B0 1420FFE0 */ bnez $at, .L80018034 -/* 018CB4 800180B4 2631003C */ addiu $s1, $s1, 0x3c -.L800180B8: -/* 018CB8 800180B8 1100FFDB */ beqz $t0, .L80018028 -/* 018CBC 800180BC 24080001 */ li $t0, 1 -/* 018CC0 800180C0 3C088012 */ lui $t0, %hi(D_8011AED4) # $t0, 0x8012 -/* 018CC4 800180C4 2508AED4 */ addiu $t0, %lo(D_8011AED4) # addiu $t0, $t0, -0x512c -/* 018CC8 800180C8 AD070000 */ sw $a3, ($t0) -/* 018CCC 800180CC 00EAC823 */ subu $t9, $a3, $t2 -/* 018CD0 800180D0 3C018012 */ lui $at, %hi(D_8011AED0) # $at, 0x8012 -/* 018CD4 800180D4 1120000A */ beqz $t1, .L80018100 -/* 018CD8 800180D8 AC39AED0 */ sw $t9, %lo(D_8011AED0)($at) -/* 018CDC 800180DC 24040014 */ li $a0, 20 -/* 018CE0 800180E0 0C02D8D7 */ jal func_800B635C -/* 018CE4 800180E4 240500DC */ li $a1, 220 -/* 018CE8 800180E8 3C04800E */ lui $a0, %hi(D_800E50D4) # $a0, 0x800e -/* 018CEC 800180EC 248450D4 */ addiu $a0, %lo(D_800E50D4) # addiu $a0, $a0, 0x50d4 -/* 018CF0 800180F0 0C02D7B7 */ jal func_800B5EDC -/* 018CF4 800180F4 02402825 */ move $a1, $s2 -/* 018CF8 800180F8 3C088012 */ lui $t0, %hi(D_8011AED4) # $t0, 0x8012 -/* 018CFC 800180FC 2508AED4 */ addiu $t0, %lo(D_8011AED4) # addiu $t0, $t0, -0x512c -.L80018100: -/* 018D00 80018100 3C078012 */ lui $a3, %hi(D_8011AED0) # $a3, 0x8012 -/* 018D04 80018104 8CE7AED0 */ lw $a3, %lo(D_8011AED0)($a3) -/* 018D08 80018108 8D020000 */ lw $v0, ($t0) -/* 018D0C 8001810C 00E09825 */ move $s3, $a3 -/* 018D10 80018110 00E2082A */ slt $at, $a3, $v0 -/* 018D14 80018114 10200026 */ beqz $at, .L800181B0 -/* 018D18 80018118 00078900 */ sll $s1, $a3, 4 -/* 018D1C 8001811C 02278823 */ subu $s1, $s1, $a3 -/* 018D20 80018120 00118880 */ sll $s1, $s1, 2 -.L80018124: -/* 018D24 80018124 8E980000 */ lw $t8, ($s4) -/* 018D28 80018128 00002025 */ move $a0, $zero -/* 018D2C 8001812C 03116021 */ addu $t4, $t8, $s1 -/* 018D30 80018130 8585002C */ lh $a1, 0x2c($t4) -/* 018D34 80018134 00003025 */ move $a2, $zero -/* 018D38 80018138 18E00018 */ blez $a3, .L8001819C -/* 018D3C 8001813C 24A5FF01 */ addiu $a1, $a1, -0xff -/* 018D40 80018140 00001100 */ sll $v0, $zero, 4 -/* 018D44 80018144 00401023 */ subu $v0, $v0, $zero -/* 018D48 80018148 00021080 */ sll $v0, $v0, 2 -.L8001814C: -/* 018D4C 8001814C 8E8F0000 */ lw $t7, ($s4) -/* 018D50 80018150 00000000 */ nop -/* 018D54 80018154 01E21821 */ addu $v1, $t7, $v0 -/* 018D58 80018158 846B002C */ lh $t3, 0x2c($v1) -/* 018D5C 8001815C 00000000 */ nop -/* 018D60 80018160 14AB0008 */ bne $a1, $t3, .L80018184 -/* 018D64 80018164 00000000 */ nop -/* 018D68 80018168 A073003A */ sb $s3, 0x3a($v1) -/* 018D6C 8001816C 8E8D0000 */ lw $t5, ($s4) -/* 018D70 80018170 3C078012 */ lui $a3, %hi(D_8011AED0) # $a3, 0x8012 -/* 018D74 80018174 01B17021 */ addu $t6, $t5, $s1 -/* 018D78 80018178 A1C4003A */ sb $a0, 0x3a($t6) -/* 018D7C 8001817C 8CE7AED0 */ lw $a3, %lo(D_8011AED0)($a3) -/* 018D80 80018180 24060001 */ li $a2, 1 -.L80018184: -/* 018D84 80018184 24840001 */ addiu $a0, $a0, 1 -/* 018D88 80018188 0087082A */ slt $at, $a0, $a3 -/* 018D8C 8001818C 10200003 */ beqz $at, .L8001819C -/* 018D90 80018190 2442003C */ addiu $v0, $v0, 0x3c -/* 018D94 80018194 10C0FFED */ beqz $a2, .L8001814C -/* 018D98 80018198 00000000 */ nop -.L8001819C: -/* 018D9C 8001819C 8D020000 */ lw $v0, ($t0) -/* 018DA0 800181A0 26730001 */ addiu $s3, $s3, 1 -/* 018DA4 800181A4 0262082A */ slt $at, $s3, $v0 -/* 018DA8 800181A8 1420FFDE */ bnez $at, .L80018124 -/* 018DAC 800181AC 2631003C */ addiu $s1, $s1, 0x3c -.L800181B0: -/* 018DB0 800181B0 184000FC */ blez $v0, .L800185A4 -/* 018DB4 800181B4 00009825 */ move $s3, $zero -/* 018DB8 800181B8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 018DBC 800181BC 4481B000 */ mtc1 $at, $f22 -/* 018DC0 800181C0 4480A000 */ mtc1 $zero, $f20 -/* 018DC4 800181C4 00008825 */ move $s1, $zero -.L800181C8: -/* 018DC8 800181C8 8E990000 */ lw $t9, ($s4) -/* 018DCC 800181CC 27A40094 */ addiu $a0, $sp, 0x94 -/* 018DD0 800181D0 02399021 */ addu $s2, $s1, $t9 -/* 018DD4 800181D4 8E500028 */ lw $s0, 0x28($s2) -/* 018DD8 800181D8 27A5007C */ addiu $a1, $sp, 0x7c -/* 018DDC 800181DC 86180000 */ lh $t8, ($s0) -/* 018DE0 800181E0 8E17003C */ lw $s7, 0x3c($s0) -/* 018DE4 800181E4 A7B8007C */ sh $t8, 0x7c($sp) -/* 018DE8 800181E8 860C0002 */ lh $t4, 2($s0) -/* 018DEC 800181EC 00000000 */ nop -/* 018DF0 800181F0 A7AC007E */ sh $t4, 0x7e($sp) -/* 018DF4 800181F4 860F0004 */ lh $t7, 4($s0) -/* 018DF8 800181F8 E7B60084 */ swc1 $f22, 0x84($sp) -/* 018DFC 800181FC E7B40088 */ swc1 $f20, 0x88($sp) -/* 018E00 80018200 E7B4008C */ swc1 $f20, 0x8c($sp) -/* 018E04 80018204 E7B40090 */ swc1 $f20, 0x90($sp) -/* 018E08 80018208 0C01BF0C */ jal func_8006FC30 -/* 018E0C 8001820C A7AF0080 */ sh $t7, 0x80($sp) -/* 018E10 80018210 4405A000 */ mfc1 $a1, $f20 -/* 018E14 80018214 4406A000 */ mfc1 $a2, $f20 -/* 018E18 80018218 4407B000 */ mfc1 $a3, $f22 -/* 018E1C 8001821C 27AB00E8 */ addiu $t3, $sp, 0xe8 -/* 018E20 80018220 27AD00E4 */ addiu $t5, $sp, 0xe4 -/* 018E24 80018224 27AE00E0 */ addiu $t6, $sp, 0xe0 -/* 018E28 80018228 AFAE0018 */ sw $t6, 0x18($sp) -/* 018E2C 8001822C AFAD0014 */ sw $t5, 0x14($sp) -/* 018E30 80018230 AFAB0010 */ sw $t3, 0x10($sp) -/* 018E34 80018234 0C01BD93 */ jal func_8006F64C -/* 018E38 80018238 27A40094 */ addiu $a0, $sp, 0x94 -/* 018E3C 8001823C C7A400E8 */ lwc1 $f4, 0xe8($sp) -/* 018E40 80018240 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 018E44 80018244 E6440000 */ swc1 $f4, ($s2) -/* 018E48 80018248 C7A600E4 */ lwc1 $f6, 0xe4($sp) -/* 018E4C 8001824C 3C078012 */ lui $a3, %hi(D_8011AED0) # $a3, 0x8012 -/* 018E50 80018250 E6460004 */ swc1 $f6, 4($s2) -/* 018E54 80018254 C7A800E0 */ lwc1 $f8, 0xe0($sp) -/* 018E58 80018258 266C0001 */ addiu $t4, $s3, 1 -/* 018E5C 8001825C E6480008 */ swc1 $f8, 8($s2) -/* 018E60 80018260 C60A000C */ lwc1 $f10, 0xc($s0) -/* 018E64 80018264 C7B000E8 */ lwc1 $f16, 0xe8($sp) -/* 018E68 80018268 C6040010 */ lwc1 $f4, 0x10($s0) -/* 018E6C 8001826C 46105482 */ mul.s $f18, $f10, $f16 -/* 018E70 80018270 C7A600E4 */ lwc1 $f6, 0xe4($sp) -/* 018E74 80018274 C6100014 */ lwc1 $f16, 0x14($s0) -/* 018E78 80018278 46062202 */ mul.s $f8, $f4, $f6 -/* 018E7C 8001827C C7A400E0 */ lwc1 $f4, 0xe0($sp) -/* 018E80 80018280 00000000 */ nop -/* 018E84 80018284 46048182 */ mul.s $f6, $f16, $f4 -/* 018E88 80018288 46089280 */ add.s $f10, $f18, $f8 -/* 018E8C 8001828C 46065480 */ add.s $f18, $f10, $f6 -/* 018E90 80018290 46009207 */ neg.s $f8, $f18 -/* 018E94 80018294 E648000C */ swc1 $f8, 0xc($s2) -/* 018E98 80018298 C610000C */ lwc1 $f16, 0xc($s0) -/* 018E9C 8001829C 44819000 */ mtc1 $at, $f18 -/* 018EA0 800182A0 E6500010 */ swc1 $f16, 0x10($s2) -/* 018EA4 800182A4 C6040010 */ lwc1 $f4, 0x10($s0) -/* 018EA8 800182A8 3C014300 */ li $at, 0x43000000 # 128.000000 -/* 018EAC 800182AC E6440014 */ swc1 $f4, 0x14($s2) -/* 018EB0 800182B0 C60A0014 */ lwc1 $f10, 0x14($s0) -/* 018EB4 800182B4 44812000 */ mtc1 $at, $f4 -/* 018EB8 800182B8 E64A0018 */ swc1 $f10, 0x18($s2) -/* 018EBC 800182BC C6060008 */ lwc1 $f6, 8($s0) -/* 018EC0 800182C0 00000000 */ nop -/* 018EC4 800182C4 46123202 */ mul.s $f8, $f6, $f18 -/* 018EC8 800182C8 E648001C */ swc1 $f8, 0x1c($s2) -/* 018ECC 800182CC C6100008 */ lwc1 $f16, 8($s0) -/* 018ED0 800182D0 E6540024 */ swc1 $f20, 0x24($s2) -/* 018ED4 800182D4 46048282 */ mul.s $f10, $f16, $f4 -/* 018ED8 800182D8 E6540020 */ swc1 $f20, 0x20($s2) -/* 018EDC 800182DC 4459F800 */ cfc1 $t9, $31 -/* 018EE0 800182E0 00000000 */ nop -/* 018EE4 800182E4 37210003 */ ori $at, $t9, 3 -/* 018EE8 800182E8 38210002 */ xori $at, $at, 2 -/* 018EEC 800182EC 44C1F800 */ ctc1 $at, $31 -/* 018EF0 800182F0 00000000 */ nop -/* 018EF4 800182F4 460051A4 */ cvt.w.s $f6, $f10 -/* 018EF8 800182F8 44183000 */ mfc1 $t8, $f6 -/* 018EFC 800182FC 44D9F800 */ ctc1 $t9, $31 -/* 018F00 80018300 A658002C */ sh $t8, 0x2c($s2) -/* 018F04 80018304 8CE7AED0 */ lw $a3, %lo(D_8011AED0)($a3) -/* 018F08 80018308 00000000 */ nop -/* 018F0C 8001830C 0267082A */ slt $at, $s3, $a3 -/* 018F10 80018310 1020003A */ beqz $at, .L800183FC -/* 018F14 80018314 00000000 */ nop -/* 018F18 80018318 267E0001 */ addiu $fp, $s3, 1 -/* 018F1C 8001831C 15870002 */ bne $t4, $a3, .L80018328 -/* 018F20 80018320 03C02825 */ move $a1, $fp -/* 018F24 80018324 00002825 */ move $a1, $zero -.L80018328: -/* 018F28 80018328 0005B100 */ sll $s6, $a1, 4 -/* 018F2C 8001832C 8E8F0000 */ lw $t7, ($s4) -/* 018F30 80018330 02C5B023 */ subu $s6, $s6, $a1 -/* 018F34 80018334 0016B080 */ sll $s6, $s6, 2 -/* 018F38 80018338 01F65821 */ addu $t3, $t7, $s6 -/* 018F3C 8001833C 8D620028 */ lw $v0, 0x28($t3) -/* 018F40 80018340 C612000C */ lwc1 $f18, 0xc($s0) -/* 018F44 80018344 C448000C */ lwc1 $f8, 0xc($v0) -/* 018F48 80018348 C6100010 */ lwc1 $f16, 0x10($s0) -/* 018F4C 8001834C 46089001 */ sub.s $f0, $f18, $f8 -/* 018F50 80018350 C4440010 */ lwc1 $f4, 0x10($v0) -/* 018F54 80018354 46000482 */ mul.s $f18, $f0, $f0 -/* 018F58 80018358 46048081 */ sub.s $f2, $f16, $f4 -/* 018F5C 8001835C C60A0014 */ lwc1 $f10, 0x14($s0) -/* 018F60 80018360 C4460014 */ lwc1 $f6, 0x14($v0) -/* 018F64 80018364 46021202 */ mul.s $f8, $f2, $f2 -/* 018F68 80018368 46065381 */ sub.s $f14, $f10, $f6 -/* 018F6C 8001836C 460E7102 */ mul.s $f4, $f14, $f14 -/* 018F70 80018370 46089400 */ add.s $f16, $f18, $f8 -/* 018F74 80018374 0C0326B4 */ jal sqrtf -/* 018F78 80018378 46048300 */ add.s $f12, $f16, $f4 -/* 018F7C 8001837C E6400020 */ swc1 $f0, 0x20($s2) -/* 018F80 80018380 8E950000 */ lw $s5, ($s4) -/* 018F84 80018384 2401FFFF */ li $at, -1 -/* 018F88 80018388 02B66821 */ addu $t5, $s5, $s6 -/* 018F8C 8001838C 81A3003A */ lb $v1, 0x3a($t5) -/* 018F90 80018390 00000000 */ nop -/* 018F94 80018394 10610016 */ beq $v1, $at, .L800183F0 -/* 018F98 80018398 00037100 */ sll $t6, $v1, 4 -/* 018F9C 8001839C 01C37023 */ subu $t6, $t6, $v1 -/* 018FA0 800183A0 000E7080 */ sll $t6, $t6, 2 -/* 018FA4 800183A4 02AEC821 */ addu $t9, $s5, $t6 -/* 018FA8 800183A8 8F220028 */ lw $v0, 0x28($t9) -/* 018FAC 800183AC C60A000C */ lwc1 $f10, 0xc($s0) -/* 018FB0 800183B0 C446000C */ lwc1 $f6, 0xc($v0) -/* 018FB4 800183B4 C6120010 */ lwc1 $f18, 0x10($s0) -/* 018FB8 800183B8 46065001 */ sub.s $f0, $f10, $f6 -/* 018FBC 800183BC C4480010 */ lwc1 $f8, 0x10($v0) -/* 018FC0 800183C0 46000282 */ mul.s $f10, $f0, $f0 -/* 018FC4 800183C4 46089081 */ sub.s $f2, $f18, $f8 -/* 018FC8 800183C8 C6100014 */ lwc1 $f16, 0x14($s0) -/* 018FCC 800183CC C4440014 */ lwc1 $f4, 0x14($v0) -/* 018FD0 800183D0 46021182 */ mul.s $f6, $f2, $f2 -/* 018FD4 800183D4 46048381 */ sub.s $f14, $f16, $f4 -/* 018FD8 800183D8 460E7202 */ mul.s $f8, $f14, $f14 -/* 018FDC 800183DC 46065480 */ add.s $f18, $f10, $f6 -/* 018FE0 800183E0 0C0326B4 */ jal sqrtf -/* 018FE4 800183E4 46089300 */ add.s $f12, $f18, $f8 -/* 018FE8 800183E8 10000042 */ b .L800184F4 -/* 018FEC 800183EC E6400024 */ swc1 $f0, 0x24($s2) -.L800183F0: -/* 018FF0 800183F0 C6500020 */ lwc1 $f16, 0x20($s2) -/* 018FF4 800183F4 1000003F */ b .L800184F4 -/* 018FF8 800183F8 E6500024 */ swc1 $f16, 0x24($s2) -.L800183FC: -/* 018FFC 800183FC 8E950000 */ lw $s5, ($s4) -/* 019000 80018400 00000000 */ nop -/* 019004 80018404 02B1C021 */ addu $t8, $s5, $s1 -/* 019008 80018408 8305003A */ lb $a1, 0x3a($t8) -/* 01900C 8001840C 00000000 */ nop -/* 019010 80018410 24A50001 */ addiu $a1, $a1, 1 -/* 019014 80018414 14A70003 */ bne $a1, $a3, .L80018424 -/* 019018 80018418 0005B100 */ sll $s6, $a1, 4 -/* 01901C 8001841C 00002825 */ move $a1, $zero -/* 019020 80018420 0005B100 */ sll $s6, $a1, 4 -.L80018424: -/* 019024 80018424 02C5B023 */ subu $s6, $s6, $a1 -/* 019028 80018428 0016B080 */ sll $s6, $s6, 2 -/* 01902C 8001842C 02B66021 */ addu $t4, $s5, $s6 -/* 019030 80018430 8D820028 */ lw $v0, 0x28($t4) -/* 019034 80018434 C604000C */ lwc1 $f4, 0xc($s0) -/* 019038 80018438 C44A000C */ lwc1 $f10, 0xc($v0) -/* 01903C 8001843C C6060010 */ lwc1 $f6, 0x10($s0) -/* 019040 80018440 460A2001 */ sub.s $f0, $f4, $f10 -/* 019044 80018444 C4520010 */ lwc1 $f18, 0x10($v0) -/* 019048 80018448 46000102 */ mul.s $f4, $f0, $f0 -/* 01904C 8001844C 46123081 */ sub.s $f2, $f6, $f18 -/* 019050 80018450 C6080014 */ lwc1 $f8, 0x14($s0) -/* 019054 80018454 C4500014 */ lwc1 $f16, 0x14($v0) -/* 019058 80018458 46021282 */ mul.s $f10, $f2, $f2 -/* 01905C 8001845C 46104381 */ sub.s $f14, $f8, $f16 -/* 019060 80018460 460E7482 */ mul.s $f18, $f14, $f14 -/* 019064 80018464 460A2180 */ add.s $f6, $f4, $f10 -/* 019068 80018468 0C0326B4 */ jal sqrtf -/* 01906C 8001846C 46123300 */ add.s $f12, $f6, $f18 -/* 019070 80018470 E6400020 */ swc1 $f0, 0x20($s2) -/* 019074 80018474 8E950000 */ lw $s5, ($s4) -/* 019078 80018478 2401FFFF */ li $at, -1 -/* 01907C 8001847C 02B67821 */ addu $t7, $s5, $s6 -/* 019080 80018480 81E3003A */ lb $v1, 0x3a($t7) -/* 019084 80018484 00000000 */ nop -/* 019088 80018488 10610017 */ beq $v1, $at, .L800184E8 -/* 01908C 8001848C 00035900 */ sll $t3, $v1, 4 -/* 019090 80018490 01635823 */ subu $t3, $t3, $v1 -/* 019094 80018494 000B5880 */ sll $t3, $t3, 2 -/* 019098 80018498 02AB6821 */ addu $t5, $s5, $t3 -/* 01909C 8001849C 8DA20028 */ lw $v0, 0x28($t5) -/* 0190A0 800184A0 C608000C */ lwc1 $f8, 0xc($s0) -/* 0190A4 800184A4 C450000C */ lwc1 $f16, 0xc($v0) -/* 0190A8 800184A8 C6040010 */ lwc1 $f4, 0x10($s0) -/* 0190AC 800184AC 46104001 */ sub.s $f0, $f8, $f16 -/* 0190B0 800184B0 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 0190B4 800184B4 46000202 */ mul.s $f8, $f0, $f0 -/* 0190B8 800184B8 460A2081 */ sub.s $f2, $f4, $f10 -/* 0190BC 800184BC C6060014 */ lwc1 $f6, 0x14($s0) -/* 0190C0 800184C0 C4520014 */ lwc1 $f18, 0x14($v0) -/* 0190C4 800184C4 46021402 */ mul.s $f16, $f2, $f2 -/* 0190C8 800184C8 46123381 */ sub.s $f14, $f6, $f18 -/* 0190CC 800184CC 460E7282 */ mul.s $f10, $f14, $f14 -/* 0190D0 800184D0 46104100 */ add.s $f4, $f8, $f16 -/* 0190D4 800184D4 0C0326B4 */ jal sqrtf -/* 0190D8 800184D8 460A2300 */ add.s $f12, $f4, $f10 -/* 0190DC 800184DC E6400024 */ swc1 $f0, 0x24($s2) -/* 0190E0 800184E0 10000004 */ b .L800184F4 -/* 0190E4 800184E4 267E0001 */ addiu $fp, $s3, 1 -.L800184E8: -/* 0190E8 800184E8 C6460020 */ lwc1 $f6, 0x20($s2) -/* 0190EC 800184EC 267E0001 */ addiu $fp, $s3, 1 -/* 0190F0 800184F0 E6460024 */ swc1 $f6, 0x24($s2) -.L800184F4: -/* 0190F4 800184F4 82EE000B */ lb $t6, 0xb($s7) -/* 0190F8 800184F8 03C09825 */ move $s3, $fp -/* 0190FC 800184FC A24E002E */ sb $t6, 0x2e($s2) -/* 019100 80018500 82F9000F */ lb $t9, 0xf($s7) -/* 019104 80018504 2631003C */ addiu $s1, $s1, 0x3c -/* 019108 80018508 A2590032 */ sb $t9, 0x32($s2) -/* 01910C 8001850C 82F80013 */ lb $t8, 0x13($s7) -/* 019110 80018510 00000000 */ nop -/* 019114 80018514 A2580036 */ sb $t8, 0x36($s2) -/* 019118 80018518 82EC000C */ lb $t4, 0xc($s7) -/* 01911C 8001851C 00000000 */ nop -/* 019120 80018520 A24C002F */ sb $t4, 0x2f($s2) -/* 019124 80018524 82EF0010 */ lb $t7, 0x10($s7) -/* 019128 80018528 00000000 */ nop -/* 01912C 8001852C A24F0033 */ sb $t7, 0x33($s2) -/* 019130 80018530 82EB0014 */ lb $t3, 0x14($s7) -/* 019134 80018534 00000000 */ nop -/* 019138 80018538 A24B0037 */ sb $t3, 0x37($s2) -/* 01913C 8001853C 82ED000D */ lb $t5, 0xd($s7) -/* 019140 80018540 00000000 */ nop -/* 019144 80018544 A24D0030 */ sb $t5, 0x30($s2) -/* 019148 80018548 82EE0011 */ lb $t6, 0x11($s7) -/* 01914C 8001854C 3C0D8012 */ lui $t5, %hi(D_8011AED4) # $t5, 0x8012 -/* 019150 80018550 A24E0034 */ sb $t6, 0x34($s2) -/* 019154 80018554 82F90015 */ lb $t9, 0x15($s7) -/* 019158 80018558 00000000 */ nop -/* 01915C 8001855C A2590038 */ sb $t9, 0x38($s2) -/* 019160 80018560 82F8000E */ lb $t8, 0xe($s7) -/* 019164 80018564 00000000 */ nop -/* 019168 80018568 A2580031 */ sb $t8, 0x31($s2) -/* 01916C 8001856C 82EC0012 */ lb $t4, 0x12($s7) -/* 019170 80018570 00000000 */ nop -/* 019174 80018574 A24C0035 */ sb $t4, 0x35($s2) -/* 019178 80018578 82EF0016 */ lb $t7, 0x16($s7) -/* 01917C 8001857C 00000000 */ nop -/* 019180 80018580 A24F0039 */ sb $t7, 0x39($s2) -/* 019184 80018584 92EB0019 */ lbu $t3, 0x19($s7) -/* 019188 80018588 00000000 */ nop -/* 01918C 8001858C A24B003B */ sb $t3, 0x3b($s2) -/* 019190 80018590 8DADAED4 */ lw $t5, %lo(D_8011AED4)($t5) -/* 019194 80018594 00000000 */ nop -/* 019198 80018598 03CD082A */ slt $at, $fp, $t5 -/* 01919C 8001859C 1420FF0A */ bnez $at, .L800181C8 -/* 0191A0 800185A0 00000000 */ nop -.L800185A4: -/* 0191A4 800185A4 8FBF005C */ lw $ra, 0x5c($sp) -/* 0191A8 800185A8 C7B50028 */ lwc1 $f21, 0x28($sp) -/* 0191AC 800185AC C7B4002C */ lwc1 $f20, 0x2c($sp) -/* 0191B0 800185B0 C7B70030 */ lwc1 $f23, 0x30($sp) -/* 0191B4 800185B4 C7B60034 */ lwc1 $f22, 0x34($sp) -/* 0191B8 800185B8 8FB00038 */ lw $s0, 0x38($sp) -/* 0191BC 800185BC 8FB1003C */ lw $s1, 0x3c($sp) -/* 0191C0 800185C0 8FB20040 */ lw $s2, 0x40($sp) -/* 0191C4 800185C4 8FB30044 */ lw $s3, 0x44($sp) -/* 0191C8 800185C8 8FB40048 */ lw $s4, 0x48($sp) -/* 0191CC 800185CC 8FB5004C */ lw $s5, 0x4c($sp) -/* 0191D0 800185D0 8FB60050 */ lw $s6, 0x50($sp) -/* 0191D4 800185D4 8FB70054 */ lw $s7, 0x54($sp) -/* 0191D8 800185D8 8FBE0058 */ lw $fp, 0x58($sp) -/* 0191DC 800185DC 03E00008 */ jr $ra -/* 0191E0 800185E0 27BD0118 */ addiu $sp, $sp, 0x118 - -glabel func_800185E4 -/* 0191E4 800185E4 27BDFF88 */ addiu $sp, $sp, -0x78 -/* 0191E8 800185E8 3C028012 */ lui $v0, %hi(D_8011AED0) # $v0, 0x8012 -/* 0191EC 800185EC 8C42AED0 */ lw $v0, %lo(D_8011AED0)($v0) -/* 0191F0 800185F0 AFA70084 */ sw $a3, 0x84($sp) -/* 0191F4 800185F4 00A03825 */ move $a3, $a1 -/* 0191F8 800185F8 AFBF001C */ sw $ra, 0x1c($sp) -/* 0191FC 800185FC E7B50010 */ swc1 $f21, 0x10($sp) -/* 019200 80018600 E7B40014 */ swc1 $f20, 0x14($sp) -/* 019204 80018604 AFA40078 */ sw $a0, 0x78($sp) -/* 019208 80018608 AFA5007C */ sw $a1, 0x7c($sp) -/* 01920C 8001860C 14400003 */ bnez $v0, .L8001861C -/* 019210 80018610 AFA60080 */ sw $a2, 0x80($sp) -/* 019214 80018614 10000190 */ b .L80018C58 -/* 019218 80018618 24020001 */ li $v0, 1 -.L8001861C: -/* 01921C 8001861C 8FAF0078 */ lw $t7, 0x78($sp) -/* 019220 80018620 2408003C */ li $t0, 60 -/* 019224 80018624 01E80019 */ multu $t7, $t0 -/* 019228 80018628 3C068012 */ lui $a2, %hi(D_8011AECC) # $a2, 0x8012 -/* 01922C 8001862C 8CC6AECC */ lw $a2, %lo(D_8011AECC)($a2) -/* 019230 80018630 8FB90090 */ lw $t9, 0x90($sp) -/* 019234 80018634 00005825 */ move $t3, $zero -/* 019238 80018638 00004812 */ mflo $t1 -/* 01923C 8001863C 01261821 */ addu $v1, $t1, $a2 -/* 019240 80018640 11E00003 */ beqz $t7, .L80018650 -/* 019244 80018644 00602825 */ move $a1, $v1 -/* 019248 80018648 10000005 */ b .L80018660 -/* 01924C 8001864C 2464FFC4 */ addiu $a0, $v1, -0x3c -.L80018650: -/* 019250 80018650 00480019 */ multu $v0, $t0 -/* 019254 80018654 0000C012 */ mflo $t8 -/* 019258 80018658 03062021 */ addu $a0, $t8, $a2 -/* 01925C 8001865C 2484FFC4 */ addiu $a0, $a0, -0x3c -.L80018660: -/* 019260 80018660 93230000 */ lbu $v1, ($t9) -/* 019264 80018664 00000000 */ nop -/* 019268 80018668 10600011 */ beqz $v1, .L800186B0 -/* 01926C 8001866C 00000000 */ nop -/* 019270 80018670 80A2003A */ lb $v0, 0x3a($a1) -/* 019274 80018674 240AFFFF */ li $t2, -1 -/* 019278 80018678 11420005 */ beq $t2, $v0, .L80018690 -/* 01927C 8001867C 00000000 */ nop -/* 019280 80018680 00480019 */ multu $v0, $t0 -/* 019284 80018684 00006012 */ mflo $t4 -/* 019288 80018688 01862821 */ addu $a1, $t4, $a2 -/* 01928C 8001868C 00000000 */ nop -.L80018690: -/* 019290 80018690 8082003A */ lb $v0, 0x3a($a0) -/* 019294 80018694 00000000 */ nop -/* 019298 80018698 11420005 */ beq $t2, $v0, .L800186B0 -/* 01929C 8001869C 00000000 */ nop -/* 0192A0 800186A0 00480019 */ multu $v0, $t0 -/* 0192A4 800186A4 00006812 */ mflo $t5 -/* 0192A8 800186A8 01A62021 */ addu $a0, $t5, $a2 -/* 0192AC 800186AC 00000000 */ nop -.L800186B0: -/* 0192B0 800186B0 14600031 */ bnez $v1, .L80018778 -/* 0192B4 800186B4 240AFFFF */ li $t2, -1 -/* 0192B8 800186B8 808E003A */ lb $t6, 0x3a($a0) -/* 0192BC 800186BC 00000000 */ nop -/* 0192C0 800186C0 154E002D */ bne $t2, $t6, .L80018778 -/* 0192C4 800186C4 00000000 */ nop -/* 0192C8 800186C8 80A2003A */ lb $v0, 0x3a($a1) -/* 0192CC 800186CC 00000000 */ nop -/* 0192D0 800186D0 11420029 */ beq $t2, $v0, .L80018778 -/* 0192D4 800186D4 00000000 */ nop -/* 0192D8 800186D8 00480019 */ multu $v0, $t0 -/* 0192DC 800186DC C4E8000C */ lwc1 $f8, 0xc($a3) -/* 0192E0 800186E0 C4E60010 */ lwc1 $f6, 0x10($a3) -/* 0192E4 800186E4 00007812 */ mflo $t7 -/* 0192E8 800186E8 01E61821 */ addu $v1, $t7, $a2 -/* 0192EC 800186EC C4640010 */ lwc1 $f4, 0x10($v1) -/* 0192F0 800186F0 C46A0014 */ lwc1 $f10, 0x14($v1) -/* 0192F4 800186F4 46082001 */ sub.s $f0, $f4, $f8 -/* 0192F8 800186F8 C4E80014 */ lwc1 $f8, 0x14($a3) -/* 0192FC 800186FC 46065501 */ sub.s $f20, $f10, $f6 -/* 019300 80018700 C4640018 */ lwc1 $f4, 0x18($v1) -/* 019304 80018704 46000282 */ mul.s $f10, $f0, $f0 -/* 019308 80018708 46082081 */ sub.s $f2, $f4, $f8 -/* 01930C 8001870C AFA00070 */ sw $zero, 0x70($sp) -/* 019310 80018710 AFA90038 */ sw $t1, 0x38($sp) -/* 019314 80018714 4614A182 */ mul.s $f6, $f20, $f20 -/* 019318 80018718 AFA7007C */ sw $a3, 0x7c($sp) -/* 01931C 8001871C AFA5004C */ sw $a1, 0x4c($sp) -/* 019320 80018720 AFA40048 */ sw $a0, 0x48($sp) -/* 019324 80018724 46021202 */ mul.s $f8, $f2, $f2 -/* 019328 80018728 46065100 */ add.s $f4, $f10, $f6 -/* 01932C 8001872C AFA30044 */ sw $v1, 0x44($sp) -/* 019330 80018730 0C0326B4 */ jal sqrtf -/* 019334 80018734 46082300 */ add.s $f12, $f4, $f8 -/* 019338 80018738 8FA30044 */ lw $v1, 0x44($sp) -/* 01933C 8001873C 8FA40048 */ lw $a0, 0x48($sp) -/* 019340 80018740 8478002C */ lh $t8, 0x2c($v1) -/* 019344 80018744 8FA5004C */ lw $a1, 0x4c($sp) -/* 019348 80018748 44985000 */ mtc1 $t8, $f10 -/* 01934C 8001874C 8FA7007C */ lw $a3, 0x7c($sp) -/* 019350 80018750 468051A0 */ cvt.s.w $f6, $f10 -/* 019354 80018754 8FA80078 */ lw $t0, 0x78($sp) -/* 019358 80018758 8FA90038 */ lw $t1, 0x38($sp) -/* 01935C 8001875C 4606003C */ c.lt.s $f0, $f6 -/* 019360 80018760 8FAB0070 */ lw $t3, 0x70($sp) -/* 019364 80018764 45000004 */ bc1f .L80018778 -/* 019368 80018768 00000000 */ nop -/* 01936C 8001876C 00602825 */ move $a1, $v1 -/* 019370 80018770 240B0001 */ li $t3, 1 -/* 019374 80018774 AFA80078 */ sw $t0, 0x78($sp) -.L80018778: -/* 019378 80018778 C4A40010 */ lwc1 $f4, 0x10($a1) -/* 01937C 8001877C C4880010 */ lwc1 $f8, 0x10($a0) -/* 019380 80018780 C4AA0014 */ lwc1 $f10, 0x14($a1) -/* 019384 80018784 C4860014 */ lwc1 $f6, 0x14($a0) -/* 019388 80018788 46082001 */ sub.s $f0, $f4, $f8 -/* 01938C 8001878C C4880018 */ lwc1 $f8, 0x18($a0) -/* 019390 80018790 46065501 */ sub.s $f20, $f10, $f6 -/* 019394 80018794 C4A40018 */ lwc1 $f4, 0x18($a1) -/* 019398 80018798 46000282 */ mul.s $f10, $f0, $f0 -/* 01939C 8001879C 46082081 */ sub.s $f2, $f4, $f8 -/* 0193A0 800187A0 E7A0006C */ swc1 $f0, 0x6c($sp) -/* 0193A4 800187A4 E7A20064 */ swc1 $f2, 0x64($sp) -/* 0193A8 800187A8 4614A182 */ mul.s $f6, $f20, $f20 -/* 0193AC 800187AC AFAB0070 */ sw $t3, 0x70($sp) -/* 0193B0 800187B0 AFA90038 */ sw $t1, 0x38($sp) -/* 0193B4 800187B4 AFA7007C */ sw $a3, 0x7c($sp) -/* 0193B8 800187B8 46021202 */ mul.s $f8, $f2, $f2 -/* 0193BC 800187BC 46065100 */ add.s $f4, $f10, $f6 -/* 0193C0 800187C0 AFA5004C */ sw $a1, 0x4c($sp) -/* 0193C4 800187C4 AFA40048 */ sw $a0, 0x48($sp) -/* 0193C8 800187C8 0C0326B4 */ jal sqrtf -/* 0193CC 800187CC 46082300 */ add.s $f12, $f4, $f8 -/* 0193D0 800187D0 44805800 */ mtc1 $zero, $f11 -/* 0193D4 800187D4 44805000 */ mtc1 $zero, $f10 -/* 0193D8 800187D8 460001A1 */ cvt.d.s $f6, $f0 -/* 0193DC 800187DC 4626503C */ c.lt.d $f10, $f6 -/* 0193E0 800187E0 8FA40048 */ lw $a0, 0x48($sp) -/* 0193E4 800187E4 8FA5004C */ lw $a1, 0x4c($sp) -/* 0193E8 800187E8 8FA7007C */ lw $a3, 0x7c($sp) -/* 0193EC 800187EC 8FA80078 */ lw $t0, 0x78($sp) -/* 0193F0 800187F0 8FA90038 */ lw $t1, 0x38($sp) -/* 0193F4 800187F4 8FAB0070 */ lw $t3, 0x70($sp) -/* 0193F8 800187F8 4500000C */ bc1f .L8001882C -/* 0193FC 800187FC 240AFFFF */ li $t2, -1 -/* 019400 80018800 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 019404 80018804 44812000 */ mtc1 $at, $f4 -/* 019408 80018808 C7A8006C */ lwc1 $f8, 0x6c($sp) -/* 01940C 8001880C 46002083 */ div.s $f2, $f4, $f0 -/* 019410 80018810 C7A60064 */ lwc1 $f6, 0x64($sp) -/* 019414 80018814 46024282 */ mul.s $f10, $f8, $f2 -/* 019418 80018818 00000000 */ nop -/* 01941C 8001881C 4602A502 */ mul.s $f20, $f20, $f2 -/* 019420 80018820 E7AA006C */ swc1 $f10, 0x6c($sp) -/* 019424 80018824 46023102 */ mul.s $f4, $f6, $f2 -/* 019428 80018828 E7A40064 */ swc1 $f4, 0x64($sp) -.L8001882C: -/* 01942C 8001882C C4AE0000 */ lwc1 $f14, ($a1) -/* 019430 80018830 C4E0000C */ lwc1 $f0, 0xc($a3) -/* 019434 80018834 C4B00004 */ lwc1 $f16, 4($a1) -/* 019438 80018838 46007202 */ mul.s $f8, $f14, $f0 -/* 01943C 8001883C C4E20010 */ lwc1 $f2, 0x10($a3) -/* 019440 80018840 C4B20008 */ lwc1 $f18, 8($a1) -/* 019444 80018844 C4EC0014 */ lwc1 $f12, 0x14($a3) -/* 019448 80018848 46028282 */ mul.s $f10, $f16, $f2 -/* 01944C 8001884C 8FA6008C */ lw $a2, 0x8c($sp) -/* 019450 80018850 460C9102 */ mul.s $f4, $f18, $f12 -/* 019454 80018854 460A4180 */ add.s $f6, $f8, $f10 -/* 019458 80018858 C4AA000C */ lwc1 $f10, 0xc($a1) -/* 01945C 8001885C 46043200 */ add.s $f8, $f6, $f4 -/* 019460 80018860 C7A4006C */ lwc1 $f4, 0x6c($sp) -/* 019464 80018864 460A4180 */ add.s $f6, $f8, $f10 -/* 019468 80018868 46047202 */ mul.s $f8, $f14, $f4 -/* 01946C 8001886C E7A60058 */ swc1 $f6, 0x58($sp) -/* 019470 80018870 E7A60020 */ swc1 $f6, 0x20($sp) -/* 019474 80018874 46148282 */ mul.s $f10, $f16, $f20 -/* 019478 80018878 460A4200 */ add.s $f8, $f8, $f10 -/* 01947C 8001887C C7AA0064 */ lwc1 $f10, 0x64($sp) -/* 019480 80018880 00000000 */ nop -/* 019484 80018884 460A9182 */ mul.s $f6, $f18, $f10 -/* 019488 80018888 46064200 */ add.s $f8, $f8, $f6 -/* 01948C 8001888C C7A60020 */ lwc1 $f6, 0x20($sp) -/* 019490 80018890 E7A8005C */ swc1 $f8, 0x5c($sp) -/* 019494 80018894 46003187 */ neg.s $f6, $f6 -/* 019498 80018898 00000000 */ nop -/* 01949C 8001889C 46083183 */ div.s $f6, $f6, $f8 -/* 0194A0 800188A0 E7A6005C */ swc1 $f6, 0x5c($sp) -/* 0194A4 800188A4 C4880000 */ lwc1 $f8, ($a0) -/* 0194A8 800188A8 00000000 */ nop -/* 0194AC 800188AC E7A8003C */ swc1 $f8, 0x3c($sp) -/* 0194B0 800188B0 C4880004 */ lwc1 $f8, 4($a0) -/* 0194B4 800188B4 00000000 */ nop -/* 0194B8 800188B8 E7A80034 */ swc1 $f8, 0x34($sp) -/* 0194BC 800188BC C4880008 */ lwc1 $f8, 8($a0) -/* 0194C0 800188C0 E7A40020 */ swc1 $f4, 0x20($sp) -/* 0194C4 800188C4 E7A80030 */ swc1 $f8, 0x30($sp) -/* 0194C8 800188C8 C7A8003C */ lwc1 $f8, 0x3c($sp) -/* 0194CC 800188CC E7AA0024 */ swc1 $f10, 0x24($sp) -/* 0194D0 800188D0 46004102 */ mul.s $f4, $f8, $f0 -/* 0194D4 800188D4 C7AA0034 */ lwc1 $f10, 0x34($sp) -/* 0194D8 800188D8 E7A60028 */ swc1 $f6, 0x28($sp) -/* 0194DC 800188DC E7A8002C */ swc1 $f8, 0x2c($sp) -/* 0194E0 800188E0 46025182 */ mul.s $f6, $f10, $f2 -/* 0194E4 800188E4 46062100 */ add.s $f4, $f4, $f6 -/* 0194E8 800188E8 C7A60030 */ lwc1 $f6, 0x30($sp) -/* 0194EC 800188EC 00000000 */ nop -/* 0194F0 800188F0 460C3202 */ mul.s $f8, $f6, $f12 -/* 0194F4 800188F4 C7AC0028 */ lwc1 $f12, 0x28($sp) -/* 0194F8 800188F8 46082100 */ add.s $f4, $f4, $f8 -/* 0194FC 800188FC C488000C */ lwc1 $f8, 0xc($a0) -/* 019500 80018900 00000000 */ nop -/* 019504 80018904 46082100 */ add.s $f4, $f4, $f8 -/* 019508 80018908 C7A8002C */ lwc1 $f8, 0x2c($sp) -/* 01950C 8001890C E7AA002C */ swc1 $f10, 0x2c($sp) -/* 019510 80018910 C7AA0020 */ lwc1 $f10, 0x20($sp) -/* 019514 80018914 E7A40050 */ swc1 $f4, 0x50($sp) -/* 019518 80018918 460A4202 */ mul.s $f8, $f8, $f10 -/* 01951C 8001891C C7AA002C */ lwc1 $f10, 0x2c($sp) -/* 019520 80018920 00000000 */ nop -/* 019524 80018924 46145282 */ mul.s $f10, $f10, $f20 -/* 019528 80018928 44805800 */ mtc1 $zero, $f11 -/* 01952C 8001892C 460A4200 */ add.s $f8, $f8, $f10 -/* 019530 80018930 C7AA0024 */ lwc1 $f10, 0x24($sp) -/* 019534 80018934 00000000 */ nop -/* 019538 80018938 460A3182 */ mul.s $f6, $f6, $f10 -/* 01953C 8001893C 44805000 */ mtc1 $zero, $f10 -/* 019540 80018940 46064000 */ add.s $f0, $f8, $f6 -/* 019544 80018944 00000000 */ nop -/* 019548 80018948 46002003 */ div.s $f0, $f4, $f0 -/* 01954C 8001894C 46006080 */ add.s $f2, $f12, $f0 -/* 019550 80018950 46001221 */ cvt.d.s $f8, $f2 -/* 019554 80018954 46285032 */ c.eq.d $f10, $f8 -/* 019558 80018958 00000000 */ nop -/* 01955C 8001895C 45010003 */ bc1t .L8001896C -/* 019560 80018960 00000000 */ nop -/* 019564 80018964 10000003 */ b .L80018974 -/* 019568 80018968 46026003 */ div.s $f0, $f12, $f2 -.L8001896C: -/* 01956C 8001896C 44800000 */ mtc1 $zero, $f0 -/* 019570 80018970 00000000 */ nop -.L80018974: -/* 019574 80018974 E4C00000 */ swc1 $f0, ($a2) -/* 019578 80018978 84F90048 */ lh $t9, 0x48($a3) -/* 01957C 8001897C 24030001 */ li $v1, 1 -/* 019580 80018980 14790019 */ bne $v1, $t9, .L800189E8 -/* 019584 80018984 00000000 */ nop -/* 019588 80018988 8CE20064 */ lw $v0, 0x64($a3) -/* 01958C 8001898C 3C01800E */ lui $at, %hi(D_800E5624) # $at, 0x800e -/* 019590 80018990 844C0000 */ lh $t4, ($v0) -/* 019594 80018994 00000000 */ nop -/* 019598 80018998 154C0013 */ bne $t2, $t4, .L800189E8 -/* 01959C 8001899C 00000000 */ nop -/* 0195A0 800189A0 C4275620 */ lwc1 $f7, %lo(D_800E5620)($at) -/* 0195A4 800189A4 C4265624 */ lwc1 $f6, %lo(D_800E5624)($at) -/* 0195A8 800189A8 460000A1 */ cvt.d.s $f2, $f0 -/* 0195AC 800189AC 4626103C */ c.lt.d $f2, $f6 -/* 0195B0 800189B0 3C01800E */ lui $at, %hi(D_800E562C) # $at, 0x800e -/* 0195B4 800189B4 45000003 */ bc1f .L800189C4 -/* 0195B8 800189B8 00000000 */ nop -/* 0195BC 800189BC 100000A6 */ b .L80018C58 -/* 0195C0 800189C0 2402FF9C */ li $v0, -100 -.L800189C4: -/* 0195C4 800189C4 C4255628 */ lwc1 $f5, %lo(D_800E5628)($at) -/* 0195C8 800189C8 C424562C */ lwc1 $f4, %lo(D_800E562C)($at) -/* 0195CC 800189CC 00000000 */ nop -/* 0195D0 800189D0 4622203C */ c.lt.d $f4, $f2 -/* 0195D4 800189D4 00000000 */ nop -/* 0195D8 800189D8 45000003 */ bc1f .L800189E8 -/* 0195DC 800189DC 00000000 */ nop -/* 0195E0 800189E0 1000009D */ b .L80018C58 -/* 0195E4 800189E4 2402FF9C */ li $v0, -100 -.L800189E8: -/* 0195E8 800189E8 44801000 */ mtc1 $zero, $f2 -/* 0195EC 800189EC 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 0195F0 800189F0 4602603E */ c.le.s $f12, $f2 -/* 0195F4 800189F4 00000000 */ nop -/* 0195F8 800189F8 45000087 */ bc1f .L80018C18 -/* 0195FC 800189FC 00000000 */ nop -/* 019600 80018A00 11600004 */ beqz $t3, .L80018A14 -/* 019604 80018A04 240D0001 */ li $t5, 1 -/* 019608 80018A08 8FAE0090 */ lw $t6, 0x90($sp) -/* 01960C 80018A0C 10000006 */ b .L80018A28 -/* 019610 80018A10 A1CD0000 */ sb $t5, ($t6) -.L80018A14: -/* 019614 80018A14 80AF003A */ lb $t7, 0x3a($a1) -/* 019618 80018A18 8FB80090 */ lw $t8, 0x90($sp) -/* 01961C 80018A1C 154F0002 */ bne $t2, $t7, .L80018A28 -/* 019620 80018A20 00000000 */ nop -/* 019624 80018A24 A3000000 */ sb $zero, ($t8) -.L80018A28: -/* 019628 80018A28 C4AA0000 */ lwc1 $f10, ($a1) -/* 01962C 80018A2C C7A80080 */ lwc1 $f8, 0x80($sp) -/* 019630 80018A30 C4A40004 */ lwc1 $f4, 4($a1) -/* 019634 80018A34 46085182 */ mul.s $f6, $f10, $f8 -/* 019638 80018A38 C7AA0084 */ lwc1 $f10, 0x84($sp) -/* 01963C 80018A3C 00A02025 */ move $a0, $a1 -/* 019640 80018A40 3C0D8012 */ lui $t5, %hi(D_8011AED0) # $t5, 0x8012 -/* 019644 80018A44 460A2202 */ mul.s $f8, $f4, $f10 -/* 019648 80018A48 C4AA0008 */ lwc1 $f10, 8($a1) -/* 01964C 80018A4C 3C0E8012 */ lui $t6, %hi(D_8011AECC) # $t6, 0x8012 -/* 019650 80018A50 46083100 */ add.s $f4, $f6, $f8 -/* 019654 80018A54 C7A60088 */ lwc1 $f6, 0x88($sp) -/* 019658 80018A58 00000000 */ nop -/* 01965C 80018A5C 46065202 */ mul.s $f8, $f10, $f6 -/* 019660 80018A60 C4A6000C */ lwc1 $f6, 0xc($a1) -/* 019664 80018A64 46082280 */ add.s $f10, $f4, $f8 -/* 019668 80018A68 46065500 */ add.s $f20, $f10, $f6 -/* 01966C 80018A6C 4614103C */ c.lt.s $f2, $f20 -/* 019670 80018A70 00000000 */ nop -/* 019674 80018A74 45000065 */ bc1f .L80018C0C -/* 019678 80018A78 00000000 */ nop -/* 01967C 80018A7C 84F90048 */ lh $t9, 0x48($a3) -/* 019680 80018A80 00000000 */ nop -/* 019684 80018A84 14790007 */ bne $v1, $t9, .L80018AA4 -/* 019688 80018A88 00000000 */ nop -/* 01968C 80018A8C 90A3003B */ lbu $v1, 0x3b($a1) -/* 019690 80018A90 8CE20064 */ lw $v0, 0x64($a3) -/* 019694 80018A94 10600003 */ beqz $v1, .L80018AA4 -/* 019698 80018A98 240C0078 */ li $t4, 120 -/* 01969C 80018A9C A04301F8 */ sb $v1, 0x1f8($v0) -/* 0196A0 80018AA0 A04C01F9 */ sb $t4, 0x1f9($v0) -.L80018AA4: -/* 0196A4 80018AA4 8DADAED0 */ lw $t5, %lo(D_8011AED0)($t5) -/* 0196A8 80018AA8 25080001 */ addiu $t0, $t0, 1 -/* 0196AC 80018AAC 150D0002 */ bne $t0, $t5, .L80018AB8 -/* 0196B0 80018AB0 2529003C */ addiu $t1, $t1, 0x3c -/* 0196B4 80018AB4 00004825 */ move $t1, $zero -.L80018AB8: -/* 0196B8 80018AB8 8DCEAECC */ lw $t6, %lo(D_8011AECC)($t6) -/* 0196BC 80018ABC C4E0000C */ lwc1 $f0, 0xc($a3) -/* 0196C0 80018AC0 012E2821 */ addu $a1, $t1, $t6 -/* 0196C4 80018AC4 C4AE0000 */ lwc1 $f14, ($a1) -/* 0196C8 80018AC8 C4B00004 */ lwc1 $f16, 4($a1) -/* 0196CC 80018ACC 46007102 */ mul.s $f4, $f14, $f0 -/* 0196D0 80018AD0 C4E20010 */ lwc1 $f2, 0x10($a3) -/* 0196D4 80018AD4 C4B20008 */ lwc1 $f18, 8($a1) -/* 0196D8 80018AD8 C4EC0014 */ lwc1 $f12, 0x14($a3) -/* 0196DC 80018ADC 46028202 */ mul.s $f8, $f16, $f2 -/* 0196E0 80018AE0 00001025 */ move $v0, $zero -/* 0196E4 80018AE4 460C9182 */ mul.s $f6, $f18, $f12 -/* 0196E8 80018AE8 46082280 */ add.s $f10, $f4, $f8 -/* 0196EC 80018AEC C4A8000C */ lwc1 $f8, 0xc($a1) -/* 0196F0 80018AF0 46065100 */ add.s $f4, $f10, $f6 -/* 0196F4 80018AF4 C7A6006C */ lwc1 $f6, 0x6c($sp) -/* 0196F8 80018AF8 46082280 */ add.s $f10, $f4, $f8 -/* 0196FC 80018AFC 46067102 */ mul.s $f4, $f14, $f6 -/* 019700 80018B00 E7AA0058 */ swc1 $f10, 0x58($sp) -/* 019704 80018B04 E7AA002C */ swc1 $f10, 0x2c($sp) -/* 019708 80018B08 46148202 */ mul.s $f8, $f16, $f20 -/* 01970C 80018B0C 46082100 */ add.s $f4, $f4, $f8 -/* 019710 80018B10 C7A80064 */ lwc1 $f8, 0x64($sp) -/* 019714 80018B14 00000000 */ nop -/* 019718 80018B18 46089282 */ mul.s $f10, $f18, $f8 -/* 01971C 80018B1C 460A2100 */ add.s $f4, $f4, $f10 -/* 019720 80018B20 C7AA002C */ lwc1 $f10, 0x2c($sp) -/* 019724 80018B24 E7A4005C */ swc1 $f4, 0x5c($sp) -/* 019728 80018B28 46005287 */ neg.s $f10, $f10 -/* 01972C 80018B2C 00000000 */ nop -/* 019730 80018B30 46045283 */ div.s $f10, $f10, $f4 -/* 019734 80018B34 E7AA005C */ swc1 $f10, 0x5c($sp) -/* 019738 80018B38 C4840000 */ lwc1 $f4, ($a0) -/* 01973C 80018B3C 00000000 */ nop -/* 019740 80018B40 E7A4003C */ swc1 $f4, 0x3c($sp) -/* 019744 80018B44 C4840004 */ lwc1 $f4, 4($a0) -/* 019748 80018B48 00000000 */ nop -/* 01974C 80018B4C E7A40034 */ swc1 $f4, 0x34($sp) -/* 019750 80018B50 C4840008 */ lwc1 $f4, 8($a0) -/* 019754 80018B54 E7A6002C */ swc1 $f6, 0x2c($sp) -/* 019758 80018B58 E7A40030 */ swc1 $f4, 0x30($sp) -/* 01975C 80018B5C C7A4003C */ lwc1 $f4, 0x3c($sp) -/* 019760 80018B60 E7A80028 */ swc1 $f8, 0x28($sp) -/* 019764 80018B64 46002182 */ mul.s $f6, $f4, $f0 -/* 019768 80018B68 C7A80034 */ lwc1 $f8, 0x34($sp) -/* 01976C 80018B6C E7AA0024 */ swc1 $f10, 0x24($sp) -/* 019770 80018B70 E7A40020 */ swc1 $f4, 0x20($sp) -/* 019774 80018B74 46024282 */ mul.s $f10, $f8, $f2 -/* 019778 80018B78 460A3180 */ add.s $f6, $f6, $f10 -/* 01977C 80018B7C C7AA0030 */ lwc1 $f10, 0x30($sp) -/* 019780 80018B80 00000000 */ nop -/* 019784 80018B84 460C5102 */ mul.s $f4, $f10, $f12 -/* 019788 80018B88 C7AC0024 */ lwc1 $f12, 0x24($sp) -/* 01978C 80018B8C 46043180 */ add.s $f6, $f6, $f4 -/* 019790 80018B90 C484000C */ lwc1 $f4, 0xc($a0) -/* 019794 80018B94 E7A80024 */ swc1 $f8, 0x24($sp) -/* 019798 80018B98 46043180 */ add.s $f6, $f6, $f4 -/* 01979C 80018B9C C7A40020 */ lwc1 $f4, 0x20($sp) -/* 0197A0 80018BA0 C7A8002C */ lwc1 $f8, 0x2c($sp) -/* 0197A4 80018BA4 E7A60050 */ swc1 $f6, 0x50($sp) -/* 0197A8 80018BA8 46082102 */ mul.s $f4, $f4, $f8 -/* 0197AC 80018BAC C7A80024 */ lwc1 $f8, 0x24($sp) -/* 0197B0 80018BB0 00000000 */ nop -/* 0197B4 80018BB4 46144202 */ mul.s $f8, $f8, $f20 -/* 0197B8 80018BB8 44804800 */ mtc1 $zero, $f9 -/* 0197BC 80018BBC 46082100 */ add.s $f4, $f4, $f8 -/* 0197C0 80018BC0 C7A80028 */ lwc1 $f8, 0x28($sp) -/* 0197C4 80018BC4 00000000 */ nop -/* 0197C8 80018BC8 46085282 */ mul.s $f10, $f10, $f8 -/* 0197CC 80018BCC 44804000 */ mtc1 $zero, $f8 -/* 0197D0 80018BD0 460A2000 */ add.s $f0, $f4, $f10 -/* 0197D4 80018BD4 00000000 */ nop -/* 0197D8 80018BD8 46003003 */ div.s $f0, $f6, $f0 -/* 0197DC 80018BDC 46006080 */ add.s $f2, $f12, $f0 -/* 0197E0 80018BE0 46001121 */ cvt.d.s $f4, $f2 -/* 0197E4 80018BE4 46244032 */ c.eq.d $f8, $f4 -/* 0197E8 80018BE8 00000000 */ nop -/* 0197EC 80018BEC 45010003 */ bc1t .L80018BFC -/* 0197F0 80018BF0 00000000 */ nop -/* 0197F4 80018BF4 10000003 */ b .L80018C04 -/* 0197F8 80018BF8 46026003 */ div.s $f0, $f12, $f2 -.L80018BFC: -/* 0197FC 80018BFC 44800000 */ mtc1 $zero, $f0 -/* 019800 80018C00 00000000 */ nop -.L80018C04: -/* 019804 80018C04 10000014 */ b .L80018C58 -/* 019808 80018C08 E4C00000 */ swc1 $f0, ($a2) -.L80018C0C: -/* 01980C 80018C0C E4C20000 */ swc1 $f2, ($a2) -/* 019810 80018C10 10000011 */ b .L80018C58 -/* 019814 80018C14 00001025 */ move $v0, $zero -.L80018C18: -/* 019818 80018C18 44815000 */ mtc1 $at, $f10 -/* 01981C 80018C1C 00000000 */ nop -/* 019820 80018C20 460A0182 */ mul.s $f6, $f0, $f10 -/* 019824 80018C24 444FF800 */ cfc1 $t7, $31 -/* 019828 80018C28 00000000 */ nop -/* 01982C 80018C2C 35E10003 */ ori $at, $t7, 3 -/* 019830 80018C30 38210002 */ xori $at, $at, 2 -/* 019834 80018C34 44C1F800 */ ctc1 $at, $31 -/* 019838 80018C38 00000000 */ nop -/* 01983C 80018C3C 46003224 */ cvt.w.s $f8, $f6 -/* 019840 80018C40 44024000 */ mfc1 $v0, $f8 -/* 019844 80018C44 44CFF800 */ ctc1 $t7, $31 -/* 019848 80018C48 14400002 */ bnez $v0, .L80018C54 -/* 01984C 80018C4C 00401825 */ move $v1, $v0 -/* 019850 80018C50 24430001 */ addiu $v1, $v0, 1 -.L80018C54: -/* 019854 80018C54 00601025 */ move $v0, $v1 -.L80018C58: -/* 019858 80018C58 8FBF001C */ lw $ra, 0x1c($sp) -/* 01985C 80018C5C C7B50010 */ lwc1 $f21, 0x10($sp) -/* 019860 80018C60 C7B40014 */ lwc1 $f20, 0x14($sp) -/* 019864 80018C64 03E00008 */ jr $ra -/* 019868 80018C68 27BD0078 */ addiu $sp, $sp, 0x78 - -glabel func_80018C6C -/* 01986C 80018C6C 3C028012 */ lui $v0, %hi(D_8011AE60) # $v0, 0x8012 -/* 019870 80018C70 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 -/* 019874 80018C74 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) -/* 019878 80018C78 8C42AE60 */ lw $v0, %lo(D_8011AE60)($v0) -/* 01987C 80018C7C 3C0E8012 */ lui $t6, %hi(D_8011AE58) # $t6, 0x8012 -/* 019880 80018C80 0043082A */ slt $at, $v0, $v1 -/* 019884 80018C84 10200013 */ beqz $at, .L80018CD4 -/* 019888 80018C88 00027880 */ sll $t7, $v0, 2 -/* 01988C 80018C8C 8DCEAE58 */ lw $t6, %lo(D_8011AE58)($t6) -/* 019890 80018C90 2406003E */ li $a2, 62 -/* 019894 80018C94 01CF2821 */ addu $a1, $t6, $t7 -.L80018C98: -/* 019898 80018C98 8CA40000 */ lw $a0, ($a1) -/* 01989C 80018C9C 24420001 */ addiu $v0, $v0, 1 -/* 0198A0 80018CA0 84980006 */ lh $t8, 6($a0) -/* 0198A4 80018CA4 0043082A */ slt $at, $v0, $v1 -/* 0198A8 80018CA8 33198000 */ andi $t9, $t8, 0x8000 -/* 0198AC 80018CAC 17200007 */ bnez $t9, .L80018CCC -/* 0198B0 80018CB0 00000000 */ nop -/* 0198B4 80018CB4 84880048 */ lh $t0, 0x48($a0) -/* 0198B8 80018CB8 00000000 */ nop -/* 0198BC 80018CBC 14C80003 */ bne $a2, $t0, .L80018CCC -/* 0198C0 80018CC0 00000000 */ nop -/* 0198C4 80018CC4 03E00008 */ jr $ra -/* 0198C8 80018CC8 00801025 */ move $v0, $a0 - -.L80018CCC: -/* 0198CC 80018CCC 1420FFF2 */ bnez $at, .L80018C98 -/* 0198D0 80018CD0 24A50004 */ addiu $a1, $a1, 4 -.L80018CD4: -/* 0198D4 80018CD4 00001025 */ move $v0, $zero -/* 0198D8 80018CD8 03E00008 */ jr $ra -/* 0198DC 80018CDC 00000000 */ nop - -glabel func_80018CE0 -/* 0198E0 80018CE0 27BDFF00 */ addiu $sp, $sp, -0x100 -/* 0198E4 80018CE4 AFBF006C */ sw $ra, 0x6c($sp) -/* 0198E8 80018CE8 AFBE0068 */ sw $fp, 0x68($sp) -/* 0198EC 80018CEC AFB70064 */ sw $s7, 0x64($sp) -/* 0198F0 80018CF0 AFB60060 */ sw $s6, 0x60($sp) -/* 0198F4 80018CF4 AFB5005C */ sw $s5, 0x5c($sp) -/* 0198F8 80018CF8 AFB40058 */ sw $s4, 0x58($sp) -/* 0198FC 80018CFC AFB30054 */ sw $s3, 0x54($sp) -/* 019900 80018D00 AFB20050 */ sw $s2, 0x50($sp) -/* 019904 80018D04 AFB1004C */ sw $s1, 0x4c($sp) -/* 019908 80018D08 AFB00048 */ sw $s0, 0x48($sp) -/* 01990C 80018D0C E7BF0040 */ swc1 $f31, 0x40($sp) -/* 019910 80018D10 E7BE0044 */ swc1 $f30, 0x44($sp) -/* 019914 80018D14 E7BD0038 */ swc1 $f29, 0x38($sp) -/* 019918 80018D18 E7BC003C */ swc1 $f28, 0x3c($sp) -/* 01991C 80018D1C E7BB0030 */ swc1 $f27, 0x30($sp) -/* 019920 80018D20 E7BA0034 */ swc1 $f26, 0x34($sp) -/* 019924 80018D24 E7B90028 */ swc1 $f25, 0x28($sp) -/* 019928 80018D28 E7B8002C */ swc1 $f24, 0x2c($sp) -/* 01992C 80018D2C E7B70020 */ swc1 $f23, 0x20($sp) -/* 019930 80018D30 E7B60024 */ swc1 $f22, 0x24($sp) -/* 019934 80018D34 E7B50018 */ swc1 $f21, 0x18($sp) -/* 019938 80018D38 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 01993C 80018D3C AFA50104 */ sw $a1, 0x104($sp) -/* 019940 80018D40 AFA60108 */ sw $a2, 0x108($sp) -/* 019944 80018D44 AFA7010C */ sw $a3, 0x10c($sp) -/* 019948 80018D48 8C820064 */ lw $v0, 0x64($a0) -/* 01994C 80018D4C 0080A025 */ move $s4, $a0 -/* 019950 80018D50 844B0000 */ lh $t3, ($v0) -/* 019954 80018D54 00000000 */ nop -/* 019958 80018D58 156001E9 */ bnez $t3, .L80019500 -/* 01995C 80018D5C 8FBF006C */ lw $ra, 0x6c($sp) -/* 019960 80018D60 0C019884 */ jal func_80066210 -/* 019964 80018D64 00000000 */ nop -/* 019968 80018D68 144001E4 */ bnez $v0, .L800194FC -/* 01996C 80018D6C 3C0C8012 */ lui $t4, %hi(D_8011AE60) # $t4, 0x8012 -/* 019970 80018D70 8D8CAE60 */ lw $t4, %lo(D_8011AE60)($t4) -/* 019974 80018D74 3C0D8012 */ lui $t5, %hi(D_8011AE5C) # $t5, 0x8012 -/* 019978 80018D78 8DADAE5C */ lw $t5, %lo(D_8011AE5C)($t5) -/* 01997C 80018D7C AFAC00F4 */ sw $t4, 0xf4($sp) -/* 019980 80018D80 018D082A */ slt $at, $t4, $t5 -/* 019984 80018D84 10200135 */ beqz $at, .L8001925C -/* 019988 80018D88 000CC080 */ sll $t8, $t4, 2 -/* 01998C 80018D8C AFB80098 */ sw $t8, 0x98($sp) -/* 019990 80018D90 241E007F */ li $fp, 127 -/* 019994 80018D94 24170010 */ li $s7, 16 -/* 019998 80018D98 24160002 */ li $s6, 2 -/* 01999C 80018D9C 24150001 */ li $s5, 1 -.L80018DA0: -/* 0199A0 80018DA0 3C0F8012 */ lui $t7, %hi(D_8011AE58) # $t7, 0x8012 -/* 0199A4 80018DA4 8DEFAE58 */ lw $t7, %lo(D_8011AE58)($t7) -/* 0199A8 80018DA8 8FAE0098 */ lw $t6, 0x98($sp) -/* 0199AC 80018DAC 00000000 */ nop -/* 0199B0 80018DB0 01EEC821 */ addu $t9, $t7, $t6 -/* 0199B4 80018DB4 8F300000 */ lw $s0, ($t9) -/* 0199B8 80018DB8 00000000 */ nop -/* 0199BC 80018DBC 86080006 */ lh $t0, 6($s0) -/* 0199C0 80018DC0 00000000 */ nop -/* 0199C4 80018DC4 31098000 */ andi $t1, $t0, 0x8000 -/* 0199C8 80018DC8 1520011B */ bnez $t1, .L80019238 -/* 0199CC 80018DCC 8FAA00F4 */ lw $t2, 0xf4($sp) -/* 0199D0 80018DD0 86020048 */ lh $v0, 0x48($s0) -/* 0199D4 80018DD4 24010070 */ li $at, 112 -/* 0199D8 80018DD8 14410070 */ bne $v0, $at, .L80018F9C -/* 0199DC 80018DDC 24010047 */ li $at, 71 -/* 0199E0 80018DE0 C686000C */ lwc1 $f6, 0xc($s4) -/* 0199E4 80018DE4 C604000C */ lwc1 $f4, 0xc($s0) -/* 0199E8 80018DE8 C68A0010 */ lwc1 $f10, 0x10($s4) -/* 0199EC 80018DEC C6080010 */ lwc1 $f8, 0x10($s0) -/* 0199F0 80018DF0 46043001 */ sub.s $f0, $f6, $f4 -/* 0199F4 80018DF4 C6040014 */ lwc1 $f4, 0x14($s0) -/* 0199F8 80018DF8 46085081 */ sub.s $f2, $f10, $f8 -/* 0199FC 80018DFC C6860014 */ lwc1 $f6, 0x14($s4) -/* 019A00 80018E00 46000282 */ mul.s $f10, $f0, $f0 -/* 019A04 80018E04 46043381 */ sub.s $f14, $f6, $f4 -/* 019A08 80018E08 46021202 */ mul.s $f8, $f2, $f2 -/* 019A0C 80018E0C 00000000 */ nop -/* 019A10 80018E10 460E7102 */ mul.s $f4, $f14, $f14 -/* 019A14 80018E14 46085180 */ add.s $f6, $f10, $f8 -/* 019A18 80018E18 0C0326B4 */ jal sqrtf -/* 019A1C 80018E1C 46043300 */ add.s $f12, $f6, $f4 -/* 019A20 80018E20 8E030064 */ lw $v1, 0x64($s0) -/* 019A24 80018E24 46000086 */ mov.s $f2, $f0 -/* 019A28 80018E28 946A0002 */ lhu $t2, 2($v1) -/* 019A2C 80018E2C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 019A30 80018E30 448A5000 */ mtc1 $t2, $f10 -/* 019A34 80018E34 05410004 */ bgez $t2, .L80018E48 -/* 019A38 80018E38 46805220 */ cvt.s.w $f8, $f10 -/* 019A3C 80018E3C 44813000 */ mtc1 $at, $f6 -/* 019A40 80018E40 00000000 */ nop -/* 019A44 80018E44 46064200 */ add.s $f8, $f8, $f6 -.L80018E48: -/* 019A48 80018E48 4608003C */ c.lt.s $f0, $f8 -/* 019A4C 80018E4C 00000000 */ nop -/* 019A50 80018E50 450000F9 */ bc1f .L80019238 -/* 019A54 80018E54 8FAA00F4 */ lw $t2, 0xf4($sp) -/* 019A58 80018E58 AFA300BC */ sw $v1, 0xbc($sp) -/* 019A5C 80018E5C 0C000646 */ jal func_80001918 -/* 019A60 80018E60 E7A200C0 */ swc1 $f2, 0xc0($sp) -/* 019A64 80018E64 8FA300BC */ lw $v1, 0xbc($sp) -/* 019A68 80018E68 C7A200C0 */ lwc1 $f2, 0xc0($sp) -/* 019A6C 80018E6C 906B001C */ lbu $t3, 0x1c($v1) -/* 019A70 80018E70 00008825 */ move $s1, $zero -/* 019A74 80018E74 156200EF */ bne $t3, $v0, .L80019234 -/* 019A78 80018E78 00609825 */ move $s3, $v1 -/* 019A7C 80018E7C 94620000 */ lhu $v0, ($v1) -/* 019A80 80018E80 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 019A84 80018E84 44822000 */ mtc1 $v0, $f4 -/* 019A88 80018E88 04410004 */ bgez $v0, .L80018E9C -/* 019A8C 80018E8C 46802320 */ cvt.s.w $f12, $f4 -/* 019A90 80018E90 44815000 */ mtc1 $at, $f10 -/* 019A94 80018E94 00000000 */ nop -/* 019A98 80018E98 460A6300 */ add.s $f12, $f12, $f10 -.L80018E9C: -/* 019A9C 80018E9C 460C103E */ c.le.s $f2, $f12 -/* 019AA0 80018EA0 3C0142FE */ li $at, 0x42FE0000 # 127.000000 -/* 019AA4 80018EA4 45000003 */ bc1f .L80018EB4 -/* 019AA8 80018EA8 00000000 */ nop -/* 019AAC 80018EAC 10000014 */ b .L80018F00 -/* 019AB0 80018EB0 00009025 */ move $s2, $zero -.L80018EB4: -/* 019AB4 80018EB4 946D0002 */ lhu $t5, 2($v1) -/* 019AB8 80018EB8 460C1081 */ sub.s $f2, $f2, $f12 -/* 019ABC 80018EBC 44814000 */ mtc1 $at, $f8 -/* 019AC0 80018EC0 01A26023 */ subu $t4, $t5, $v0 -/* 019AC4 80018EC4 448C3000 */ mtc1 $t4, $f6 -/* 019AC8 80018EC8 46024102 */ mul.s $f4, $f8, $f2 -/* 019ACC 80018ECC 46803020 */ cvt.s.w $f0, $f6 -/* 019AD0 80018ED0 00000000 */ nop -/* 019AD4 80018ED4 46002283 */ div.s $f10, $f4, $f0 -/* 019AD8 80018ED8 4458F800 */ cfc1 $t8, $31 -/* 019ADC 80018EDC 00000000 */ nop -/* 019AE0 80018EE0 37010003 */ ori $at, $t8, 3 -/* 019AE4 80018EE4 38210002 */ xori $at, $at, 2 -/* 019AE8 80018EE8 44C1F800 */ ctc1 $at, $31 -/* 019AEC 80018EEC 00000000 */ nop -/* 019AF0 80018EF0 460051A4 */ cvt.w.s $f6, $f10 -/* 019AF4 80018EF4 44D8F800 */ ctc1 $t8, $31 -/* 019AF8 80018EF8 44123000 */ mfc1 $s2, $f6 -/* 019AFC 80018EFC 00000000 */ nop -.L80018F00: -/* 019B00 80018F00 9262000C */ lbu $v0, 0xc($s3) -/* 019B04 80018F04 2A41007B */ slti $at, $s2, 0x7b -/* 019B08 80018F08 10550005 */ beq $v0, $s5, .L80018F20 -/* 019B0C 80018F0C 00000000 */ nop -/* 019B10 80018F10 10560012 */ beq $v0, $s6, .L80018F5C -/* 019B14 80018F14 323000FF */ andi $s0, $s1, 0xff -/* 019B18 80018F18 1000001B */ b .L80018F88 -/* 019B1C 80018F1C 26310001 */ addiu $s1, $s1, 1 -.L80018F20: -/* 019B20 80018F20 14200005 */ bnez $at, .L80018F38 -/* 019B24 80018F24 323000FF */ andi $s0, $s1, 0xff -/* 019B28 80018F28 0C000445 */ jal func_80001114 -/* 019B2C 80018F2C 322400FF */ andi $a0, $s1, 0xff -/* 019B30 80018F30 10000015 */ b .L80018F88 -/* 019B34 80018F34 26310001 */ addiu $s1, $s1, 1 -.L80018F38: -/* 019B38 80018F38 03D22823 */ subu $a1, $fp, $s2 -/* 019B3C 80018F3C 30AF00FF */ andi $t7, $a1, 0xff -/* 019B40 80018F40 01E02825 */ move $a1, $t7 -/* 019B44 80018F44 0C00049A */ jal func_80001268 -/* 019B48 80018F48 320400FF */ andi $a0, $s0, 0xff -/* 019B4C 80018F4C 0C00045C */ jal func_80001170 -/* 019B50 80018F50 320400FF */ andi $a0, $s0, 0xff -/* 019B54 80018F54 1000000C */ b .L80018F88 -/* 019B58 80018F58 26310001 */ addiu $s1, $s1, 1 -.L80018F5C: -/* 019B5C 80018F5C 0C0004AA */ jal func_800012A8 -/* 019B60 80018F60 320400FF */ andi $a0, $s0, 0xff -/* 019B64 80018F64 18400007 */ blez $v0, .L80018F84 -/* 019B68 80018F68 00000000 */ nop -/* 019B6C 80018F6C 0C000453 */ jal func_8000114C -/* 019B70 80018F70 02202025 */ move $a0, $s1 -/* 019B74 80018F74 14400003 */ bnez $v0, .L80018F84 -/* 019B78 80018F78 320400FF */ andi $a0, $s0, 0xff -/* 019B7C 80018F7C 0C00049A */ jal func_80001268 -/* 019B80 80018F80 324500FF */ andi $a1, $s2, 0xff -.L80018F84: -/* 019B84 80018F84 26310001 */ addiu $s1, $s1, 1 -.L80018F88: -/* 019B88 80018F88 1637FFDD */ bne $s1, $s7, .L80018F00 -/* 019B8C 80018F8C 26730001 */ addiu $s3, $s3, 1 -/* 019B90 80018F90 100000A9 */ b .L80019238 -/* 019B94 80018F94 8FAA00F4 */ lw $t2, 0xf4($sp) -/* 019B98 80018F98 24010047 */ li $at, 71 -.L80018F9C: -/* 019B9C 80018F9C 14410079 */ bne $v0, $at, .L80019184 -/* 019BA0 80018FA0 24010076 */ li $at, 118 -/* 019BA4 80018FA4 8E020064 */ lw $v0, 0x64($s0) -/* 019BA8 80018FA8 C7A80108 */ lwc1 $f8, 0x108($sp) -/* 019BAC 80018FAC C450000C */ lwc1 $f16, 0xc($v0) -/* 019BB0 80018FB0 C7A4010C */ lwc1 $f4, 0x10c($sp) -/* 019BB4 80018FB4 46088782 */ mul.s $f30, $f16, $f8 -/* 019BB8 80018FB8 C4520010 */ lwc1 $f18, 0x10($v0) -/* 019BBC 80018FBC C7AA0104 */ lwc1 $f10, 0x104($sp) -/* 019BC0 80018FC0 C44C0008 */ lwc1 $f12, 8($v0) -/* 019BC4 80018FC4 46049382 */ mul.s $f14, $f18, $f4 -/* 019BC8 80018FC8 C698000C */ lwc1 $f24, 0xc($s4) -/* 019BCC 80018FCC C69A0010 */ lwc1 $f26, 0x10($s4) -/* 019BD0 80018FD0 C4540014 */ lwc1 $f20, 0x14($v0) -/* 019BD4 80018FD4 460A6182 */ mul.s $f6, $f12, $f10 -/* 019BD8 80018FD8 C69C0014 */ lwc1 $f28, 0x14($s4) -/* 019BDC 80018FDC E7AE0078 */ swc1 $f14, 0x78($sp) -/* 019BE0 80018FE0 46186282 */ mul.s $f10, $f12, $f24 -/* 019BE4 80018FE4 461E3200 */ add.s $f8, $f6, $f30 -/* 019BE8 80018FE8 461A8182 */ mul.s $f6, $f16, $f26 -/* 019BEC 80018FEC 460E4100 */ add.s $f4, $f8, $f14 -/* 019BF0 80018FF0 46142000 */ add.s $f0, $f4, $f20 -/* 019BF4 80018FF4 461C9102 */ mul.s $f4, $f18, $f28 -/* 019BF8 80018FF8 46065200 */ add.s $f8, $f10, $f6 -/* 019BFC 80018FFC 44803000 */ mtc1 $zero, $f6 -/* 019C00 80019000 00000000 */ nop -/* 019C04 80019004 4600303C */ c.lt.s $f6, $f0 -/* 019C08 80019008 46044280 */ add.s $f10, $f8, $f4 -/* 019C0C 8001900C 45000009 */ bc1f .L80019034 -/* 019C10 80019010 46145080 */ add.s $f2, $f10, $f20 -/* 019C14 80019014 44804000 */ mtc1 $zero, $f8 -/* 019C18 80019018 00151E00 */ sll $v1, $s5, 0x18 -/* 019C1C 8001901C 4608103E */ c.le.s $f2, $f8 -/* 019C20 80019020 00037603 */ sra $t6, $v1, 0x18 -/* 019C24 80019024 45000003 */ bc1f .L80019034 -/* 019C28 80019028 00000000 */ nop -/* 019C2C 8001902C 1000000F */ b .L8001906C -/* 019C30 80019030 01C01825 */ move $v1, $t6 -.L80019034: -/* 019C34 80019034 44802000 */ mtc1 $zero, $f4 -/* 019C38 80019038 00001825 */ move $v1, $zero -/* 019C3C 8001903C 4602203C */ c.lt.s $f4, $f2 -/* 019C40 80019040 00000000 */ nop -/* 019C44 80019044 45000009 */ bc1f .L8001906C -/* 019C48 80019048 00000000 */ nop -/* 019C4C 8001904C 44805000 */ mtc1 $zero, $f10 -/* 019C50 80019050 00000000 */ nop -/* 019C54 80019054 460A003E */ c.le.s $f0, $f10 -/* 019C58 80019058 00000000 */ nop -/* 019C5C 8001905C 45000003 */ bc1f .L8001906C -/* 019C60 80019060 00000000 */ nop -/* 019C64 80019064 10000001 */ b .L8001906C -/* 019C68 80019068 2403FFFF */ li $v1, -1 -.L8001906C: -/* 019C6C 8001906C 10600072 */ beqz $v1, .L80019238 -/* 019C70 80019070 8FAA00F4 */ lw $t2, 0xf4($sp) -/* 019C74 80019074 C7A60104 */ lwc1 $f6, 0x104($sp) -/* 019C78 80019078 46006287 */ neg.s $f10, $f12 -/* 019C7C 8001907C 46065282 */ mul.s $f10, $f10, $f6 -/* 019C80 80019080 C7A80108 */ lwc1 $f8, 0x108($sp) -/* 019C84 80019084 C7A4010C */ lwc1 $f4, 0x10c($sp) -/* 019C88 80019088 E7A80070 */ swc1 $f8, 0x70($sp) -/* 019C8C 8001908C 4608D081 */ sub.s $f2, $f26, $f8 -/* 019C90 80019090 C7A80078 */ lwc1 $f8, 0x78($sp) -/* 019C94 80019094 461E5281 */ sub.s $f10, $f10, $f30 -/* 019C98 80019098 E7A40074 */ swc1 $f4, 0x74($sp) -/* 019C9C 8001909C 46085281 */ sub.s $f10, $f10, $f8 -/* 019CA0 800190A0 4606C001 */ sub.s $f0, $f24, $f6 -/* 019CA4 800190A4 46145201 */ sub.s $f8, $f10, $f20 -/* 019CA8 800190A8 46006282 */ mul.s $f10, $f12, $f0 -/* 019CAC 800190AC 4604E381 */ sub.s $f14, $f28, $f4 -/* 019CB0 800190B0 46028102 */ mul.s $f4, $f16, $f2 -/* 019CB4 800190B4 46045280 */ add.s $f10, $f10, $f4 -/* 019CB8 800190B8 460E9102 */ mul.s $f4, $f18, $f14 -/* 019CBC 800190BC 46045280 */ add.s $f10, $f10, $f4 -/* 019CC0 800190C0 00000000 */ nop -/* 019CC4 800190C4 460A4583 */ div.s $f22, $f8, $f10 -/* 019CC8 800190C8 C4480018 */ lwc1 $f8, 0x18($v0) -/* 019CCC 800190CC 4600B102 */ mul.s $f4, $f22, $f0 -/* 019CD0 800190D0 46062300 */ add.s $f12, $f4, $f6 -/* 019CD4 800190D4 460C403E */ c.le.s $f8, $f12 -/* 019CD8 800190D8 00000000 */ nop -/* 019CDC 800190DC 45000056 */ bc1f .L80019238 -/* 019CE0 800190E0 8FAA00F4 */ lw $t2, 0xf4($sp) -/* 019CE4 800190E4 C44A0024 */ lwc1 $f10, 0x24($v0) -/* 019CE8 800190E8 00000000 */ nop -/* 019CEC 800190EC 460A603E */ c.le.s $f12, $f10 -/* 019CF0 800190F0 00000000 */ nop -/* 019CF4 800190F4 45000050 */ bc1f .L80019238 -/* 019CF8 800190F8 8FAA00F4 */ lw $t2, 0xf4($sp) -/* 019CFC 800190FC 4602B102 */ mul.s $f4, $f22, $f2 -/* 019D00 80019100 C7A60070 */ lwc1 $f6, 0x70($sp) -/* 019D04 80019104 C448001C */ lwc1 $f8, 0x1c($v0) -/* 019D08 80019108 46062000 */ add.s $f0, $f4, $f6 -/* 019D0C 8001910C 4600403E */ c.le.s $f8, $f0 -/* 019D10 80019110 00000000 */ nop -/* 019D14 80019114 45000048 */ bc1f .L80019238 -/* 019D18 80019118 8FAA00F4 */ lw $t2, 0xf4($sp) -/* 019D1C 8001911C C44A0028 */ lwc1 $f10, 0x28($v0) -/* 019D20 80019120 00000000 */ nop -/* 019D24 80019124 460A003E */ c.le.s $f0, $f10 -/* 019D28 80019128 00000000 */ nop -/* 019D2C 8001912C 45000042 */ bc1f .L80019238 -/* 019D30 80019130 8FAA00F4 */ lw $t2, 0xf4($sp) -/* 019D34 80019134 460EB102 */ mul.s $f4, $f22, $f14 -/* 019D38 80019138 C7A60074 */ lwc1 $f6, 0x74($sp) -/* 019D3C 8001913C C4480020 */ lwc1 $f8, 0x20($v0) -/* 019D40 80019140 46062000 */ add.s $f0, $f4, $f6 -/* 019D44 80019144 4600403E */ c.le.s $f8, $f0 -/* 019D48 80019148 00000000 */ nop -/* 019D4C 8001914C 4500003A */ bc1f .L80019238 -/* 019D50 80019150 8FAA00F4 */ lw $t2, 0xf4($sp) -/* 019D54 80019154 C44A002C */ lwc1 $f10, 0x2c($v0) -/* 019D58 80019158 3C018012 */ lui $at, %hi(D_8011AF60) # $at, 0x8012 -/* 019D5C 8001915C 460A003E */ c.le.s $f0, $f10 -/* 019D60 80019160 00000000 */ nop -/* 019D64 80019164 45000034 */ bc1f .L80019238 -/* 019D68 80019168 8FAA00F4 */ lw $t2, 0xf4($sp) -/* 019D6C 8001916C A0430000 */ sb $v1, ($v0) -/* 019D70 80019170 A0400001 */ sb $zero, 1($v0) -/* 019D74 80019174 A4400004 */ sh $zero, 4($v0) -/* 019D78 80019178 1000002E */ b .L80019234 -/* 019D7C 8001917C AC22AF60 */ sw $v0, %lo(D_8011AF60)($at) -/* 019D80 80019180 24010076 */ li $at, 118 -.L80019184: -/* 019D84 80019184 1441002C */ bne $v0, $at, .L80019238 -/* 019D88 80019188 8FAA00F4 */ lw $t2, 0xf4($sp) -/* 019D8C 8001918C C684000C */ lwc1 $f4, 0xc($s4) -/* 019D90 80019190 C606000C */ lwc1 $f6, 0xc($s0) -/* 019D94 80019194 C6880010 */ lwc1 $f8, 0x10($s4) -/* 019D98 80019198 C60A0010 */ lwc1 $f10, 0x10($s0) -/* 019D9C 8001919C 46062001 */ sub.s $f0, $f4, $f6 -/* 019DA0 800191A0 C6060014 */ lwc1 $f6, 0x14($s0) -/* 019DA4 800191A4 460A4081 */ sub.s $f2, $f8, $f10 -/* 019DA8 800191A8 C6840014 */ lwc1 $f4, 0x14($s4) -/* 019DAC 800191AC 46000202 */ mul.s $f8, $f0, $f0 -/* 019DB0 800191B0 46062381 */ sub.s $f14, $f4, $f6 -/* 019DB4 800191B4 8E110064 */ lw $s1, 0x64($s0) -/* 019DB8 800191B8 46021282 */ mul.s $f10, $f2, $f2 -/* 019DBC 800191BC 00000000 */ nop -/* 019DC0 800191C0 460E7182 */ mul.s $f6, $f14, $f14 -/* 019DC4 800191C4 460A4100 */ add.s $f4, $f8, $f10 -/* 019DC8 800191C8 0C0326B4 */ jal sqrtf -/* 019DCC 800191CC 46062300 */ add.s $f12, $f4, $f6 -/* 019DD0 800191D0 92220002 */ lbu $v0, 2($s1) -/* 019DD4 800191D4 00000000 */ nop -/* 019DD8 800191D8 0002C880 */ sll $t9, $v0, 2 -/* 019DDC 800191DC 44994000 */ mtc1 $t9, $f8 -/* 019DE0 800191E0 00000000 */ nop -/* 019DE4 800191E4 468042A0 */ cvt.s.w $f10, $f8 -/* 019DE8 800191E8 460A003C */ c.lt.s $f0, $f10 -/* 019DEC 800191EC 00000000 */ nop -/* 019DF0 800191F0 45000011 */ bc1f .L80019238 -/* 019DF4 800191F4 8FAA00F4 */ lw $t2, 0xf4($sp) -/* 019DF8 800191F8 0C000417 */ jal func_8000105C -/* 019DFC 800191FC 00000000 */ nop -/* 019E00 80019200 96280000 */ lhu $t0, ($s1) -/* 019E04 80019204 00000000 */ nop -/* 019E08 80019208 1102000B */ beq $t0, $v0, .L80019238 -/* 019E0C 8001920C 8FAA00F4 */ lw $t2, 0xf4($sp) -/* 019E10 80019210 0C000646 */ jal func_80001918 -/* 019E14 80019214 00000000 */ nop -/* 019E18 80019218 92290003 */ lbu $t1, 3($s1) -/* 019E1C 8001921C 00000000 */ nop -/* 019E20 80019220 15220005 */ bne $t1, $v0, .L80019238 -/* 019E24 80019224 8FAA00F4 */ lw $t2, 0xf4($sp) -/* 019E28 80019228 96240000 */ lhu $a0, ($s1) -/* 019E2C 8001922C 0C00041D */ jal func_80001074 -/* 019E30 80019230 00000000 */ nop -.L80019234: -/* 019E34 80019234 8FAA00F4 */ lw $t2, 0xf4($sp) -.L80019238: -/* 019E38 80019238 3C188012 */ lui $t8, %hi(D_8011AE5C) # $t8, 0x8012 -/* 019E3C 8001923C 8F18AE5C */ lw $t8, %lo(D_8011AE5C)($t8) -/* 019E40 80019240 8FAD0098 */ lw $t5, 0x98($sp) -/* 019E44 80019244 254B0001 */ addiu $t3, $t2, 1 -/* 019E48 80019248 0178082A */ slt $at, $t3, $t8 -/* 019E4C 8001924C 25AC0004 */ addiu $t4, $t5, 4 -/* 019E50 80019250 AFAC0098 */ sw $t4, 0x98($sp) -/* 019E54 80019254 1420FED2 */ bnez $at, .L80018DA0 -/* 019E58 80019258 AFAB00F4 */ sw $t3, 0xf4($sp) -.L8001925C: -/* 019E5C 8001925C 3C0F8012 */ lui $t7, %hi(D_8011AF60) # $t7, 0x8012 -/* 019E60 80019260 8DEFAF60 */ lw $t7, %lo(D_8011AF60)($t7) -/* 019E64 80019264 24150001 */ li $s5, 1 -/* 019E68 80019268 24160002 */ li $s6, 2 -/* 019E6C 8001926C 24170010 */ li $s7, 16 -/* 019E70 80019270 11E000A2 */ beqz $t7, .L800194FC -/* 019E74 80019274 241E007F */ li $fp, 127 -/* 019E78 80019278 0C000646 */ jal func_80001918 -/* 019E7C 8001927C 00000000 */ nop -/* 019E80 80019280 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 -/* 019E84 80019284 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) -/* 019E88 80019288 8FA80110 */ lw $t0, 0x110($sp) -/* 019E8C 8001928C 906E0040 */ lbu $t6, 0x40($v1) -/* 019E90 80019290 00008825 */ move $s1, $zero -/* 019E94 80019294 15C2008B */ bne $t6, $v0, .L800194C4 -/* 019E98 80019298 24140003 */ li $s4, 3 -/* 019E9C 8001929C 94790004 */ lhu $t9, 4($v1) -/* 019EA0 800192A0 3C0D8012 */ lui $t5, %hi(D_80126170) # $t5, 0x8012 -/* 019EA4 800192A4 03284821 */ addu $t1, $t9, $t0 -/* 019EA8 800192A8 A4690004 */ sh $t1, 4($v1) -/* 019EAC 800192AC 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 -/* 019EB0 800192B0 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) -/* 019EB4 800192B4 8DAD6170 */ lw $t5, %lo(D_80126170)($t5) -/* 019EB8 800192B8 906A0002 */ lbu $t2, 2($v1) -/* 019EBC 800192BC 94620004 */ lhu $v0, 4($v1) -/* 019EC0 800192C0 014D0019 */ multu $t2, $t5 -/* 019EC4 800192C4 241800FE */ li $t8, 254 -/* 019EC8 800192C8 00002012 */ mflo $a0 -/* 019ECC 800192CC 308CFFFF */ andi $t4, $a0, 0xffff -/* 019ED0 800192D0 0182082A */ slt $at, $t4, $v0 -/* 019ED4 800192D4 10200007 */ beqz $at, .L800192F4 -/* 019ED8 800192D8 01802025 */ move $a0, $t4 -/* 019EDC 800192DC A46C0004 */ sh $t4, 4($v1) -/* 019EE0 800192E0 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 -/* 019EE4 800192E4 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) -/* 019EE8 800192E8 00000000 */ nop -/* 019EEC 800192EC 94620004 */ lhu $v0, 4($v1) -/* 019EF0 800192F0 00000000 */ nop -.L800192F4: -/* 019EF4 800192F4 44822000 */ mtc1 $v0, $f4 -/* 019EF8 800192F8 04410005 */ bgez $v0, .L80019310 -/* 019EFC 800192FC 468021A0 */ cvt.s.w $f6, $f4 -/* 019F00 80019300 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 019F04 80019304 44814000 */ mtc1 $at, $f8 -/* 019F08 80019308 00000000 */ nop -/* 019F0C 8001930C 46083180 */ add.s $f6, $f6, $f8 -.L80019310: -/* 019F10 80019310 3C01437E */ li $at, 0x437E0000 # 254.000000 -/* 019F14 80019314 44815000 */ mtc1 $at, $f10 -/* 019F18 80019318 44844000 */ mtc1 $a0, $f8 -/* 019F1C 8001931C 460A3102 */ mul.s $f4, $f6, $f10 -/* 019F20 80019320 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 -/* 019F24 80019324 04810004 */ bgez $a0, .L80019338 -/* 019F28 80019328 468041A0 */ cvt.s.w $f6, $f8 -/* 019F2C 8001932C 44815000 */ mtc1 $at, $f10 -/* 019F30 80019330 00000000 */ nop -/* 019F34 80019334 460A3180 */ add.s $f6, $f6, $f10 -.L80019338: -/* 019F38 80019338 00000000 */ nop -/* 019F3C 8001933C 46062203 */ div.s $f8, $f4, $f6 -/* 019F40 80019340 444BF800 */ cfc1 $t3, $31 -/* 019F44 80019344 00000000 */ nop -/* 019F48 80019348 35610003 */ ori $at, $t3, 3 -/* 019F4C 8001934C 38210002 */ xori $at, $at, 2 -/* 019F50 80019350 44C1F800 */ ctc1 $at, $31 -/* 019F54 80019354 00000000 */ nop -/* 019F58 80019358 460042A4 */ cvt.w.s $f10, $f8 -/* 019F5C 8001935C 44055000 */ mfc1 $a1, $f10 -/* 019F60 80019360 44CBF800 */ ctc1 $t3, $31 -/* 019F64 80019364 28A100FE */ slti $at, $a1, 0xfe -/* 019F68 80019368 10200003 */ beqz $at, .L80019378 -/* 019F6C 8001936C 00000000 */ nop -/* 019F70 80019370 10000002 */ b .L8001937C -/* 019F74 80019374 A0650001 */ sb $a1, 1($v1) -.L80019378: -/* 019F78 80019378 A0780001 */ sb $t8, 1($v1) -.L8001937C: -/* 019F7C 8001937C 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 -/* 019F80 80019380 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) -/* 019F84 80019384 2413FFFF */ li $s3, -1 -.L80019388: -/* 019F88 80019388 806E0000 */ lb $t6, ($v1) -/* 019F8C 8001938C 00717821 */ addu $t7, $v1, $s1 -/* 019F90 80019390 81E20030 */ lb $v0, 0x30($t7) -/* 019F94 80019394 166E0003 */ bne $s3, $t6, .L800193A4 -/* 019F98 80019398 0002C883 */ sra $t9, $v0, 2 -/* 019F9C 8001939C 00194600 */ sll $t0, $t9, 0x18 -/* 019FA0 800193A0 00081603 */ sra $v0, $t0, 0x18 -.L800193A4: -/* 019FA4 800193A4 304A0003 */ andi $t2, $v0, 3 -/* 019FA8 800193A8 000A6E00 */ sll $t5, $t2, 0x18 -/* 019FAC 800193AC 000D6603 */ sra $t4, $t5, 0x18 -/* 019FB0 800193B0 11800012 */ beqz $t4, .L800193FC -/* 019FB4 800193B4 00000000 */ nop -/* 019FB8 800193B8 11950007 */ beq $t4, $s5, .L800193D8 -/* 019FBC 800193BC 323000FF */ andi $s0, $s1, 0xff -/* 019FC0 800193C0 11960028 */ beq $t4, $s6, .L80019464 -/* 019FC4 800193C4 00000000 */ nop -/* 019FC8 800193C8 11940012 */ beq $t4, $s4, .L80019414 -/* 019FCC 800193CC 00000000 */ nop -/* 019FD0 800193D0 1000003A */ b .L800194BC -/* 019FD4 800193D4 26310001 */ addiu $s1, $s1, 1 -.L800193D8: -/* 019FD8 800193D8 0C00045C */ jal func_80001170 -/* 019FDC 800193DC 320400FF */ andi $a0, $s0, 0xff -/* 019FE0 800193E0 320400FF */ andi $a0, $s0, 0xff -/* 019FE4 800193E4 0C00049A */ jal func_80001268 -/* 019FE8 800193E8 2405007F */ li $a1, 127 -/* 019FEC 800193EC 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 -/* 019FF0 800193F0 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) -/* 019FF4 800193F4 10000031 */ b .L800194BC -/* 019FF8 800193F8 26310001 */ addiu $s1, $s1, 1 -.L800193FC: -/* 019FFC 800193FC 0C000445 */ jal func_80001114 -/* 01A000 80019400 322400FF */ andi $a0, $s1, 0xff -/* 01A004 80019404 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 -/* 01A008 80019408 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) -/* 01A00C 8001940C 1000002B */ b .L800194BC -/* 01A010 80019410 26310001 */ addiu $s1, $s1, 1 -.L80019414: -/* 01A014 80019414 90620001 */ lbu $v0, 1($v1) -/* 01A018 80019418 323000FF */ andi $s0, $s1, 0xff -/* 01A01C 8001941C 28410080 */ slti $at, $v0, 0x80 -/* 01A020 80019420 1420000C */ bnez $at, .L80019454 -/* 01A024 80019424 2452FF81 */ addiu $s2, $v0, -0x7f -/* 01A028 80019428 324B00FF */ andi $t3, $s2, 0xff -/* 01A02C 8001942C 01609025 */ move $s2, $t3 -/* 01A030 80019430 0C00045C */ jal func_80001170 -/* 01A034 80019434 320400FF */ andi $a0, $s0, 0xff -/* 01A038 80019438 0C0004AA */ jal func_800012A8 -/* 01A03C 8001943C 320400FF */ andi $a0, $s0, 0xff -/* 01A040 80019440 0052082A */ slt $at, $v0, $s2 -/* 01A044 80019444 10200003 */ beqz $at, .L80019454 -/* 01A048 80019448 320400FF */ andi $a0, $s0, 0xff -/* 01A04C 8001944C 0C00049A */ jal func_80001268 -/* 01A050 80019450 324500FF */ andi $a1, $s2, 0xff -.L80019454: -/* 01A054 80019454 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 -/* 01A058 80019458 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) -/* 01A05C 8001945C 10000017 */ b .L800194BC -/* 01A060 80019460 26310001 */ addiu $s1, $s1, 1 -.L80019464: -/* 01A064 80019464 90620001 */ lbu $v0, 1($v1) -/* 01A068 80019468 323000FF */ andi $s0, $s1, 0xff -/* 01A06C 8001946C 2841007F */ slti $at, $v0, 0x7f -/* 01A070 80019470 1020000C */ beqz $at, .L800194A4 -/* 01A074 80019474 03C29023 */ subu $s2, $fp, $v0 -/* 01A078 80019478 325800FF */ andi $t8, $s2, 0xff -/* 01A07C 8001947C 03009025 */ move $s2, $t8 -/* 01A080 80019480 0C0004AA */ jal func_800012A8 -/* 01A084 80019484 320400FF */ andi $a0, $s0, 0xff -/* 01A088 80019488 0242082A */ slt $at, $s2, $v0 -/* 01A08C 8001948C 10200007 */ beqz $at, .L800194AC -/* 01A090 80019490 320400FF */ andi $a0, $s0, 0xff -/* 01A094 80019494 0C00049A */ jal func_80001268 -/* 01A098 80019498 324500FF */ andi $a1, $s2, 0xff -/* 01A09C 8001949C 10000003 */ b .L800194AC -/* 01A0A0 800194A0 00000000 */ nop -.L800194A4: -/* 01A0A4 800194A4 0C000445 */ jal func_80001114 -/* 01A0A8 800194A8 322400FF */ andi $a0, $s1, 0xff -.L800194AC: -/* 01A0AC 800194AC 3C038012 */ lui $v1, %hi(D_8011AF60) # $v1, 0x8012 -/* 01A0B0 800194B0 8C63AF60 */ lw $v1, %lo(D_8011AF60)($v1) -/* 01A0B4 800194B4 00000000 */ nop -/* 01A0B8 800194B8 26310001 */ addiu $s1, $s1, 1 -.L800194BC: -/* 01A0BC 800194BC 1637FFB2 */ bne $s1, $s7, .L80019388 -/* 01A0C0 800194C0 00000000 */ nop -.L800194C4: -/* 01A0C4 800194C4 906F0001 */ lbu $t7, 1($v1) -/* 01A0C8 800194C8 240100FE */ li $at, 254 -/* 01A0CC 800194CC 15E1000C */ bne $t7, $at, .L80019500 -/* 01A0D0 800194D0 8FBF006C */ lw $ra, 0x6c($sp) -/* 01A0D4 800194D4 0C000646 */ jal func_80001918 -/* 01A0D8 800194D8 00000000 */ nop -/* 01A0DC 800194DC 3C0E8012 */ lui $t6, %hi(D_8011AF60) # $t6, 0x8012 -/* 01A0E0 800194E0 8DCEAF60 */ lw $t6, %lo(D_8011AF60)($t6) -/* 01A0E4 800194E4 3C018012 */ lui $at, %hi(D_8011AF60) # $at, 0x8012 -/* 01A0E8 800194E8 91D90040 */ lbu $t9, 0x40($t6) -/* 01A0EC 800194EC 00000000 */ nop -/* 01A0F0 800194F0 17220003 */ bne $t9, $v0, .L80019500 -/* 01A0F4 800194F4 8FBF006C */ lw $ra, 0x6c($sp) -/* 01A0F8 800194F8 AC20AF60 */ sw $zero, %lo(D_8011AF60)($at) -.L800194FC: -/* 01A0FC 800194FC 8FBF006C */ lw $ra, 0x6c($sp) -.L80019500: -/* 01A100 80019500 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 01A104 80019504 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 01A108 80019508 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 01A10C 8001950C C7B60024 */ lwc1 $f22, 0x24($sp) -/* 01A110 80019510 C7B90028 */ lwc1 $f25, 0x28($sp) -/* 01A114 80019514 C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 01A118 80019518 C7BB0030 */ lwc1 $f27, 0x30($sp) -/* 01A11C 8001951C C7BA0034 */ lwc1 $f26, 0x34($sp) -/* 01A120 80019520 C7BD0038 */ lwc1 $f29, 0x38($sp) -/* 01A124 80019524 C7BC003C */ lwc1 $f28, 0x3c($sp) -/* 01A128 80019528 C7BF0040 */ lwc1 $f31, 0x40($sp) -/* 01A12C 8001952C C7BE0044 */ lwc1 $f30, 0x44($sp) -/* 01A130 80019530 8FB00048 */ lw $s0, 0x48($sp) -/* 01A134 80019534 8FB1004C */ lw $s1, 0x4c($sp) -/* 01A138 80019538 8FB20050 */ lw $s2, 0x50($sp) -/* 01A13C 8001953C 8FB30054 */ lw $s3, 0x54($sp) -/* 01A140 80019540 8FB40058 */ lw $s4, 0x58($sp) -/* 01A144 80019544 8FB5005C */ lw $s5, 0x5c($sp) -/* 01A148 80019548 8FB60060 */ lw $s6, 0x60($sp) -/* 01A14C 8001954C 8FB70064 */ lw $s7, 0x64($sp) -/* 01A150 80019550 8FBE0068 */ lw $fp, 0x68($sp) -/* 01A154 80019554 03E00008 */ jr $ra -/* 01A158 80019558 27BD0100 */ addiu $sp, $sp, 0x100 - -glabel func_8001955C -/* 01A15C 8001955C 27BDFF40 */ addiu $sp, $sp, -0xc0 -/* 01A160 80019560 AFB60040 */ sw $s6, 0x40($sp) -/* 01A164 80019564 3C168012 */ lui $s6, %hi(D_8011AED0) # $s6, 0x8012 -/* 01A168 80019568 8ED6AED0 */ lw $s6, %lo(D_8011AED0)($s6) -/* 01A16C 8001956C AFA600C8 */ sw $a2, 0xc8($sp) -/* 01A170 80019570 30CE00FF */ andi $t6, $a2, 0xff -/* 01A174 80019574 01C03025 */ move $a2, $t6 -/* 01A178 80019578 AFBF0044 */ sw $ra, 0x44($sp) -/* 01A17C 8001957C AFB5003C */ sw $s5, 0x3c($sp) -/* 01A180 80019580 AFB40038 */ sw $s4, 0x38($sp) -/* 01A184 80019584 AFB30034 */ sw $s3, 0x34($sp) -/* 01A188 80019588 AFB20030 */ sw $s2, 0x30($sp) -/* 01A18C 8001958C AFB1002C */ sw $s1, 0x2c($sp) -/* 01A190 80019590 AFB00028 */ sw $s0, 0x28($sp) -/* 01A194 80019594 E7B70020 */ swc1 $f23, 0x20($sp) -/* 01A198 80019598 E7B60024 */ swc1 $f22, 0x24($sp) -/* 01A19C 8001959C E7B50018 */ swc1 $f21, 0x18($sp) -/* 01A1A0 800195A0 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 01A1A4 800195A4 16C00003 */ bnez $s6, .L800195B4 -/* 01A1A8 800195A8 AFA400C0 */ sw $a0, 0xc0($sp) -/* 01A1AC 800195AC 10000088 */ b .L800197D0 -/* 01A1B0 800195B0 00001025 */ move $v0, $zero -.L800195B4: -/* 01A1B4 800195B4 24A2FFFE */ addiu $v0, $a1, -2 -/* 01A1B8 800195B8 04410002 */ bgez $v0, .L800195C4 -/* 01A1BC 800195BC 00408825 */ move $s1, $v0 -/* 01A1C0 800195C0 00568821 */ addu $s1, $v0, $s6 -.L800195C4: -/* 01A1C4 800195C4 44879000 */ mtc1 $a3, $f18 -/* 01A1C8 800195C8 8FAF00D0 */ lw $t7, 0xd0($sp) -/* 01A1CC 800195CC 46809520 */ cvt.s.w $f20, $f18 -/* 01A1D0 800195D0 448F9000 */ mtc1 $t7, $f18 -/* 01A1D4 800195D4 00C0A025 */ move $s4, $a2 -/* 01A1D8 800195D8 468095A0 */ cvt.s.w $f22, $f18 -/* 01A1DC 800195DC 27B200A4 */ addiu $s2, $sp, 0xa4 -/* 01A1E0 800195E0 27B30094 */ addiu $s3, $sp, 0x94 -/* 01A1E4 800195E4 27B00084 */ addiu $s0, $sp, 0x84 -/* 01A1E8 800195E8 27B50094 */ addiu $s5, $sp, 0x94 -.L800195EC: -/* 01A1EC 800195EC 02202025 */ move $a0, $s1 -/* 01A1F0 800195F0 0C006E87 */ jal func_8001BA1C -/* 01A1F4 800195F4 02802825 */ move $a1, $s4 -/* 01A1F8 800195F8 C448001C */ lwc1 $f8, 0x1c($v0) -/* 01A1FC 800195FC C44A0008 */ lwc1 $f10, 8($v0) -/* 01A200 80019600 C4460010 */ lwc1 $f6, 0x10($v0) -/* 01A204 80019604 460A4482 */ mul.s $f18, $f8, $f10 -/* 01A208 80019608 26310001 */ addiu $s1, $s1, 1 -/* 01A20C 8001960C 26520004 */ addiu $s2, $s2, 4 -/* 01A210 80019610 26100004 */ addiu $s0, $s0, 4 -/* 01A214 80019614 46149102 */ mul.s $f4, $f18, $f20 -/* 01A218 80019618 46043200 */ add.s $f8, $f6, $f4 -/* 01A21C 8001961C E648FFFC */ swc1 $f8, -4($s2) -/* 01A220 80019620 C452001C */ lwc1 $f18, 0x1c($v0) -/* 01A224 80019624 C44A0014 */ lwc1 $f10, 0x14($v0) -/* 01A228 80019628 46169182 */ mul.s $f6, $f18, $f22 -/* 01A22C 8001962C 46065100 */ add.s $f4, $f10, $f6 -/* 01A230 80019630 E6640000 */ swc1 $f4, ($s3) -/* 01A234 80019634 C4520000 */ lwc1 $f18, ($v0) -/* 01A238 80019638 C448001C */ lwc1 $f8, 0x1c($v0) -/* 01A23C 8001963C 46009287 */ neg.s $f10, $f18 -/* 01A240 80019640 460A4182 */ mul.s $f6, $f8, $f10 -/* 01A244 80019644 C4520018 */ lwc1 $f18, 0x18($v0) -/* 01A248 80019648 46143102 */ mul.s $f4, $f6, $f20 -/* 01A24C 8001964C 46049200 */ add.s $f8, $f18, $f4 -/* 01A250 80019650 16360002 */ bne $s1, $s6, .L8001965C -/* 01A254 80019654 E608FFFC */ swc1 $f8, -4($s0) -/* 01A258 80019658 00008825 */ move $s1, $zero -.L8001965C: -/* 01A25C 8001965C 1615FFE3 */ bne $s0, $s5, .L800195EC -/* 01A260 80019660 26730004 */ addiu $s3, $s3, 4 -/* 01A264 80019664 C7AA00D4 */ lwc1 $f10, 0xd4($sp) -/* 01A268 80019668 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 01A26C 8001966C 44811800 */ mtc1 $at, $f3 -/* 01A270 80019670 44801000 */ mtc1 $zero, $f2 -/* 01A274 80019674 460051A1 */ cvt.d.s $f6, $f10 -/* 01A278 80019678 46261481 */ sub.d $f18, $f2, $f6 -/* 01A27C 8001967C 44806000 */ mtc1 $zero, $f12 -/* 01A280 80019680 46209520 */ cvt.s.d $f20, $f18 -/* 01A284 80019684 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 01A288 80019688 460CA03C */ c.lt.s $f20, $f12 -/* 01A28C 8001968C 27A400A4 */ addiu $a0, $sp, 0xa4 -/* 01A290 80019690 45000002 */ bc1f .L8001969C -/* 01A294 80019694 00002825 */ move $a1, $zero -/* 01A298 80019698 46006506 */ mov.s $f20, $f12 -.L8001969C: -/* 01A29C 8001969C 4600A121 */ cvt.d.s $f4, $f20 -/* 01A2A0 800196A0 4624103C */ c.lt.d $f2, $f4 -/* 01A2A4 800196A4 00000000 */ nop -/* 01A2A8 800196A8 45000003 */ bc1f .L800196B8 -/* 01A2AC 800196AC 00000000 */ nop -/* 01A2B0 800196B0 4481A000 */ mtc1 $at, $f20 -/* 01A2B4 800196B4 00000000 */ nop -.L800196B8: -/* 01A2B8 800196B8 4406A000 */ mfc1 $a2, $f20 -/* 01A2BC 800196BC 0C00898F */ jal func_8002263C -/* 01A2C0 800196C0 27A70070 */ addiu $a3, $sp, 0x70 -/* 01A2C4 800196C4 4406A000 */ mfc1 $a2, $f20 -/* 01A2C8 800196C8 E7A00080 */ swc1 $f0, 0x80($sp) -/* 01A2CC 800196CC 27A40094 */ addiu $a0, $sp, 0x94 -/* 01A2D0 800196D0 00002825 */ move $a1, $zero -/* 01A2D4 800196D4 0C00898F */ jal func_8002263C -/* 01A2D8 800196D8 27A7006C */ addiu $a3, $sp, 0x6c -/* 01A2DC 800196DC 4406A000 */ mfc1 $a2, $f20 -/* 01A2E0 800196E0 46000586 */ mov.s $f22, $f0 -/* 01A2E4 800196E4 27A40084 */ addiu $a0, $sp, 0x84 -/* 01A2E8 800196E8 00002825 */ move $a1, $zero -/* 01A2EC 800196EC 0C00898F */ jal func_8002263C -/* 01A2F0 800196F0 27A70068 */ addiu $a3, $sp, 0x68 -/* 01A2F4 800196F4 C7A20070 */ lwc1 $f2, 0x70($sp) -/* 01A2F8 800196F8 C7AE006C */ lwc1 $f14, 0x6c($sp) -/* 01A2FC 800196FC 46021202 */ mul.s $f8, $f2, $f2 -/* 01A300 80019700 C7B00068 */ lwc1 $f16, 0x68($sp) -/* 01A304 80019704 E7A00078 */ swc1 $f0, 0x78($sp) -/* 01A308 80019708 460E7282 */ mul.s $f10, $f14, $f14 -/* 01A30C 8001970C 00000000 */ nop -/* 01A310 80019710 46108482 */ mul.s $f18, $f16, $f16 -/* 01A314 80019714 460A4180 */ add.s $f6, $f8, $f10 -/* 01A318 80019718 0C0326B4 */ jal sqrtf -/* 01A31C 8001971C 46123300 */ add.s $f12, $f6, $f18 -/* 01A320 80019720 44802000 */ mtc1 $zero, $f4 -/* 01A324 80019724 3C01800E */ lui $at, %hi(D_800E5634) # $at, 0x800e -/* 01A328 80019728 46040032 */ c.eq.s $f0, $f4 -/* 01A32C 8001972C 00000000 */ nop -/* 01A330 80019730 45010011 */ bc1t .L80019778 -/* 01A334 80019734 00000000 */ nop -/* 01A338 80019738 C4295630 */ lwc1 $f9, %lo(D_800E5630)($at) -/* 01A33C 8001973C C4285634 */ lwc1 $f8, %lo(D_800E5634)($at) -/* 01A340 80019740 460002A1 */ cvt.d.s $f10, $f0 -/* 01A344 80019744 00000000 */ nop -/* 01A348 80019748 462A4183 */ div.d $f6, $f8, $f10 -/* 01A34C 8001974C C7A20070 */ lwc1 $f2, 0x70($sp) -/* 01A350 80019750 C7AE006C */ lwc1 $f14, 0x6c($sp) -/* 01A354 80019754 C7B00068 */ lwc1 $f16, 0x68($sp) -/* 01A358 80019758 46203520 */ cvt.s.d $f20, $f6 -/* 01A35C 8001975C 46141082 */ mul.s $f2, $f2, $f20 -/* 01A360 80019760 00000000 */ nop -/* 01A364 80019764 46147382 */ mul.s $f14, $f14, $f20 -/* 01A368 80019768 E7A20070 */ swc1 $f2, 0x70($sp) -/* 01A36C 8001976C 46148402 */ mul.s $f16, $f16, $f20 -/* 01A370 80019770 E7AE006C */ swc1 $f14, 0x6c($sp) -/* 01A374 80019774 E7B00068 */ swc1 $f16, 0x68($sp) -.L80019778: -/* 01A378 80019778 C7B20080 */ lwc1 $f18, 0x80($sp) -/* 01A37C 8001977C C7A40070 */ lwc1 $f4, 0x70($sp) -/* 01A380 80019780 8FB800C0 */ lw $t8, 0xc0($sp) -/* 01A384 80019784 46049200 */ add.s $f8, $f18, $f4 -/* 01A388 80019788 C70A000C */ lwc1 $f10, 0xc($t8) -/* 01A38C 8001978C 8FB900D8 */ lw $t9, 0xd8($sp) -/* 01A390 80019790 460A4181 */ sub.s $f6, $f8, $f10 -/* 01A394 80019794 24020001 */ li $v0, 1 -/* 01A398 80019798 E7260000 */ swc1 $f6, ($t9) -/* 01A39C 8001979C C7B2006C */ lwc1 $f18, 0x6c($sp) -/* 01A3A0 800197A0 C7080010 */ lwc1 $f8, 0x10($t8) -/* 01A3A4 800197A4 4612B100 */ add.s $f4, $f22, $f18 -/* 01A3A8 800197A8 8FA800DC */ lw $t0, 0xdc($sp) -/* 01A3AC 800197AC 46082281 */ sub.s $f10, $f4, $f8 -/* 01A3B0 800197B0 E50A0000 */ swc1 $f10, ($t0) -/* 01A3B4 800197B4 C7B20068 */ lwc1 $f18, 0x68($sp) -/* 01A3B8 800197B8 C7A60078 */ lwc1 $f6, 0x78($sp) -/* 01A3BC 800197BC C7080014 */ lwc1 $f8, 0x14($t8) -/* 01A3C0 800197C0 46123100 */ add.s $f4, $f6, $f18 -/* 01A3C4 800197C4 8FA900E0 */ lw $t1, 0xe0($sp) -/* 01A3C8 800197C8 46082281 */ sub.s $f10, $f4, $f8 -/* 01A3CC 800197CC E52A0000 */ swc1 $f10, ($t1) -.L800197D0: -/* 01A3D0 800197D0 8FBF0044 */ lw $ra, 0x44($sp) -/* 01A3D4 800197D4 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 01A3D8 800197D8 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 01A3DC 800197DC C7B70020 */ lwc1 $f23, 0x20($sp) -/* 01A3E0 800197E0 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 01A3E4 800197E4 8FB00028 */ lw $s0, 0x28($sp) -/* 01A3E8 800197E8 8FB1002C */ lw $s1, 0x2c($sp) -/* 01A3EC 800197EC 8FB20030 */ lw $s2, 0x30($sp) -/* 01A3F0 800197F0 8FB30034 */ lw $s3, 0x34($sp) -/* 01A3F4 800197F4 8FB40038 */ lw $s4, 0x38($sp) -/* 01A3F8 800197F8 8FB5003C */ lw $s5, 0x3c($sp) -/* 01A3FC 800197FC 8FB60040 */ lw $s6, 0x40($sp) -/* 01A400 80019800 03E00008 */ jr $ra -/* 01A404 80019804 27BD00C0 */ addiu $sp, $sp, 0xc0 - -glabel D_80019808 -/* 01A408 80019808 27BDFF60 */ addiu $sp, $sp, -0xa0 -/* 01A40C 8001980C AFBF0034 */ sw $ra, 0x34($sp) -/* 01A410 80019810 AFB60030 */ sw $s6, 0x30($sp) -/* 01A414 80019814 AFB5002C */ sw $s5, 0x2c($sp) -/* 01A418 80019818 AFB40028 */ sw $s4, 0x28($sp) -/* 01A41C 8001981C AFB30024 */ sw $s3, 0x24($sp) -/* 01A420 80019820 AFB20020 */ sw $s2, 0x20($sp) -/* 01A424 80019824 AFB1001C */ sw $s1, 0x1c($sp) -/* 01A428 80019828 AFB00018 */ sw $s0, 0x18($sp) -/* 01A42C 8001982C 0C01AF6C */ jal func_8006BDB0 -/* 01A430 80019830 AFA400A0 */ sw $a0, 0xa0($sp) -/* 01A434 80019834 0C01BAA4 */ jal func_8006EA90 -/* 01A438 80019838 AFA20064 */ sw $v0, 0x64($sp) -/* 01A43C 8001983C 8FBF0064 */ lw $ra, 0x64($sp) -/* 01A440 80019840 A7A00088 */ sh $zero, 0x88($sp) -/* 01A444 80019844 A7A0008A */ sh $zero, 0x8a($sp) -/* 01A448 80019848 83E3004C */ lb $v1, 0x4c($ra) -/* 01A44C 8001984C 0040B025 */ move $s6, $v0 -/* 01A450 80019850 106001A2 */ beqz $v1, .L80019EDC -/* 01A454 80019854 00009825 */ move $s3, $zero -/* 01A458 80019858 24010003 */ li $at, 3 -/* 01A45C 8001985C 1061019F */ beq $v1, $at, .L80019EDC -/* 01A460 80019860 24010008 */ li $at, 8 -/* 01A464 80019864 1061019D */ beq $v1, $at, .L80019EDC -/* 01A468 80019868 306E0040 */ andi $t6, $v1, 0x40 -/* 01A46C 8001986C 11C003D0 */ beqz $t6, .L8001A7B0 -/* 01A470 80019870 24010042 */ li $at, 66 -/* 01A474 80019874 14610008 */ bne $v1, $at, .L80019898 -/* 01A478 80019878 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 -/* 01A47C 8001987C 256BAEE4 */ addiu $t3, %lo(D_8011AEE4) # addiu $t3, $t3, -0x511c -/* 01A480 80019880 8D640000 */ lw $a0, ($t3) -/* 01A484 80019884 AFBF0064 */ sw $ra, 0x64($sp) -/* 01A488 80019888 0C01144A */ jal func_80045128 -/* 01A48C 8001988C 00000000 */ nop -/* 01A490 80019890 8FBF0064 */ lw $ra, 0x64($sp) -/* 01A494 80019894 00000000 */ nop -.L80019898: -/* 01A498 80019898 3C0F8012 */ lui $t7, %hi(D_8011ADB4) # $t7, 0x8012 -/* 01A49C 8001989C 8DEFADB4 */ lw $t7, %lo(D_8011ADB4)($t7) -/* 01A4A0 800198A0 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 -/* 01A4A4 800198A4 15E003C2 */ bnez $t7, .L8001A7B0 -/* 01A4A8 800198A8 256BAEE4 */ addiu $t3, %lo(D_8011AEE4) # addiu $t3, $t3, -0x511c -/* 01A4AC 800198AC 3C128012 */ lui $s2, %hi(D_8011AEF0) # $s2, 0x8012 -/* 01A4B0 800198B0 2652AEF0 */ addiu $s2, %lo(D_8011AEF0) # addiu $s2, $s2, -0x5110 -/* 01A4B4 800198B4 8E470000 */ lw $a3, ($s2) -/* 01A4B8 800198B8 00008025 */ move $s0, $zero -/* 01A4BC 800198BC 18E00066 */ blez $a3, .L80019A58 -/* 01A4C0 800198C0 00005025 */ move $t2, $zero -/* 01A4C4 800198C4 3C118012 */ lui $s1, %hi(D_8011ADC0) # $s1, 0x8012 -/* 01A4C8 800198C8 2631ADC0 */ addiu $s1, %lo(D_8011ADC0) # addiu $s1, $s1, -0x5240 -/* 01A4CC 800198CC 27A5006C */ addiu $a1, $sp, 0x6c -/* 01A4D0 800198D0 2415FFFF */ li $s5, -1 -/* 01A4D4 800198D4 24140001 */ li $s4, 1 -/* 01A4D8 800198D8 24090040 */ li $t1, 64 -.L800198DC: -/* 01A4DC 800198DC 8D780000 */ lw $t8, ($t3) -/* 01A4E0 800198E0 00000000 */ nop -/* 01A4E4 800198E4 030AC821 */ addu $t9, $t8, $t2 -/* 01A4E8 800198E8 8F2E0000 */ lw $t6, ($t9) -/* 01A4EC 800198EC 00000000 */ nop -/* 01A4F0 800198F0 8DCF0064 */ lw $t7, 0x64($t6) -/* 01A4F4 800198F4 00000000 */ nop -/* 01A4F8 800198F8 ACAF0000 */ sw $t7, ($a1) -/* 01A4FC 800198FC 83F8004C */ lb $t8, 0x4c($ra) -/* 01A500 80019900 00000000 */ nop -/* 01A504 80019904 15380031 */ bne $t1, $t8, .L800199CC -/* 01A508 80019908 00000000 */ nop -/* 01A50C 8001990C 81F90185 */ lb $t9, 0x185($t7) -/* 01A510 80019910 00000000 */ nop -/* 01A514 80019914 1F20002D */ bgtz $t9, .L800199CC -/* 01A518 80019918 00000000 */ nop -/* 01A51C 8001991C 81EE01D8 */ lb $t6, 0x1d8($t7) -/* 01A520 80019920 00000000 */ nop -/* 01A524 80019924 15C00029 */ bnez $t6, .L800199CC -/* 01A528 80019928 00000000 */ nop -/* 01A52C 8001992C A1F401D8 */ sb $s4, 0x1d8($t7) -/* 01A530 80019930 8CAF0000 */ lw $t7, ($a1) -/* 01A534 80019934 00000000 */ nop -/* 01A538 80019938 A1E00173 */ sb $zero, 0x173($t7) -/* 01A53C 8001993C 8D780000 */ lw $t8, ($t3) -/* 01A540 80019940 00000000 */ nop -/* 01A544 80019944 030AC821 */ addu $t9, $t8, $t2 -/* 01A548 80019948 8F240000 */ lw $a0, ($t9) -/* 01A54C 8001994C AFBF0064 */ sw $ra, 0x64($sp) -/* 01A550 80019950 AFAA0044 */ sw $t2, 0x44($sp) -/* 01A554 80019954 0C001AB2 */ jal func_80006AC8 -/* 01A558 80019958 AFA5004C */ sw $a1, 0x4c($sp) -/* 01A55C 8001995C 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 -/* 01A560 80019960 256BAEE4 */ addiu $t3, %lo(D_8011AEE4) # addiu $t3, $t3, -0x511c -/* 01A564 80019964 8FAA0044 */ lw $t2, 0x44($sp) -/* 01A568 80019968 8D6E0000 */ lw $t6, ($t3) -/* 01A56C 8001996C 8FA5004C */ lw $a1, 0x4c($sp) -/* 01A570 80019970 01CA7821 */ addu $t7, $t6, $t2 -/* 01A574 80019974 8DE20000 */ lw $v0, ($t7) -/* 01A578 80019978 8FBF0064 */ lw $ra, 0x64($sp) -/* 01A57C 8001997C 84580006 */ lh $t8, 6($v0) -/* 01A580 80019980 24090040 */ li $t1, 64 -/* 01A584 80019984 37194000 */ ori $t9, $t8, 0x4000 -/* 01A588 80019988 A4590006 */ sh $t9, 6($v0) -/* 01A58C 8001998C 8D6E0000 */ lw $t6, ($t3) -/* 01A590 80019990 00000000 */ nop -/* 01A594 80019994 01CA7821 */ addu $t7, $t6, $t2 -/* 01A598 80019998 8DF80000 */ lw $t8, ($t7) -/* 01A59C 8001999C 240F0005 */ li $t7, 5 -/* 01A5A0 800199A0 8F19004C */ lw $t9, 0x4c($t8) -/* 01A5A4 800199A4 00000000 */ nop -/* 01A5A8 800199A8 A7200014 */ sh $zero, 0x14($t9) -/* 01A5AC 800199AC 8E2E0000 */ lw $t6, ($s1) -/* 01A5B0 800199B0 8CB90000 */ lw $t9, ($a1) -/* 01A5B4 800199B4 01EEC023 */ subu $t8, $t7, $t6 -/* 01A5B8 800199B8 A73801AC */ sh $t8, 0x1ac($t9) -/* 01A5BC 800199BC 8E2F0000 */ lw $t7, ($s1) -/* 01A5C0 800199C0 00000000 */ nop -/* 01A5C4 800199C4 25EE0001 */ addiu $t6, $t7, 1 -/* 01A5C8 800199C8 AE2E0000 */ sw $t6, ($s1) -.L800199CC: -/* 01A5CC 800199CC 8CA20000 */ lw $v0, ($a1) -/* 01A5D0 800199D0 26100001 */ addiu $s0, $s0, 1 -/* 01A5D4 800199D4 84580000 */ lh $t8, ($v0) -/* 01A5D8 800199D8 804301D8 */ lb $v1, 0x1d8($v0) -/* 01A5DC 800199DC 12B8000B */ beq $s5, $t8, .L80019A0C -/* 01A5E0 800199E0 00000000 */ nop -/* 01A5E4 800199E4 10600006 */ beqz $v1, .L80019A00 -/* 01A5E8 800199E8 87AE008A */ lh $t6, 0x8a($sp) -/* 01A5EC 800199EC 87B90088 */ lh $t9, 0x88($sp) -/* 01A5F0 800199F0 00000000 */ nop -/* 01A5F4 800199F4 272F0001 */ addiu $t7, $t9, 1 -/* 01A5F8 800199F8 A7AF0088 */ sh $t7, 0x88($sp) -/* 01A5FC 800199FC 87AE008A */ lh $t6, 0x8a($sp) -.L80019A00: -/* 01A600 80019A00 00000000 */ nop -/* 01A604 80019A04 25D80001 */ addiu $t8, $t6, 1 -/* 01A608 80019A08 A7B8008A */ sh $t8, 0x8a($sp) -.L80019A0C: -/* 01A60C 80019A0C 1060000D */ beqz $v1, .L80019A44 -/* 01A610 80019A10 00000000 */ nop -/* 01A614 80019A14 844E01AC */ lh $t6, 0x1ac($v0) -/* 01A618 80019A18 26730001 */ addiu $s3, $s3, 1 -/* 01A61C 80019A1C 0013CC00 */ sll $t9, $s3, 0x10 -/* 01A620 80019A20 15C00008 */ bnez $t6, .L80019A44 -/* 01A624 80019A24 00199C03 */ sra $s3, $t9, 0x10 -/* 01A628 80019A28 8E380000 */ lw $t8, ($s1) -/* 01A62C 80019A2C 00000000 */ nop -/* 01A630 80019A30 A45801AC */ sh $t8, 0x1ac($v0) -/* 01A634 80019A34 8E390000 */ lw $t9, ($s1) -/* 01A638 80019A38 00000000 */ nop -/* 01A63C 80019A3C 272F0001 */ addiu $t7, $t9, 1 -/* 01A640 80019A40 AE2F0000 */ sw $t7, ($s1) -.L80019A44: -/* 01A644 80019A44 8E470000 */ lw $a3, ($s2) -/* 01A648 80019A48 254A0004 */ addiu $t2, $t2, 4 -/* 01A64C 80019A4C 0207082A */ slt $at, $s0, $a3 -/* 01A650 80019A50 1420FFA2 */ bnez $at, .L800198DC -/* 01A654 80019A54 24A50004 */ addiu $a1, $a1, 4 -.L80019A58: -/* 01A658 80019A58 83EE004C */ lb $t6, 0x4c($ra) -/* 01A65C 80019A5C 24090040 */ li $t1, 64 -/* 01A660 80019A60 3C118012 */ lui $s1, %hi(D_8011ADC0) # $s1, 0x8012 -/* 01A664 80019A64 2631ADC0 */ addiu $s1, %lo(D_8011ADC0) # addiu $s1, $s1, -0x5240 -/* 01A668 80019A68 24140001 */ li $s4, 1 -/* 01A66C 80019A6C 112E0003 */ beq $t1, $t6, .L80019A7C -/* 01A670 80019A70 2415FFFF */ li $s5, -1 -/* 01A674 80019A74 1E600010 */ bgtz $s3, .L80019AB8 -/* 01A678 80019A78 00000000 */ nop -.L80019A7C: -/* 01A67C 80019A7C 87B8008A */ lh $t8, 0x8a($sp) -/* 01A680 80019A80 87B90088 */ lh $t9, 0x88($sp) -/* 01A684 80019A84 17140004 */ bne $t8, $s4, .L80019A98 -/* 01A688 80019A88 87AF008A */ lh $t7, 0x8a($sp) -/* 01A68C 80019A8C 1334000A */ beq $t9, $s4, .L80019AB8 -/* 01A690 80019A90 00000000 */ nop -/* 01A694 80019A94 87AF008A */ lh $t7, 0x8a($sp) -.L80019A98: -/* 01A698 80019A98 87AE0088 */ lh $t6, 0x88($sp) -/* 01A69C 80019A9C 29E10002 */ slti $at, $t7, 2 -/* 01A6A0 80019AA0 14200002 */ bnez $at, .L80019AAC -/* 01A6A4 80019AA4 01CF082A */ slt $at, $t6, $t7 -/* 01A6A8 80019AA8 10200003 */ beqz $at, .L80019AB8 -.L80019AAC: -/* 01A6AC 80019AAC 2A610003 */ slti $at, $s3, 3 -/* 01A6B0 80019AB0 1420033F */ bnez $at, .L8001A7B0 -/* 01A6B4 80019AB4 00000000 */ nop -.L80019AB8: -/* 01A6B8 80019AB8 18E00041 */ blez $a3, .L80019BC0 -/* 01A6BC 80019ABC 00008025 */ move $s0, $zero -/* 01A6C0 80019AC0 27A3005C */ addiu $v1, $sp, 0x5c -/* 01A6C4 80019AC4 00E32021 */ addu $a0, $a3, $v1 -/* 01A6C8 80019AC8 24070003 */ li $a3, 3 -/* 01A6CC 80019ACC 27A5006C */ addiu $a1, $sp, 0x6c -/* 01A6D0 80019AD0 240D000A */ li $t5, 10 -/* 01A6D4 80019AD4 24060042 */ li $a2, 66 -.L80019AD8: -/* 01A6D8 80019AD8 83F9004C */ lb $t9, 0x4c($ra) -/* 01A6DC 80019ADC 00000000 */ nop -/* 01A6E0 80019AE0 15390008 */ bne $t1, $t9, .L80019B04 -/* 01A6E4 80019AE4 00000000 */ nop -/* 01A6E8 80019AE8 8CAE0000 */ lw $t6, ($a1) -/* 01A6EC 80019AEC 00000000 */ nop -/* 01A6F0 80019AF0 81CF0185 */ lb $t7, 0x185($t6) -/* 01A6F4 80019AF4 00000000 */ nop -/* 01A6F8 80019AF8 01AFC023 */ subu $t8, $t5, $t7 -/* 01A6FC 80019AFC 10000020 */ b .L80019B80 -/* 01A700 80019B00 A0780000 */ sb $t8, ($v1) -.L80019B04: -/* 01A704 80019B04 8CA20000 */ lw $v0, ($a1) -/* 01A708 80019B08 00000000 */ nop -/* 01A70C 80019B0C 80590193 */ lb $t9, 0x193($v0) -/* 01A710 80019B10 00000000 */ nop -/* 01A714 80019B14 A0790000 */ sb $t9, ($v1) -/* 01A718 80019B18 83EE004C */ lb $t6, 0x4c($ra) -/* 01A71C 80019B1C 00000000 */ nop -/* 01A720 80019B20 14CE0017 */ bne $a2, $t6, .L80019B80 -/* 01A724 80019B24 00000000 */ nop -/* 01A728 80019B28 806F0000 */ lb $t7, ($v1) -/* 01A72C 80019B2C 00000000 */ nop -/* 01A730 80019B30 01E70019 */ multu $t7, $a3 -/* 01A734 80019B34 0000C012 */ mflo $t8 -/* 01A738 80019B38 A0780000 */ sb $t8, ($v1) -/* 01A73C 80019B3C 805901CF */ lb $t9, 0x1cf($v0) -/* 01A740 80019B40 00000000 */ nop -/* 01A744 80019B44 13200006 */ beqz $t9, .L80019B60 -/* 01A748 80019B48 00000000 */ nop -/* 01A74C 80019B4C 806E0000 */ lb $t6, ($v1) -/* 01A750 80019B50 00000000 */ nop -/* 01A754 80019B54 25CF0002 */ addiu $t7, $t6, 2 -/* 01A758 80019B58 10000009 */ b .L80019B80 -/* 01A75C 80019B5C A06F0000 */ sb $t7, ($v1) -.L80019B60: -/* 01A760 80019B60 8C580144 */ lw $t8, 0x144($v0) -/* 01A764 80019B64 00000000 */ nop -/* 01A768 80019B68 13000005 */ beqz $t8, .L80019B80 -/* 01A76C 80019B6C 00000000 */ nop -/* 01A770 80019B70 80790000 */ lb $t9, ($v1) -/* 01A774 80019B74 00000000 */ nop -/* 01A778 80019B78 272E0001 */ addiu $t6, $t9, 1 -/* 01A77C 80019B7C A06E0000 */ sb $t6, ($v1) -.L80019B80: -/* 01A780 80019B80 80620000 */ lb $v0, ($v1) -/* 01A784 80019B84 00000000 */ nop -/* 01A788 80019B88 2841000B */ slti $at, $v0, 0xb -/* 01A78C 80019B8C 14200004 */ bnez $at, .L80019BA0 -/* 01A790 80019B90 00000000 */ nop -/* 01A794 80019B94 A06D0000 */ sb $t5, ($v1) -/* 01A798 80019B98 80620000 */ lb $v0, ($v1) -/* 01A79C 80019B9C 00000000 */ nop -.L80019BA0: -/* 01A7A0 80019BA0 04410002 */ bgez $v0, .L80019BAC -/* 01A7A4 80019BA4 00000000 */ nop -/* 01A7A8 80019BA8 A0600000 */ sb $zero, ($v1) -.L80019BAC: -/* 01A7AC 80019BAC 24630001 */ addiu $v1, $v1, 1 -/* 01A7B0 80019BB0 0064082B */ sltu $at, $v1, $a0 -/* 01A7B4 80019BB4 1420FFC8 */ bnez $at, .L80019AD8 -/* 01A7B8 80019BB8 24A50004 */ addiu $a1, $a1, 4 -/* 01A7BC 80019BBC 00008025 */ move $s0, $zero -.L80019BC0: -/* 01A7C0 80019BC0 27A8006C */ addiu $t0, $sp, 0x6c -/* 01A7C4 80019BC4 27A6005C */ addiu $a2, $sp, 0x5c -.L80019BC8: -/* 01A7C8 80019BC8 8E470000 */ lw $a3, ($s2) -/* 01A7CC 80019BCC 00152400 */ sll $a0, $s5, 0x10 -/* 01A7D0 80019BD0 00151C00 */ sll $v1, $s5, 0x10 -/* 01A7D4 80019BD4 00047C03 */ sra $t7, $a0, 0x10 -/* 01A7D8 80019BD8 0003C403 */ sra $t8, $v1, 0x10 -/* 01A7DC 80019BDC 01E02025 */ move $a0, $t7 -/* 01A7E0 80019BE0 18E00018 */ blez $a3, .L80019C44 -/* 01A7E4 80019BE4 03001825 */ move $v1, $t8 -/* 01A7E8 80019BE8 27A5006C */ addiu $a1, $sp, 0x6c -.L80019BEC: -/* 01A7EC 80019BEC 8CB90000 */ lw $t9, ($a1) -/* 01A7F0 80019BF0 00D07821 */ addu $t7, $a2, $s0 -/* 01A7F4 80019BF4 832E01D8 */ lb $t6, 0x1d8($t9) -/* 01A7F8 80019BF8 00000000 */ nop -/* 01A7FC 80019BFC 15C0000C */ bnez $t6, .L80019C30 -/* 01A800 80019C00 00000000 */ nop -/* 01A804 80019C04 81E20000 */ lb $v0, ($t7) -/* 01A808 80019C08 00000000 */ nop -/* 01A80C 80019C0C 0043082A */ slt $at, $v0, $v1 -/* 01A810 80019C10 14200007 */ bnez $at, .L80019C30 -/* 01A814 80019C14 00000000 */ nop -/* 01A818 80019C18 00021C00 */ sll $v1, $v0, 0x10 -/* 01A81C 80019C1C 00102400 */ sll $a0, $s0, 0x10 -/* 01A820 80019C20 0003C403 */ sra $t8, $v1, 0x10 -/* 01A824 80019C24 0004CC03 */ sra $t9, $a0, 0x10 -/* 01A828 80019C28 03001825 */ move $v1, $t8 -/* 01A82C 80019C2C 03202025 */ move $a0, $t9 -.L80019C30: -/* 01A830 80019C30 26100001 */ addiu $s0, $s0, 1 -/* 01A834 80019C34 0207082A */ slt $at, $s0, $a3 -/* 01A838 80019C38 1420FFEC */ bnez $at, .L80019BEC -/* 01A83C 80019C3C 24A50004 */ addiu $a1, $a1, 4 -/* 01A840 80019C40 00008025 */ move $s0, $zero -.L80019C44: -/* 01A844 80019C44 10950016 */ beq $a0, $s5, .L80019CA0 -/* 01A848 80019C48 00000000 */ nop -/* 01A84C 80019C4C 83EE004C */ lb $t6, 0x4c($ra) -/* 01A850 80019C50 0004C880 */ sll $t9, $a0, 2 -/* 01A854 80019C54 152E0009 */ bne $t1, $t6, .L80019C7C -/* 01A858 80019C58 01191021 */ addu $v0, $t0, $t9 -/* 01A85C 80019C5C 00047880 */ sll $t7, $a0, 2 -/* 01A860 80019C60 8E380000 */ lw $t8, ($s1) -/* 01A864 80019C64 010F1021 */ addu $v0, $t0, $t7 -/* 01A868 80019C68 8C4F0000 */ lw $t7, ($v0) -/* 01A86C 80019C6C 24190005 */ li $t9, 5 -/* 01A870 80019C70 03387023 */ subu $t6, $t9, $t8 -/* 01A874 80019C74 10000005 */ b .L80019C8C -/* 01A878 80019C78 A5EE01AC */ sh $t6, 0x1ac($t7) -.L80019C7C: -/* 01A87C 80019C7C 8E380000 */ lw $t8, ($s1) -/* 01A880 80019C80 8C4E0000 */ lw $t6, ($v0) -/* 01A884 80019C84 00000000 */ nop -/* 01A888 80019C88 A5D801AC */ sh $t8, 0x1ac($t6) -.L80019C8C: -/* 01A88C 80019C8C 8E2F0000 */ lw $t7, ($s1) -/* 01A890 80019C90 8C580000 */ lw $t8, ($v0) -/* 01A894 80019C94 25F90001 */ addiu $t9, $t7, 1 -/* 01A898 80019C98 AE390000 */ sw $t9, ($s1) -/* 01A89C 80019C9C A31401D8 */ sb $s4, 0x1d8($t8) -.L80019CA0: -/* 01A8A0 80019CA0 1495FFC9 */ bne $a0, $s5, .L80019BC8 -/* 01A8A4 80019CA4 00000000 */ nop -/* 01A8A8 80019CA8 3C13800E */ lui $s3, %hi(D_800DC744) # $s3, 0x800e -/* 01A8AC 80019CAC 2673C744 */ addiu $s3, %lo(D_800DC744) # addiu $s3, $s3, -0x38bc -/* 01A8B0 80019CB0 0C0270B4 */ jal func_8009C2D0 -/* 01A8B4 80019CB4 A2600000 */ sb $zero, ($s3) -/* 01A8B8 80019CB8 14400024 */ bnez $v0, .L80019D4C -/* 01A8BC 80019CBC 00003025 */ move $a2, $zero -/* 01A8C0 80019CC0 8FAE006C */ lw $t6, 0x6c($sp) -/* 01A8C4 80019CC4 00000000 */ nop -/* 01A8C8 80019CC8 85CF01AC */ lh $t7, 0x1ac($t6) -/* 01A8CC 80019CCC 00000000 */ nop -/* 01A8D0 80019CD0 128F000B */ beq $s4, $t7, .L80019D00 -/* 01A8D4 80019CD4 00000000 */ nop -/* 01A8D8 80019CD8 0C027B20 */ jal func_8009EC80 -/* 01A8DC 80019CDC 00000000 */ nop -/* 01A8E0 80019CE0 1040001A */ beqz $v0, .L80019D4C -/* 01A8E4 80019CE4 00003025 */ move $a2, $zero -/* 01A8E8 80019CE8 8FB90070 */ lw $t9, 0x70($sp) -/* 01A8EC 80019CEC 00000000 */ nop -/* 01A8F0 80019CF0 873801AC */ lh $t8, 0x1ac($t9) -/* 01A8F4 80019CF4 00000000 */ nop -/* 01A8F8 80019CF8 16980014 */ bne $s4, $t8, .L80019D4C -/* 01A8FC 80019CFC 00003025 */ move $a2, $zero -.L80019D00: -/* 01A900 80019D00 92CF0049 */ lbu $t7, 0x49($s6) -/* 01A904 80019D04 8ECE0004 */ lw $t6, 4($s6) -/* 01A908 80019D08 000FC880 */ sll $t9, $t7, 2 -/* 01A90C 80019D0C 01D91021 */ addu $v0, $t6, $t9 -/* 01A910 80019D10 8C430000 */ lw $v1, ($v0) -/* 01A914 80019D14 00000000 */ nop -/* 01A918 80019D18 30780002 */ andi $t8, $v1, 2 -/* 01A91C 80019D1C 1700000A */ bnez $t8, .L80019D48 -/* 01A920 80019D20 346F0002 */ ori $t7, $v1, 2 -/* 01A924 80019D24 AC4F0000 */ sw $t7, ($v0) -/* 01A928 80019D28 92D00016 */ lbu $s0, 0x16($s6) -/* 01A92C 80019D2C 00000000 */ nop -/* 01A930 80019D30 26100001 */ addiu $s0, $s0, 1 -/* 01A934 80019D34 2A010005 */ slti $at, $s0, 5 -/* 01A938 80019D38 14200002 */ bnez $at, .L80019D44 -/* 01A93C 80019D3C 00000000 */ nop -/* 01A940 80019D40 24100004 */ li $s0, 4 -.L80019D44: -/* 01A944 80019D44 A2D00016 */ sb $s0, 0x16($s6) -.L80019D48: -/* 01A948 80019D48 00003025 */ move $a2, $zero -.L80019D4C: -/* 01A94C 80019D4C 02C01025 */ move $v0, $s6 -.L80019D50: -/* 01A950 80019D50 24C60001 */ addiu $a2, $a2, 1 -/* 01A954 80019D54 28C10008 */ slti $at, $a2, 8 -/* 01A958 80019D58 A055005A */ sb $s5, 0x5a($v0) -/* 01A95C 80019D5C 1420FFFC */ bnez $at, .L80019D50 -/* 01A960 80019D60 24420018 */ addiu $v0, $v0, 0x18 -/* 01A964 80019D64 8E4E0000 */ lw $t6, ($s2) -/* 01A968 80019D68 2405003E */ li $a1, 62 -/* 01A96C 80019D6C 19C00017 */ blez $t6, .L80019DCC -/* 01A970 80019D70 00003025 */ move $a2, $zero -/* 01A974 80019D74 02C01025 */ move $v0, $s6 -/* 01A978 80019D78 27A4006C */ addiu $a0, $sp, 0x6c -.L80019D7C: -/* 01A97C 80019D7C 8C830000 */ lw $v1, ($a0) -/* 01A980 80019D80 00000000 */ nop -/* 01A984 80019D84 84790000 */ lh $t9, ($v1) -/* 01A988 80019D88 00000000 */ nop -/* 01A98C 80019D8C 12B90006 */ beq $s5, $t9, .L80019DA8 -/* 01A990 80019D90 00000000 */ nop -/* 01A994 80019D94 847801AC */ lh $t8, 0x1ac($v1) -/* 01A998 80019D98 00000000 */ nop -/* 01A99C 80019D9C 16980002 */ bne $s4, $t8, .L80019DA8 -/* 01A9A0 80019DA0 00000000 */ nop -/* 01A9A4 80019DA4 2405003D */ li $a1, 61 -.L80019DA8: -/* 01A9A8 80019DA8 846F01AC */ lh $t7, 0x1ac($v1) -/* 01A9AC 80019DAC 24C60001 */ addiu $a2, $a2, 1 -/* 01A9B0 80019DB0 25EEFFFF */ addiu $t6, $t7, -1 -/* 01A9B4 80019DB4 A04E005A */ sb $t6, 0x5a($v0) -/* 01A9B8 80019DB8 8E590000 */ lw $t9, ($s2) -/* 01A9BC 80019DBC 24420018 */ addiu $v0, $v0, 0x18 -/* 01A9C0 80019DC0 00D9082A */ slt $at, $a2, $t9 -/* 01A9C4 80019DC4 1420FFED */ bnez $at, .L80019D7C -/* 01A9C8 80019DC8 24840004 */ addiu $a0, $a0, 4 -.L80019DCC: -/* 01A9CC 80019DCC 0C0002CD */ jal func_80000B34 -/* 01A9D0 80019DD0 30A400FF */ andi $a0, $a1, 0xff -/* 01A9D4 80019DD4 24050004 */ li $a1, 4 -/* 01A9D8 80019DD8 00001825 */ move $v1, $zero -/* 01A9DC 80019DDC 02C01025 */ move $v0, $s6 -/* 01A9E0 80019DE0 240400C0 */ li $a0, 192 -.L80019DE4: -/* 01A9E4 80019DE4 8058005A */ lb $t8, 0x5a($v0) -/* 01A9E8 80019DE8 24630018 */ addiu $v1, $v1, 0x18 -/* 01A9EC 80019DEC 16B80003 */ bne $s5, $t8, .L80019DFC -/* 01A9F0 80019DF0 00000000 */ nop -/* 01A9F4 80019DF4 A045005A */ sb $a1, 0x5a($v0) -/* 01A9F8 80019DF8 24A50001 */ addiu $a1, $a1, 1 -.L80019DFC: -/* 01A9FC 80019DFC 1464FFF9 */ bne $v1, $a0, .L80019DE4 -/* 01AA00 80019E00 24420018 */ addiu $v0, $v0, 0x18 -/* 01AA04 80019E04 0C027B20 */ jal func_8009EC80 -/* 01AA08 80019E08 A2600000 */ sb $zero, ($s3) -/* 01AA0C 80019E0C 10400008 */ beqz $v0, .L80019E30 -/* 01AA10 80019E10 2404FFFF */ li $a0, -1 -/* 01AA14 80019E14 82CF0072 */ lb $t7, 0x72($s6) -/* 01AA18 80019E18 82CE005A */ lb $t6, 0x5a($s6) -/* 01AA1C 80019E1C 00000000 */ nop -/* 01AA20 80019E20 01EE082A */ slt $at, $t7, $t6 -/* 01AA24 80019E24 10200002 */ beqz $at, .L80019E30 -/* 01AA28 80019E28 00000000 */ nop -/* 01AA2C 80019E2C A2740000 */ sb $s4, ($s3) -.L80019E30: -/* 01AA30 80019E30 1600001C */ bnez $s0, .L80019EA4 -/* 01AA34 80019E34 00002825 */ move $a1, $zero -/* 01AA38 80019E38 0C027B20 */ jal func_8009EC80 -/* 01AA3C 80019E3C 00000000 */ nop -/* 01AA40 80019E40 10400014 */ beqz $v0, .L80019E94 -/* 01AA44 80019E44 00002025 */ move $a0, $zero -/* 01AA48 80019E48 82790000 */ lb $t9, ($s3) -/* 01AA4C 80019E4C 3C0F800E */ lui $t7, %hi(D_800DC73C) # $t7, 0x800e -/* 01AA50 80019E50 1320000A */ beqz $t9, .L80019E7C -/* 01AA54 80019E54 00000000 */ nop -/* 01AA58 80019E58 0C01BCE6 */ jal func_8006F398 -/* 01AA5C 80019E5C A2600000 */ sb $zero, ($s3) -/* 01AA60 80019E60 3C18800E */ lui $t8, %hi(D_800DC73C) # $t8, 0x800e -/* 01AA64 80019E64 8318C73C */ lb $t8, %lo(D_800DC73C)($t8) -/* 01AA68 80019E68 3C01800E */ lui $at, %hi(D_800DC748) # $at, 0x800e -/* 01AA6C 80019E6C 13000009 */ beqz $t8, .L80019E94 -/* 01AA70 80019E70 00002025 */ move $a0, $zero -/* 01AA74 80019E74 10000006 */ b .L80019E90 -/* 01AA78 80019E78 A034C748 */ sb $s4, %lo(D_800DC748)($at) -.L80019E7C: -/* 01AA7C 80019E7C 81EFC73C */ lb $t7, %lo(D_800DC73C)($t7) -/* 01AA80 80019E80 3C01800E */ lui $at, %hi(D_800DC748) # $at, 0x800e -/* 01AA84 80019E84 11E00003 */ beqz $t7, .L80019E94 -/* 01AA88 80019E88 00002025 */ move $a0, $zero -/* 01AA8C 80019E8C A034C748 */ sb $s4, %lo(D_800DC748)($at) -.L80019E90: -/* 01AA90 80019E90 00002025 */ move $a0, $zero -.L80019E94: -/* 01AA94 80019E94 0C0251A2 */ jal func_80094688 -/* 01AA98 80019E98 2405001E */ li $a1, 30 -/* 01AA9C 80019E9C 1000000C */ b .L80019ED0 -/* 01AAA0 80019EA0 00000000 */ nop -.L80019EA4: -/* 01AAA4 80019EA4 00003025 */ move $a2, $zero -/* 01AAA8 80019EA8 0C01B06B */ jal func_8006C1AC -/* 01AAAC 80019EAC 00003825 */ move $a3, $zero -/* 01AAB0 80019EB0 92C70016 */ lbu $a3, 0x16($s6) -/* 01AAB4 80019EB4 2404002C */ li $a0, 44 -/* 01AAB8 80019EB8 00002825 */ move $a1, $zero -/* 01AABC 80019EBC 2406FFFF */ li $a2, -1 -/* 01AAC0 80019EC0 0C01B06B */ jal func_8006C1AC -/* 01AAC4 80019EC4 24E7FFFF */ addiu $a3, $a3, -1 -/* 01AAC8 80019EC8 0C006A35 */ jal func_8001A8D4 -/* 01AACC 80019ECC 02802025 */ move $a0, $s4 -.L80019ED0: -/* 01AAD0 80019ED0 3C018012 */ lui $at, %hi(D_8011ADB4) # $at, 0x8012 -/* 01AAD4 80019ED4 10000236 */ b .L8001A7B0 -/* 01AAD8 80019ED8 AC34ADB4 */ sw $s4, %lo(D_8011ADB4)($at) -.L80019EDC: -/* 01AADC 80019EDC 3C078012 */ lui $a3, %hi(D_8011AEF0) # $a3, 0x8012 -/* 01AAE0 80019EE0 3C128012 */ lui $s2, %hi(D_8011AEF0) # $s2, 0x8012 -/* 01AAE4 80019EE4 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 -/* 01AAE8 80019EE8 8CE7AEF0 */ lw $a3, %lo(D_8011AEF0)($a3) -/* 01AAEC 80019EEC 00008025 */ move $s0, $zero -/* 01AAF0 80019EF0 256BAEE4 */ addiu $t3, %lo(D_8011AEE4) # addiu $t3, $t3, -0x511c -/* 01AAF4 80019EF4 2652AEF0 */ addiu $s2, %lo(D_8011AEF0) # addiu $s2, $s2, -0x5110 -/* 01AAF8 80019EF8 00005025 */ move $t2, $zero -/* 01AAFC 80019EFC 240D000A */ li $t5, 10 -.L80019F00: -/* 01AB00 80019F00 8D690000 */ lw $t1, ($t3) -/* 01AB04 80019F04 24060001 */ li $a2, 1 -/* 01AB08 80019F08 012A7021 */ addu $t6, $t1, $t2 -/* 01AB0C 80019F0C 8DD90000 */ lw $t9, ($t6) -/* 01AB10 80019F10 00002825 */ move $a1, $zero -/* 01AB14 80019F14 8F280064 */ lw $t0, 0x64($t9) -/* 01AB18 80019F18 00000000 */ nop -/* 01AB1C 80019F1C 850C01AA */ lh $t4, 0x1aa($t0) -/* 01AB20 80019F20 00000000 */ nop -.L80019F24: -/* 01AB24 80019F24 10B00023 */ beq $a1, $s0, .L80019FB4 -/* 01AB28 80019F28 0005C080 */ sll $t8, $a1, 2 -/* 01AB2C 80019F2C 01387821 */ addu $t7, $t1, $t8 -/* 01AB30 80019F30 8DEE0000 */ lw $t6, ($t7) -/* 01AB34 80019F34 811901D8 */ lb $t9, 0x1d8($t0) -/* 01AB38 80019F38 8DC20064 */ lw $v0, 0x64($t6) -/* 01AB3C 80019F3C 17200007 */ bnez $t9, .L80019F5C -/* 01AB40 80019F40 00000000 */ nop -/* 01AB44 80019F44 805801D8 */ lb $t8, 0x1d8($v0) -/* 01AB48 80019F48 00000000 */ nop -/* 01AB4C 80019F4C 13000003 */ beqz $t8, .L80019F5C -/* 01AB50 80019F50 00000000 */ nop -/* 01AB54 80019F54 10000017 */ b .L80019FB4 -/* 01AB58 80019F58 24C60001 */ addiu $a2, $a2, 1 -.L80019F5C: -/* 01AB5C 80019F5C 85030190 */ lh $v1, 0x190($t0) -/* 01AB60 80019F60 84440190 */ lh $a0, 0x190($v0) -/* 01AB64 80019F64 00000000 */ nop -/* 01AB68 80019F68 0064082A */ slt $at, $v1, $a0 -/* 01AB6C 80019F6C 10200003 */ beqz $at, .L80019F7C -/* 01AB70 80019F70 00000000 */ nop -/* 01AB74 80019F74 1000000F */ b .L80019FB4 -/* 01AB78 80019F78 24C60001 */ addiu $a2, $a2, 1 -.L80019F7C: -/* 01AB7C 80019F7C 1483000D */ bne $a0, $v1, .L80019FB4 -/* 01AB80 80019F80 00000000 */ nop -/* 01AB84 80019F84 844301A8 */ lh $v1, 0x1a8($v0) -/* 01AB88 80019F88 850401A8 */ lh $a0, 0x1a8($t0) -/* 01AB8C 80019F8C 00000000 */ nop -/* 01AB90 80019F90 0064082A */ slt $at, $v1, $a0 -/* 01AB94 80019F94 10200002 */ beqz $at, .L80019FA0 -/* 01AB98 80019F98 00000000 */ nop -/* 01AB9C 80019F9C 24C60001 */ addiu $a2, $a2, 1 -.L80019FA0: -/* 01ABA0 80019FA0 14640004 */ bne $v1, $a0, .L80019FB4 -/* 01ABA4 80019FA4 0205082A */ slt $at, $s0, $a1 -/* 01ABA8 80019FA8 10200002 */ beqz $at, .L80019FB4 -/* 01ABAC 80019FAC 00000000 */ nop -/* 01ABB0 80019FB0 24C60001 */ addiu $a2, $a2, 1 -.L80019FB4: -/* 01ABB4 80019FB4 24A50001 */ addiu $a1, $a1, 1 -/* 01ABB8 80019FB8 00A7082A */ slt $at, $a1, $a3 -/* 01ABBC 80019FBC 1420FFD9 */ bnez $at, .L80019F24 -/* 01ABC0 80019FC0 00000000 */ nop -/* 01ABC4 80019FC4 A50601AA */ sh $a2, 0x1aa($t0) -/* 01ABC8 80019FC8 83EE004B */ lb $t6, 0x4b($ra) -/* 01ABCC 80019FCC 810F0193 */ lb $t7, 0x193($t0) -/* 01ABD0 80019FD0 00000000 */ nop -/* 01ABD4 80019FD4 01EE082A */ slt $at, $t7, $t6 -/* 01ABD8 80019FD8 10200018 */ beqz $at, .L8001A03C -/* 01ABDC 80019FDC 00000000 */ nop -/* 01ABE0 80019FE0 850201AA */ lh $v0, 0x1aa($t0) -/* 01ABE4 80019FE4 00000000 */ nop -/* 01ABE8 80019FE8 15820013 */ bne $t4, $v0, .L8001A038 -/* 01ABEC 80019FEC 00000000 */ nop -/* 01ABF0 80019FF0 850301B0 */ lh $v1, 0x1b0($t0) -/* 01ABF4 80019FF4 00000000 */ nop -/* 01ABF8 80019FF8 28610002 */ slti $at, $v1, 2 -/* 01ABFC 80019FFC 10200007 */ beqz $at, .L8001A01C -/* 01AC00 8001A000 00000000 */ nop -/* 01AC04 8001A004 811901D6 */ lb $t9, 0x1d6($t0) -/* 01AC08 8001A008 24010004 */ li $at, 4 -/* 01AC0C 8001A00C 1321000B */ beq $t9, $at, .L8001A03C -/* 01AC10 8001A010 24780001 */ addiu $t8, $v1, 1 -/* 01AC14 8001A014 10000009 */ b .L8001A03C -/* 01AC18 8001A018 A51801B0 */ sh $t8, 0x1b0($t0) -.L8001A01C: -/* 01AC1C 8001A01C 850F01AE */ lh $t7, 0x1ae($t0) -/* 01AC20 8001A020 00000000 */ nop -/* 01AC24 8001A024 11E20005 */ beq $t7, $v0, .L8001A03C -/* 01AC28 8001A028 00000000 */ nop -/* 01AC2C 8001A02C A50D01B2 */ sh $t5, 0x1b2($t0) -/* 01AC30 8001A030 10000002 */ b .L8001A03C -/* 01AC34 8001A034 A50201AE */ sh $v0, 0x1ae($t0) -.L8001A038: -/* 01AC38 8001A038 A50001B0 */ sh $zero, 0x1b0($t0) -.L8001A03C: -/* 01AC3C 8001A03C 8E470000 */ lw $a3, ($s2) -/* 01AC40 8001A040 26100001 */ addiu $s0, $s0, 1 -/* 01AC44 8001A044 0207082A */ slt $at, $s0, $a3 -/* 01AC48 8001A048 1420FFAD */ bnez $at, .L80019F00 -/* 01AC4C 8001A04C 254A0004 */ addiu $t2, $t2, 4 -/* 01AC50 8001A050 3C118012 */ lui $s1, %hi(D_8011ADC0) # $s1, 0x8012 -/* 01AC54 8001A054 2631ADC0 */ addiu $s1, %lo(D_8011ADC0) # addiu $s1, $s1, -0x5240 -/* 01AC58 8001A058 00005025 */ move $t2, $zero -/* 01AC5C 8001A05C 2415FFFF */ li $s5, -1 -/* 01AC60 8001A060 24140001 */ li $s4, 1 -.L8001A064: -/* 01AC64 8001A064 8D6E0000 */ lw $t6, ($t3) -/* 01AC68 8001A068 00000000 */ nop -/* 01AC6C 8001A06C 01CAC821 */ addu $t9, $t6, $t2 -/* 01AC70 8001A070 8F380000 */ lw $t8, ($t9) -/* 01AC74 8001A074 83EE004B */ lb $t6, 0x4b($ra) -/* 01AC78 8001A078 8F080064 */ lw $t0, 0x64($t8) -/* 01AC7C 8001A07C 00000000 */ nop -/* 01AC80 8001A080 810F0193 */ lb $t7, 0x193($t0) -/* 01AC84 8001A084 00000000 */ nop -/* 01AC88 8001A088 01EE082A */ slt $at, $t7, $t6 -/* 01AC8C 8001A08C 14200028 */ bnez $at, .L8001A130 -/* 01AC90 8001A090 00000000 */ nop -/* 01AC94 8001A094 811901D8 */ lb $t9, 0x1d8($t0) -/* 01AC98 8001A098 00000000 */ nop -/* 01AC9C 8001A09C 17200024 */ bnez $t9, .L8001A130 -/* 01ACA0 8001A0A0 00000000 */ nop -/* 01ACA4 8001A0A4 AFBF0064 */ sw $ra, 0x64($sp) -/* 01ACA8 8001A0A8 AFA80080 */ sw $t0, 0x80($sp) -/* 01ACAC 8001A0AC 0C01B683 */ jal func_8006DA0C -/* 01ACB0 8001A0B0 AFAA0044 */ sw $t2, 0x44($sp) -/* 01ACB4 8001A0B4 8FA80080 */ lw $t0, 0x80($sp) -/* 01ACB8 8001A0B8 8FAA0044 */ lw $t2, 0x44($sp) -/* 01ACBC 8001A0BC 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 -/* 01ACC0 8001A0C0 8FBF0064 */ lw $ra, 0x64($sp) -/* 01ACC4 8001A0C4 24010004 */ li $at, 4 -/* 01ACC8 8001A0C8 10410019 */ beq $v0, $at, .L8001A130 -/* 01ACCC 8001A0CC 256BAEE4 */ addiu $t3, %lo(D_8011AEE4) # addiu $t3, $t3, -0x511c -/* 01ACD0 8001A0D0 A11401D8 */ sb $s4, 0x1d8($t0) -/* 01ACD4 8001A0D4 8E380000 */ lw $t8, ($s1) -/* 01ACD8 8001A0D8 00000000 */ nop -/* 01ACDC 8001A0DC A51801AC */ sh $t8, 0x1ac($t0) -/* 01ACE0 8001A0E0 8E220000 */ lw $v0, ($s1) -/* 01ACE4 8001A0E4 00000000 */ nop -/* 01ACE8 8001A0E8 16820010 */ bne $s4, $v0, .L8001A12C -/* 01ACEC 8001A0EC 244E0001 */ addiu $t6, $v0, 1 -/* 01ACF0 8001A0F0 850F0000 */ lh $t7, ($t0) -/* 01ACF4 8001A0F4 2404023C */ li $a0, 572 -/* 01ACF8 8001A0F8 16AF000B */ bne $s5, $t7, .L8001A128 -/* 01ACFC 8001A0FC 00002825 */ move $a1, $zero -/* 01AD00 8001A100 AFBF0064 */ sw $ra, 0x64($sp) -/* 01AD04 8001A104 AFA80080 */ sw $t0, 0x80($sp) -/* 01AD08 8001A108 0C000741 */ jal func_80001D04 -/* 01AD0C 8001A10C AFAA0044 */ sw $t2, 0x44($sp) -/* 01AD10 8001A110 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 -/* 01AD14 8001A114 8FA80080 */ lw $t0, 0x80($sp) -/* 01AD18 8001A118 8FAA0044 */ lw $t2, 0x44($sp) -/* 01AD1C 8001A11C 8FBF0064 */ lw $ra, 0x64($sp) -/* 01AD20 8001A120 8E220000 */ lw $v0, ($s1) -/* 01AD24 8001A124 256BAEE4 */ addiu $t3, %lo(D_8011AEE4) # addiu $t3, $t3, -0x511c -.L8001A128: -/* 01AD28 8001A128 244E0001 */ addiu $t6, $v0, 1 -.L8001A12C: -/* 01AD2C 8001A12C AE2E0000 */ sw $t6, ($s1) -.L8001A130: -/* 01AD30 8001A130 8E470000 */ lw $a3, ($s2) -/* 01AD34 8001A134 85190000 */ lh $t9, ($t0) -/* 01AD38 8001A138 810201D8 */ lb $v0, 0x1d8($t0) -/* 01AD3C 8001A13C 12B9000C */ beq $s5, $t9, .L8001A170 -/* 01AD40 8001A140 00071880 */ sll $v1, $a3, 2 -/* 01AD44 8001A144 87B8008A */ lh $t8, 0x8a($sp) -/* 01AD48 8001A148 87AE0088 */ lh $t6, 0x88($sp) -/* 01AD4C 8001A14C 270F0001 */ addiu $t7, $t8, 1 -/* 01AD50 8001A150 1040000C */ beqz $v0, .L8001A184 -/* 01AD54 8001A154 A7AF008A */ sh $t7, 0x8a($sp) -/* 01AD58 8001A158 26730001 */ addiu $s3, $s3, 1 -/* 01AD5C 8001A15C 0013C400 */ sll $t8, $s3, 0x10 -/* 01AD60 8001A160 25D90001 */ addiu $t9, $t6, 1 -/* 01AD64 8001A164 A7B90088 */ sh $t9, 0x88($sp) -/* 01AD68 8001A168 10000006 */ b .L8001A184 -/* 01AD6C 8001A16C 00189C03 */ sra $s3, $t8, 0x10 -.L8001A170: -/* 01AD70 8001A170 10400004 */ beqz $v0, .L8001A184 -/* 01AD74 8001A174 00000000 */ nop -/* 01AD78 8001A178 26730001 */ addiu $s3, $s3, 1 -/* 01AD7C 8001A17C 00137400 */ sll $t6, $s3, 0x10 -/* 01AD80 8001A180 000E9C03 */ sra $s3, $t6, 0x10 -.L8001A184: -/* 01AD84 8001A184 254A0004 */ addiu $t2, $t2, 4 -/* 01AD88 8001A188 0143082A */ slt $at, $t2, $v1 -/* 01AD8C 8001A18C 1420FFB5 */ bnez $at, .L8001A064 -/* 01AD90 8001A190 00000000 */ nop -/* 01AD94 8001A194 3C098012 */ lui $t1, %hi(D_8011AEE8) # $t1, 0x8012 -/* 01AD98 8001A198 00008025 */ move $s0, $zero -/* 01AD9C 8001A19C 2529AEE8 */ addiu $t1, %lo(D_8011AEE8) # addiu $t1, $t1, -0x5118 -/* 01ADA0 8001A1A0 00005025 */ move $t2, $zero -.L8001A1A4: -/* 01ADA4 8001A1A4 8D380000 */ lw $t8, ($t1) -/* 01ADA8 8001A1A8 26100001 */ addiu $s0, $s0, 1 -/* 01ADAC 8001A1AC 030A7821 */ addu $t7, $t8, $t2 -/* 01ADB0 8001A1B0 ADE00000 */ sw $zero, ($t7) -/* 01ADB4 8001A1B4 8E4E0000 */ lw $t6, ($s2) -/* 01ADB8 8001A1B8 254A0004 */ addiu $t2, $t2, 4 -/* 01ADBC 8001A1BC 020E082A */ slt $at, $s0, $t6 -/* 01ADC0 8001A1C0 1420FFF8 */ bnez $at, .L8001A1A4 -/* 01ADC4 8001A1C4 00000000 */ nop -/* 01ADC8 8001A1C8 00008025 */ move $s0, $zero -/* 01ADCC 8001A1CC 00005025 */ move $t2, $zero -.L8001A1D0: -/* 01ADD0 8001A1D0 8D790000 */ lw $t9, ($t3) -/* 01ADD4 8001A1D4 00000000 */ nop -/* 01ADD8 8001A1D8 032AC021 */ addu $t8, $t9, $t2 -/* 01ADDC 8001A1DC 8F020000 */ lw $v0, ($t8) -/* 01ADE0 8001A1E0 00000000 */ nop -/* 01ADE4 8001A1E4 8C480064 */ lw $t0, 0x64($v0) -/* 01ADE8 8001A1E8 00000000 */ nop -/* 01ADEC 8001A1EC 810F01D8 */ lb $t7, 0x1d8($t0) -/* 01ADF0 8001A1F0 00000000 */ nop -/* 01ADF4 8001A1F4 11E00004 */ beqz $t7, .L8001A208 -/* 01ADF8 8001A1F8 00000000 */ nop -/* 01ADFC 8001A1FC 850601AC */ lh $a2, 0x1ac($t0) -/* 01AE00 8001A200 10000004 */ b .L8001A214 -/* 01AE04 8001A204 24C6FFFF */ addiu $a2, $a2, -1 -.L8001A208: -/* 01AE08 8001A208 850601AA */ lh $a2, 0x1aa($t0) -/* 01AE0C 8001A20C 00000000 */ nop -/* 01AE10 8001A210 24C6FFFF */ addiu $a2, $a2, -1 -.L8001A214: -/* 01AE14 8001A214 8D2E0000 */ lw $t6, ($t1) -/* 01AE18 8001A218 0006C880 */ sll $t9, $a2, 2 -/* 01AE1C 8001A21C 01D9C021 */ addu $t8, $t6, $t9 -/* 01AE20 8001A220 AF020000 */ sw $v0, ($t8) -/* 01AE24 8001A224 8E470000 */ lw $a3, ($s2) -/* 01AE28 8001A228 26100001 */ addiu $s0, $s0, 1 -/* 01AE2C 8001A22C 0207082A */ slt $at, $s0, $a3 -/* 01AE30 8001A230 1420FFE7 */ bnez $at, .L8001A1D0 -/* 01AE34 8001A234 254A0004 */ addiu $t2, $t2, 4 -/* 01AE38 8001A238 00008025 */ move $s0, $zero -/* 01AE3C 8001A23C 00002825 */ move $a1, $zero -.L8001A240: -/* 01AE40 8001A240 18E00016 */ blez $a3, .L8001A29C -/* 01AE44 8001A244 00002025 */ move $a0, $zero -/* 01AE48 8001A248 8D6F0000 */ lw $t7, ($t3) -/* 01AE4C 8001A24C 00107080 */ sll $t6, $s0, 2 -/* 01AE50 8001A250 01EEC821 */ addu $t9, $t7, $t6 -/* 01AE54 8001A254 8F220000 */ lw $v0, ($t9) -/* 01AE58 8001A258 8D230000 */ lw $v1, ($t1) -/* 01AE5C 8001A25C 00000000 */ nop -/* 01AE60 8001A260 0005C080 */ sll $t8, $a1, 2 -.L8001A264: -/* 01AE64 8001A264 00787821 */ addu $t7, $v1, $t8 -/* 01AE68 8001A268 8DEE0000 */ lw $t6, ($t7) -/* 01AE6C 8001A26C 00000000 */ nop -/* 01AE70 8001A270 15C20006 */ bne $t6, $v0, .L8001A28C -/* 01AE74 8001A274 24A50001 */ addiu $a1, $a1, 1 -/* 01AE78 8001A278 00142600 */ sll $a0, $s4, 0x18 -/* 01AE7C 8001A27C 0004CE03 */ sra $t9, $a0, 0x18 -/* 01AE80 8001A280 03202025 */ move $a0, $t9 -/* 01AE84 8001A284 00E02825 */ move $a1, $a3 -/* 01AE88 8001A288 24A50001 */ addiu $a1, $a1, 1 -.L8001A28C: -/* 01AE8C 8001A28C 00A7082A */ slt $at, $a1, $a3 -/* 01AE90 8001A290 1420FFF4 */ bnez $at, .L8001A264 -/* 01AE94 8001A294 0005C080 */ sll $t8, $a1, 2 -/* 01AE98 8001A298 00002825 */ move $a1, $zero -.L8001A29C: -/* 01AE9C 8001A29C 14800018 */ bnez $a0, .L8001A300 -/* 01AEA0 8001A2A0 00000000 */ nop -/* 01AEA4 8001A2A4 18E00016 */ blez $a3, .L8001A300 -/* 01AEA8 8001A2A8 00000000 */ nop -.L8001A2AC: -/* 01AEAC 8001A2AC 8D380000 */ lw $t8, ($t1) -/* 01AEB0 8001A2B0 00057880 */ sll $t7, $a1, 2 -/* 01AEB4 8001A2B4 030F1021 */ addu $v0, $t8, $t7 -/* 01AEB8 8001A2B8 8C4E0000 */ lw $t6, ($v0) -/* 01AEBC 8001A2BC 00000000 */ nop -/* 01AEC0 8001A2C0 15C0000B */ bnez $t6, .L8001A2F0 -/* 01AEC4 8001A2C4 24A50001 */ addiu $a1, $a1, 1 -/* 01AEC8 8001A2C8 8D790000 */ lw $t9, ($t3) -/* 01AECC 8001A2CC 0010C080 */ sll $t8, $s0, 2 -/* 01AED0 8001A2D0 03387821 */ addu $t7, $t9, $t8 -/* 01AED4 8001A2D4 8DEE0000 */ lw $t6, ($t7) -/* 01AED8 8001A2D8 00000000 */ nop -/* 01AEDC 8001A2DC AC4E0000 */ sw $t6, ($v0) -/* 01AEE0 8001A2E0 8E470000 */ lw $a3, ($s2) -/* 01AEE4 8001A2E4 00000000 */ nop -/* 01AEE8 8001A2E8 00E02825 */ move $a1, $a3 -/* 01AEEC 8001A2EC 24A50001 */ addiu $a1, $a1, 1 -.L8001A2F0: -/* 01AEF0 8001A2F0 00A7082A */ slt $at, $a1, $a3 -/* 01AEF4 8001A2F4 1420FFED */ bnez $at, .L8001A2AC -/* 01AEF8 8001A2F8 00000000 */ nop -/* 01AEFC 8001A2FC 00002825 */ move $a1, $zero -.L8001A300: -/* 01AF00 8001A300 26100001 */ addiu $s0, $s0, 1 -/* 01AF04 8001A304 0207082A */ slt $at, $s0, $a3 -/* 01AF08 8001A308 1420FFCD */ bnez $at, .L8001A240 -/* 01AF0C 8001A30C 00000000 */ nop -/* 01AF10 8001A310 00008025 */ move $s0, $zero -.L8001A314: -/* 01AF14 8001A314 02002025 */ move $a0, $s0 -/* 01AF18 8001A318 0C01A955 */ jal func_8006A554 -/* 01AF1C 8001A31C AFA50094 */ sw $a1, 0x94($sp) -/* 01AF20 8001A320 8FA50094 */ lw $a1, 0x94($sp) -/* 01AF24 8001A324 26100001 */ addiu $s0, $s0, 1 -/* 01AF28 8001A328 2A010004 */ slti $at, $s0, 4 -/* 01AF2C 8001A32C 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 -/* 01AF30 8001A330 256BAEE4 */ addiu $t3, %lo(D_8011AEE4) # addiu $t3, $t3, -0x511c -/* 01AF34 8001A334 1420FFF7 */ bnez $at, .L8001A314 -/* 01AF38 8001A338 00A22825 */ or $a1, $a1, $v0 -/* 01AF3C 8001A33C 3C198012 */ lui $t9, %hi(D_8011AEF6) # $t9, 0x8012 -/* 01AF40 8001A340 8339AEF6 */ lb $t9, %lo(D_8011AEF6)($t9) -/* 01AF44 8001A344 87B80088 */ lh $t8, 0x88($sp) -/* 01AF48 8001A348 13200007 */ beqz $t9, .L8001A368 -/* 01AF4C 8001A34C 3C0F8012 */ lui $t7, %hi(D_8011AD3C) # $t7, 0x8012 -/* 01AF50 8001A350 13000005 */ beqz $t8, .L8001A368 -/* 01AF54 8001A354 00000000 */ nop -/* 01AF58 8001A358 0C008B86 */ jal func_80022E18 -/* 01AF5C 8001A35C 00002025 */ move $a0, $zero -/* 01AF60 8001A360 10000114 */ b .L8001A7B4 -/* 01AF64 8001A364 8FBF0034 */ lw $ra, 0x34($sp) -.L8001A368: -/* 01AF68 8001A368 81EFAD3C */ lb $t7, %lo(D_8011AD3C)($t7) -/* 01AF6C 8001A36C 3C188012 */ lui $t8, %hi(D_8011ADB4) # $t8, 0x8012 -/* 01AF70 8001A370 11E00016 */ beqz $t7, .L8001A3CC -/* 01AF74 8001A374 00000000 */ nop -/* 01AF78 8001A378 12600014 */ beqz $s3, .L8001A3CC -/* 01AF7C 8001A37C 00000000 */ nop -/* 01AF80 8001A380 8D6E0000 */ lw $t6, ($t3) -/* 01AF84 8001A384 00000000 */ nop -/* 01AF88 8001A388 8DD90000 */ lw $t9, ($t6) -/* 01AF8C 8001A38C 00000000 */ nop -/* 01AF90 8001A390 8F280064 */ lw $t0, 0x64($t9) -/* 01AF94 8001A394 00000000 */ nop -/* 01AF98 8001A398 811801D8 */ lb $t8, 0x1d8($t0) -/* 01AF9C 8001A39C 00000000 */ nop -/* 01AFA0 8001A3A0 17000104 */ bnez $t8, .L8001A7B4 -/* 01AFA4 8001A3A4 8FBF0034 */ lw $ra, 0x34($sp) -/* 01AFA8 8001A3A8 A11401D8 */ sb $s4, 0x1d8($t0) -/* 01AFAC 8001A3AC 8E2F0000 */ lw $t7, ($s1) -/* 01AFB0 8001A3B0 00000000 */ nop -/* 01AFB4 8001A3B4 A50F01AC */ sh $t7, 0x1ac($t0) -/* 01AFB8 8001A3B8 8E2E0000 */ lw $t6, ($s1) -/* 01AFBC 8001A3BC 00000000 */ nop -/* 01AFC0 8001A3C0 25D90001 */ addiu $t9, $t6, 1 -/* 01AFC4 8001A3C4 100000FA */ b .L8001A7B0 -/* 01AFC8 8001A3C8 AE390000 */ sw $t9, ($s1) -.L8001A3CC: -/* 01AFCC 8001A3CC 8F18ADB4 */ lw $t8, %lo(D_8011ADB4)($t8) -/* 01AFD0 8001A3D0 00000000 */ nop -/* 01AFD4 8001A3D4 170000F7 */ bnez $t8, .L8001A7B4 -/* 01AFD8 8001A3D8 8FBF0034 */ lw $ra, 0x34($sp) -/* 01AFDC 8001A3DC 0C027B20 */ jal func_8009EC80 -/* 01AFE0 8001A3E0 A3A0005B */ sb $zero, 0x5b($sp) -/* 01AFE4 8001A3E4 3C098012 */ lui $t1, %hi(D_8011AEE8) # $t1, 0x8012 -/* 01AFE8 8001A3E8 10400010 */ beqz $v0, .L8001A42C -/* 01AFEC 8001A3EC 2529AEE8 */ addiu $t1, %lo(D_8011AEE8) # addiu $t1, $t1, -0x5118 -/* 01AFF0 8001A3F0 87AF0088 */ lh $t7, 0x88($sp) -/* 01AFF4 8001A3F4 00000000 */ nop -/* 01AFF8 8001A3F8 19E0000D */ blez $t7, .L8001A430 -/* 01AFFC 8001A3FC 87AE0088 */ lh $t6, 0x88($sp) -/* 01B000 8001A400 0C02658B */ jal func_8009962C -/* 01B004 8001A404 00000000 */ nop -/* 01B008 8001A408 3C098012 */ lui $t1, %hi(D_8011AEE8) # $t1, 0x8012 -/* 01B00C 8001A40C 14400007 */ bnez $v0, .L8001A42C -/* 01B010 8001A410 2529AEE8 */ addiu $t1, %lo(D_8011AEE8) # addiu $t1, $t1, -0x5118 -/* 01B014 8001A414 0C0069F6 */ jal func_8001A7D8 -/* 01B018 8001A418 02C02025 */ move $a0, $s6 -/* 01B01C 8001A41C 3C098012 */ lui $t1, %hi(D_8011AEE8) # $t1, 0x8012 -/* 01B020 8001A420 10400002 */ beqz $v0, .L8001A42C -/* 01B024 8001A424 2529AEE8 */ addiu $t1, %lo(D_8011AEE8) # addiu $t1, $t1, -0x5118 -/* 01B028 8001A428 A3B4005B */ sb $s4, 0x5b($sp) -.L8001A42C: -/* 01B02C 8001A42C 87AE0088 */ lh $t6, 0x88($sp) -.L8001A430: -/* 01B030 8001A430 87B9008A */ lh $t9, 0x8a($sp) -/* 01B034 8001A434 00000000 */ nop -/* 01B038 8001A438 11D9000D */ beq $t6, $t9, .L8001A470 -/* 01B03C 8001A43C 2B210002 */ slti $at, $t9, 2 -/* 01B040 8001A440 14200008 */ bnez $at, .L8001A464 -/* 01B044 8001A444 83AE005B */ lb $t6, 0x5b($sp) -/* 01B048 8001A448 8E580000 */ lw $t8, ($s2) -/* 01B04C 8001A44C 00000000 */ nop -/* 01B050 8001A450 270FFFFF */ addiu $t7, $t8, -1 -/* 01B054 8001A454 026F082A */ slt $at, $s3, $t7 -/* 01B058 8001A458 10200006 */ beqz $at, .L8001A474 -/* 01B05C 8001A45C 87B90088 */ lh $t9, 0x88($sp) -/* 01B060 8001A460 83AE005B */ lb $t6, 0x5b($sp) -.L8001A464: -/* 01B064 8001A464 00000000 */ nop -/* 01B068 8001A468 11C000D2 */ beqz $t6, .L8001A7B4 -/* 01B06C 8001A46C 8FBF0034 */ lw $ra, 0x34($sp) -.L8001A470: -/* 01B070 8001A470 87B90088 */ lh $t9, 0x88($sp) -.L8001A474: -/* 01B074 8001A474 87B8008A */ lh $t8, 0x8a($sp) -/* 01B078 8001A478 00000000 */ nop -/* 01B07C 8001A47C 13380029 */ beq $t9, $t8, .L8001A524 -/* 01B080 8001A480 00008025 */ move $s0, $zero -/* 01B084 8001A484 00005025 */ move $t2, $zero -.L8001A488: -/* 01B088 8001A488 8D2F0000 */ lw $t7, ($t1) -/* 01B08C 8001A48C 00000000 */ nop -/* 01B090 8001A490 01EA7021 */ addu $t6, $t7, $t2 -/* 01B094 8001A494 8DD90000 */ lw $t9, ($t6) -/* 01B098 8001A498 00000000 */ nop -/* 01B09C 8001A49C 8F280064 */ lw $t0, 0x64($t9) -/* 01B0A0 8001A4A0 00000000 */ nop -/* 01B0A4 8001A4A4 811801D8 */ lb $t8, 0x1d8($t0) -/* 01B0A8 8001A4A8 00000000 */ nop -/* 01B0AC 8001A4AC 17000018 */ bnez $t8, .L8001A510 -/* 01B0B0 8001A4B0 00000000 */ nop -/* 01B0B4 8001A4B4 85040000 */ lh $a0, ($t0) -/* 01B0B8 8001A4B8 00000000 */ nop -/* 01B0BC 8001A4BC 0480000C */ bltz $a0, .L8001A4F0 -/* 01B0C0 8001A4C0 00000000 */ nop -/* 01B0C4 8001A4C4 AFA80080 */ sw $t0, 0x80($sp) -/* 01B0C8 8001A4C8 0C01997A */ jal func_800665E8 -/* 01B0CC 8001A4CC AFAA0044 */ sw $t2, 0x44($sp) -/* 01B0D0 8001A4D0 0C01A73F */ jal func_80069CFC -/* 01B0D4 8001A4D4 00000000 */ nop -/* 01B0D8 8001A4D8 8FA80080 */ lw $t0, 0x80($sp) -/* 01B0DC 8001A4DC 3C098012 */ lui $t1, %hi(D_8011AEE8) # $t1, 0x8012 -/* 01B0E0 8001A4E0 8FAA0044 */ lw $t2, 0x44($sp) -/* 01B0E4 8001A4E4 240F0005 */ li $t7, 5 -/* 01B0E8 8001A4E8 2529AEE8 */ addiu $t1, %lo(D_8011AEE8) # addiu $t1, $t1, -0x5118 -/* 01B0EC 8001A4EC A44F0036 */ sh $t7, 0x36($v0) -.L8001A4F0: -/* 01B0F0 8001A4F0 A11401D8 */ sb $s4, 0x1d8($t0) -/* 01B0F4 8001A4F4 8E2E0000 */ lw $t6, ($s1) -/* 01B0F8 8001A4F8 00000000 */ nop -/* 01B0FC 8001A4FC A50E01AC */ sh $t6, 0x1ac($t0) -/* 01B100 8001A500 8E390000 */ lw $t9, ($s1) -/* 01B104 8001A504 00000000 */ nop -/* 01B108 8001A508 27380001 */ addiu $t8, $t9, 1 -/* 01B10C 8001A50C AE380000 */ sw $t8, ($s1) -.L8001A510: -/* 01B110 8001A510 8E4F0000 */ lw $t7, ($s2) -/* 01B114 8001A514 26100001 */ addiu $s0, $s0, 1 -/* 01B118 8001A518 020F082A */ slt $at, $s0, $t7 -/* 01B11C 8001A51C 1420FFDA */ bnez $at, .L8001A488 -/* 01B120 8001A520 254A0004 */ addiu $t2, $t2, 4 -.L8001A524: -/* 01B124 8001A524 3C03A460 */ lui $v1, (0xA4600010 >> 16) # lui $v1, 0xa460 -/* 01B128 8001A528 34630010 */ ori $v1, (0xA4600010 & 0xFFFF) # ori $v1, $v1, 0x10 -/* 01B12C 8001A52C 8C620000 */ lw $v0, ($v1) -/* 01B130 8001A530 00002025 */ move $a0, $zero -/* 01B134 8001A534 304E0003 */ andi $t6, $v0, 3 -/* 01B138 8001A538 11C00006 */ beqz $t6, .L8001A554 -/* 01B13C 8001A53C 3C18B000 */ lui $t8, %hi(D_B0000574) # $t8, 0xb000 -.L8001A540: -/* 01B140 8001A540 8C620000 */ lw $v0, ($v1) -/* 01B144 8001A544 00000000 */ nop -/* 01B148 8001A548 30590003 */ andi $t9, $v0, 3 -/* 01B14C 8001A54C 1720FFFC */ bnez $t9, .L8001A540 -/* 01B150 8001A550 00000000 */ nop -.L8001A554: -/* 01B154 8001A554 8F0F0574 */ lw $t7, %lo(D_B0000574)($t8) -/* 01B158 8001A558 24016C07 */ li $at, 27655 -/* 01B15C 8001A55C 31EEFFFF */ andi $t6, $t7, 0xffff -/* 01B160 8001A560 11C10004 */ beq $t6, $at, .L8001A574 -/* 01B164 8001A564 3C188012 */ lui $t8, %hi(D_8011AEF5) # $t8, 0x8012 -/* 01B168 8001A568 00142600 */ sll $a0, $s4, 0x18 -/* 01B16C 8001A56C 0004CE03 */ sra $t9, $a0, 0x18 -/* 01B170 8001A570 03202025 */ move $a0, $t9 -.L8001A574: -/* 01B174 8001A574 9318AEF5 */ lbu $t8, %lo(D_8011AEF5)($t8) -/* 01B178 8001A578 3C13800E */ lui $s3, %hi(D_800DC744) # $s3, 0x800e -/* 01B17C 8001A57C 17000016 */ bnez $t8, .L8001A5D8 -/* 01B180 8001A580 2673C744 */ addiu $s3, %lo(D_800DC744) # addiu $s3, $s3, -0x38bc -/* 01B184 8001A584 00008025 */ move $s0, $zero -/* 01B188 8001A588 00005025 */ move $t2, $zero -/* 01B18C 8001A58C 24020018 */ li $v0, 24 -.L8001A590: -/* 01B190 8001A590 8D2F0000 */ lw $t7, ($t1) -/* 01B194 8001A594 00000000 */ nop -/* 01B198 8001A598 01EA7021 */ addu $t6, $t7, $t2 -/* 01B19C 8001A59C 8DD90000 */ lw $t9, ($t6) -/* 01B1A0 8001A5A0 254A0004 */ addiu $t2, $t2, 4 -/* 01B1A4 8001A5A4 8F280064 */ lw $t0, 0x64($t9) -/* 01B1A8 8001A5A8 00000000 */ nop -/* 01B1AC 8001A5AC 81060002 */ lb $a2, 2($t0) -/* 01B1B0 8001A5B0 00000000 */ nop -/* 01B1B4 8001A5B4 00C20019 */ multu $a2, $v0 -/* 01B1B8 8001A5B8 0000C012 */ mflo $t8 -/* 01B1BC 8001A5BC 02D87821 */ addu $t7, $s6, $t8 -/* 01B1C0 8001A5C0 A1F0005A */ sb $s0, 0x5a($t7) -/* 01B1C4 8001A5C4 8E4E0000 */ lw $t6, ($s2) -/* 01B1C8 8001A5C8 26100001 */ addiu $s0, $s0, 1 -/* 01B1CC 8001A5CC 020E082A */ slt $at, $s0, $t6 -/* 01B1D0 8001A5D0 1420FFEF */ bnez $at, .L8001A590 -/* 01B1D4 8001A5D4 00000000 */ nop -.L8001A5D8: -/* 01B1D8 8001A5D8 A2600000 */ sb $zero, ($s3) -/* 01B1DC 8001A5DC 0C027B20 */ jal func_8009EC80 -/* 01B1E0 8001A5E0 A3A4005A */ sb $a0, 0x5a($sp) -/* 01B1E4 8001A5E4 3C098012 */ lui $t1, %hi(D_8011AEE8) # $t1, 0x8012 -/* 01B1E8 8001A5E8 10400008 */ beqz $v0, .L8001A60C -/* 01B1EC 8001A5EC 2529AEE8 */ addiu $t1, %lo(D_8011AEE8) # addiu $t1, $t1, -0x5118 -/* 01B1F0 8001A5F0 82D90072 */ lb $t9, 0x72($s6) -/* 01B1F4 8001A5F4 82D8005A */ lb $t8, 0x5a($s6) -/* 01B1F8 8001A5F8 00000000 */ nop -/* 01B1FC 8001A5FC 0338082A */ slt $at, $t9, $t8 -/* 01B200 8001A600 10200002 */ beqz $at, .L8001A60C -/* 01B204 8001A604 00000000 */ nop -/* 01B208 8001A608 A2740000 */ sb $s4, ($s3) -.L8001A60C: -/* 01B20C 8001A60C 8D2F0000 */ lw $t7, ($t1) -/* 01B210 8001A610 3C118012 */ lui $s1, %hi(D_8011ADC4) # $s1, 0x8012 -/* 01B214 8001A614 8DEE0000 */ lw $t6, ($t7) -/* 01B218 8001A618 2631ADC4 */ addiu $s1, %lo(D_8011ADC4) # addiu $s1, $s1, -0x523c -/* 01B21C 8001A61C 8DC80064 */ lw $t0, 0x64($t6) -/* 01B220 8001A620 A2200000 */ sb $zero, ($s1) -/* 01B224 8001A624 92D9004A */ lbu $t9, 0x4a($s6) -/* 01B228 8001A628 00000000 */ nop -/* 01B22C 8001A62C 12990006 */ beq $s4, $t9, .L8001A648 -/* 01B230 8001A630 00000000 */ nop -/* 01B234 8001A634 0C027B20 */ jal func_8009EC80 -/* 01B238 8001A638 AFA80080 */ sw $t0, 0x80($sp) -/* 01B23C 8001A63C 8FA80080 */ lw $t0, 0x80($sp) -/* 01B240 8001A640 1040000E */ beqz $v0, .L8001A67C -/* 01B244 8001A644 00000000 */ nop -.L8001A648: -/* 01B248 8001A648 85180000 */ lh $t8, ($t0) -/* 01B24C 8001A64C 00000000 */ nop -/* 01B250 8001A650 12B8000A */ beq $s5, $t8, .L8001A67C -/* 01B254 8001A654 00000000 */ nop -/* 01B258 8001A658 0C0270B4 */ jal func_8009C2D0 -/* 01B25C 8001A65C 00000000 */ nop -/* 01B260 8001A660 14400006 */ bnez $v0, .L8001A67C -/* 01B264 8001A664 00000000 */ nop -/* 01B268 8001A668 0C02658B */ jal func_8009962C -/* 01B26C 8001A66C 00000000 */ nop -/* 01B270 8001A670 14400002 */ bnez $v0, .L8001A67C -/* 01B274 8001A674 00000000 */ nop -/* 01B278 8001A678 A2340000 */ sb $s4, ($s1) -.L8001A67C: -/* 01B27C 8001A67C 822F0000 */ lb $t7, ($s1) -/* 01B280 8001A680 83AE005B */ lb $t6, 0x5b($sp) -/* 01B284 8001A684 11E00006 */ beqz $t7, .L8001A6A0 -/* 01B288 8001A688 00008025 */ move $s0, $zero -/* 01B28C 8001A68C 15C00005 */ bnez $t6, .L8001A6A4 -/* 01B290 8001A690 83B9005B */ lb $t9, 0x5b($sp) -/* 01B294 8001A694 0C0069F6 */ jal func_8001A7D8 -/* 01B298 8001A698 02C02025 */ move $a0, $s6 -/* 01B29C 8001A69C 00408025 */ move $s0, $v0 -.L8001A6A0: -/* 01B2A0 8001A6A0 83B9005B */ lb $t9, 0x5b($sp) -.L8001A6A4: -/* 01B2A4 8001A6A4 00000000 */ nop -/* 01B2A8 8001A6A8 13200004 */ beqz $t9, .L8001A6BC -/* 01B2AC 8001A6AC 83B8005A */ lb $t8, 0x5a($sp) -/* 01B2B0 8001A6B0 A2340000 */ sb $s4, ($s1) -/* 01B2B4 8001A6B4 02808025 */ move $s0, $s4 -/* 01B2B8 8001A6B8 83B8005A */ lb $t8, 0x5a($sp) -.L8001A6BC: -/* 01B2BC 8001A6BC 00000000 */ nop -/* 01B2C0 8001A6C0 13000003 */ beqz $t8, .L8001A6D0 -/* 01B2C4 8001A6C4 00000000 */ nop -/* 01B2C8 8001A6C8 00008025 */ move $s0, $zero -/* 01B2CC 8001A6CC A2200000 */ sb $zero, ($s1) -.L8001A6D0: -/* 01B2D0 8001A6D0 1600001C */ bnez $s0, .L8001A744 -/* 01B2D4 8001A6D4 00000000 */ nop -/* 01B2D8 8001A6D8 0C027B20 */ jal func_8009EC80 -/* 01B2DC 8001A6DC 00000000 */ nop -/* 01B2E0 8001A6E0 10400013 */ beqz $v0, .L8001A730 -/* 01B2E4 8001A6E4 00000000 */ nop -/* 01B2E8 8001A6E8 826F0000 */ lb $t7, ($s3) -/* 01B2EC 8001A6EC 3C19800E */ lui $t9, %hi(D_800DC73C) # $t9, 0x800e -/* 01B2F0 8001A6F0 11E0000A */ beqz $t7, .L8001A71C -/* 01B2F4 8001A6F4 00000000 */ nop -/* 01B2F8 8001A6F8 0C01BCE6 */ jal func_8006F398 -/* 01B2FC 8001A6FC A2600000 */ sb $zero, ($s3) -/* 01B300 8001A700 3C0E800E */ lui $t6, %hi(D_800DC73C) # $t6, 0x800e -/* 01B304 8001A704 81CEC73C */ lb $t6, %lo(D_800DC73C)($t6) -/* 01B308 8001A708 3C01800E */ lui $at, %hi(D_800DC748) # $at, 0x800e -/* 01B30C 8001A70C 11C00008 */ beqz $t6, .L8001A730 -/* 01B310 8001A710 00000000 */ nop -/* 01B314 8001A714 10000006 */ b .L8001A730 -/* 01B318 8001A718 A034C748 */ sb $s4, %lo(D_800DC748)($at) -.L8001A71C: -/* 01B31C 8001A71C 8339C73C */ lb $t9, %lo(D_800DC73C)($t9) -/* 01B320 8001A720 3C01800E */ lui $at, %hi(D_800DC748) # $at, 0x800e -/* 01B324 8001A724 13200002 */ beqz $t9, .L8001A730 -/* 01B328 8001A728 00000000 */ nop -/* 01B32C 8001A72C A034C748 */ sb $s4, %lo(D_800DC748)($at) -.L8001A730: -/* 01B330 8001A730 82240000 */ lb $a0, ($s1) -/* 01B334 8001A734 0C0251A2 */ jal func_80094688 -/* 01B338 8001A738 2405001E */ li $a1, 30 -/* 01B33C 8001A73C 10000015 */ b .L8001A794 -/* 01B340 8001A740 00000000 */ nop -.L8001A744: -/* 01B344 8001A744 92CF0048 */ lbu $t7, 0x48($s6) -/* 01B348 8001A748 8ED80000 */ lw $t8, ($s6) -/* 01B34C 8001A74C 000F7040 */ sll $t6, $t7, 1 -/* 01B350 8001A750 030E1021 */ addu $v0, $t8, $t6 -/* 01B354 8001A754 84590000 */ lh $t9, ($v0) -/* 01B358 8001A758 00000000 */ nop -/* 01B35C 8001A75C 272F0001 */ addiu $t7, $t9, 1 -/* 01B360 8001A760 A44F0000 */ sh $t7, ($v0) -/* 01B364 8001A764 92D80048 */ lbu $t8, 0x48($s6) -/* 01B368 8001A768 00000000 */ nop -/* 01B36C 8001A76C 13000007 */ beqz $t8, .L8001A78C -/* 01B370 8001A770 00000000 */ nop -/* 01B374 8001A774 8EC20000 */ lw $v0, ($s6) -/* 01B378 8001A778 00000000 */ nop -/* 01B37C 8001A77C 844E0000 */ lh $t6, ($v0) -/* 01B380 8001A780 00000000 */ nop -/* 01B384 8001A784 25D90001 */ addiu $t9, $t6, 1 -/* 01B388 8001A788 A4590000 */ sh $t9, ($v0) -.L8001A78C: -/* 01B38C 8001A78C 0C006A35 */ jal func_8001A8D4 -/* 01B390 8001A790 02802025 */ move $a0, $s4 -.L8001A794: -/* 01B394 8001A794 3C018012 */ lui $at, %hi(D_8011ADB4) # $at, 0x8012 -/* 01B398 8001A798 0C0270F2 */ jal func_8009C3C8 -/* 01B39C 8001A79C AC35ADB4 */ sw $s5, %lo(D_8011ADB4)($at) -/* 01B3A0 8001A7A0 14540004 */ bne $v0, $s4, .L8001A7B4 -/* 01B3A4 8001A7A4 8FBF0034 */ lw $ra, 0x34($sp) -/* 01B3A8 8001A7A8 0C006B99 */ jal func_8001AE64 -/* 01B3AC 8001A7AC 00000000 */ nop -.L8001A7B0: -/* 01B3B0 8001A7B0 8FBF0034 */ lw $ra, 0x34($sp) -.L8001A7B4: -/* 01B3B4 8001A7B4 8FB00018 */ lw $s0, 0x18($sp) -/* 01B3B8 8001A7B8 8FB1001C */ lw $s1, 0x1c($sp) -/* 01B3BC 8001A7BC 8FB20020 */ lw $s2, 0x20($sp) -/* 01B3C0 8001A7C0 8FB30024 */ lw $s3, 0x24($sp) -/* 01B3C4 8001A7C4 8FB40028 */ lw $s4, 0x28($sp) -/* 01B3C8 8001A7C8 8FB5002C */ lw $s5, 0x2c($sp) -/* 01B3CC 8001A7CC 8FB60030 */ lw $s6, 0x30($sp) -/* 01B3D0 8001A7D0 03E00008 */ jr $ra -/* 01B3D4 8001A7D4 27BD00A0 */ addiu $sp, $sp, 0xa0 - -glabel func_8001A7D8 -/* 01B3D8 8001A7D8 3C0E8012 */ lui $t6, %hi(D_8011AEE8) # $t6, 0x8012 -/* 01B3DC 8001A7DC 8DCEAEE8 */ lw $t6, %lo(D_8011AEE8)($t6) -/* 01B3E0 8001A7E0 2401FFFF */ li $at, -1 -/* 01B3E4 8001A7E4 8DCF0000 */ lw $t7, ($t6) -/* 01B3E8 8001A7E8 3C038012 */ lui $v1, %hi(D_8011ADC4) # $v1, 0x8012 -/* 01B3EC 8001A7EC 8DE20064 */ lw $v0, 0x64($t7) -/* 01B3F0 8001A7F0 2463ADC4 */ addiu $v1, %lo(D_8011ADC4) # addiu $v1, $v1, -0x523c -/* 01B3F4 8001A7F4 84580000 */ lh $t8, ($v0) -/* 01B3F8 8001A7F8 00000000 */ nop -/* 01B3FC 8001A7FC 17010003 */ bne $t8, $at, .L8001A80C -/* 01B400 8001A800 00000000 */ nop -/* 01B404 8001A804 03E00008 */ jr $ra -/* 01B408 8001A808 00001025 */ move $v0, $zero - -.L8001A80C: -/* 01B40C 8001A80C A0600000 */ sb $zero, ($v1) -/* 01B410 8001A810 90880049 */ lbu $t0, 0x49($a0) -/* 01B414 8001A814 8C990004 */ lw $t9, 4($a0) -/* 01B418 8001A818 00084880 */ sll $t1, $t0, 2 -/* 01B41C 8001A81C 03295021 */ addu $t2, $t9, $t1 -/* 01B420 8001A820 8D4B0000 */ lw $t3, ($t2) -/* 01B424 8001A824 3C0D8012 */ lui $t5, %hi(D_8011AEF5) # $t5, 0x8012 -/* 01B428 8001A828 316C0002 */ andi $t4, $t3, 2 -/* 01B42C 8001A82C 1580000F */ bnez $t4, .L8001A86C -/* 01B430 8001A830 3C0A8012 */ lui $t2, %hi(D_8011AE03) # $t2, 0x8012 -/* 01B434 8001A834 91ADAEF5 */ lbu $t5, %lo(D_8011AEF5)($t5) -/* 01B438 8001A838 240E0001 */ li $t6, 1 -/* 01B43C 8001A83C 15A00021 */ bnez $t5, .L8001A8C4 -/* 01B440 8001A840 00000000 */ nop -/* 01B444 8001A844 A06E0000 */ sb $t6, ($v1) -/* 01B448 8001A848 90980049 */ lbu $t8, 0x49($a0) -/* 01B44C 8001A84C 8C8F0004 */ lw $t7, 4($a0) -/* 01B450 8001A850 00184080 */ sll $t0, $t8, 2 -/* 01B454 8001A854 01E81021 */ addu $v0, $t7, $t0 -/* 01B458 8001A858 8C590000 */ lw $t9, ($v0) -/* 01B45C 8001A85C 00000000 */ nop -/* 01B460 8001A860 37290002 */ ori $t1, $t9, 2 -/* 01B464 8001A864 10000017 */ b .L8001A8C4 -/* 01B468 8001A868 AC490000 */ sw $t1, ($v0) -.L8001A86C: -/* 01B46C 8001A86C 814AAE03 */ lb $t2, %lo(D_8011AE03)($t2) -/* 01B470 8001A870 00000000 */ nop -/* 01B474 8001A874 11400013 */ beqz $t2, .L8001A8C4 -/* 01B478 8001A878 00000000 */ nop -/* 01B47C 8001A87C 804B0202 */ lb $t3, 0x202($v0) -/* 01B480 8001A880 3C0C8012 */ lui $t4, %hi(D_8011AEF5) # $t4, 0x8012 -/* 01B484 8001A884 29610008 */ slti $at, $t3, 8 -/* 01B488 8001A888 1420000E */ bnez $at, .L8001A8C4 -/* 01B48C 8001A88C 00000000 */ nop -/* 01B490 8001A890 918CAEF5 */ lbu $t4, %lo(D_8011AEF5)($t4) -/* 01B494 8001A894 240D0001 */ li $t5, 1 -/* 01B498 8001A898 1580000A */ bnez $t4, .L8001A8C4 -/* 01B49C 8001A89C 00000000 */ nop -/* 01B4A0 8001A8A0 A06D0000 */ sb $t5, ($v1) -/* 01B4A4 8001A8A4 90980049 */ lbu $t8, 0x49($a0) -/* 01B4A8 8001A8A8 8C8E0004 */ lw $t6, 4($a0) -/* 01B4AC 8001A8AC 00187880 */ sll $t7, $t8, 2 -/* 01B4B0 8001A8B0 01CF1021 */ addu $v0, $t6, $t7 -/* 01B4B4 8001A8B4 8C480000 */ lw $t0, ($v0) -/* 01B4B8 8001A8B8 00000000 */ nop -/* 01B4BC 8001A8BC 35190004 */ ori $t9, $t0, 4 -/* 01B4C0 8001A8C0 AC590000 */ sw $t9, ($v0) -.L8001A8C4: -/* 01B4C4 8001A8C4 80620000 */ lb $v0, ($v1) -/* 01B4C8 8001A8C8 00000000 */ nop -/* 01B4CC 8001A8CC 03E00008 */ jr $ra -/* 01B4D0 8001A8D0 00000000 */ nop - -glabel func_8001A8D4 -/* 01B4D4 8001A8D4 240E012C */ li $t6, 300 -/* 01B4D8 8001A8D8 3C018012 */ lui $at, %hi(D_8011AD4E) # $at, 0x8012 -/* 01B4DC 8001A8DC A42EAD4E */ sh $t6, %lo(D_8011AD4E)($at) -/* 01B4E0 8001A8E0 3C018012 */ lui $at, %hi(D_8011AD50) # $at, 0x8012 -/* 01B4E4 8001A8E4 A020AD50 */ sb $zero, %lo(D_8011AD50)($at) -/* 01B4E8 8001A8E8 3C018012 */ lui $at, 0x8012 -/* 01B4EC 8001A8EC 03E00008 */ jr $ra -/* 01B4F0 8001A8F0 A024AD52 */ sb $a0, -0x52ae($at) - -glabel func_8001A8F4 -/* 01B4F4 8001A8F4 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 01B4F8 8001A8F8 AFBF001C */ sw $ra, 0x1c($sp) -/* 01B4FC 8001A8FC AFA40040 */ sw $a0, 0x40($sp) -/* 01B500 8001A900 AFB10018 */ sw $s1, 0x18($sp) -/* 01B504 8001A904 AFB00014 */ sw $s0, 0x14($sp) -/* 01B508 8001A908 0C01BCE2 */ jal func_8006F388 -/* 01B50C 8001A90C 24040001 */ li $a0, 1 -/* 01B510 8001A910 3C108012 */ lui $s0, %hi(D_8011AD4E) # $s0, 0x8012 -/* 01B514 8001A914 2610AD4E */ addiu $s0, %lo(D_8011AD4E) # addiu $s0, $s0, -0x52b2 -/* 01B518 8001A918 86030000 */ lh $v1, ($s0) -/* 01B51C 8001A91C 8FAE0040 */ lw $t6, 0x40($sp) -/* 01B520 8001A920 2419FFFF */ li $t9, -1 -/* 01B524 8001A924 006E7823 */ subu $t7, $v1, $t6 -/* 01B528 8001A928 A60F0000 */ sh $t7, ($s0) -/* 01B52C 8001A92C 86180000 */ lh $t8, ($s0) -/* 01B530 8001A930 28610033 */ slti $at, $v1, 0x33 -/* 01B534 8001A934 1F000002 */ bgtz $t8, .L8001A940 -/* 01B538 8001A938 00000000 */ nop -/* 01B53C 8001A93C A6190000 */ sh $t9, ($s0) -.L8001A940: -/* 01B540 8001A940 14200008 */ bnez $at, .L8001A964 -/* 01B544 8001A944 00000000 */ nop -/* 01B548 8001A948 86090000 */ lh $t1, ($s0) -/* 01B54C 8001A94C 3C04800E */ lui $a0, %hi(D_800DC858) # $a0, 0x800e -/* 01B550 8001A950 29210033 */ slti $at, $t1, 0x33 -/* 01B554 8001A954 10200003 */ beqz $at, .L8001A964 -/* 01B558 8001A958 00000000 */ nop -/* 01B55C 8001A95C 0C030076 */ jal func_800C01D8 -/* 01B560 8001A960 2484C858 */ addiu $a0, %lo(D_800DC858) # addiu $a0, $a0, -0x37a8 -.L8001A964: -/* 01B564 8001A964 3C028012 */ lui $v0, %hi(D_8011AD50) # $v0, 0x8012 -/* 01B568 8001A968 8042AD50 */ lb $v0, %lo(D_8011AD50)($v0) -/* 01B56C 8001A96C AFA00030 */ sw $zero, 0x30($sp) -/* 01B570 8001A970 14400071 */ bnez $v0, .L8001AB38 -/* 01B574 8001A974 00000000 */ nop -/* 01B578 8001A978 860A0000 */ lh $t2, ($s0) -/* 01B57C 8001A97C 2401FFFF */ li $at, -1 -/* 01B580 8001A980 1541006D */ bne $t2, $at, .L8001AB38 -/* 01B584 8001A984 3C118012 */ lui $s1, %hi(D_8011AEF0) # $s1, 0x8012 -/* 01B588 8001A988 2631AEF0 */ addiu $s1, %lo(D_8011AEF0) # addiu $s1, $s1, -0x5110 -/* 01B58C 8001A98C 8E2B0000 */ lw $t3, ($s1) -/* 01B590 8001A990 00008025 */ move $s0, $zero -/* 01B594 8001A994 19600029 */ blez $t3, .L8001AA3C -/* 01B598 8001A998 00001825 */ move $v1, $zero -.L8001A99C: -/* 01B59C 8001A99C 3C0C8012 */ lui $t4, %hi(D_8011AEE4) # $t4, 0x8012 -/* 01B5A0 8001A9A0 8D8CAEE4 */ lw $t4, %lo(D_8011AEE4)($t4) -/* 01B5A4 8001A9A4 2401FFFF */ li $at, -1 -/* 01B5A8 8001A9A8 01836821 */ addu $t5, $t4, $v1 -/* 01B5AC 8001A9AC 8DAE0000 */ lw $t6, ($t5) -/* 01B5B0 8001A9B0 00000000 */ nop -/* 01B5B4 8001A9B4 8DC50064 */ lw $a1, 0x64($t6) -/* 01B5B8 8001A9B8 00000000 */ nop -/* 01B5BC 8001A9BC 84AF0000 */ lh $t7, ($a1) -/* 01B5C0 8001A9C0 ACA00140 */ sw $zero, 0x140($a1) -/* 01B5C4 8001A9C4 11E10006 */ beq $t7, $at, .L8001A9E0 -/* 01B5C8 8001A9C8 00000000 */ nop -/* 01B5CC 8001A9CC 84B801AC */ lh $t8, 0x1ac($a1) -/* 01B5D0 8001A9D0 24010001 */ li $at, 1 -/* 01B5D4 8001A9D4 17010002 */ bne $t8, $at, .L8001A9E0 -/* 01B5D8 8001A9D8 00000000 */ nop -/* 01B5DC 8001A9DC AFB00030 */ sw $s0, 0x30($sp) -.L8001A9E0: -/* 01B5E0 8001A9E0 8CA40178 */ lw $a0, 0x178($a1) -/* 01B5E4 8001A9E4 00000000 */ nop -/* 01B5E8 8001A9E8 10800007 */ beqz $a0, .L8001AA08 -/* 01B5EC 8001A9EC 00000000 */ nop -/* 01B5F0 8001A9F0 AFA30020 */ sw $v1, 0x20($sp) -/* 01B5F4 8001A9F4 0C001223 */ jal func_8000488C -/* 01B5F8 8001A9F8 AFA50038 */ sw $a1, 0x38($sp) -/* 01B5FC 8001A9FC 8FA30020 */ lw $v1, 0x20($sp) -/* 01B600 8001AA00 8FA50038 */ lw $a1, 0x38($sp) -/* 01B604 8001AA04 00000000 */ nop -.L8001AA08: -/* 01B608 8001AA08 8CA4017C */ lw $a0, 0x17c($a1) -/* 01B60C 8001AA0C 00000000 */ nop -/* 01B610 8001AA10 10800005 */ beqz $a0, .L8001AA28 -/* 01B614 8001AA14 00000000 */ nop -/* 01B618 8001AA18 0C0025BE */ jal func_800096F8 -/* 01B61C 8001AA1C AFA30020 */ sw $v1, 0x20($sp) -/* 01B620 8001AA20 8FA30020 */ lw $v1, 0x20($sp) -/* 01B624 8001AA24 00000000 */ nop -.L8001AA28: -/* 01B628 8001AA28 8E390000 */ lw $t9, ($s1) -/* 01B62C 8001AA2C 26100001 */ addiu $s0, $s0, 1 -/* 01B630 8001AA30 0219082A */ slt $at, $s0, $t9 -/* 01B634 8001AA34 1420FFD9 */ bnez $at, .L8001A99C -/* 01B638 8001AA38 24630004 */ addiu $v1, $v1, 4 -.L8001AA3C: -/* 01B63C 8001AA3C 8FA30030 */ lw $v1, 0x30($sp) -/* 01B640 8001AA40 3C028012 */ lui $v0, %hi(D_8011AEE4) # $v0, 0x8012 -/* 01B644 8001AA44 8C42AEE4 */ lw $v0, %lo(D_8011AEE4)($v0) -/* 01B648 8001AA48 00034880 */ sll $t1, $v1, 2 -/* 01B64C 8001AA4C 00495021 */ addu $t2, $v0, $t1 -/* 01B650 8001AA50 8D4B0000 */ lw $t3, ($t2) -/* 01B654 8001AA54 8C460000 */ lw $a2, ($v0) -/* 01B658 8001AA58 3C0C8012 */ lui $t4, %hi(D_8011AEE4) # $t4, 0x8012 -/* 01B65C 8001AA5C AC4B0000 */ sw $t3, ($v0) -/* 01B660 8001AA60 8D8CAEE4 */ lw $t4, %lo(D_8011AEE4)($t4) -/* 01B664 8001AA64 3C0E8012 */ lui $t6, %hi(D_8011AEE4) # $t6, 0x8012 -/* 01B668 8001AA68 01896821 */ addu $t5, $t4, $t1 -/* 01B66C 8001AA6C ADA60000 */ sw $a2, ($t5) -/* 01B670 8001AA70 8DCEAEE4 */ lw $t6, %lo(D_8011AEE4)($t6) -/* 01B674 8001AA74 00000000 */ nop -/* 01B678 8001AA78 8DC40000 */ lw $a0, ($t6) -/* 01B67C 8001AA7C 0C001AB2 */ jal func_80006AC8 -/* 01B680 8001AA80 00000000 */ nop -/* 01B684 8001AA84 0C0282DD */ jal func_800A0B74 -/* 01B688 8001AA88 00000000 */ nop -/* 01B68C 8001AA8C 0C00FC34 */ jal func_8003F0D0 -/* 01B690 8001AA90 00000000 */ nop -/* 01B694 8001AA94 0C001276 */ jal func_800049D8 -/* 01B698 8001AA98 00000000 */ nop -/* 01B69C 8001AA9C 0C027B20 */ jal func_8009EC80 -/* 01B6A0 8001AAA0 00000000 */ nop -/* 01B6A4 8001AAA4 1040001C */ beqz $v0, .L8001AB18 -/* 01B6A8 8001AAA8 00000000 */ nop -/* 01B6AC 8001AAAC 0C009278 */ jal func_800249E0 -/* 01B6B0 8001AAB0 00002025 */ move $a0, $zero -/* 01B6B4 8001AAB4 0C01994B */ jal func_8006652C -/* 01B6B8 8001AAB8 00002025 */ move $a0, $zero -/* 01B6BC 8001AABC 3C0F8012 */ lui $t7, %hi(D_8011AEE4) # $t7, 0x8012 -/* 01B6C0 8001AAC0 8DEFAEE4 */ lw $t7, %lo(D_8011AEE4)($t7) -/* 01B6C4 8001AAC4 3C078012 */ lui $a3, %hi(D_8011AEEC) # $a3, 0x8012 -/* 01B6C8 8001AAC8 24E7AEEC */ addiu $a3, %lo(D_8011AEEC) # addiu $a3, $a3, -0x5114 -/* 01B6CC 8001AACC 8CE40000 */ lw $a0, ($a3) -/* 01B6D0 8001AAD0 8DE30000 */ lw $v1, ($t7) -/* 01B6D4 8001AAD4 8C860000 */ lw $a2, ($a0) -/* 01B6D8 8001AAD8 8C650064 */ lw $a1, 0x64($v1) -/* 01B6DC 8001AADC AC830000 */ sw $v1, ($a0) -/* 01B6E0 8001AAE0 8CF80000 */ lw $t8, ($a3) -/* 01B6E4 8001AAE4 3C08800E */ lui $t0, %hi(D_800DC744) # $t0, 0x800e -/* 01B6E8 8001AAE8 2508C744 */ addiu $t0, %lo(D_800DC744) # addiu $t0, $t0, -0x38bc -/* 01B6EC 8001AAEC AF060004 */ sw $a2, 4($t8) -/* 01B6F0 8001AAF0 81190000 */ lb $t9, ($t0) -/* 01B6F4 8001AAF4 00000000 */ nop -/* 01B6F8 8001AAF8 13200007 */ beqz $t9, .L8001AB18 -/* 01B6FC 8001AAFC 00000000 */ nop -/* 01B700 8001AB00 A1000000 */ sb $zero, ($t0) -/* 01B704 8001AB04 0C01BCE6 */ jal func_8006F398 -/* 01B708 8001AB08 AFA50038 */ sw $a1, 0x38($sp) -/* 01B70C 8001AB0C 8FA50038 */ lw $a1, 0x38($sp) -/* 01B710 8001AB10 00000000 */ nop -/* 01B714 8001AB14 A4A00000 */ sh $zero, ($a1) -.L8001AB18: -/* 01B718 8001AB18 8E290000 */ lw $t1, ($s1) -/* 01B71C 8001AB1C 3C078012 */ lui $a3, %hi(D_8011AD51) # $a3, 0x8012 -/* 01B720 8001AB20 24E7AD51 */ addiu $a3, %lo(D_8011AD51) # addiu $a3, $a3, -0x52af -/* 01B724 8001AB24 240A0001 */ li $t2, 1 -/* 01B728 8001AB28 3C018012 */ lui $at, %hi(D_8011AD50) # $at, 0x8012 -/* 01B72C 8001AB2C A0E90000 */ sb $t1, ($a3) -/* 01B730 8001AB30 A02AAD50 */ sb $t2, %lo(D_8011AD50)($at) -/* 01B734 8001AB34 24020001 */ li $v0, 1 -.L8001AB38: -/* 01B738 8001AB38 3C118012 */ lui $s1, %hi(D_8011AEF0) # $s1, 0x8012 -/* 01B73C 8001AB3C 24010001 */ li $at, 1 -/* 01B740 8001AB40 14410055 */ bne $v0, $at, .L8001AC98 -/* 01B744 8001AB44 2631AEF0 */ addiu $s1, %lo(D_8011AEF0) # addiu $s1, $s1, -0x5110 -/* 01B748 8001AB48 0C02AC75 */ jal func_800AB1D4 -/* 01B74C 8001AB4C 00002025 */ move $a0, $zero -/* 01B750 8001AB50 3C078012 */ lui $a3, %hi(D_8011AD51) # $a3, 0x8012 -/* 01B754 8001AB54 24E7AD51 */ addiu $a3, %lo(D_8011AD51) # addiu $a3, $a3, -0x52af -/* 01B758 8001AB58 80EB0000 */ lb $t3, ($a3) -/* 01B75C 8001AB5C 00000000 */ nop -/* 01B760 8001AB60 256CFFFF */ addiu $t4, $t3, -1 -/* 01B764 8001AB64 A0EC0000 */ sb $t4, ($a3) -/* 01B768 8001AB68 80E60000 */ lb $a2, ($a3) -/* 01B76C 8001AB6C 00000000 */ nop -/* 01B770 8001AB70 18C00046 */ blez $a2, .L8001AC8C -/* 01B774 8001AB74 24180002 */ li $t8, 2 -/* 01B778 8001AB78 8E240000 */ lw $a0, ($s1) -/* 01B77C 8001AB7C 00008025 */ move $s0, $zero -/* 01B780 8001AB80 18800015 */ blez $a0, .L8001ABD8 -/* 01B784 8001AB84 3C058012 */ lui $a1, %hi(D_8011AEE8) # $a1, 0x8012 -/* 01B788 8001AB88 3C0D8012 */ lui $t5, %hi(D_8011AEE4) # $t5, 0x8012 -/* 01B78C 8001AB8C 8DADAEE4 */ lw $t5, %lo(D_8011AEE4)($t5) -/* 01B790 8001AB90 24A5AEE8 */ addiu $a1, %lo(D_8011AEE8) # addiu $a1, $a1, -0x5118 -/* 01B794 8001AB94 8CA20000 */ lw $v0, ($a1) -/* 01B798 8001AB98 00067080 */ sll $t6, $a2, 2 -/* 01B79C 8001AB9C 01AE7821 */ addu $t7, $t5, $t6 -/* 01B7A0 8001ABA0 8DE30000 */ lw $v1, ($t7) -/* 01B7A4 8001ABA4 8C580000 */ lw $t8, ($v0) -/* 01B7A8 8001ABA8 00000000 */ nop -/* 01B7AC 8001ABAC 1303000A */ beq $t8, $v1, .L8001ABD8 -/* 01B7B0 8001ABB0 00000000 */ nop -.L8001ABB4: -/* 01B7B4 8001ABB4 26100001 */ addiu $s0, $s0, 1 -/* 01B7B8 8001ABB8 0204082A */ slt $at, $s0, $a0 -/* 01B7BC 8001ABBC 10200006 */ beqz $at, .L8001ABD8 -/* 01B7C0 8001ABC0 0010C880 */ sll $t9, $s0, 2 -/* 01B7C4 8001ABC4 00594821 */ addu $t1, $v0, $t9 -/* 01B7C8 8001ABC8 8D2A0000 */ lw $t2, ($t1) -/* 01B7CC 8001ABCC 00000000 */ nop -/* 01B7D0 8001ABD0 1543FFF8 */ bne $t2, $v1, .L8001ABB4 -/* 01B7D4 8001ABD4 00000000 */ nop -.L8001ABD8: -/* 01B7D8 8001ABD8 3C058012 */ lui $a1, %hi(D_8011AEE8) # $a1, 0x8012 -/* 01B7DC 8001ABDC 0204082A */ slt $at, $s0, $a0 -/* 01B7E0 8001ABE0 10200013 */ beqz $at, .L8001AC30 -/* 01B7E4 8001ABE4 24A5AEE8 */ addiu $a1, %lo(D_8011AEE8) # addiu $a1, $a1, -0x5118 -/* 01B7E8 8001ABE8 248BFFFF */ addiu $t3, $a0, -1 -/* 01B7EC 8001ABEC 020B082A */ slt $at, $s0, $t3 -/* 01B7F0 8001ABF0 1020000F */ beqz $at, .L8001AC30 -/* 01B7F4 8001ABF4 00101880 */ sll $v1, $s0, 2 -.L8001ABF8: -/* 01B7F8 8001ABF8 8CAC0000 */ lw $t4, ($a1) -/* 01B7FC 8001ABFC 26100001 */ addiu $s0, $s0, 1 -/* 01B800 8001AC00 01831021 */ addu $v0, $t4, $v1 -/* 01B804 8001AC04 8C4D0004 */ lw $t5, 4($v0) -/* 01B808 8001AC08 24630004 */ addiu $v1, $v1, 4 -/* 01B80C 8001AC0C AC4D0000 */ sw $t5, ($v0) -/* 01B810 8001AC10 8E2E0000 */ lw $t6, ($s1) -/* 01B814 8001AC14 00000000 */ nop -/* 01B818 8001AC18 25CFFFFF */ addiu $t7, $t6, -1 -/* 01B81C 8001AC1C 020F082A */ slt $at, $s0, $t7 -/* 01B820 8001AC20 1420FFF5 */ bnez $at, .L8001ABF8 -/* 01B824 8001AC24 00000000 */ nop -/* 01B828 8001AC28 80E60000 */ lb $a2, ($a3) -/* 01B82C 8001AC2C 00000000 */ nop -.L8001AC30: -/* 01B830 8001AC30 3C188012 */ lui $t8, %hi(D_8011AEE4) # $t8, 0x8012 -/* 01B834 8001AC34 8F18AEE4 */ lw $t8, %lo(D_8011AEE4)($t8) -/* 01B838 8001AC38 0006C880 */ sll $t9, $a2, 2 -/* 01B83C 8001AC3C 03194821 */ addu $t1, $t8, $t9 -/* 01B840 8001AC40 8D240000 */ lw $a0, ($t1) -/* 01B844 8001AC44 0C003FEE */ jal func_8000FFB8 -/* 01B848 8001AC48 00000000 */ nop -/* 01B84C 8001AC4C 3C078012 */ lui $a3, %hi(D_8011AD51) # $a3, 0x8012 -/* 01B850 8001AC50 24E7AD51 */ addiu $a3, %lo(D_8011AD51) # addiu $a3, $a3, -0x52af -/* 01B854 8001AC54 80EB0000 */ lb $t3, ($a3) -/* 01B858 8001AC58 3C0A8012 */ lui $t2, %hi(D_8011AEE4) # $t2, 0x8012 -/* 01B85C 8001AC5C 8D4AAEE4 */ lw $t2, %lo(D_8011AEE4)($t2) -/* 01B860 8001AC60 000B6080 */ sll $t4, $t3, 2 -/* 01B864 8001AC64 014C6821 */ addu $t5, $t2, $t4 -/* 01B868 8001AC68 ADA00000 */ sw $zero, ($t5) -/* 01B86C 8001AC6C 8E2E0000 */ lw $t6, ($s1) -/* 01B870 8001AC70 3C028012 */ lui $v0, %hi(D_8011AD50) # $v0, 0x8012 -/* 01B874 8001AC74 25CFFFFF */ addiu $t7, $t6, -1 -/* 01B878 8001AC78 AE2F0000 */ sw $t7, ($s1) -/* 01B87C 8001AC7C 8042AD50 */ lb $v0, %lo(D_8011AD50)($v0) -/* 01B880 8001AC80 10000006 */ b .L8001AC9C -/* 01B884 8001AC84 24010002 */ li $at, 2 -/* 01B888 8001AC88 24180002 */ li $t8, 2 -.L8001AC8C: -/* 01B88C 8001AC8C 3C018012 */ lui $at, %hi(D_8011AD50) # $at, 0x8012 -/* 01B890 8001AC90 A038AD50 */ sb $t8, %lo(D_8011AD50)($at) -/* 01B894 8001AC94 24020002 */ li $v0, 2 -.L8001AC98: -/* 01B898 8001AC98 24010002 */ li $at, 2 -.L8001AC9C: -/* 01B89C 8001AC9C 14410016 */ bne $v0, $at, .L8001ACF8 -/* 01B8A0 8001ACA0 3C198012 */ lui $t9, %hi(D_8011AEE4) # $t9, 0x8012 -/* 01B8A4 8001ACA4 8F39AEE4 */ lw $t9, %lo(D_8011AEE4)($t9) -/* 01B8A8 8001ACA8 00000000 */ nop -/* 01B8AC 8001ACAC 8F240000 */ lw $a0, ($t9) -/* 01B8B0 8001ACB0 00000000 */ nop -/* 01B8B4 8001ACB4 8C850064 */ lw $a1, 0x64($a0) -/* 01B8B8 8001ACB8 0C008C34 */ jal func_800230D0 -/* 01B8BC 8001ACBC AFA50038 */ sw $a1, 0x38($sp) -/* 01B8C0 8001ACC0 8FA50038 */ lw $a1, 0x38($sp) -/* 01B8C4 8001ACC4 24090003 */ li $t1, 3 -/* 01B8C8 8001ACC8 3C018012 */ lui $at, %hi(D_8011AD50) # $at, 0x8012 -/* 01B8CC 8001ACCC A0A001D8 */ sb $zero, 0x1d8($a1) -/* 01B8D0 8001ACD0 A029AD50 */ sb $t1, %lo(D_8011AD50)($at) -/* 01B8D4 8001ACD4 0C007917 */ jal func_8001E45C -/* 01B8D8 8001ACD8 2404000A */ li $a0, 10 -/* 01B8DC 8001ACDC 3C108012 */ lui $s0, %hi(D_8011ADC8) # $s0, 0x8012 -/* 01B8E0 8001ACE0 2610ADC8 */ addiu $s0, %lo(D_8011ADC8) # addiu $s0, $s0, -0x5238 -/* 01B8E4 8001ACE4 0C007A4F */ jal func_8001E93C -/* 01B8E8 8001ACE8 AE000000 */ sw $zero, ($s0) -/* 01B8EC 8001ACEC 3C028012 */ lui $v0, %hi(D_8011AD50) # $v0, 0x8012 -/* 01B8F0 8001ACF0 8042AD50 */ lb $v0, %lo(D_8011AD50)($v0) -/* 01B8F4 8001ACF4 00000000 */ nop -.L8001ACF8: -/* 01B8F8 8001ACF8 3C108012 */ lui $s0, %hi(D_8011ADC8) # $s0, 0x8012 -/* 01B8FC 8001ACFC 24010003 */ li $at, 3 -/* 01B900 8001AD00 1441000C */ bne $v0, $at, .L8001AD34 -/* 01B904 8001AD04 2610ADC8 */ addiu $s0, %lo(D_8011ADC8) # addiu $s0, $s0, -0x5238 -/* 01B908 8001AD08 3C04800E */ lui $a0, %hi(D_800DC860) # $a0, 0x800e -/* 01B90C 8001AD0C 0C030076 */ jal func_800C01D8 -/* 01B910 8001AD10 2484C860 */ addiu $a0, %lo(D_800DC860) # addiu $a0, $a0, -0x37a0 -/* 01B914 8001AD14 240B0004 */ li $t3, 4 -/* 01B918 8001AD18 3C018012 */ lui $at, %hi(D_8011AD50) # $at, 0x8012 -/* 01B91C 8001AD1C A02BAD50 */ sb $t3, %lo(D_8011AD50)($at) -/* 01B920 8001AD20 0C00A3E8 */ jal func_80028FA0 -/* 01B924 8001AD24 24040001 */ li $a0, 1 -/* 01B928 8001AD28 3C028012 */ lui $v0, %hi(D_80120010) # $v0, 0x8012 -/* 01B92C 8001AD2C 8042AD50 */ lb $v0, %lo(D_8011AD50)($v0) -/* 01B930 8001AD30 00000000 */ nop -.L8001AD34: -/* 01B934 8001AD34 24010004 */ li $at, 4 -/* 01B938 8001AD38 1441003E */ bne $v0, $at, .L8001AE34 -/* 01B93C 8001AD3C 8FBF001C */ lw $ra, 0x1c($sp) -/* 01B940 8001AD40 0C00A3E8 */ jal func_80028FA0 -/* 01B944 8001AD44 24040001 */ li $a0, 1 -/* 01B948 8001AD48 0C0168EC */ jal func_8005A3B0 -/* 01B94C 8001AD4C 00000000 */ nop -/* 01B950 8001AD50 0C01AF66 */ jal func_8006BD98 -/* 01B954 8001AD54 00000000 */ nop -/* 01B958 8001AD58 304A0040 */ andi $t2, $v0, 0x40 -/* 01B95C 8001AD5C 15400013 */ bnez $t2, .L8001ADAC -/* 01B960 8001AD60 3C0C8000 */ lui $t4, %hi(D_80000300) # $t4, 0x8000 -/* 01B964 8001AD64 8D8C0300 */ lw $t4, %lo(D_80000300)($t4) -/* 01B968 8001AD68 8FAE0040 */ lw $t6, 0x40($sp) -/* 01B96C 8001AD6C 15800003 */ bnez $t4, .L8001AD7C -/* 01B970 8001AD70 2402021C */ li $v0, 540 -/* 01B974 8001AD74 10000001 */ b .L8001AD7C -/* 01B978 8001AD78 2402019F */ li $v0, 415 -.L8001AD7C: -/* 01B97C 8001AD7C 8E0D0000 */ lw $t5, ($s0) -/* 01B980 8001AD80 00000000 */ nop -/* 01B984 8001AD84 01AE7821 */ addu $t7, $t5, $t6 -/* 01B988 8001AD88 01E2082B */ sltu $at, $t7, $v0 -/* 01B98C 8001AD8C 10200005 */ beqz $at, .L8001ADA4 -/* 01B990 8001AD90 AE0F0000 */ sw $t7, ($s0) -/* 01B994 8001AD94 0C02AC65 */ jal func_800AB194 -/* 01B998 8001AD98 24040001 */ li $a0, 1 -/* 01B99C 8001AD9C 10000003 */ b .L8001ADAC -/* 01B9A0 8001ADA0 00000000 */ nop -.L8001ADA4: -/* 01B9A4 8001ADA4 0C02AC75 */ jal func_800AB1D4 -/* 01B9A8 8001ADA8 24040001 */ li $a0, 1 -.L8001ADAC: -/* 01B9AC 8001ADAC 0C01A955 */ jal func_8006A554 -/* 01B9B0 8001ADB0 00002025 */ move $a0, $zero -/* 01B9B4 8001ADB4 0C01BAA4 */ jal func_8006EA90 -/* 01B9B8 8001ADB8 30508000 */ andi $s0, $v0, 0x8000 -/* 01B9BC 8001ADBC 8C590010 */ lw $t9, %lo(D_80120010)($v0) -/* 01B9C0 8001ADC0 00408825 */ move $s1, $v0 -/* 01B9C4 8001ADC4 00194B40 */ sll $t1, $t9, 0xd -/* 01B9C8 8001ADC8 05200002 */ bltz $t1, .L8001ADD4 -/* 01B9CC 8001ADCC 00000000 */ nop -/* 01B9D0 8001ADD0 00008025 */ move $s0, $zero -.L8001ADD4: -/* 01B9D4 8001ADD4 0C008531 */ jal func_800214C4 -/* 01B9D8 8001ADD8 00000000 */ nop -/* 01B9DC 8001ADDC 14400007 */ bnez $v0, .L8001ADFC -/* 01B9E0 8001ADE0 00000000 */ nop -/* 01B9E4 8001ADE4 12000013 */ beqz $s0, .L8001AE34 -/* 01B9E8 8001ADE8 8FBF001C */ lw $ra, 0x1c($sp) -/* 01B9EC 8001ADEC 0C030063 */ jal func_800C018C -/* 01B9F0 8001ADF0 00000000 */ nop -/* 01B9F4 8001ADF4 1440000F */ bnez $v0, .L8001AE34 -/* 01B9F8 8001ADF8 8FBF001C */ lw $ra, 0x1c($sp) -.L8001ADFC: -/* 01B9FC 8001ADFC 12000003 */ beqz $s0, .L8001AE0C -/* 01BA00 8001AE00 3C04800E */ lui $a0, %hi(D_800DC6F8) # $a0, 0x800e -/* 01BA04 8001AE04 0C030076 */ jal func_800C01D8 -/* 01BA08 8001AE08 2484C6F8 */ addiu $a0, %lo(D_800DC6F8) # addiu $a0, $a0, -0x3908 -.L8001AE0C: -/* 01BA0C 8001AE0C 0C01BC50 */ jal func_8006F140 -/* 01BA10 8001AE10 24040002 */ li $a0, 2 -/* 01BA14 8001AE14 240B0005 */ li $t3, 5 -/* 01BA18 8001AE18 3C018012 */ lui $at, %hi(D_8011AD50) # $at, 0x8012 -/* 01BA1C 8001AE1C A02BAD50 */ sb $t3, %lo(D_8011AD50)($at) -/* 01BA20 8001AE20 8E2A0010 */ lw $t2, 0x10($s1) -/* 01BA24 8001AE24 3C010004 */ lui $at, 4 -/* 01BA28 8001AE28 01416025 */ or $t4, $t2, $at -/* 01BA2C 8001AE2C AE2C0010 */ sw $t4, 0x10($s1) -/* 01BA30 8001AE30 8FBF001C */ lw $ra, 0x1c($sp) -.L8001AE34: -/* 01BA34 8001AE34 8FB00014 */ lw $s0, 0x14($sp) -/* 01BA38 8001AE38 8FB10018 */ lw $s1, 0x18($sp) -/* 01BA3C 8001AE3C 03E00008 */ jr $ra -/* 01BA40 8001AE40 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_8001AE44 -/* 01BA44 8001AE44 3C028012 */ lui $v0, %hi(D_8011AD4E) # $v0, 0x8012 -/* 01BA48 8001AE48 8442AD4E */ lh $v0, %lo(D_8011AD4E)($v0) -/* 01BA4C 8001AE4C 03E00008 */ jr $ra -/* 01BA50 8001AE50 00000000 */ nop - -glabel func_8001AE54 -/* 01BA54 8001AE54 3C028012 */ lui $v0, %hi(D_8011ADC8) # $v0, 0x8012 -/* 01BA58 8001AE58 8C42ADC8 */ lw $v0, %lo(D_8011ADC8)($v0) -/* 01BA5C 8001AE5C 03E00008 */ jr $ra -/* 01BA60 8001AE60 00000000 */ nop - -glabel func_8001AE64 -/* 01BA64 8001AE64 27BDFFA8 */ addiu $sp, $sp, -0x58 -/* 01BA68 8001AE68 AFBF001C */ sw $ra, 0x1c($sp) -/* 01BA6C 8001AE6C 0C01AF6C */ jal func_8006BDB0 -/* 01BA70 8001AE70 AFB00018 */ sw $s0, 0x18($sp) -/* 01BA74 8001AE74 0C01BAA4 */ jal func_8006EA90 -/* 01BA78 8001AE78 AFA2002C */ sw $v0, 0x2c($sp) -/* 01BA7C 8001AE7C 8FAA002C */ lw $t2, 0x2c($sp) -/* 01BA80 8001AE80 A0400114 */ sb $zero, 0x114($v0) -/* 01BA84 8001AE84 A0400116 */ sb $zero, 0x116($v0) -/* 01BA88 8001AE88 A0400115 */ sb $zero, 0x115($v0) -/* 01BA8C 8001AE8C 3C0E8012 */ lui $t6, %hi(D_8011AEE8) # $t6, 0x8012 -/* 01BA90 8001AE90 8DCEAEE8 */ lw $t6, %lo(D_8011AEE8)($t6) -/* 01BA94 8001AE94 3C198012 */ lui $t9, %hi(D_8011AEF0) # $t9, 0x8012 -/* 01BA98 8001AE98 8DCF0000 */ lw $t7, ($t6) -/* 01BA9C 8001AE9C 8F39AEF0 */ lw $t9, %lo(D_8011AEF0)($t9) -/* 01BAA0 8001AEA0 8DF80064 */ lw $t8, 0x64($t7) -/* 01BAA4 8001AEA4 00404025 */ move $t0, $v0 -/* 01BAA8 8001AEA8 34108CA1 */ li $s0, 36001 -/* 01BAAC 8001AEAC 34098CA1 */ li $t1, 36001 -/* 01BAB0 8001AEB0 00006825 */ move $t5, $zero -/* 01BAB4 8001AEB4 1B20005A */ blez $t9, .L8001B020 -/* 01BAB8 8001AEB8 AFB80034 */ sw $t8, 0x34($sp) -/* 01BABC 8001AEBC 00006025 */ move $t4, $zero -.L8001AEC0: -/* 01BAC0 8001AEC0 3C0E8012 */ lui $t6, %hi(D_8011AEE8) # $t6, 0x8012 -/* 01BAC4 8001AEC4 8DCEAEE8 */ lw $t6, %lo(D_8011AEE8)($t6) -/* 01BAC8 8001AEC8 00000000 */ nop -/* 01BACC 8001AECC 01CC7821 */ addu $t7, $t6, $t4 -/* 01BAD0 8001AED0 8DF80000 */ lw $t8, ($t7) -/* 01BAD4 8001AED4 00000000 */ nop -/* 01BAD8 8001AED8 8F070064 */ lw $a3, 0x64($t8) -/* 01BADC 8001AEDC 00000000 */ nop -/* 01BAE0 8001AEE0 80F90002 */ lb $t9, 2($a3) -/* 01BAE4 8001AEE4 00000000 */ nop -/* 01BAE8 8001AEE8 07200047 */ bltz $t9, .L8001B008 -/* 01BAEC 8001AEEC 00000000 */ nop -/* 01BAF0 8001AEF0 AFA70038 */ sw $a3, 0x38($sp) -/* 01BAF4 8001AEF4 AFA80030 */ sw $t0, 0x30($sp) -/* 01BAF8 8001AEF8 AFA90050 */ sw $t1, 0x50($sp) -/* 01BAFC 8001AEFC AFAA002C */ sw $t2, 0x2c($sp) -/* 01BB00 8001AF00 AFAC0024 */ sw $t4, 0x24($sp) -/* 01BB04 8001AF04 0C0270F2 */ jal func_8009C3C8 -/* 01BB08 8001AF08 AFAD004C */ sw $t5, 0x4c($sp) -/* 01BB0C 8001AF0C 8FA70038 */ lw $a3, 0x38($sp) -/* 01BB10 8001AF10 8FA80030 */ lw $t0, 0x30($sp) -/* 01BB14 8001AF14 80E30002 */ lb $v1, 2($a3) -/* 01BB18 8001AF18 8FA90050 */ lw $t1, 0x50($sp) -/* 01BB1C 8001AF1C 8FAA002C */ lw $t2, 0x2c($sp) -/* 01BB20 8001AF20 8FAC0024 */ lw $t4, 0x24($sp) -/* 01BB24 8001AF24 8FAD004C */ lw $t5, 0x4c($sp) -/* 01BB28 8001AF28 0062082A */ slt $at, $v1, $v0 -/* 01BB2C 8001AF2C 240B0005 */ li $t3, 5 -/* 01BB30 8001AF30 10200035 */ beqz $at, .L8001B008 -/* 01BB34 8001AF34 241F0018 */ li $ra, 24 -/* 01BB38 8001AF38 007F0019 */ multu $v1, $ra -/* 01BB3C 8001AF3C 00007012 */ mflo $t6 -/* 01BB40 8001AF40 010E7821 */ addu $t7, $t0, $t6 -/* 01BB44 8001AF44 A1E00058 */ sb $zero, 0x58($t7) -/* 01BB48 8001AF48 80E201D7 */ lb $v0, 0x1d7($a3) -/* 01BB4C 8001AF4C 00000000 */ nop -/* 01BB50 8001AF50 0440002D */ bltz $v0, .L8001B008 -/* 01BB54 8001AF54 28410003 */ slti $at, $v0, 3 -/* 01BB58 8001AF58 1020002B */ beqz $at, .L8001B008 -/* 01BB5C 8001AF5C 00000000 */ nop -/* 01BB60 8001AF60 8158004B */ lb $t8, 0x4b($t2) -/* 01BB64 8001AF64 00003025 */ move $a2, $zero -/* 01BB68 8001AF68 1B00001C */ blez $t8, .L8001AFDC -/* 01BB6C 8001AF6C 00002025 */ move $a0, $zero -/* 01BB70 8001AF70 0004C880 */ sll $t9, $a0, 2 -/* 01BB74 8001AF74 00F91021 */ addu $v0, $a3, $t9 -/* 01BB78 8001AF78 00042840 */ sll $a1, $a0, 1 -.L8001AF7C: -/* 01BB7C 8001AF7C 80EF0002 */ lb $t7, 2($a3) -/* 01BB80 8001AF80 8C4E0128 */ lw $t6, 0x128($v0) -/* 01BB84 8001AF84 000FC080 */ sll $t8, $t7, 2 -/* 01BB88 8001AF88 030FC023 */ subu $t8, $t8, $t7 -/* 01BB8C 8001AF8C 0018C0C0 */ sll $t8, $t8, 3 -/* 01BB90 8001AF90 0118C821 */ addu $t9, $t0, $t8 -/* 01BB94 8001AF94 03257821 */ addu $t7, $t9, $a1 -/* 01BB98 8001AF98 A5EE0066 */ sh $t6, 0x66($t7) -/* 01BB9C 8001AF9C 8C430128 */ lw $v1, 0x128($v0) -/* 01BBA0 8001AFA0 24A50002 */ addiu $a1, $a1, 2 -/* 01BBA4 8001AFA4 0069082A */ slt $at, $v1, $t1 -/* 01BBA8 8001AFA8 10200005 */ beqz $at, .L8001AFC0 -/* 01BBAC 8001AFAC 00C33021 */ addu $a2, $a2, $v1 -/* 01BBB0 8001AFB0 A1040116 */ sb $a0, 0x116($t0) -/* 01BBB4 8001AFB4 80F80002 */ lb $t8, 2($a3) -/* 01BBB8 8001AFB8 00604825 */ move $t1, $v1 -/* 01BBBC 8001AFBC A1180115 */ sb $t8, 0x115($t0) -.L8001AFC0: -/* 01BBC0 8001AFC0 8159004B */ lb $t9, 0x4b($t2) -/* 01BBC4 8001AFC4 24840001 */ addiu $a0, $a0, 1 -/* 01BBC8 8001AFC8 0099082A */ slt $at, $a0, $t9 -/* 01BBCC 8001AFCC 10200003 */ beqz $at, .L8001AFDC -/* 01BBD0 8001AFD0 24420004 */ addiu $v0, $v0, 4 -/* 01BBD4 8001AFD4 148BFFE9 */ bne $a0, $t3, .L8001AF7C -/* 01BBD8 8001AFD8 00000000 */ nop -.L8001AFDC: -/* 01BBDC 8001AFDC 80EE0002 */ lb $t6, 2($a3) -/* 01BBE0 8001AFE0 00D0082A */ slt $at, $a2, $s0 -/* 01BBE4 8001AFE4 01DF0019 */ multu $t6, $ra -/* 01BBE8 8001AFE8 00007812 */ mflo $t7 -/* 01BBEC 8001AFEC 010FC021 */ addu $t8, $t0, $t7 -/* 01BBF0 8001AFF0 10200005 */ beqz $at, .L8001B008 -/* 01BBF4 8001AFF4 A7060064 */ sh $a2, 0x64($t8) -/* 01BBF8 8001AFF8 80F90002 */ lb $t9, 2($a3) -/* 01BBFC 8001AFFC 00C08025 */ move $s0, $a2 -/* 01BC00 8001B000 A1190114 */ sb $t9, 0x114($t0) -/* 01BC04 8001B004 AFA70034 */ sw $a3, 0x34($sp) -.L8001B008: -/* 01BC08 8001B008 3C0E8012 */ lui $t6, %hi(D_8011AEF0) # $t6, 0x8012 -/* 01BC0C 8001B00C 8DCEAEF0 */ lw $t6, %lo(D_8011AEF0)($t6) -/* 01BC10 8001B010 25AD0001 */ addiu $t5, $t5, 1 -/* 01BC14 8001B014 01AE082A */ slt $at, $t5, $t6 -/* 01BC18 8001B018 1420FFA9 */ bnez $at, .L8001AEC0 -/* 01BC1C 8001B01C 258C0004 */ addiu $t4, $t4, 4 -.L8001B020: -/* 01BC20 8001B020 A1000117 */ sb $zero, 0x117($t0) -/* 01BC24 8001B024 3C0F8012 */ lui $t7, %hi(D_8011AEF5) # $t7, 0x8012 -/* 01BC28 8001B028 91EFAEF5 */ lbu $t7, %lo(D_8011AEF5)($t7) -/* 01BC2C 8001B02C 240B0005 */ li $t3, 5 -/* 01BC30 8001B030 11E00091 */ beqz $t7, .L8001B278 -/* 01BC34 8001B034 241F0018 */ li $ra, 24 -/* 01BC38 8001B038 3C028012 */ lui $v0, %hi(D_8011AE82) # $v0, 0x8012 -/* 01BC3C 8001B03C 8442AE82 */ lh $v0, %lo(D_8011AE82)($v0) -/* 01BC40 8001B040 00000000 */ nop -/* 01BC44 8001B044 28410003 */ slti $at, $v0, 3 -/* 01BC48 8001B048 10200003 */ beqz $at, .L8001B058 -/* 01BC4C 8001B04C 00000000 */ nop -/* 01BC50 8001B050 04410002 */ bgez $v0, .L8001B05C -/* 01BC54 8001B054 00000000 */ nop -.L8001B058: -/* 01BC58 8001B058 00001025 */ move $v0, $zero -.L8001B05C: -/* 01BC5C 8001B05C 81190115 */ lb $t9, 0x115($t0) -/* 01BC60 8001B060 24180001 */ li $t8, 1 -/* 01BC64 8001B064 17200018 */ bnez $t9, .L8001B0C8 -/* 01BC68 8001B068 A1180117 */ sb $t8, 0x117($t0) -/* 01BC6C 8001B06C 00027080 */ sll $t6, $v0, 2 -/* 01BC70 8001B070 91190049 */ lbu $t9, 0x49($t0) -/* 01BC74 8001B074 010E7821 */ addu $t7, $t0, $t6 -/* 01BC78 8001B078 8DF80024 */ lw $t8, 0x24($t7) -/* 01BC7C 8001B07C 00197040 */ sll $t6, $t9, 1 -/* 01BC80 8001B080 030E2021 */ addu $a0, $t8, $t6 -/* 01BC84 8001B084 94830000 */ lhu $v1, ($a0) -/* 01BC88 8001B088 00000000 */ nop -/* 01BC8C 8001B08C 10600003 */ beqz $v1, .L8001B09C -/* 01BC90 8001B090 0123082A */ slt $at, $t1, $v1 -/* 01BC94 8001B094 1020000C */ beqz $at, .L8001B0C8 -/* 01BC98 8001B098 00000000 */ nop -.L8001B09C: -/* 01BC9C 8001B09C A4890000 */ sh $t1, ($a0) -/* 01BCA0 8001B0A0 810F0115 */ lb $t7, 0x115($t0) -/* 01BCA4 8001B0A4 810E0116 */ lb $t6, 0x116($t0) -/* 01BCA8 8001B0A8 01FF0019 */ multu $t7, $ra -/* 01BCAC 8001B0AC 240F0001 */ li $t7, 1 -/* 01BCB0 8001B0B0 0000C812 */ mflo $t9 -/* 01BCB4 8001B0B4 01191821 */ addu $v1, $t0, $t9 -/* 01BCB8 8001B0B8 80780058 */ lb $t8, 0x58($v1) -/* 01BCBC 8001B0BC 01CFC804 */ sllv $t9, $t7, $t6 -/* 01BCC0 8001B0C0 03197825 */ or $t7, $t8, $t9 -/* 01BCC4 8001B0C4 A06F0058 */ sb $t7, 0x58($v1) -.L8001B0C8: -/* 01BCC8 8001B0C8 81050114 */ lb $a1, 0x114($t0) -/* 01BCCC 8001B0CC 00027080 */ sll $t6, $v0, 2 -/* 01BCD0 8001B0D0 14A00018 */ bnez $a1, .L8001B134 -/* 01BCD4 8001B0D4 00000000 */ nop -/* 01BCD8 8001B0D8 910F0049 */ lbu $t7, 0x49($t0) -/* 01BCDC 8001B0DC 010EC021 */ addu $t8, $t0, $t6 -/* 01BCE0 8001B0E0 8F19003C */ lw $t9, 0x3c($t8) -/* 01BCE4 8001B0E4 000F7040 */ sll $t6, $t7, 1 -/* 01BCE8 8001B0E8 032E2021 */ addu $a0, $t9, $t6 -/* 01BCEC 8001B0EC 94830000 */ lhu $v1, ($a0) -/* 01BCF0 8001B0F0 00000000 */ nop -/* 01BCF4 8001B0F4 10600003 */ beqz $v1, .L8001B104 -/* 01BCF8 8001B0F8 0203082A */ slt $at, $s0, $v1 -/* 01BCFC 8001B0FC 1020000D */ beqz $at, .L8001B134 -/* 01BD00 8001B100 00000000 */ nop -.L8001B104: -/* 01BD04 8001B104 A4900000 */ sh $s0, ($a0) -/* 01BD08 8001B108 81180114 */ lb $t8, 0x114($t0) -/* 01BD0C 8001B10C 00000000 */ nop -/* 01BD10 8001B110 031F0019 */ multu $t8, $ra -/* 01BD14 8001B114 00007812 */ mflo $t7 -/* 01BD18 8001B118 010F1821 */ addu $v1, $t0, $t7 -/* 01BD1C 8001B11C 80790058 */ lb $t9, 0x58($v1) -/* 01BD20 8001B120 00000000 */ nop -/* 01BD24 8001B124 372E0080 */ ori $t6, $t9, 0x80 -/* 01BD28 8001B128 A06E0058 */ sb $t6, 0x58($v1) -/* 01BD2C 8001B12C 81050114 */ lb $a1, 0x114($t0) -/* 01BD30 8001B130 00000000 */ nop -.L8001B134: -/* 01BD34 8001B134 14A00050 */ bnez $a1, .L8001B278 -/* 01BD38 8001B138 2A012A30 */ slti $at, $s0, 0x2a30 -/* 01BD3C 8001B13C 10200024 */ beqz $at, .L8001B1D0 -/* 01BD40 8001B140 00000000 */ nop -/* 01BD44 8001B144 3C18800E */ lui $t8, %hi(D_800DC728) # $t8, 0x800e -/* 01BD48 8001B148 8718C728 */ lh $t8, %lo(D_800DC728)($t8) -/* 01BD4C 8001B14C 00000000 */ nop -/* 01BD50 8001B150 1458000F */ bne $v0, $t8, .L8001B190 -/* 01BD54 8001B154 00000000 */ nop -/* 01BD58 8001B158 0C01666A */ jal func_800599A8 -/* 01BD5C 8001B15C AFA80030 */ sw $t0, 0x30($sp) -/* 01BD60 8001B160 0C01AF62 */ jal func_8006BD88 -/* 01BD64 8001B164 AFA20028 */ sw $v0, 0x28($sp) -/* 01BD68 8001B168 8FAF0028 */ lw $t7, 0x28($sp) -/* 01BD6C 8001B16C 8FA80030 */ lw $t0, 0x30($sp) -/* 01BD70 8001B170 144F0007 */ bne $v0, $t7, .L8001B190 -/* 01BD74 8001B174 240B0005 */ li $t3, 5 -/* 01BD78 8001B178 3C19800E */ lui $t9, %hi(D_800DC724) # $t9, 0x800e -/* 01BD7C 8001B17C 8739C724 */ lh $t9, %lo(D_800DC724)($t9) -/* 01BD80 8001B180 00000000 */ nop -/* 01BD84 8001B184 0219082A */ slt $at, $s0, $t9 -/* 01BD88 8001B188 10200011 */ beqz $at, .L8001B1D0 -/* 01BD8C 8001B18C 00000000 */ nop -.L8001B190: -/* 01BD90 8001B190 3C01800E */ lui $at, %hi(D_800DC724) # $at, 0x800e -/* 01BD94 8001B194 3C0E8012 */ lui $t6, %hi(D_8011AE82) # $t6, 0x8012 -/* 01BD98 8001B198 85CEAE82 */ lh $t6, %lo(D_8011AE82)($t6) -/* 01BD9C 8001B19C A430C724 */ sh $s0, %lo(D_800DC724)($at) -/* 01BDA0 8001B1A0 3C01800E */ lui $at, %hi(D_800DC728) # $at, 0x800e -/* 01BDA4 8001B1A4 A42EC728 */ sh $t6, %lo(D_800DC728)($at) -/* 01BDA8 8001B1A8 81180059 */ lb $t8, 0x59($t0) -/* 01BDAC 8001B1AC 3C01800E */ lui $at, %hi(D_800DC72C) # $at, 0x800e -/* 01BDB0 8001B1B0 0C01AF62 */ jal func_8006BD88 -/* 01BDB4 8001B1B4 A438C72C */ sh $t8, %lo(D_800DC72C)($at) -/* 01BDB8 8001B1B8 0C016661 */ jal func_80059984 -/* 01BDBC 8001B1BC 00402025 */ move $a0, $v0 -/* 01BDC0 8001B1C0 240F0001 */ li $t7, 1 -/* 01BDC4 8001B1C4 3C01800E */ lui $at, %hi(D_800DC730) # $at, 0x800e -/* 01BDC8 8001B1C8 240B0005 */ li $t3, 5 -/* 01BDCC 8001B1CC A02FC730 */ sb $t7, %lo(D_800DC730)($at) -.L8001B1D0: -/* 01BDD0 8001B1D0 3C198000 */ lui $t9, %hi(D_80000300) # $t9, 0x8000 -/* 01BDD4 8001B1D4 8F390300 */ lw $t9, %lo(D_80000300)($t9) -/* 01BDD8 8001B1D8 00107080 */ sll $t6, $s0, 2 -/* 01BDDC 8001B1DC 17200010 */ bnez $t9, .L8001B220 -/* 01BDE0 8001B1E0 3C188012 */ lui $t8, %hi(D_8011AE80) # $t8, 0x8012 -/* 01BDE4 8001B1E4 01D07023 */ subu $t6, $t6, $s0 -/* 01BDE8 8001B1E8 000E7040 */ sll $t6, $t6, 1 -/* 01BDEC 8001B1EC 01CB001A */ div $zero, $t6, $t3 -/* 01BDF0 8001B1F0 15600002 */ bnez $t3, .L8001B1FC -/* 01BDF4 8001B1F4 00000000 */ nop -/* 01BDF8 8001B1F8 0007000D */ break 7 -.L8001B1FC: -/* 01BDFC 8001B1FC 2401FFFF */ li $at, -1 -/* 01BE00 8001B200 15610004 */ bne $t3, $at, .L8001B214 -/* 01BE04 8001B204 3C018000 */ lui $at, 0x8000 -/* 01BE08 8001B208 15C10002 */ bne $t6, $at, .L8001B214 -/* 01BE0C 8001B20C 00000000 */ nop -/* 01BE10 8001B210 0006000D */ break 6 -.L8001B214: -/* 01BE14 8001B214 00008012 */ mflo $s0 -/* 01BE18 8001B218 00000000 */ nop -/* 01BE1C 8001B21C 00000000 */ nop -.L8001B220: -/* 01BE20 8001B220 8718AE80 */ lh $t8, %lo(D_8011AE80)($t8) -/* 01BE24 8001B224 8FA40034 */ lw $a0, 0x34($sp) -/* 01BE28 8001B228 0218082A */ slt $at, $s0, $t8 -/* 01BE2C 8001B22C 10200010 */ beqz $at, .L8001B270 -/* 01BE30 8001B230 3C0F800E */ lui $t7, %hi(D_800DC734) # $t7, 0x800e -/* 01BE34 8001B234 91EFC734 */ lbu $t7, %lo(D_800DC734)($t7) -/* 01BE38 8001B238 8FA40034 */ lw $a0, 0x34($sp) -/* 01BE3C 8001B23C 11E00008 */ beqz $t7, .L8001B260 -/* 01BE40 8001B240 00000000 */ nop -/* 01BE44 8001B244 0C01AF62 */ jal func_8006BD88 -/* 01BE48 8001B248 00000000 */ nop -/* 01BE4C 8001B24C 8FA50034 */ lw $a1, 0x34($sp) -/* 01BE50 8001B250 0C006CF1 */ jal func_8001B3C4 -/* 01BE54 8001B254 00402025 */ move $a0, $v0 -/* 01BE58 8001B258 10000008 */ b .L8001B27C -/* 01BE5C 8001B25C 8FBF001C */ lw $ra, 0x1c($sp) -.L8001B260: -/* 01BE60 8001B260 0C029B6D */ jal func_800A6DB4 -/* 01BE64 8001B264 00000000 */ nop -/* 01BE68 8001B268 10000004 */ b .L8001B27C -/* 01BE6C 8001B26C 8FBF001C */ lw $ra, 0x1c($sp) -.L8001B270: -/* 01BE70 8001B270 0C029B6D */ jal func_800A6DB4 -/* 01BE74 8001B274 00000000 */ nop -.L8001B278: -/* 01BE78 8001B278 8FBF001C */ lw $ra, 0x1c($sp) -.L8001B27C: -/* 01BE7C 8001B27C 8FB00018 */ lw $s0, 0x18($sp) -/* 01BE80 8001B280 03E00008 */ jr $ra -/* 01BE84 8001B284 27BD0058 */ addiu $sp, $sp, 0x58 - -glabel func_8001B288 -/* 01BE88 8001B288 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 01BE8C 8001B28C AFBF0014 */ sw $ra, 0x14($sp) -/* 01BE90 8001B290 0C01666A */ jal func_800599A8 -/* 01BE94 8001B294 00000000 */ nop -/* 01BE98 8001B298 0C01AF62 */ jal func_8006BD88 -/* 01BE9C 8001B29C AFA2001C */ sw $v0, 0x1c($sp) -/* 01BEA0 8001B2A0 8FAE001C */ lw $t6, 0x1c($sp) -/* 01BEA4 8001B2A4 8FBF0014 */ lw $ra, 0x14($sp) -/* 01BEA8 8001B2A8 104E0003 */ beq $v0, $t6, .L8001B2B8 -/* 01BEAC 8001B2AC 3C0F8012 */ lui $t7, %hi(D_8011AE82) # $t7, 0x8012 -/* 01BEB0 8001B2B0 10000009 */ b .L8001B2D8 -/* 01BEB4 8001B2B4 00001025 */ move $v0, $zero -.L8001B2B8: -/* 01BEB8 8001B2B8 3C18800E */ lui $t8, %hi(D_800DC728) # $t8, 0x800e -/* 01BEBC 8001B2BC 8718C728 */ lh $t8, %lo(D_800DC728)($t8) -/* 01BEC0 8001B2C0 85EFAE82 */ lh $t7, %lo(D_8011AE82)($t7) -/* 01BEC4 8001B2C4 24020001 */ li $v0, 1 -/* 01BEC8 8001B2C8 11F80003 */ beq $t7, $t8, .L8001B2D8 -/* 01BECC 8001B2CC 00000000 */ nop -/* 01BED0 8001B2D0 10000001 */ b .L8001B2D8 -/* 01BED4 8001B2D4 00001025 */ move $v0, $zero -.L8001B2D8: -/* 01BED8 8001B2D8 03E00008 */ jr $ra -/* 01BEDC 8001B2DC 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_8001B2E0 -/* 01BEE0 8001B2E0 3C028012 */ lui $v0, %hi(D_8011AD34) # $v0, 0x8012 -/* 01BEE4 8001B2E4 8C42AD34 */ lw $v0, %lo(D_8011AD34)($v0) -/* 01BEE8 8001B2E8 03E00008 */ jr $ra -/* 01BEEC 8001B2EC 00000000 */ nop - -glabel func_8001B2F0 -/* 01BEF0 8001B2F0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 01BEF4 8001B2F4 AFBF0014 */ sw $ra, 0x14($sp) -/* 01BEF8 8001B2F8 0C01AC2B */ jal func_8006B0AC -/* 01BEFC 8001B2FC AFA40028 */ sw $a0, 0x28($sp) -/* 01BF00 8001B300 3C058012 */ lui $a1, %hi(D_8011AE84) # $a1, 0x8012 -/* 01BF04 8001B304 24A5AE84 */ addiu $a1, %lo(D_8011AE84) # addiu $a1, $a1, -0x517c -/* 01BF08 8001B308 A4A20000 */ sh $v0, ($a1) -/* 01BF0C 8001B30C 0C01DB16 */ jal func_80076C58 -/* 01BF10 8001B310 24040030 */ li $a0, 48 -/* 01BF14 8001B314 3C058012 */ lui $a1, %hi(D_8011AE84) # $a1, 0x8012 -/* 01BF18 8001B318 8FA60028 */ lw $a2, 0x28($sp) -/* 01BF1C 8001B31C 24A5AE84 */ addiu $a1, %lo(D_8011AE84) # addiu $a1, $a1, -0x517c -/* 01BF20 8001B320 AFA20024 */ sw $v0, 0x24($sp) -/* 01BF24 8001B324 00401825 */ move $v1, $v0 -/* 01BF28 8001B328 240700FF */ li $a3, 255 -.L8001B32C: -/* 01BF2C 8001B32C 906E0000 */ lbu $t6, ($v1) -/* 01BF30 8001B330 00602025 */ move $a0, $v1 -/* 01BF34 8001B334 14CE0009 */ bne $a2, $t6, .L8001B35C -/* 01BF38 8001B338 00000000 */ nop -/* 01BF3C 8001B33C 84AF0000 */ lh $t7, ($a1) -/* 01BF40 8001B340 90780001 */ lbu $t8, 1($v1) -/* 01BF44 8001B344 00000000 */ nop -/* 01BF48 8001B348 15F80004 */ bne $t7, $t8, .L8001B35C -/* 01BF4C 8001B34C 00000000 */ nop -/* 01BF50 8001B350 90820000 */ lbu $v0, ($a0) -/* 01BF54 8001B354 10000005 */ b .L8001B36C -/* 01BF58 8001B358 00000000 */ nop -.L8001B35C: -/* 01BF5C 8001B35C 90820000 */ lbu $v0, ($a0) -/* 01BF60 8001B360 24630008 */ addiu $v1, $v1, 8 -/* 01BF64 8001B364 14E2FFF1 */ bne $a3, $v0, .L8001B32C -/* 01BF68 8001B368 00000000 */ nop -.L8001B36C: -/* 01BF6C 8001B36C 10E20008 */ beq $a3, $v0, .L8001B390 -/* 01BF70 8001B370 24050001 */ li $a1, 1 -/* 01BF74 8001B374 8C640004 */ lw $a0, 4($v1) -/* 01BF78 8001B378 8C79000C */ lw $t9, 0xc($v1) -/* 01BF7C 8001B37C 3C068012 */ lui $a2, %hi(D_8011AE80) # $a2, 0x8012 -/* 01BF80 8001B380 24C6AE80 */ addiu $a2, %lo(D_8011AE80) # addiu $a2, $a2, -0x5180 -/* 01BF84 8001B384 0C01669A */ jal func_80059A68 -/* 01BF88 8001B388 03242823 */ subu $a1, $t9, $a0 -/* 01BF8C 8001B38C 00402825 */ move $a1, $v0 -.L8001B390: -/* 01BF90 8001B390 8FA40024 */ lw $a0, 0x24($sp) -/* 01BF94 8001B394 0C01C450 */ jal func_80071140 -/* 01BF98 8001B398 AFA5001C */ sw $a1, 0x1c($sp) -/* 01BF9C 8001B39C 8FBF0014 */ lw $ra, 0x14($sp) -/* 01BFA0 8001B3A0 8FA2001C */ lw $v0, 0x1c($sp) -/* 01BFA4 8001B3A4 03E00008 */ jr $ra -/* 01BFA8 8001B3A8 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8001B3AC -/* 01BFAC 8001B3AC 3C0E800E */ lui $t6, %hi(D_800DC718) # $t6, 0x800e -/* 01BFB0 8001B3B0 8DCEC718 */ lw $t6, %lo(D_800DC718)($t6) -/* 01BFB4 8001B3B4 00000000 */ nop -/* 01BFB8 8001B3B8 008E1026 */ xor $v0, $a0, $t6 -/* 01BFBC 8001B3BC 03E00008 */ jr $ra -/* 01BFC0 8001B3C0 2C420001 */ sltiu $v0, $v0, 1 - -glabel func_8001B3C4 -/* 01BFC4 8001B3C4 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 01BFC8 8001B3C8 AFBF001C */ sw $ra, 0x1c($sp) -/* 01BFCC 8001B3CC AFB00018 */ sw $s0, 0x18($sp) -/* 01BFD0 8001B3D0 3C01800E */ lui $at, %hi(D_800DC718) # $at, 0x800e -/* 01BFD4 8001B3D4 00808025 */ move $s0, $a0 -/* 01BFD8 8001B3D8 AFA50024 */ sw $a1, 0x24($sp) -/* 01BFDC 8001B3DC 0C0166D3 */ jal func_80059B4C -/* 01BFE0 8001B3E0 AC20C718 */ sw $zero, %lo(D_800DC718)($at) -/* 01BFE4 8001B3E4 3C01800E */ lui $at, %hi(D_800DC734) # $at, 0x800e -/* 01BFE8 8001B3E8 A020C734 */ sb $zero, %lo(D_800DC734)($at) -/* 01BFEC 8001B3EC 0C0078A7 */ jal func_8001E29C -/* 01BFF0 8001B3F0 2404001C */ li $a0, 28 -/* 01BFF4 8001B3F4 804E0000 */ lb $t6, ($v0) -/* 01BFF8 8001B3F8 2407FFFF */ li $a3, -1 -/* 01BFFC 8001B3FC 00402825 */ move $a1, $v0 -/* 01C000 8001B400 10EE000E */ beq $a3, $t6, .L8001B43C -/* 01C004 8001B404 00003025 */ move $a2, $zero -/* 01C008 8001B408 804F0000 */ lb $t7, ($v0) -/* 01C00C 8001B40C 00402021 */ addu $a0, $v0, $zero -/* 01C010 8001B410 120F000A */ beq $s0, $t7, .L8001B43C -/* 01C014 8001B414 00000000 */ nop -.L8001B418: -/* 01C018 8001B418 80980001 */ lb $t8, 1($a0) -/* 01C01C 8001B41C 24C60001 */ addiu $a2, $a2, 1 -/* 01C020 8001B420 10F80006 */ beq $a3, $t8, .L8001B43C -/* 01C024 8001B424 24840001 */ addiu $a0, $a0, 1 -/* 01C028 8001B428 00A6C821 */ addu $t9, $a1, $a2 -/* 01C02C 8001B42C 83280000 */ lb $t0, ($t9) -/* 01C030 8001B430 00000000 */ nop -/* 01C034 8001B434 1608FFF8 */ bne $s0, $t0, .L8001B418 -/* 01C038 8001B438 00000000 */ nop -.L8001B43C: -/* 01C03C 8001B43C 3C10800E */ lui $s0, %hi(D_800DC738) # $s0, 0x800e -/* 01C040 8001B440 2610C738 */ addiu $s0, %lo(D_800DC738) # addiu $s0, $s0, -0x38c8 -/* 01C044 8001B444 92090000 */ lbu $t1, ($s0) -/* 01C048 8001B448 240A0010 */ li $t2, 16 -/* 01C04C 8001B44C 11200024 */ beqz $t1, .L8001B4E0 -/* 01C050 8001B450 00CA2804 */ sllv $a1, $t2, $a2 -/* 01C054 8001B454 0C027A9E */ jal func_8009EA78 -/* 01C058 8001B458 000527C3 */ sra $a0, $a1, 0x1f -/* 01C05C 8001B45C 0C027AC2 */ jal func_8009EB08 -/* 01C060 8001B460 00000000 */ nop -/* 01C064 8001B464 3C0100FF */ lui $at, (0x00FFFFF0 >> 16) # lui $at, 0xff -/* 01C068 8001B468 3421FFF0 */ ori $at, (0x00FFFFF0 & 0xFFFF) # ori $at, $at, 0xfff0 -/* 01C06C 8001B46C 00616824 */ and $t5, $v1, $at -/* 01C070 8001B470 3C0100FF */ lui $at, (0x00FFFFF0 >> 16) # lui $at, 0xff -/* 01C074 8001B474 3421FFF0 */ ori $at, (0x00FFFFF0 & 0xFFFF) # ori $at, $at, 0xfff0 -/* 01C078 8001B478 15A1000F */ bne $t5, $at, .L8001B4B8 -/* 01C07C 8001B47C 2404024C */ li $a0, 588 -/* 01C080 8001B480 0C0270B8 */ jal func_8009C2E0 -/* 01C084 8001B484 24040001 */ li $a0, 1 -/* 01C088 8001B488 2404024E */ li $a0, 590 -/* 01C08C 8001B48C 0C000741 */ jal func_80001D04 -/* 01C090 8001B490 00002825 */ move $a1, $zero -/* 01C094 8001B494 2404024F */ li $a0, 591 -/* 01C098 8001B498 00002825 */ move $a1, $zero -/* 01C09C 8001B49C 0C0003F7 */ jal func_80000FDC -/* 01C0A0 8001B4A0 3C063FC0 */ lui $a2, 0x3fc0 -/* 01C0A4 8001B4A4 0C030C7B */ jal func_800C31EC -/* 01C0A8 8001B4A8 24040054 */ li $a0, 84 -/* 01C0AC 8001B4AC 1000000A */ b .L8001B4D8 -/* 01C0B0 8001B4B0 00000000 */ nop -/* 01C0B4 8001B4B4 2404024C */ li $a0, 588 -.L8001B4B8: -/* 01C0B8 8001B4B8 0C000741 */ jal func_80001D04 -/* 01C0BC 8001B4BC 00002825 */ move $a1, $zero -/* 01C0C0 8001B4C0 2404024D */ li $a0, 589 -/* 01C0C4 8001B4C4 00002825 */ move $a1, $zero -/* 01C0C8 8001B4C8 0C0003F7 */ jal func_80000FDC -/* 01C0CC 8001B4CC 3C063F80 */ lui $a2, 0x3f80 -/* 01C0D0 8001B4D0 0C030C7B */ jal func_800C31EC -/* 01C0D4 8001B4D4 24040053 */ li $a0, 83 -.L8001B4D8: -/* 01C0D8 8001B4D8 10000004 */ b .L8001B4EC -/* 01C0DC 8001B4DC A2000000 */ sb $zero, ($s0) -.L8001B4E0: -/* 01C0E0 8001B4E0 8FA40024 */ lw $a0, 0x24($sp) -/* 01C0E4 8001B4E4 0C029B6D */ jal func_800A6DB4 -/* 01C0E8 8001B4E8 00000000 */ nop -.L8001B4EC: -/* 01C0EC 8001B4EC 8FBF001C */ lw $ra, 0x1c($sp) -/* 01C0F0 8001B4F0 8FB00018 */ lw $s0, 0x18($sp) -/* 01C0F4 8001B4F4 03E00008 */ jr $ra -/* 01C0F8 8001B4F8 27BD0020 */ addiu $sp, $sp, 0x20 - -glabel func_8001B4FC -/* 01C0FC 8001B4FC 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 01C100 8001B500 3C01800E */ lui $at, %hi(D_800DC738) # $at, 0x800e -/* 01C104 8001B504 A020C738 */ sb $zero, %lo(D_800DC738)($at) -/* 01C108 8001B508 AFBF001C */ sw $ra, 0x1c($sp) -/* 01C10C 8001B50C AFB00018 */ sw $s0, 0x18($sp) -/* 01C110 8001B510 3C01800E */ lui $at, %hi(D_800DC734) # $at, 0x800e -/* 01C114 8001B514 00808025 */ move $s0, $a0 -/* 01C118 8001B518 0C01BAA4 */ jal func_8006EA90 -/* 01C11C 8001B51C A020C734 */ sb $zero, %lo(D_800DC734)($at) -/* 01C120 8001B520 AFA20020 */ sw $v0, 0x20($sp) -/* 01C124 8001B524 0C01AC2B */ jal func_8006B0AC -/* 01C128 8001B528 02002025 */ move $a0, $s0 -/* 01C12C 8001B52C 3C0E8012 */ lui $t6, %hi(D_8011AE82) # $t6, 0x8012 -/* 01C130 8001B530 85CEAE82 */ lh $t6, %lo(D_8011AE82)($t6) -/* 01C134 8001B534 00000000 */ nop -/* 01C138 8001B538 144E003C */ bne $v0, $t6, .L8001B62C -/* 01C13C 8001B53C 8FBF001C */ lw $ra, 0x1c($sp) -/* 01C140 8001B540 0C0078A7 */ jal func_8001E29C -/* 01C144 8001B544 2404001C */ li $a0, 28 -/* 01C148 8001B548 24040018 */ li $a0, 24 -/* 01C14C 8001B54C 0C0078A7 */ jal func_8001E29C -/* 01C150 8001B550 AFA20028 */ sw $v0, 0x28($sp) -/* 01C154 8001B554 8FA80028 */ lw $t0, 0x28($sp) -/* 01C158 8001B558 2407FFFF */ li $a3, -1 -/* 01C15C 8001B55C 810F0000 */ lb $t7, ($t0) -/* 01C160 8001B560 8FAD0020 */ lw $t5, 0x20($sp) -/* 01C164 8001B564 10EF000B */ beq $a3, $t7, .L8001B594 -/* 01C168 8001B568 00003025 */ move $a2, $zero -/* 01C16C 8001B56C 81180000 */ lb $t8, ($t0) -/* 01C170 8001B570 01002021 */ addu $a0, $t0, $zero -/* 01C174 8001B574 12180008 */ beq $s0, $t8, .L8001B598 -/* 01C178 8001B578 0106C821 */ addu $t9, $t0, $a2 -.L8001B57C: -/* 01C17C 8001B57C 80850001 */ lb $a1, 1($a0) -/* 01C180 8001B580 24C60001 */ addiu $a2, $a2, 1 -/* 01C184 8001B584 10E50003 */ beq $a3, $a1, .L8001B594 -/* 01C188 8001B588 24840001 */ addiu $a0, $a0, 1 -/* 01C18C 8001B58C 1605FFFB */ bne $s0, $a1, .L8001B57C -/* 01C190 8001B590 00000000 */ nop -.L8001B594: -/* 01C194 8001B594 0106C821 */ addu $t9, $t0, $a2 -.L8001B598: -/* 01C198 8001B598 83290000 */ lb $t1, ($t9) -/* 01C19C 8001B59C 00065040 */ sll $t2, $a2, 1 -/* 01C1A0 8001B5A0 10E90021 */ beq $a3, $t1, .L8001B628 -/* 01C1A4 8001B5A4 004A5821 */ addu $t3, $v0, $t2 -/* 01C1A8 8001B5A8 3C0E8012 */ lui $t6, %hi(D_8011AE82) # $t6, 0x8012 -/* 01C1AC 8001B5AC 85CEAE82 */ lh $t6, %lo(D_8011AE82)($t6) -/* 01C1B0 8001B5B0 00104840 */ sll $t1, $s0, 1 -/* 01C1B4 8001B5B4 000E7880 */ sll $t7, $t6, 2 -/* 01C1B8 8001B5B8 01AFC021 */ addu $t8, $t5, $t7 -/* 01C1BC 8001B5BC 8F19003C */ lw $t9, 0x3c($t8) -/* 01C1C0 8001B5C0 956C0000 */ lhu $t4, ($t3) -/* 01C1C4 8001B5C4 03295021 */ addu $t2, $t9, $t1 -/* 01C1C8 8001B5C8 954B0000 */ lhu $t3, ($t2) -/* 01C1CC 8001B5CC 00000000 */ nop -/* 01C1D0 8001B5D0 018B082A */ slt $at, $t4, $t3 -/* 01C1D4 8001B5D4 14200015 */ bnez $at, .L8001B62C -/* 01C1D8 8001B5D8 8FBF001C */ lw $ra, 0x1c($sp) -/* 01C1DC 8001B5DC 0C027AC2 */ jal func_8009EB08 -/* 01C1E0 8001B5E0 AFA6002C */ sw $a2, 0x2c($sp) -/* 01C1E4 8001B5E4 8FA6002C */ lw $a2, 0x2c($sp) -/* 01C1E8 8001B5E8 240E0010 */ li $t6, 16 -/* 01C1EC 8001B5EC 00CE6804 */ sllv $t5, $t6, $a2 -/* 01C1F0 8001B5F0 000DC7C3 */ sra $t8, $t5, 0x1f -/* 01C1F4 8001B5F4 00585024 */ and $t2, $v0, $t8 -/* 01C1F8 8001B5F8 15400005 */ bnez $t2, .L8001B610 -/* 01C1FC 8001B5FC 006D5824 */ and $t3, $v1, $t5 -/* 01C200 8001B600 15600003 */ bnez $t3, .L8001B610 -/* 01C204 8001B604 240F0001 */ li $t7, 1 -/* 01C208 8001B608 3C01800E */ lui $at, %hi(D_800DC738) # $at, 0x800e -/* 01C20C 8001B60C A02FC738 */ sb $t7, %lo(D_800DC738)($at) -.L8001B610: -/* 01C210 8001B610 0C006CBC */ jal func_8001B2F0 -/* 01C214 8001B614 02002025 */ move $a0, $s0 -/* 01C218 8001B618 14400003 */ bnez $v0, .L8001B628 -/* 01C21C 8001B61C 24090001 */ li $t1, 1 -/* 01C220 8001B620 3C01800E */ lui $at, %hi(D_800DC734) # $at, 0x800e -/* 01C224 8001B624 A029C734 */ sb $t1, %lo(D_800DC734)($at) -.L8001B628: -/* 01C228 8001B628 8FBF001C */ lw $ra, 0x1c($sp) -.L8001B62C: -/* 01C22C 8001B62C 3C02800E */ lui $v0, %hi(D_800DC734) # $v0, 0x800e -/* 01C230 8001B630 9042C734 */ lbu $v0, %lo(D_800DC734)($v0) -/* 01C234 8001B634 8FB00018 */ lw $s0, 0x18($sp) -/* 01C238 8001B638 03E00008 */ jr $ra -/* 01C23C 8001B63C 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_8001B640 -/* 01C240 8001B640 3C02800E */ lui $v0, %hi(D_800DC718) # $v0, 0x800e -/* 01C244 8001B644 8C42C718 */ lw $v0, %lo(D_800DC718)($v0) -/* 01C248 8001B648 03E00008 */ jr $ra -/* 01C24C 8001B64C 00000000 */ nop - -glabel func_8001B650 -/* 01C250 8001B650 3C02800E */ lui $v0, %hi(D_800DC738) # $v0, 0x800e -/* 01C254 8001B654 9042C738 */ lbu $v0, %lo(D_800DC738)($v0) -/* 01C258 8001B658 00000000 */ nop -/* 01C25C 8001B65C 2C4E0001 */ sltiu $t6, $v0, 1 -/* 01C260 8001B660 03E00008 */ jr $ra -/* 01C264 8001B664 01C01025 */ move $v0, $t6 - -glabel func_8001B668 -/* 01C268 8001B668 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 01C26C 8001B66C AFBF001C */ sw $ra, 0x1c($sp) -/* 01C270 8001B670 0C01666A */ jal func_800599A8 -/* 01C274 8001B674 AFA40030 */ sw $a0, 0x30($sp) -/* 01C278 8001B678 0C01AF62 */ jal func_8006BD88 -/* 01C27C 8001B67C AFA20024 */ sw $v0, 0x24($sp) -/* 01C280 8001B680 8FAE0024 */ lw $t6, 0x24($sp) -/* 01C284 8001B684 3C0F8012 */ lui $t7, %hi(D_8011AE82) # $t7, 0x8012 -/* 01C288 8001B688 144E0006 */ bne $v0, $t6, .L8001B6A4 -/* 01C28C 8001B68C 3C18800E */ lui $t8, %hi(D_800DC728) # $t8, 0x800e -/* 01C290 8001B690 85EFAE82 */ lh $t7, %lo(D_8011AE82)($t7) -/* 01C294 8001B694 8718C728 */ lh $t8, %lo(D_800DC728)($t8) -/* 01C298 8001B698 00000000 */ nop -/* 01C29C 8001B69C 11F80019 */ beq $t7, $t8, .L8001B704 -/* 01C2A0 8001B6A0 00000000 */ nop -.L8001B6A4: -/* 01C2A4 8001B6A4 0C01AF62 */ jal func_8006BD88 -/* 01C2A8 8001B6A8 00000000 */ nop -/* 01C2AC 8001B6AC 3C068012 */ lui $a2, %hi(D_8011AE82) # $a2, 0x8012 -/* 01C2B0 8001B6B0 84C6AE82 */ lh $a2, %lo(D_8011AE82)($a2) -/* 01C2B4 8001B6B4 8FA40030 */ lw $a0, 0x30($sp) -/* 01C2B8 8001B6B8 27B9002C */ addiu $t9, $sp, 0x2c -/* 01C2BC 8001B6BC AFB90010 */ sw $t9, 0x10($sp) -/* 01C2C0 8001B6C0 00402825 */ move $a1, $v0 -/* 01C2C4 8001B6C4 0C01666E */ jal func_800599B8 -/* 01C2C8 8001B6C8 27A7002E */ addiu $a3, $sp, 0x2e -/* 01C2CC 8001B6CC 1440000B */ bnez $v0, .L8001B6FC -/* 01C2D0 8001B6D0 00401825 */ move $v1, $v0 -/* 01C2D4 8001B6D4 3C088012 */ lui $t0, %hi(D_8011AE82) # $t0, 0x8012 -/* 01C2D8 8001B6D8 8508AE82 */ lh $t0, %lo(D_8011AE82)($t0) -/* 01C2DC 8001B6DC 3C01800E */ lui $at, %hi(D_800DC728) # $at, 0x800e -/* 01C2E0 8001B6E0 87A9002E */ lh $t1, 0x2e($sp) -/* 01C2E4 8001B6E4 A428C728 */ sh $t0, %lo(D_800DC728)($at) -/* 01C2E8 8001B6E8 3C01800E */ lui $at, %hi(D_800DC72C) # $at, 0x800e -/* 01C2EC 8001B6EC 87AA002C */ lh $t2, 0x2c($sp) -/* 01C2F0 8001B6F0 A429C72C */ sh $t1, %lo(D_800DC72C)($at) -/* 01C2F4 8001B6F4 3C01800E */ lui $at, %hi(D_800DC724) # $at, 0x800e -/* 01C2F8 8001B6F8 A42AC724 */ sh $t2, %lo(D_800DC724)($at) -.L8001B6FC: -/* 01C2FC 8001B6FC 1000000A */ b .L8001B728 -/* 01C300 8001B700 00601025 */ move $v0, $v1 -.L8001B704: -/* 01C304 8001B704 0C01AF62 */ jal func_8006BD88 -/* 01C308 8001B708 00000000 */ nop -/* 01C30C 8001B70C 3C068012 */ lui $a2, %hi(D_8011AE82) # $a2, 0x8012 -/* 01C310 8001B710 84C6AE82 */ lh $a2, %lo(D_8011AE82)($a2) -/* 01C314 8001B714 8FA40030 */ lw $a0, 0x30($sp) -/* 01C318 8001B718 00402825 */ move $a1, $v0 -/* 01C31C 8001B71C 00003825 */ move $a3, $zero -/* 01C320 8001B720 0C01666E */ jal func_800599B8 -/* 01C324 8001B724 AFA00010 */ sw $zero, 0x10($sp) -.L8001B728: -/* 01C328 8001B728 8FBF001C */ lw $ra, 0x1c($sp) -/* 01C32C 8001B72C 27BD0030 */ addiu $sp, $sp, 0x30 -/* 01C330 8001B730 03E00008 */ jr $ra -/* 01C334 8001B734 00000000 */ nop - -glabel func_8001B738 -/* 01C338 8001B738 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 01C33C 8001B73C AFBF001C */ sw $ra, 0x1c($sp) -/* 01C340 8001B740 0C01666A */ jal func_800599A8 -/* 01C344 8001B744 AFA40020 */ sw $a0, 0x20($sp) -/* 01C348 8001B748 3C0E800E */ lui $t6, %hi(D_800DC724) # $t6, 0x800e -/* 01C34C 8001B74C 85CEC724 */ lh $t6, %lo(D_800DC724)($t6) -/* 01C350 8001B750 3C06800E */ lui $a2, %hi(D_800DC728) # $a2, 0x800e -/* 01C354 8001B754 3C07800E */ lui $a3, %hi(D_800DC72C) # $a3, 0x800e -/* 01C358 8001B758 84E7C72C */ lh $a3, %lo(D_800DC72C)($a3) -/* 01C35C 8001B75C 84C6C728 */ lh $a2, %lo(D_800DC728)($a2) -/* 01C360 8001B760 8FA40020 */ lw $a0, 0x20($sp) -/* 01C364 8001B764 00402825 */ move $a1, $v0 -/* 01C368 8001B768 0C0166DF */ jal func_80059B7C -/* 01C36C 8001B76C AFAE0010 */ sw $t6, 0x10($sp) -/* 01C370 8001B770 8FBF001C */ lw $ra, 0x1c($sp) -/* 01C374 8001B774 27BD0020 */ addiu $sp, $sp, 0x20 -/* 01C378 8001B778 03E00008 */ jr $ra -/* 01C37C 8001B77C 00000000 */ nop - -glabel func_8001B780 -/* 01C380 8001B780 3C02800E */ lui $v0, %hi(D_800DC730) # $v0, 0x800e -/* 01C384 8001B784 9042C730 */ lbu $v0, %lo(D_800DC730)($v0) -/* 01C388 8001B788 03E00008 */ jr $ra -/* 01C38C 8001B78C 00000000 */ nop - -glabel func_8001B790 -/* 01C390 8001B790 240EFFFF */ li $t6, -1 -/* 01C394 8001B794 3C018012 */ lui $at, %hi(D_8011D5AC) # $at, 0x8012 -/* 01C398 8001B798 A42ED5AC */ sh $t6, %lo(D_8011D5AC)($at) -/* 01C39C 8001B79C 3C01800E */ lui $at, 0x800e -/* 01C3A0 8001B7A0 03E00008 */ jr $ra -/* 01C3A4 8001B7A4 A020C730 */ sb $zero, -0x38d0($at) - -glabel func_8001B7A8 -/* 01C3A8 8001B7A8 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 01C3AC 8001B7AC AFBF0014 */ sw $ra, 0x14($sp) -/* 01C3B0 8001B7B0 AFA60028 */ sw $a2, 0x28($sp) -/* 01C3B4 8001B7B4 848E01AA */ lh $t6, 0x1aa($a0) -/* 01C3B8 8001B7B8 3C0F8012 */ lui $t7, %hi(D_8011AEF0) # $t7, 0x8012 -/* 01C3BC 8001B7BC 01C52823 */ subu $a1, $t6, $a1 -/* 01C3C0 8001B7C0 24A5FFFF */ addiu $a1, $a1, -1 -/* 01C3C4 8001B7C4 04A00006 */ bltz $a1, .L8001B7E0 -/* 01C3C8 8001B7C8 00000000 */ nop -/* 01C3CC 8001B7CC 8DEFAEF0 */ lw $t7, %lo(D_8011AEF0)($t7) -/* 01C3D0 8001B7D0 3C188012 */ lui $t8, %hi(D_8011AEE8) # $t8, 0x8012 -/* 01C3D4 8001B7D4 00AF082A */ slt $at, $a1, $t7 -/* 01C3D8 8001B7D8 14200003 */ bnez $at, .L8001B7E8 -/* 01C3DC 8001B7DC 00000000 */ nop -.L8001B7E0: -/* 01C3E0 8001B7E0 10000010 */ b .L8001B824 -/* 01C3E4 8001B7E4 00001025 */ move $v0, $zero -.L8001B7E8: -/* 01C3E8 8001B7E8 8F18AEE8 */ lw $t8, %lo(D_8011AEE8)($t8) -/* 01C3EC 8001B7EC 0005C880 */ sll $t9, $a1, 2 -/* 01C3F0 8001B7F0 03194021 */ addu $t0, $t8, $t9 -/* 01C3F4 8001B7F4 8D030000 */ lw $v1, ($t0) -/* 01C3F8 8001B7F8 00000000 */ nop -/* 01C3FC 8001B7FC 14600003 */ bnez $v1, .L8001B80C -/* 01C400 8001B800 00000000 */ nop -/* 01C404 8001B804 10000007 */ b .L8001B824 -/* 01C408 8001B808 00001025 */ move $v0, $zero -.L8001B80C: -/* 01C40C 8001B80C 8C650064 */ lw $a1, 0x64($v1) -/* 01C410 8001B810 0C006E0D */ jal func_8001B834 -/* 01C414 8001B814 AFA30018 */ sw $v1, 0x18($sp) -/* 01C418 8001B818 8FA90028 */ lw $t1, 0x28($sp) -/* 01C41C 8001B81C 8FA20018 */ lw $v0, 0x18($sp) -/* 01C420 8001B820 E5200000 */ swc1 $f0, ($t1) -.L8001B824: -/* 01C424 8001B824 8FBF0014 */ lw $ra, 0x14($sp) -/* 01C428 8001B828 27BD0020 */ addiu $sp, $sp, 0x20 -/* 01C42C 8001B82C 03E00008 */ jr $ra -/* 01C430 8001B830 00000000 */ nop - -glabel func_8001B834 -/* 01C434 8001B834 3C028012 */ lui $v0, %hi(D_8011AED0) # $v0, 0x8012 -/* 01C438 8001B838 8C42AED0 */ lw $v0, %lo(D_8011AED0)($v0) -/* 01C43C 8001B83C 00803025 */ move $a2, $a0 -/* 01C440 8001B840 1C400004 */ bgtz $v0, .L8001B854 -/* 01C444 8001B844 00000000 */ nop -/* 01C448 8001B848 44800000 */ mtc1 $zero, $f0 -/* 01C44C 8001B84C 03E00008 */ jr $ra -/* 01C450 8001B850 00000000 */ nop - -.L8001B854: -/* 01C454 8001B854 84A40190 */ lh $a0, 0x190($a1) -/* 01C458 8001B858 84C70190 */ lh $a3, 0x190($a2) -/* 01C45C 8001B85C 44801000 */ mtc1 $zero, $f2 -/* 01C460 8001B860 0087082A */ slt $at, $a0, $a3 -/* 01C464 8001B864 10200007 */ beqz $at, .L8001B884 -/* 01C468 8001B868 00001825 */ move $v1, $zero -/* 01C46C 8001B86C 00C04025 */ move $t0, $a2 -/* 01C470 8001B870 00A03025 */ move $a2, $a1 -/* 01C474 8001B874 84C70190 */ lh $a3, 0x190($a2) -/* 01C478 8001B878 85040190 */ lh $a0, 0x190($t0) -/* 01C47C 8001B87C 01002825 */ move $a1, $t0 -/* 01C480 8001B880 24030001 */ li $v1, 1 -.L8001B884: -/* 01C484 8001B884 80C90192 */ lb $t1, 0x192($a2) -/* 01C488 8001B888 00E4082A */ slt $at, $a3, $a0 -/* 01C48C 8001B88C 00E05025 */ move $t2, $a3 -/* 01C490 8001B890 10200010 */ beqz $at, .L8001B8D4 -/* 01C494 8001B894 01204025 */ move $t0, $t1 -/* 01C498 8001B898 3C078012 */ lui $a3, %hi(D_8011AECC) # $a3, 0x8012 -/* 01C49C 8001B89C 8CE7AECC */ lw $a3, %lo(D_8011AECC)($a3) -/* 01C4A0 8001B8A0 240B003C */ li $t3, 60 -.L8001B8A4: -/* 01C4A4 8001B8A4 010B0019 */ multu $t0, $t3 -/* 01C4A8 8001B8A8 254A0001 */ addiu $t2, $t2, 1 -/* 01C4AC 8001B8AC 25080001 */ addiu $t0, $t0, 1 -/* 01C4B0 8001B8B0 0144082A */ slt $at, $t2, $a0 -/* 01C4B4 8001B8B4 00007012 */ mflo $t6 -/* 01C4B8 8001B8B8 00EE7821 */ addu $t7, $a3, $t6 -/* 01C4BC 8001B8BC C5E40020 */ lwc1 $f4, 0x20($t7) -/* 01C4C0 8001B8C0 15020002 */ bne $t0, $v0, .L8001B8CC -/* 01C4C4 8001B8C4 46041080 */ add.s $f2, $f2, $f4 -/* 01C4C8 8001B8C8 00004025 */ move $t0, $zero -.L8001B8CC: -/* 01C4CC 8001B8CC 1420FFF5 */ bnez $at, .L8001B8A4 -/* 01C4D0 8001B8D0 00000000 */ nop -.L8001B8D4: -/* 01C4D4 8001B8D4 3C078012 */ lui $a3, %hi(D_8011AECC) # $a3, 0x8012 -/* 01C4D8 8001B8D8 2528FFFF */ addiu $t0, $t1, -1 -/* 01C4DC 8001B8DC 8CE7AECC */ lw $a3, %lo(D_8011AECC)($a3) -/* 01C4E0 8001B8E0 05010002 */ bgez $t0, .L8001B8EC -/* 01C4E4 8001B8E4 240B003C */ li $t3, 60 -/* 01C4E8 8001B8E8 2448FFFF */ addiu $t0, $v0, -1 -.L8001B8EC: -/* 01C4EC 8001B8EC 010B0019 */ multu $t0, $t3 -/* 01C4F0 8001B8F0 C4C800A8 */ lwc1 $f8, 0xa8($a2) -/* 01C4F4 8001B8F4 80A80192 */ lb $t0, 0x192($a1) -/* 01C4F8 8001B8F8 00000000 */ nop -/* 01C4FC 8001B8FC 2508FFFF */ addiu $t0, $t0, -1 -/* 01C500 8001B900 0000C012 */ mflo $t8 -/* 01C504 8001B904 00F8C821 */ addu $t9, $a3, $t8 -/* 01C508 8001B908 C7260020 */ lwc1 $f6, 0x20($t9) -/* 01C50C 8001B90C 00000000 */ nop -/* 01C510 8001B910 46083282 */ mul.s $f10, $f6, $f8 -/* 01C514 8001B914 05010002 */ bgez $t0, .L8001B920 -/* 01C518 8001B918 460A1080 */ add.s $f2, $f2, $f10 -/* 01C51C 8001B91C 2448FFFF */ addiu $t0, $v0, -1 -.L8001B920: -/* 01C520 8001B920 010B0019 */ multu $t0, $t3 -/* 01C524 8001B924 C4B200A8 */ lwc1 $f18, 0xa8($a1) -/* 01C528 8001B928 00006012 */ mflo $t4 -/* 01C52C 8001B92C 00EC6821 */ addu $t5, $a3, $t4 -/* 01C530 8001B930 C5B00020 */ lwc1 $f16, 0x20($t5) -/* 01C534 8001B934 00000000 */ nop -/* 01C538 8001B938 46128102 */ mul.s $f4, $f16, $f18 -/* 01C53C 8001B93C 10600002 */ beqz $v1, .L8001B948 -/* 01C540 8001B940 46041081 */ sub.s $f2, $f2, $f4 -/* 01C544 8001B944 46001087 */ neg.s $f2, $f2 -.L8001B948: -/* 01C548 8001B948 46001006 */ mov.s $f0, $f2 -/* 01C54C 8001B94C 03E00008 */ jr $ra -/* 01C550 8001B950 00000000 */ nop - -/* 01C554 8001B954 3C028012 */ lui $v0, %hi(D_8011AED0) # $v0, 0x8012 -/* 01C558 8001B958 8C42AED0 */ lw $v0, %lo(D_8011AED0)($v0) -/* 01C55C 8001B95C 00000000 */ nop -/* 01C560 8001B960 1C400004 */ bgtz $v0, .L8001B974 -/* 01C564 8001B964 00000000 */ nop -/* 01C568 8001B968 44800000 */ mtc1 $zero, $f0 -/* 01C56C 8001B96C 03E00008 */ jr $ra -/* 01C570 8001B970 00000000 */ nop - -.L8001B974: -/* 01C574 8001B974 80850192 */ lb $a1, 0x192($a0) -/* 01C578 8001B978 44801000 */ mtc1 $zero, $f2 -/* 01C57C 8001B97C 00A2082A */ slt $at, $a1, $v0 -/* 01C580 8001B980 1020000D */ beqz $at, .L8001B9B8 -/* 01C584 8001B984 00A01825 */ move $v1, $a1 -/* 01C588 8001B988 3C0E8012 */ lui $t6, %hi(D_8011AECC) # $t6, 0x8012 -/* 01C58C 8001B98C 00037900 */ sll $t7, $v1, 4 -/* 01C590 8001B990 8DCEAECC */ lw $t6, %lo(D_8011AECC)($t6) -/* 01C594 8001B994 01E37823 */ subu $t7, $t7, $v1 -/* 01C598 8001B998 000F7880 */ sll $t7, $t7, 2 -/* 01C59C 8001B99C 01CF3021 */ addu $a2, $t6, $t7 -.L8001B9A0: -/* 01C5A0 8001B9A0 C4C40020 */ lwc1 $f4, 0x20($a2) -/* 01C5A4 8001B9A4 24630001 */ addiu $v1, $v1, 1 -/* 01C5A8 8001B9A8 0062082A */ slt $at, $v1, $v0 -/* 01C5AC 8001B9AC 24C6003C */ addiu $a2, $a2, 0x3c -/* 01C5B0 8001B9B0 1420FFFB */ bnez $at, .L8001B9A0 -/* 01C5B4 8001B9B4 46041080 */ add.s $f2, $f2, $f4 -.L8001B9B8: -/* 01C5B8 8001B9B8 3C068012 */ lui $a2, %hi(D_8011AECC) # $a2, 0x8012 -/* 01C5BC 8001B9BC 24A3FFFF */ addiu $v1, $a1, -1 -/* 01C5C0 8001B9C0 8CC6AECC */ lw $a2, %lo(D_8011AECC)($a2) -/* 01C5C4 8001B9C4 04610003 */ bgez $v1, .L8001B9D4 -/* 01C5C8 8001B9C8 0003C100 */ sll $t8, $v1, 4 -/* 01C5CC 8001B9CC 2443FFFF */ addiu $v1, $v0, -1 -/* 01C5D0 8001B9D0 0003C100 */ sll $t8, $v1, 4 -.L8001B9D4: -/* 01C5D4 8001B9D4 0303C023 */ subu $t8, $t8, $v1 -/* 01C5D8 8001B9D8 0018C080 */ sll $t8, $t8, 2 -/* 01C5DC 8001B9DC 00D8C821 */ addu $t9, $a2, $t8 -/* 01C5E0 8001B9E0 C7260020 */ lwc1 $f6, 0x20($t9) -/* 01C5E4 8001B9E4 C48800A8 */ lwc1 $f8, 0xa8($a0) -/* 01C5E8 8001B9E8 00000000 */ nop -/* 01C5EC 8001B9EC 46083282 */ mul.s $f10, $f6, $f8 -/* 01C5F0 8001B9F0 460A1080 */ add.s $f2, $f2, $f10 -/* 01C5F4 8001B9F4 46001006 */ mov.s $f0, $f2 -/* 01C5F8 8001B9F8 03E00008 */ jr $ra -/* 01C5FC 8001B9FC 00000000 */ nop - -glabel func_8001BA00 -/* 01C600 8001BA00 00047100 */ sll $t6, $a0, 4 -/* 01C604 8001BA04 3C0F8012 */ lui $t7, %hi(D_8011AECC) # $t7, 0x8012 -/* 01C608 8001BA08 8DEFAECC */ lw $t7, %lo(D_8011AECC)($t7) -/* 01C60C 8001BA0C 01C47023 */ subu $t6, $t6, $a0 -/* 01C610 8001BA10 000E7080 */ sll $t6, $t6, 2 -/* 01C614 8001BA14 03E00008 */ jr $ra -/* 01C618 8001BA18 01CF1021 */ addu $v0, $t6, $t7 - -glabel func_8001BA1C -/* 01C61C 8001BA1C 2406003C */ li $a2, 60 -/* 01C620 8001BA20 00860019 */ multu $a0, $a2 -/* 01C624 8001BA24 3C028012 */ lui $v0, %hi(D_8011AECC) # $v0, 0x8012 -/* 01C628 8001BA28 8C42AECC */ lw $v0, %lo(D_8011AECC)($v0) -/* 01C62C 8001BA2C 00007012 */ mflo $t6 -/* 01C630 8001BA30 01C21821 */ addu $v1, $t6, $v0 -/* 01C634 8001BA34 10A00009 */ beqz $a1, .L8001BA5C -/* 01C638 8001BA38 00000000 */ nop -/* 01C63C 8001BA3C 8064003A */ lb $a0, 0x3a($v1) -/* 01C640 8001BA40 2401FFFF */ li $at, -1 -/* 01C644 8001BA44 10810005 */ beq $a0, $at, .L8001BA5C -/* 01C648 8001BA48 00000000 */ nop -/* 01C64C 8001BA4C 00860019 */ multu $a0, $a2 -/* 01C650 8001BA50 00007812 */ mflo $t7 -/* 01C654 8001BA54 01E21821 */ addu $v1, $t7, $v0 -/* 01C658 8001BA58 00000000 */ nop -.L8001BA5C: -/* 01C65C 8001BA5C 03E00008 */ jr $ra -/* 01C660 8001BA60 00601025 */ move $v0, $v1 - -glabel func_8001BA64 -/* 01C664 8001BA64 3C028012 */ lui $v0, %hi(D_8011AED0) # $v0, 0x8012 -/* 01C668 8001BA68 8C42AED0 */ lw $v0, %lo(D_8011AED0)($v0) -/* 01C66C 8001BA6C 03E00008 */ jr $ra -/* 01C670 8001BA70 00000000 */ nop - -glabel func_8001BA74 -/* 01C674 8001BA74 3C0E8012 */ lui $t6, %hi(D_8011AEF0) # $t6, 0x8012 -/* 01C678 8001BA78 8DCEAEF0 */ lw $t6, %lo(D_8011AEF0)($t6) -/* 01C67C 8001BA7C 3C028012 */ lui $v0, %hi(D_8011AEE4) # $v0, 0x8012 -/* 01C680 8001BA80 AC8E0000 */ sw $t6, ($a0) -/* 01C684 8001BA84 8C42AEE4 */ lw $v0, %lo(D_8011AEE4)($v0) -/* 01C688 8001BA88 03E00008 */ jr $ra -/* 01C68C 8001BA8C 00000000 */ nop - -glabel func_8001BA90 -/* 01C690 8001BA90 3C0E8012 */ lui $t6, %hi(D_8011AEF0) # $t6, 0x8012 -/* 01C694 8001BA94 8DCEAEF0 */ lw $t6, %lo(D_8011AEF0)($t6) -/* 01C698 8001BA98 3C028012 */ lui $v0, %hi(D_8011AEEC) # $v0, 0x8012 -/* 01C69C 8001BA9C AC8E0000 */ sw $t6, ($a0) -/* 01C6A0 8001BAA0 8C42AEEC */ lw $v0, %lo(D_8011AEEC)($v0) -/* 01C6A4 8001BAA4 03E00008 */ jr $ra -/* 01C6A8 8001BAA8 00000000 */ nop - -glabel func_8001BAAC -/* 01C6AC 8001BAAC 3C0E8012 */ lui $t6, %hi(D_8011AEF0) # $t6, 0x8012 -/* 01C6B0 8001BAB0 8DCEAEF0 */ lw $t6, %lo(D_8011AEF0)($t6) -/* 01C6B4 8001BAB4 3C028012 */ lui $v0, %hi(D_8011AEE8) # $v0, 0x8012 -/* 01C6B8 8001BAB8 AC8E0000 */ sw $t6, ($a0) -/* 01C6BC 8001BABC 8C42AEE8 */ lw $v0, %lo(D_8011AEE8)($v0) -/* 01C6C0 8001BAC0 03E00008 */ jr $ra -/* 01C6C4 8001BAC4 00000000 */ nop - -glabel func_8001BAC8 -/* 01C6C8 8001BAC8 3C028012 */ lui $v0, %hi(D_8011AEF0) # $v0, 0x8012 -/* 01C6CC 8001BACC 8C42AEF0 */ lw $v0, %lo(D_8011AEF0)($v0) -/* 01C6D0 8001BAD0 00000000 */ nop -/* 01C6D4 8001BAD4 14400003 */ bnez $v0, .L8001BAE4 -/* 01C6D8 8001BAD8 00000000 */ nop -/* 01C6DC 8001BADC 03E00008 */ jr $ra -/* 01C6E0 8001BAE0 00001025 */ move $v0, $zero - -.L8001BAE4: -/* 01C6E4 8001BAE4 04800003 */ bltz $a0, .L8001BAF4 -/* 01C6E8 8001BAE8 0082082A */ slt $at, $a0, $v0 -/* 01C6EC 8001BAEC 14200003 */ bnez $at, .L8001BAFC -/* 01C6F0 8001BAF0 3C0E8012 */ lui $t6, 0x8012 -.L8001BAF4: -/* 01C6F4 8001BAF4 03E00008 */ jr $ra -/* 01C6F8 8001BAF8 00001025 */ move $v0, $zero - -.L8001BAFC: -/* 01C6FC 8001BAFC 8DCEAEE4 */ lw $t6, -0x511c($t6) -/* 01C700 8001BB00 00047880 */ sll $t7, $a0, 2 -/* 01C704 8001BB04 01CFC021 */ addu $t8, $t6, $t7 -/* 01C708 8001BB08 8F020000 */ lw $v0, ($t8) -/* 01C70C 8001BB0C 00000000 */ nop -/* 01C710 8001BB10 03E00008 */ jr $ra -/* 01C714 8001BB14 00000000 */ nop - -glabel func_8001BB18 -/* 01C718 8001BB18 3C028012 */ lui $v0, %hi(D_8011AEF0) # $v0, 0x8012 -/* 01C71C 8001BB1C 8C42AEF0 */ lw $v0, %lo(D_8011AEF0)($v0) -/* 01C720 8001BB20 00000000 */ nop -/* 01C724 8001BB24 14400003 */ bnez $v0, .L8001BB34 -/* 01C728 8001BB28 00000000 */ nop -/* 01C72C 8001BB2C 03E00008 */ jr $ra -/* 01C730 8001BB30 00001025 */ move $v0, $zero - -.L8001BB34: -/* 01C734 8001BB34 04800003 */ bltz $a0, .L8001BB44 -/* 01C738 8001BB38 0082082A */ slt $at, $a0, $v0 -/* 01C73C 8001BB3C 14200003 */ bnez $at, .L8001BB4C -/* 01C740 8001BB40 3C0E8012 */ lui $t6, 0x8012 -.L8001BB44: -/* 01C744 8001BB44 03E00008 */ jr $ra -/* 01C748 8001BB48 00001025 */ move $v0, $zero - -.L8001BB4C: -/* 01C74C 8001BB4C 8DCEAEEC */ lw $t6, -0x5114($t6) -/* 01C750 8001BB50 00047880 */ sll $t7, $a0, 2 -/* 01C754 8001BB54 01CFC021 */ addu $t8, $t6, $t7 -/* 01C758 8001BB58 8F020000 */ lw $v0, ($t8) -/* 01C75C 8001BB5C 00000000 */ nop -/* 01C760 8001BB60 03E00008 */ jr $ra -/* 01C764 8001BB64 00000000 */ nop - -/* 01C768 8001BB68 27BDFFC8 */ addiu $sp, $sp, -0x38 -/* 01C76C 8001BB6C AFB3002C */ sw $s3, 0x2c($sp) -/* 01C770 8001BB70 AFB20028 */ sw $s2, 0x28($sp) -/* 01C774 8001BB74 00A09025 */ move $s2, $a1 -/* 01C778 8001BB78 00C09825 */ move $s3, $a2 -/* 01C77C 8001BB7C AFBF0034 */ sw $ra, 0x34($sp) -/* 01C780 8001BB80 AFB10024 */ sw $s1, 0x24($sp) -/* 01C784 8001BB84 00808825 */ move $s1, $a0 -/* 01C788 8001BB88 AFB40030 */ sw $s4, 0x30($sp) -/* 01C78C 8001BB8C AFB00020 */ sw $s0, 0x20($sp) -/* 01C790 8001BB90 24060002 */ li $a2, 2 -/* 01C794 8001BB94 0C01ED32 */ jal func_8007B4C8 -/* 01C798 8001BB98 00002825 */ move $a1, $zero -/* 01C79C 8001BB9C 3C148012 */ lui $s4, %hi(D_8011AED0) # $s4, 0x8012 -/* 01C7A0 8001BBA0 2694AED0 */ addiu $s4, %lo(D_8011AED0) # addiu $s4, $s4, -0x5130 -/* 01C7A4 8001BBA4 8E820000 */ lw $v0, ($s4) -/* 01C7A8 8001BBA8 00000000 */ nop -/* 01C7AC 8001BBAC 28410004 */ slti $at, $v0, 4 -/* 01C7B0 8001BBB0 1420001C */ bnez $at, .L8001BC24 -/* 01C7B4 8001BBB4 8FBF0034 */ lw $ra, 0x34($sp) -/* 01C7B8 8001BBB8 1840000D */ blez $v0, .L8001BBF0 -/* 01C7BC 8001BBBC 00008025 */ move $s0, $zero -/* 01C7C0 8001BBC0 02002025 */ move $a0, $s0 -.L8001BBC4: -/* 01C7C4 8001BBC4 00002825 */ move $a1, $zero -/* 01C7C8 8001BBC8 02203025 */ move $a2, $s1 -/* 01C7CC 8001BBCC 02403825 */ move $a3, $s2 -/* 01C7D0 8001BBD0 0C006F10 */ jal func_8001BC40 -/* 01C7D4 8001BBD4 AFB30010 */ sw $s3, 0x10($sp) -/* 01C7D8 8001BBD8 8E820000 */ lw $v0, ($s4) -/* 01C7DC 8001BBDC 26100001 */ addiu $s0, $s0, 1 -/* 01C7E0 8001BBE0 0202082A */ slt $at, $s0, $v0 -/* 01C7E4 8001BBE4 1420FFF7 */ bnez $at, .L8001BBC4 -/* 01C7E8 8001BBE8 02002025 */ move $a0, $s0 -/* 01C7EC 8001BBEC 00008025 */ move $s0, $zero -.L8001BBF0: -/* 01C7F0 8001BBF0 1840000B */ blez $v0, .L8001BC20 -/* 01C7F4 8001BBF4 02002025 */ move $a0, $s0 -.L8001BBF8: -/* 01C7F8 8001BBF8 24050001 */ li $a1, 1 -/* 01C7FC 8001BBFC 02203025 */ move $a2, $s1 -/* 01C800 8001BC00 02403825 */ move $a3, $s2 -/* 01C804 8001BC04 0C006F10 */ jal func_8001BC40 -/* 01C808 8001BC08 AFB30010 */ sw $s3, 0x10($sp) -/* 01C80C 8001BC0C 8E8E0000 */ lw $t6, ($s4) -/* 01C810 8001BC10 26100001 */ addiu $s0, $s0, 1 -/* 01C814 8001BC14 020E082A */ slt $at, $s0, $t6 -/* 01C818 8001BC18 1420FFF7 */ bnez $at, .L8001BBF8 -/* 01C81C 8001BC1C 02002025 */ move $a0, $s0 -.L8001BC20: -/* 01C820 8001BC20 8FBF0034 */ lw $ra, 0x34($sp) -.L8001BC24: -/* 01C824 8001BC24 8FB00020 */ lw $s0, 0x20($sp) -/* 01C828 8001BC28 8FB10024 */ lw $s1, 0x24($sp) -/* 01C82C 8001BC2C 8FB20028 */ lw $s2, 0x28($sp) -/* 01C830 8001BC30 8FB3002C */ lw $s3, 0x2c($sp) -/* 01C834 8001BC34 8FB40030 */ lw $s4, 0x30($sp) -/* 01C838 8001BC38 03E00008 */ jr $ra -/* 01C83C 8001BC3C 27BD0038 */ addiu $sp, $sp, 0x38 - -glabel func_8001BC40 -/* 01C840 8001BC40 AFA40000 */ sw $a0, ($sp) -/* 01C844 8001BC44 AFA50004 */ sw $a1, 4($sp) -/* 01C848 8001BC48 AFA60008 */ sw $a2, 8($sp) -/* 01C84C 8001BC4C 03E00008 */ jr $ra -/* 01C850 8001BC50 AFA7000C */ sw $a3, 0xc($sp) - -glabel func_8001BC54 -/* 01C854 8001BC54 3C078012 */ lui $a3, %hi(D_8011AEE0) # $a3, 0x8012 -/* 01C858 8001BC58 24E7AEE0 */ addiu $a3, %lo(D_8011AEE0) # addiu $a3, $a3, -0x5120 -/* 01C85C 8001BC5C ACE00000 */ sw $zero, ($a3) -/* 01C860 8001BC60 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 -/* 01C864 8001BC64 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) -/* 01C868 8001BC68 00001025 */ move $v0, $zero -/* 01C86C 8001BC6C 18600026 */ blez $v1, .L8001BD08 -/* 01C870 8001BC70 00002825 */ move $a1, $zero -/* 01C874 8001BC74 3C0A8012 */ lui $t2, %hi(D_8011AEDC) # $t2, 0x8012 -/* 01C878 8001BC78 3C088012 */ lui $t0, %hi(D_8011AE58) # $t0, 0x8012 -/* 01C87C 8001BC7C 2508AE58 */ addiu $t0, %lo(D_8011AE58) # addiu $t0, $t0, -0x51a8 -/* 01C880 8001BC80 254AAEDC */ addiu $t2, %lo(D_8011AEDC) # addiu $t2, $t2, -0x5124 -/* 01C884 8001BC84 2409000A */ li $t1, 10 -.L8001BC88: -/* 01C888 8001BC88 8D0E0000 */ lw $t6, ($t0) -/* 01C88C 8001BC8C 24420001 */ addiu $v0, $v0, 1 -/* 01C890 8001BC90 01C57821 */ addu $t7, $t6, $a1 -/* 01C894 8001BC94 8DE40000 */ lw $a0, ($t7) -/* 01C898 8001BC98 00000000 */ nop -/* 01C89C 8001BC9C 84980006 */ lh $t8, 6($a0) -/* 01C8A0 8001BCA0 00000000 */ nop -/* 01C8A4 8001BCA4 33198000 */ andi $t9, $t8, 0x8000 -/* 01C8A8 8001BCA8 17200015 */ bnez $t9, .L8001BD00 -/* 01C8AC 8001BCAC 0043082A */ slt $at, $v0, $v1 -/* 01C8B0 8001BCB0 848B0048 */ lh $t3, 0x48($a0) -/* 01C8B4 8001BCB4 00000000 */ nop -/* 01C8B8 8001BCB8 152B0011 */ bne $t1, $t3, .L8001BD00 -/* 01C8BC 8001BCBC 0043082A */ slt $at, $v0, $v1 -/* 01C8C0 8001BCC0 8CE60000 */ lw $a2, ($a3) -/* 01C8C4 8001BCC4 00000000 */ nop -/* 01C8C8 8001BCC8 28C10014 */ slti $at, $a2, 0x14 -/* 01C8CC 8001BCCC 1020000C */ beqz $at, .L8001BD00 -/* 01C8D0 8001BCD0 0043082A */ slt $at, $v0, $v1 -/* 01C8D4 8001BCD4 8D4C0000 */ lw $t4, ($t2) -/* 01C8D8 8001BCD8 00066880 */ sll $t5, $a2, 2 -/* 01C8DC 8001BCDC 018D7021 */ addu $t6, $t4, $t5 -/* 01C8E0 8001BCE0 ADC40000 */ sw $a0, ($t6) -/* 01C8E4 8001BCE4 8CEF0000 */ lw $t7, ($a3) -/* 01C8E8 8001BCE8 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 -/* 01C8EC 8001BCEC 25F80001 */ addiu $t8, $t7, 1 -/* 01C8F0 8001BCF0 ACF80000 */ sw $t8, ($a3) -/* 01C8F4 8001BCF4 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) -/* 01C8F8 8001BCF8 00000000 */ nop -/* 01C8FC 8001BCFC 0043082A */ slt $at, $v0, $v1 -.L8001BD00: -/* 01C900 8001BD00 1420FFE1 */ bnez $at, .L8001BC88 -/* 01C904 8001BD04 24A50004 */ addiu $a1, $a1, 4 -.L8001BD08: -/* 01C908 8001BD08 3C068012 */ lui $a2, %hi(D_8011AEE0) # $a2, 0x8012 -/* 01C90C 8001BD0C 8CC6AEE0 */ lw $a2, %lo(D_8011AEE0)($a2) -/* 01C910 8001BD10 3C0A8012 */ lui $t2, %hi(D_8011AEDC) # $t2, 0x8012 -/* 01C914 8001BD14 254AAEDC */ addiu $t2, %lo(D_8011AEDC) # addiu $t2, $t2, -0x5124 -/* 01C918 8001BD18 24C6FFFF */ addiu $a2, $a2, -1 -/* 01C91C 8001BD1C 24030001 */ li $v1, 1 -.L8001BD20: -/* 01C920 8001BD20 18C00018 */ blez $a2, .L8001BD84 -/* 01C924 8001BD24 00001025 */ move $v0, $zero -/* 01C928 8001BD28 00002825 */ move $a1, $zero -.L8001BD2C: -/* 01C92C 8001BD2C 8D590000 */ lw $t9, ($t2) -/* 01C930 8001BD30 24420001 */ addiu $v0, $v0, 1 -/* 01C934 8001BD34 03253821 */ addu $a3, $t9, $a1 -/* 01C938 8001BD38 8CE80004 */ lw $t0, 4($a3) -/* 01C93C 8001BD3C 8CE90000 */ lw $t1, ($a3) -/* 01C940 8001BD40 8D0B0078 */ lw $t3, 0x78($t0) -/* 01C944 8001BD44 8D2C0078 */ lw $t4, 0x78($t1) -/* 01C948 8001BD48 00000000 */ nop -/* 01C94C 8001BD4C 016C082A */ slt $at, $t3, $t4 -/* 01C950 8001BD50 1020000A */ beqz $at, .L8001BD7C -/* 01C954 8001BD54 0046082A */ slt $at, $v0, $a2 -/* 01C958 8001BD58 ACE80000 */ sw $t0, ($a3) -/* 01C95C 8001BD5C 8D4D0000 */ lw $t5, ($t2) -/* 01C960 8001BD60 3C068012 */ lui $a2, %hi(D_8011AEE0) # $a2, 0x8012 -/* 01C964 8001BD64 01A57021 */ addu $t6, $t5, $a1 -/* 01C968 8001BD68 ADC90004 */ sw $t1, 4($t6) -/* 01C96C 8001BD6C 8CC6AEE0 */ lw $a2, %lo(D_8011AEE0)($a2) -/* 01C970 8001BD70 00001825 */ move $v1, $zero -/* 01C974 8001BD74 24C6FFFF */ addiu $a2, $a2, -1 -/* 01C978 8001BD78 0046082A */ slt $at, $v0, $a2 -.L8001BD7C: -/* 01C97C 8001BD7C 1420FFEB */ bnez $at, .L8001BD2C -/* 01C980 8001BD80 24A50004 */ addiu $a1, $a1, 4 -.L8001BD84: -/* 01C984 8001BD84 1060FFE6 */ beqz $v1, .L8001BD20 -/* 01C988 8001BD88 24030001 */ li $v1, 1 -/* 01C98C 8001BD8C 03E00008 */ jr $ra -/* 01C990 8001BD90 00000000 */ nop - -glabel func_8001BD94 -/* 01C994 8001BD94 04800006 */ bltz $a0, .L8001BDB0 -/* 01C998 8001BD98 3C0E8012 */ lui $t6, %hi(D_8011AEE0) # $t6, 0x8012 -/* 01C99C 8001BD9C 8DCEAEE0 */ lw $t6, %lo(D_8011AEE0)($t6) -/* 01C9A0 8001BDA0 3C0F8012 */ lui $t7, 0x8012 -/* 01C9A4 8001BDA4 008E082A */ slt $at, $a0, $t6 -/* 01C9A8 8001BDA8 14200003 */ bnez $at, .L8001BDB8 -/* 01C9AC 8001BDAC 00000000 */ nop -.L8001BDB0: -/* 01C9B0 8001BDB0 03E00008 */ jr $ra -/* 01C9B4 8001BDB4 00001025 */ move $v0, $zero - -.L8001BDB8: -/* 01C9B8 8001BDB8 8DEFAEDC */ lw $t7, -0x5124($t7) -/* 01C9BC 8001BDBC 0004C080 */ sll $t8, $a0, 2 -/* 01C9C0 8001BDC0 01F8C821 */ addu $t9, $t7, $t8 -/* 01C9C4 8001BDC4 8F220000 */ lw $v0, ($t9) -/* 01C9C8 8001BDC8 00000000 */ nop -/* 01C9CC 8001BDCC 03E00008 */ jr $ra -/* 01C9D0 8001BDD0 00000000 */ nop - -glabel func_8001BDD4 -/* 01C9D4 8001BDD4 3C028012 */ lui $v0, %hi(D_8011AEE0) # $v0, 0x8012 -/* 01C9D8 8001BDD8 8C42AEE0 */ lw $v0, %lo(D_8011AEE0)($v0) -/* 01C9DC 8001BDDC 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 01C9E0 8001BDE0 14400003 */ bnez $v0, .L8001BDF0 -/* 01C9E4 8001BDE4 AFA40028 */ sw $a0, 0x28($sp) -/* 01C9E8 8001BDE8 1000004B */ b .L8001BF18 -/* 01C9EC 8001BDEC 00001025 */ move $v0, $zero -.L8001BDF0: -/* 01C9F0 8001BDF0 8CA40000 */ lw $a0, ($a1) -/* 01C9F4 8001BDF4 8FAC0028 */ lw $t4, 0x28($sp) -/* 01C9F8 8001BDF8 24830001 */ addiu $v1, $a0, 1 -/* 01C9FC 8001BDFC 0062082A */ slt $at, $v1, $v0 -/* 01CA00 8001BE00 14200002 */ bnez $at, .L8001BE0C -/* 01CA04 8001BE04 2486FFFF */ addiu $a2, $a0, -1 -/* 01CA08 8001BE08 00001825 */ move $v1, $zero -.L8001BE0C: -/* 01CA0C 8001BE0C 04C10002 */ bgez $a2, .L8001BE18 -/* 01CA10 8001BE10 00047080 */ sll $t6, $a0, 2 -/* 01CA14 8001BE14 2446FFFF */ addiu $a2, $v0, -1 -.L8001BE18: -/* 01CA18 8001BE18 3C028012 */ lui $v0, %hi(D_8011AEDC) # $v0, 0x8012 -/* 01CA1C 8001BE1C 8C42AEDC */ lw $v0, %lo(D_8011AEDC)($v0) -/* 01CA20 8001BE20 C582000C */ lwc1 $f2, 0xc($t4) -/* 01CA24 8001BE24 004E7821 */ addu $t7, $v0, $t6 -/* 01CA28 8001BE28 8DE70000 */ lw $a3, ($t7) -/* 01CA2C 8001BE2C C58E0010 */ lwc1 $f14, 0x10($t4) -/* 01CA30 8001BE30 C4E4000C */ lwc1 $f4, 0xc($a3) -/* 01CA34 8001BE34 C4E60010 */ lwc1 $f6, 0x10($a3) -/* 01CA38 8001BE38 46022001 */ sub.s $f0, $f4, $f2 -/* 01CA3C 8001BE3C C5920014 */ lwc1 $f18, 0x14($t4) -/* 01CA40 8001BE40 46000282 */ mul.s $f10, $f0, $f0 -/* 01CA44 8001BE44 460E3301 */ sub.s $f12, $f6, $f14 -/* 01CA48 8001BE48 C4E80014 */ lwc1 $f8, 0x14($a3) -/* 01CA4C 8001BE4C 0003C080 */ sll $t8, $v1, 2 -/* 01CA50 8001BE50 460C6102 */ mul.s $f4, $f12, $f12 -/* 01CA54 8001BE54 46124401 */ sub.s $f16, $f8, $f18 -/* 01CA58 8001BE58 00065080 */ sll $t2, $a2, 2 -/* 01CA5C 8001BE5C 0058C821 */ addu $t9, $v0, $t8 -/* 01CA60 8001BE60 46108202 */ mul.s $f8, $f16, $f16 -/* 01CA64 8001BE64 46045180 */ add.s $f6, $f10, $f4 -/* 01CA68 8001BE68 8F280000 */ lw $t0, ($t9) -/* 01CA6C 8001BE6C 004A5821 */ addu $t3, $v0, $t2 -/* 01CA70 8001BE70 46083280 */ add.s $f10, $f6, $f8 -/* 01CA74 8001BE74 8D690000 */ lw $t1, ($t3) -/* 01CA78 8001BE78 E7AA0004 */ swc1 $f10, 4($sp) -/* 01CA7C 8001BE7C C504000C */ lwc1 $f4, 0xc($t0) -/* 01CA80 8001BE80 C5060010 */ lwc1 $f6, 0x10($t0) -/* 01CA84 8001BE84 46022001 */ sub.s $f0, $f4, $f2 -/* 01CA88 8001BE88 C5080014 */ lwc1 $f8, 0x14($t0) -/* 01CA8C 8001BE8C 46000102 */ mul.s $f4, $f0, $f0 -/* 01CA90 8001BE90 460E3301 */ sub.s $f12, $f6, $f14 -/* 01CA94 8001BE94 460C6182 */ mul.s $f6, $f12, $f12 -/* 01CA98 8001BE98 46124401 */ sub.s $f16, $f8, $f18 -/* 01CA9C 8001BE9C 46062200 */ add.s $f8, $f4, $f6 -/* 01CAA0 8001BEA0 46108102 */ mul.s $f4, $f16, $f16 -/* 01CAA4 8001BEA4 46044180 */ add.s $f6, $f8, $f4 -/* 01CAA8 8001BEA8 E7A60000 */ swc1 $f6, ($sp) -/* 01CAAC 8001BEAC C528000C */ lwc1 $f8, 0xc($t1) -/* 01CAB0 8001BEB0 460A303C */ c.lt.s $f6, $f10 -/* 01CAB4 8001BEB4 46024001 */ sub.s $f0, $f8, $f2 -/* 01CAB8 8001BEB8 C5240010 */ lwc1 $f4, 0x10($t1) -/* 01CABC 8001BEBC C5280014 */ lwc1 $f8, 0x14($t1) -/* 01CAC0 8001BEC0 460E2301 */ sub.s $f12, $f4, $f14 -/* 01CAC4 8001BEC4 45000005 */ bc1f .L8001BEDC -/* 01CAC8 8001BEC8 46124401 */ sub.s $f16, $f8, $f18 -/* 01CACC 8001BECC ACA30000 */ sw $v1, ($a1) -/* 01CAD0 8001BED0 C7A40000 */ lwc1 $f4, ($sp) -/* 01CAD4 8001BED4 01003825 */ move $a3, $t0 -/* 01CAD8 8001BED8 E7A40004 */ swc1 $f4, 4($sp) -.L8001BEDC: -/* 01CADC 8001BEDC 46000202 */ mul.s $f8, $f0, $f0 -/* 01CAE0 8001BEE0 00000000 */ nop -/* 01CAE4 8001BEE4 460C6182 */ mul.s $f6, $f12, $f12 -/* 01CAE8 8001BEE8 00000000 */ nop -/* 01CAEC 8001BEEC 46108102 */ mul.s $f4, $f16, $f16 -/* 01CAF0 8001BEF0 46064280 */ add.s $f10, $f8, $f6 -/* 01CAF4 8001BEF4 C7A60004 */ lwc1 $f6, 4($sp) -/* 01CAF8 8001BEF8 46045200 */ add.s $f8, $f10, $f4 -/* 01CAFC 8001BEFC 4606403C */ c.lt.s $f8, $f6 -/* 01CB00 8001BF00 00000000 */ nop -/* 01CB04 8001BF04 45000003 */ bc1f .L8001BF14 -/* 01CB08 8001BF08 00000000 */ nop -/* 01CB0C 8001BF0C ACA60000 */ sw $a2, ($a1) -/* 01CB10 8001BF10 01203825 */ move $a3, $t1 -.L8001BF14: -/* 01CB14 8001BF14 00E01025 */ move $v0, $a3 -.L8001BF18: -/* 01CB18 8001BF18 03E00008 */ jr $ra -/* 01CB1C 8001BF1C 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8001BF20 -/* 01CB20 8001BF20 27BDFE70 */ addiu $sp, $sp, -0x190 -/* 01CB24 8001BF24 3C028012 */ lui $v0, %hi(D_8011AF10) # $v0, 0x8012 -/* 01CB28 8001BF28 2442AF10 */ addiu $v0, %lo(D_8011AF10) # addiu $v0, $v0, -0x50f0 -/* 01CB2C 8001BF2C 8C4E0000 */ lw $t6, ($v0) -/* 01CB30 8001BF30 AFBF003C */ sw $ra, 0x3c($sp) -/* 01CB34 8001BF34 AFBE0038 */ sw $fp, 0x38($sp) -/* 01CB38 8001BF38 AFB70034 */ sw $s7, 0x34($sp) -/* 01CB3C 8001BF3C AFB60030 */ sw $s6, 0x30($sp) -/* 01CB40 8001BF40 AFB5002C */ sw $s5, 0x2c($sp) -/* 01CB44 8001BF44 AFB40028 */ sw $s4, 0x28($sp) -/* 01CB48 8001BF48 AFB30024 */ sw $s3, 0x24($sp) -/* 01CB4C 8001BF4C AFB20020 */ sw $s2, 0x20($sp) -/* 01CB50 8001BF50 AFB1001C */ sw $s1, 0x1c($sp) -/* 01CB54 8001BF54 11C00124 */ beqz $t6, .L8001C3E8 -/* 01CB58 8001BF58 AFB00018 */ sw $s0, 0x18($sp) -/* 01CB5C 8001BF5C 3C0A8012 */ lui $t2, %hi(D_8011AF04) # $t2, 0x8012 -/* 01CB60 8001BF60 AC400000 */ sw $zero, ($v0) -/* 01CB64 8001BF64 254AAF04 */ addiu $t2, %lo(D_8011AF04) # addiu $t2, $t2, -0x50fc -/* 01CB68 8001BF68 0000F025 */ move $fp, $zero -.L8001BF6C: -/* 01CB6C 8001BF6C 8D4F0000 */ lw $t7, ($t2) -/* 01CB70 8001BF70 00000000 */ nop -/* 01CB74 8001BF74 01FEC021 */ addu $t8, $t7, $fp -/* 01CB78 8001BF78 27DE0004 */ addiu $fp, $fp, 4 -/* 01CB7C 8001BF7C 2BC10200 */ slti $at, $fp, 0x200 -/* 01CB80 8001BF80 1420FFFA */ bnez $at, .L8001BF6C -/* 01CB84 8001BF84 AF000000 */ sw $zero, ($t8) -/* 01CB88 8001BF88 3C048012 */ lui $a0, %hi(D_8011AE5C) # $a0, 0x8012 -/* 01CB8C 8001BF8C 8C84AE5C */ lw $a0, %lo(D_8011AE5C)($a0) -/* 01CB90 8001BF90 A7A00186 */ sh $zero, 0x186($sp) -/* 01CB94 8001BF94 1880002D */ blez $a0, .L8001C04C -/* 01CB98 8001BF98 00003825 */ move $a3, $zero -/* 01CB9C 8001BF9C 3C058012 */ lui $a1, %hi(D_8011AE58) # $a1, 0x8012 -/* 01CBA0 8001BFA0 24A5AE58 */ addiu $a1, %lo(D_8011AE58) # addiu $a1, $a1, -0x51a8 -/* 01CBA4 8001BFA4 0000F025 */ move $fp, $zero -/* 01CBA8 8001BFA8 27B70064 */ addiu $s7, $sp, 0x64 -/* 01CBAC 8001BFAC 24060010 */ li $a2, 16 -.L8001BFB0: -/* 01CBB0 8001BFB0 8CB90000 */ lw $t9, ($a1) -/* 01CBB4 8001BFB4 24E70001 */ addiu $a3, $a3, 1 -/* 01CBB8 8001BFB8 033E5821 */ addu $t3, $t9, $fp -/* 01CBBC 8001BFBC 8D730000 */ lw $s3, ($t3) -/* 01CBC0 8001BFC0 00000000 */ nop -/* 01CBC4 8001BFC4 866C0006 */ lh $t4, 6($s3) -/* 01CBC8 8001BFC8 00000000 */ nop -/* 01CBCC 8001BFCC 318D8000 */ andi $t5, $t4, 0x8000 -/* 01CBD0 8001BFD0 15A0001C */ bnez $t5, .L8001C044 -/* 01CBD4 8001BFD4 00E4082A */ slt $at, $a3, $a0 -/* 01CBD8 8001BFD8 866E0048 */ lh $t6, 0x48($s3) -/* 01CBDC 8001BFDC 00000000 */ nop -/* 01CBE0 8001BFE0 14CE0018 */ bne $a2, $t6, .L8001C044 -/* 01CBE4 8001BFE4 00E4082A */ slt $at, $a3, $a0 -/* 01CBE8 8001BFE8 8E62003C */ lw $v0, 0x3c($s3) -/* 01CBEC 8001BFEC 00000000 */ nop -/* 01CBF0 8001BFF0 90430009 */ lbu $v1, 9($v0) -/* 01CBF4 8001BFF4 00000000 */ nop -/* 01CBF8 8001BFF8 306F0080 */ andi $t7, $v1, 0x80 -/* 01CBFC 8001BFFC 15E00010 */ bnez $t7, .L8001C040 -/* 01CC00 8001C000 0003C880 */ sll $t9, $v1, 2 -/* 01CC04 8001C004 8D580000 */ lw $t8, ($t2) -/* 01CC08 8001C008 3C048012 */ lui $a0, %hi(D_8011AE5C) # $a0, 0x8012 -/* 01CC0C 8001C00C 03195821 */ addu $t3, $t8, $t9 -/* 01CC10 8001C010 AD730000 */ sw $s3, ($t3) -/* 01CC14 8001C014 87AD0186 */ lh $t5, 0x186($sp) -/* 01CC18 8001C018 904C0009 */ lbu $t4, 9($v0) -/* 01CC1C 8001C01C 03AD7021 */ addu $t6, $sp, $t5 -/* 01CC20 8001C020 A1CC00E4 */ sb $t4, 0xe4($t6) -/* 01CC24 8001C024 804F000E */ lb $t7, 0xe($v0) -/* 01CC28 8001C028 02EDC821 */ addu $t9, $s7, $t5 -/* 01CC2C 8001C02C 31F80003 */ andi $t8, $t7, 3 -/* 01CC30 8001C030 A3380000 */ sb $t8, ($t9) -/* 01CC34 8001C034 25AB0001 */ addiu $t3, $t5, 1 -/* 01CC38 8001C038 8C84AE5C */ lw $a0, %lo(D_8011AE5C)($a0) -/* 01CC3C 8001C03C A7AB0186 */ sh $t3, 0x186($sp) -.L8001C040: -/* 01CC40 8001C040 00E4082A */ slt $at, $a3, $a0 -.L8001C044: -/* 01CC44 8001C044 1420FFDA */ bnez $at, .L8001BFB0 -/* 01CC48 8001C048 27DE0004 */ addiu $fp, $fp, 4 -.L8001C04C: -/* 01CC4C 8001C04C 87AC0186 */ lh $t4, 0x186($sp) -/* 01CC50 8001C050 27B70064 */ addiu $s7, $sp, 0x64 -/* 01CC54 8001C054 118000E4 */ beqz $t4, .L8001C3E8 -/* 01CC58 8001C058 0000F025 */ move $fp, $zero -/* 01CC5C 8001C05C 24160004 */ li $s6, 4 -/* 01CC60 8001C060 241500FF */ li $s5, 255 -.L8001C064: -/* 01CC64 8001C064 8D4E0000 */ lw $t6, ($t2) -/* 01CC68 8001C068 00000000 */ nop -/* 01CC6C 8001C06C 01DE7821 */ addu $t7, $t6, $fp -/* 01CC70 8001C070 8DF30000 */ lw $s3, ($t7) -/* 01CC74 8001C074 00000000 */ nop -/* 01CC78 8001C078 12600031 */ beqz $s3, .L8001C140 -/* 01CC7C 8001C07C 00000000 */ nop -/* 01CC80 8001C080 8E740064 */ lw $s4, 0x64($s3) -/* 01CC84 8001C084 8E70003C */ lw $s0, 0x3c($s3) -/* 01CC88 8001C088 00008825 */ move $s1, $zero -.L8001C08C: -/* 01CC8C 8001C08C 9203000A */ lbu $v1, 0xa($s0) -/* 01CC90 8001C090 00000000 */ nop -/* 01CC94 8001C094 30780080 */ andi $t8, $v1, 0x80 -/* 01CC98 8001C098 17000026 */ bnez $t8, .L8001C134 -/* 01CC9C 8001C09C 00036880 */ sll $t5, $v1, 2 -/* 01CCA0 8001C0A0 8D590000 */ lw $t9, ($t2) -/* 01CCA4 8001C0A4 00116080 */ sll $t4, $s1, 2 -/* 01CCA8 8001C0A8 032D5821 */ addu $t3, $t9, $t5 -/* 01CCAC 8001C0AC 8D620000 */ lw $v0, ($t3) -/* 01CCB0 8001C0B0 028C7021 */ addu $t6, $s4, $t4 -/* 01CCB4 8001C0B4 14400003 */ bnez $v0, .L8001C0C4 -/* 01CCB8 8001C0B8 ADC20000 */ sw $v0, ($t6) -/* 01CCBC 8001C0BC 1000001D */ b .L8001C134 -/* 01CCC0 8001C0C0 A215000A */ sb $s5, 0xa($s0) -.L8001C0C4: -/* 01CCC4 8001C0C4 C664000C */ lwc1 $f4, 0xc($s3) -/* 01CCC8 8001C0C8 C446000C */ lwc1 $f6, 0xc($v0) -/* 01CCCC 8001C0CC C6680010 */ lwc1 $f8, 0x10($s3) -/* 01CCD0 8001C0D0 46062001 */ sub.s $f0, $f4, $f6 -/* 01CCD4 8001C0D4 C44A0010 */ lwc1 $f10, 0x10($v0) -/* 01CCD8 8001C0D8 46000102 */ mul.s $f4, $f0, $f0 -/* 01CCDC 8001C0DC 460A4081 */ sub.s $f2, $f8, $f10 -/* 01CCE0 8001C0E0 C6700014 */ lwc1 $f16, 0x14($s3) -/* 01CCE4 8001C0E4 C4520014 */ lwc1 $f18, 0x14($v0) -/* 01CCE8 8001C0E8 46021182 */ mul.s $f6, $f2, $f2 -/* 01CCEC 8001C0EC 46128381 */ sub.s $f14, $f16, $f18 -/* 01CCF0 8001C0F0 00117840 */ sll $t7, $s1, 1 -/* 01CCF4 8001C0F4 028F9021 */ addu $s2, $s4, $t7 -/* 01CCF8 8001C0F8 460E7282 */ mul.s $f10, $f14, $f14 -/* 01CCFC 8001C0FC 46062200 */ add.s $f8, $f4, $f6 -/* 01CD00 8001C100 0C0326B4 */ jal sqrtf -/* 01CD04 8001C104 460A4300 */ add.s $f12, $f8, $f10 -/* 01CD08 8001C108 4458F800 */ cfc1 $t8, $31 -/* 01CD0C 8001C10C 3C0A8012 */ lui $t2, %hi(D_8011AF04) # $t2, 0x8012 -/* 01CD10 8001C110 37010003 */ ori $at, $t8, 3 -/* 01CD14 8001C114 38210002 */ xori $at, $at, 2 -/* 01CD18 8001C118 44C1F800 */ ctc1 $at, $31 -/* 01CD1C 8001C11C 254AAF04 */ addiu $t2, %lo(D_8011AF04) # addiu $t2, $t2, -0x50fc -/* 01CD20 8001C120 46000424 */ cvt.w.s $f16, $f0 -/* 01CD24 8001C124 44198000 */ mfc1 $t9, $f16 -/* 01CD28 8001C128 44D8F800 */ ctc1 $t8, $31 -/* 01CD2C 8001C12C A6590010 */ sh $t9, 0x10($s2) -/* 01CD30 8001C130 00000000 */ nop -.L8001C134: -/* 01CD34 8001C134 26310001 */ addiu $s1, $s1, 1 -/* 01CD38 8001C138 1636FFD4 */ bne $s1, $s6, .L8001C08C -/* 01CD3C 8001C13C 26100001 */ addiu $s0, $s0, 1 -.L8001C140: -/* 01CD40 8001C140 27DE0004 */ addiu $fp, $fp, 4 -/* 01CD44 8001C144 24010200 */ li $at, 512 -/* 01CD48 8001C148 17C1FFC6 */ bne $fp, $at, .L8001C064 -/* 01CD4C 8001C14C 00000000 */ nop -/* 01CD50 8001C150 87A90186 */ lh $t1, 0x186($sp) -/* 01CD54 8001C154 00003825 */ move $a3, $zero -/* 01CD58 8001C158 2529FFFF */ addiu $t1, $t1, -1 -.L8001C15C: -/* 01CD5C 8001C15C 19200053 */ blez $t1, .L8001C2AC -/* 01CD60 8001C160 24110001 */ li $s1, 1 -/* 01CD64 8001C164 87A20186 */ lh $v0, 0x186($sp) -/* 01CD68 8001C168 8D480000 */ lw $t0, ($t2) -/* 01CD6C 8001C16C 2442FFFF */ addiu $v0, $v0, -1 -/* 01CD70 8001C170 304D0001 */ andi $t5, $v0, 1 -/* 01CD74 8001C174 11A00019 */ beqz $t5, .L8001C1DC -/* 01CD78 8001C178 27AF00E4 */ addiu $t7, $sp, 0xe4 -/* 01CD7C 8001C17C 83AB00E5 */ lb $t3, 0xe5($sp) -/* 01CD80 8001C180 83B800E4 */ lb $t8, 0xe4($sp) -/* 01CD84 8001C184 000B6080 */ sll $t4, $t3, 2 -/* 01CD88 8001C188 010C7021 */ addu $t6, $t0, $t4 -/* 01CD8C 8001C18C 0018C880 */ sll $t9, $t8, 2 -/* 01CD90 8001C190 01196821 */ addu $t5, $t0, $t9 -/* 01CD94 8001C194 8DAC0000 */ lw $t4, ($t5) -/* 01CD98 8001C198 8DCF0000 */ lw $t7, ($t6) -/* 01CD9C 8001C19C C5820010 */ lwc1 $f2, 0x10($t4) -/* 01CDA0 8001C1A0 C5E00010 */ lwc1 $f0, 0x10($t7) -/* 01CDA4 8001C1A4 24070001 */ li $a3, 1 -/* 01CDA8 8001C1A8 4602003C */ c.lt.s $f0, $f2 -/* 01CDAC 8001C1AC 00000000 */ nop -/* 01CDB0 8001C1B0 45000008 */ bc1f .L8001C1D4 -/* 01CDB4 8001C1B4 00000000 */ nop -/* 01CDB8 8001C1B8 83A20064 */ lb $v0, 0x64($sp) -/* 01CDBC 8001C1BC 83AE0065 */ lb $t6, 0x65($sp) -/* 01CDC0 8001C1C0 A3AB00E4 */ sb $t3, 0xe4($sp) -/* 01CDC4 8001C1C4 A3B800E5 */ sb $t8, 0xe5($sp) -/* 01CDC8 8001C1C8 00008825 */ move $s1, $zero -/* 01CDCC 8001C1CC A3A20065 */ sb $v0, 0x65($sp) -/* 01CDD0 8001C1D0 A3AE0064 */ sb $t6, 0x64($sp) -.L8001C1D4: -/* 01CDD4 8001C1D4 10E90034 */ beq $a3, $t1, .L8001C2A8 -/* 01CDD8 8001C1D8 27AF00E4 */ addiu $t7, $sp, 0xe4 -.L8001C1DC: -/* 01CDDC 8001C1DC 00EF2021 */ addu $a0, $a3, $t7 -.L8001C1E0: -/* 01CDE0 8001C1E0 80850001 */ lb $a1, 1($a0) -/* 01CDE4 8001C1E4 80860000 */ lb $a2, ($a0) -/* 01CDE8 8001C1E8 0005C880 */ sll $t9, $a1, 2 -/* 01CDEC 8001C1EC 0006C080 */ sll $t8, $a2, 2 -/* 01CDF0 8001C1F0 01185821 */ addu $t3, $t0, $t8 -/* 01CDF4 8001C1F4 01196821 */ addu $t5, $t0, $t9 -/* 01CDF8 8001C1F8 8DAC0000 */ lw $t4, ($t5) -/* 01CDFC 8001C1FC 8D6E0000 */ lw $t6, ($t3) -/* 01CE00 8001C200 C5800010 */ lwc1 $f0, 0x10($t4) -/* 01CE04 8001C204 C5D20010 */ lwc1 $f18, 0x10($t6) -/* 01CE08 8001C208 02E71821 */ addu $v1, $s7, $a3 -/* 01CE0C 8001C20C 4612003C */ c.lt.s $f0, $f18 -/* 01CE10 8001C210 00000000 */ nop -/* 01CE14 8001C214 4500000E */ bc1f .L8001C250 -/* 01CE18 8001C218 00000000 */ nop -/* 01CE1C 8001C21C A0850000 */ sb $a1, ($a0) -/* 01CE20 8001C220 A0860001 */ sb $a2, 1($a0) -/* 01CE24 8001C224 80850001 */ lb $a1, 1($a0) -/* 01CE28 8001C228 80620000 */ lb $v0, ($v1) -/* 01CE2C 8001C22C 80790001 */ lb $t9, 1($v1) -/* 01CE30 8001C230 00056880 */ sll $t5, $a1, 2 -/* 01CE34 8001C234 010D6021 */ addu $t4, $t0, $t5 -/* 01CE38 8001C238 A0620001 */ sb $v0, 1($v1) -/* 01CE3C 8001C23C A0790000 */ sb $t9, ($v1) -/* 01CE40 8001C240 8D980000 */ lw $t8, ($t4) -/* 01CE44 8001C244 00008825 */ move $s1, $zero -/* 01CE48 8001C248 C7000010 */ lwc1 $f0, 0x10($t8) -/* 01CE4C 8001C24C 00000000 */ nop -.L8001C250: -/* 01CE50 8001C250 80860002 */ lb $a2, 2($a0) -/* 01CE54 8001C254 02E71821 */ addu $v1, $s7, $a3 -/* 01CE58 8001C258 00065880 */ sll $t3, $a2, 2 -/* 01CE5C 8001C25C 010B7021 */ addu $t6, $t0, $t3 -/* 01CE60 8001C260 8DCF0000 */ lw $t7, ($t6) -/* 01CE64 8001C264 00000000 */ nop -/* 01CE68 8001C268 C5E40010 */ lwc1 $f4, 0x10($t7) -/* 01CE6C 8001C26C 00000000 */ nop -/* 01CE70 8001C270 4600203C */ c.lt.s $f4, $f0 -/* 01CE74 8001C274 00000000 */ nop -/* 01CE78 8001C278 45000008 */ bc1f .L8001C29C -/* 01CE7C 8001C27C 00000000 */ nop -/* 01CE80 8001C280 80620001 */ lb $v0, 1($v1) -/* 01CE84 8001C284 806D0002 */ lb $t5, 2($v1) -/* 01CE88 8001C288 A0860001 */ sb $a2, 1($a0) -/* 01CE8C 8001C28C A0850002 */ sb $a1, 2($a0) -/* 01CE90 8001C290 00008825 */ move $s1, $zero -/* 01CE94 8001C294 A0620002 */ sb $v0, 2($v1) -/* 01CE98 8001C298 A06D0001 */ sb $t5, 1($v1) -.L8001C29C: -/* 01CE9C 8001C29C 24E70002 */ addiu $a3, $a3, 2 -/* 01CEA0 8001C2A0 14E9FFCF */ bne $a3, $t1, .L8001C1E0 -/* 01CEA4 8001C2A4 24840002 */ addiu $a0, $a0, 2 -.L8001C2A8: -/* 01CEA8 8001C2A8 00003825 */ move $a3, $zero -.L8001C2AC: -/* 01CEAC 8001C2AC 1220FFAB */ beqz $s1, .L8001C15C -/* 01CEB0 8001C2B0 00000000 */ nop -/* 01CEB4 8001C2B4 3C01800E */ lui $at, %hi(D_800E5638) # $at, 0x800e -/* 01CEB8 8001C2B8 3C028012 */ lui $v0, %hi(D_8011AF18) # $v0, 0x8012 -/* 01CEBC 8001C2BC 3C038012 */ lui $v1, %hi(D_8011AF2C) # $v1, 0x8012 -/* 01CEC0 8001C2C0 C4205638 */ lwc1 $f0, %lo(D_800E5638)($at) -/* 01CEC4 8001C2C4 2463AF2C */ addiu $v1, %lo(D_8011AF2C) # addiu $v1, $v1, -0x50d4 -/* 01CEC8 8001C2C8 2442AF18 */ addiu $v0, %lo(D_8011AF18) # addiu $v0, $v0, -0x50e8 -.L8001C2CC: -/* 01CECC 8001C2CC 24420004 */ addiu $v0, $v0, 4 -/* 01CED0 8001C2D0 0043082B */ sltu $at, $v0, $v1 -/* 01CED4 8001C2D4 1420FFFD */ bnez $at, .L8001C2CC -/* 01CED8 8001C2D8 E440FFFC */ swc1 $f0, -4($v0) -/* 01CEDC 8001C2DC 83A20064 */ lb $v0, 0x64($sp) -/* 01CEE0 8001C2E0 19200038 */ blez $t1, .L8001C3C4 -/* 01CEE4 8001C2E4 00003825 */ move $a3, $zero -/* 01CEE8 8001C2E8 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 01CEEC 8001C2EC 3C068012 */ lui $a2, %hi(D_8011AF18) # $a2, 0x8012 -/* 01CEF0 8001C2F0 44810800 */ mtc1 $at, $f1 -/* 01CEF4 8001C2F4 44800000 */ mtc1 $zero, $f0 -/* 01CEF8 8001C2F8 24C6AF18 */ addiu $a2, %lo(D_8011AF18) # addiu $a2, $a2, -0x50e8 -/* 01CEFC 8001C2FC 27AC0064 */ addiu $t4, $sp, 0x64 -.L8001C300: -/* 01CF00 8001C300 00E9082A */ slt $at, $a3, $t1 -/* 01CF04 8001C304 1020000F */ beqz $at, .L8001C344 -/* 01CF08 8001C308 00EC1821 */ addu $v1, $a3, $t4 -/* 01CF0C 8001C30C 80780000 */ lb $t8, ($v1) -/* 01CF10 8001C310 00000000 */ nop -/* 01CF14 8001C314 0058082A */ slt $at, $v0, $t8 -/* 01CF18 8001C318 1420000A */ bnez $at, .L8001C344 -/* 01CF1C 8001C31C 00000000 */ nop -.L8001C320: -/* 01CF20 8001C320 24E70001 */ addiu $a3, $a3, 1 -/* 01CF24 8001C324 00E9082A */ slt $at, $a3, $t1 -/* 01CF28 8001C328 10200006 */ beqz $at, .L8001C344 -/* 01CF2C 8001C32C 24630001 */ addiu $v1, $v1, 1 -/* 01CF30 8001C330 806B0000 */ lb $t3, ($v1) -/* 01CF34 8001C334 00000000 */ nop -/* 01CF38 8001C338 004B082A */ slt $at, $v0, $t3 -/* 01CF3C 8001C33C 1020FFF8 */ beqz $at, .L8001C320 -/* 01CF40 8001C340 00000000 */ nop -.L8001C344: -/* 01CF44 8001C344 80650000 */ lb $a1, ($v1) -/* 01CF48 8001C348 27AF00E4 */ addiu $t7, $sp, 0xe4 -/* 01CF4C 8001C34C 0045082A */ slt $at, $v0, $a1 -/* 01CF50 8001C350 10200017 */ beqz $at, .L8001C3B0 -/* 01CF54 8001C354 00EF2021 */ addu $a0, $a3, $t7 -/* 01CF58 8001C358 00051600 */ sll $v0, $a1, 0x18 -/* 01CF5C 8001C35C 8D480000 */ lw $t0, ($t2) -/* 01CF60 8001C360 8099FFFF */ lb $t9, -1($a0) -/* 01CF64 8001C364 808B0000 */ lb $t3, ($a0) -/* 01CF68 8001C368 00027603 */ sra $t6, $v0, 0x18 -/* 01CF6C 8001C36C 01C01025 */ move $v0, $t6 -/* 01CF70 8001C370 00196880 */ sll $t5, $t9, 2 -/* 01CF74 8001C374 000B7080 */ sll $t6, $t3, 2 -/* 01CF78 8001C378 010E7821 */ addu $t7, $t0, $t6 -/* 01CF7C 8001C37C 010D6021 */ addu $t4, $t0, $t5 -/* 01CF80 8001C380 8D980000 */ lw $t8, ($t4) -/* 01CF84 8001C384 8DF90000 */ lw $t9, ($t7) -/* 01CF88 8001C388 C7060010 */ lwc1 $f6, 0x10($t8) -/* 01CF8C 8001C38C C7280010 */ lwc1 $f8, 0x10($t9) -/* 01CF90 8001C390 00026880 */ sll $t5, $v0, 2 -/* 01CF94 8001C394 46083280 */ add.s $f10, $f6, $f8 -/* 01CF98 8001C398 00CD6021 */ addu $t4, $a2, $t5 -/* 01CF9C 8001C39C 46005421 */ cvt.d.s $f16, $f10 -/* 01CFA0 8001C3A0 46208482 */ mul.d $f18, $f16, $f0 -/* 01CFA4 8001C3A4 46209120 */ cvt.s.d $f4, $f18 -/* 01CFA8 8001C3A8 10000003 */ b .L8001C3B8 -/* 01CFAC 8001C3AC E5840000 */ swc1 $f4, ($t4) -.L8001C3B0: -/* 01CFB0 8001C3B0 87A70186 */ lh $a3, 0x186($sp) -/* 01CFB4 8001C3B4 00000000 */ nop -.L8001C3B8: -/* 01CFB8 8001C3B8 00E9082A */ slt $at, $a3, $t1 -/* 01CFBC 8001C3BC 1420FFD0 */ bnez $at, .L8001C300 -/* 01CFC0 8001C3C0 27AC0064 */ addiu $t4, $sp, 0x64 -.L8001C3C4: -/* 01CFC4 8001C3C4 3C01800E */ lui $at, %hi(D_800E563C) # $at, 0x800e -/* 01CFC8 8001C3C8 C426563C */ lwc1 $f6, %lo(D_800E563C)($at) -/* 01CFCC 8001C3CC 3C068012 */ lui $a2, %hi(D_8011AF18) # $a2, 0x8012 -/* 01CFD0 8001C3D0 24C6AF18 */ addiu $a2, %lo(D_8011AF18) # addiu $a2, $a2, -0x50e8 -/* 01CFD4 8001C3D4 E4C60000 */ swc1 $f6, ($a2) -/* 01CFD8 8001C3D8 C4C80000 */ lwc1 $f8, ($a2) -/* 01CFDC 8001C3DC 00000000 */ nop -/* 01CFE0 8001C3E0 46004287 */ neg.s $f10, $f8 -/* 01CFE4 8001C3E4 E4CA0010 */ swc1 $f10, 0x10($a2) -.L8001C3E8: -/* 01CFE8 8001C3E8 8FBF003C */ lw $ra, 0x3c($sp) -/* 01CFEC 8001C3EC 8FB00018 */ lw $s0, 0x18($sp) -/* 01CFF0 8001C3F0 8FB1001C */ lw $s1, 0x1c($sp) -/* 01CFF4 8001C3F4 8FB20020 */ lw $s2, 0x20($sp) -/* 01CFF8 8001C3F8 8FB30024 */ lw $s3, 0x24($sp) -/* 01CFFC 8001C3FC 8FB40028 */ lw $s4, 0x28($sp) -/* 01D000 8001C400 8FB5002C */ lw $s5, 0x2c($sp) -/* 01D004 8001C404 8FB60030 */ lw $s6, 0x30($sp) -/* 01D008 8001C408 8FB70034 */ lw $s7, 0x34($sp) -/* 01D00C 8001C40C 8FBE0038 */ lw $fp, 0x38($sp) -/* 01D010 8001C410 03E00008 */ jr $ra -/* 01D014 8001C414 27BD0190 */ addiu $sp, $sp, 0x190 - -glabel func_8001C418 -/* 01D018 8001C418 3C01800E */ lui $at, %hi(D_800E5640) # $at, 0x800e -/* 01D01C 8001C41C 3C048012 */ lui $a0, %hi(D_8011AF18) # $a0, 0x8012 -/* 01D020 8001C420 C4225640 */ lwc1 $f2, %lo(D_800E5640)($at) -/* 01D024 8001C424 00001025 */ move $v0, $zero -/* 01D028 8001C428 00001825 */ move $v1, $zero -/* 01D02C 8001C42C 2484AF18 */ addiu $a0, %lo(D_8011AF18) # addiu $a0, $a0, -0x50e8 -/* 01D030 8001C430 00027080 */ sll $t6, $v0, 2 -.L8001C434: -/* 01D034 8001C434 008E7821 */ addu $t7, $a0, $t6 -/* 01D038 8001C438 C5E00000 */ lwc1 $f0, ($t7) -/* 01D03C 8001C43C 00000000 */ nop -/* 01D040 8001C440 46001032 */ c.eq.s $f2, $f0 -/* 01D044 8001C444 00000000 */ nop -/* 01D048 8001C448 45010008 */ bc1t .L8001C46C -/* 01D04C 8001C44C 00000000 */ nop -/* 01D050 8001C450 460C003C */ c.lt.s $f0, $f12 -/* 01D054 8001C454 00000000 */ nop -/* 01D058 8001C458 45000004 */ bc1f .L8001C46C -/* 01D05C 8001C45C 00000000 */ nop -/* 01D060 8001C460 00021C00 */ sll $v1, $v0, 0x10 -/* 01D064 8001C464 0003C403 */ sra $t8, $v1, 0x10 -/* 01D068 8001C468 03001825 */ move $v1, $t8 -.L8001C46C: -/* 01D06C 8001C46C 24420001 */ addiu $v0, $v0, 1 -/* 01D070 8001C470 0002CC00 */ sll $t9, $v0, 0x10 -/* 01D074 8001C474 00191403 */ sra $v0, $t9, 0x10 -/* 01D078 8001C478 28410004 */ slti $at, $v0, 4 -/* 01D07C 8001C47C 1420FFED */ bnez $at, .L8001C434 -/* 01D080 8001C480 00027080 */ sll $t6, $v0, 2 -/* 01D084 8001C484 03E00008 */ jr $ra -/* 01D088 8001C488 00601025 */ move $v0, $v1 - -glabel func_8001C48C -/* 01D08C 8001C48C 3C058012 */ lui $a1, %hi(D_8011AF04) # $a1, 0x8012 -/* 01D090 8001C490 8CA5AF04 */ lw $a1, %lo(D_8011AF04)($a1) -/* 01D094 8001C494 00001825 */ move $v1, $zero -/* 01D098 8001C498 24020080 */ li $v0, 128 -.L8001C49C: -/* 01D09C 8001C49C 8CAE0000 */ lw $t6, ($a1) -/* 01D0A0 8001C4A0 00000000 */ nop -/* 01D0A4 8001C4A4 15C00004 */ bnez $t6, .L8001C4B8 -/* 01D0A8 8001C4A8 00000000 */ nop -/* 01D0AC 8001C4AC ACA40000 */ sw $a0, ($a1) -/* 01D0B0 8001C4B0 03E00008 */ jr $ra -/* 01D0B4 8001C4B4 00601025 */ move $v0, $v1 - -.L8001C4B8: -/* 01D0B8 8001C4B8 8CAF0004 */ lw $t7, 4($a1) -/* 01D0BC 8001C4BC 00000000 */ nop -/* 01D0C0 8001C4C0 15E00004 */ bnez $t7, .L8001C4D4 -/* 01D0C4 8001C4C4 00000000 */ nop -/* 01D0C8 8001C4C8 ACA40004 */ sw $a0, 4($a1) -/* 01D0CC 8001C4CC 03E00008 */ jr $ra -/* 01D0D0 8001C4D0 24620001 */ addiu $v0, $v1, 1 - -.L8001C4D4: -/* 01D0D4 8001C4D4 8CB80008 */ lw $t8, 8($a1) -/* 01D0D8 8001C4D8 00000000 */ nop -/* 01D0DC 8001C4DC 17000004 */ bnez $t8, .L8001C4F0 -/* 01D0E0 8001C4E0 00000000 */ nop -/* 01D0E4 8001C4E4 ACA40008 */ sw $a0, 8($a1) -/* 01D0E8 8001C4E8 03E00008 */ jr $ra -/* 01D0EC 8001C4EC 24620002 */ addiu $v0, $v1, 2 - -.L8001C4F0: -/* 01D0F0 8001C4F0 8CB9000C */ lw $t9, 0xc($a1) -/* 01D0F4 8001C4F4 00000000 */ nop -/* 01D0F8 8001C4F8 17200004 */ bnez $t9, .L8001C50C -/* 01D0FC 8001C4FC 00000000 */ nop -/* 01D100 8001C500 ACA4000C */ sw $a0, 0xc($a1) -/* 01D104 8001C504 03E00008 */ jr $ra -/* 01D108 8001C508 24620003 */ addiu $v0, $v1, 3 - -.L8001C50C: -/* 01D10C 8001C50C 24630004 */ addiu $v1, $v1, 4 -/* 01D110 8001C510 1462FFE2 */ bne $v1, $v0, .L8001C49C -/* 01D114 8001C514 24A50010 */ addiu $a1, $a1, 0x10 -/* 01D118 8001C518 2402FFFF */ li $v0, -1 -/* 01D11C 8001C51C 03E00008 */ jr $ra -/* 01D120 8001C520 00000000 */ nop - -glabel func_8001C524 -/* 01D124 8001C524 27BDFF80 */ addiu $sp, $sp, -0x80 -/* 01D128 8001C528 E7BA0034 */ swc1 $f26, 0x34($sp) -/* 01D12C 8001C52C 4486D000 */ mtc1 $a2, $f26 -/* 01D130 8001C530 AFB20040 */ sw $s2, 0x40($sp) -/* 01D134 8001C534 E7B90028 */ swc1 $f25, 0x28($sp) -/* 01D138 8001C538 E7B8002C */ swc1 $f24, 0x2c($sp) -/* 01D13C 8001C53C E7B70020 */ swc1 $f23, 0x20($sp) -/* 01D140 8001C540 E7B60024 */ swc1 $f22, 0x24($sp) -/* 01D144 8001C544 46007586 */ mov.s $f22, $f14 -/* 01D148 8001C548 46006606 */ mov.s $f24, $f12 -/* 01D14C 8001C54C 00E09025 */ move $s2, $a3 -/* 01D150 8001C550 AFBF005C */ sw $ra, 0x5c($sp) -/* 01D154 8001C554 AFBE0058 */ sw $fp, 0x58($sp) -/* 01D158 8001C558 AFB70054 */ sw $s7, 0x54($sp) -/* 01D15C 8001C55C AFB60050 */ sw $s6, 0x50($sp) -/* 01D160 8001C560 AFB5004C */ sw $s5, 0x4c($sp) -/* 01D164 8001C564 AFB40048 */ sw $s4, 0x48($sp) -/* 01D168 8001C568 AFB30044 */ sw $s3, 0x44($sp) -/* 01D16C 8001C56C AFB1003C */ sw $s1, 0x3c($sp) -/* 01D170 8001C570 AFB00038 */ sw $s0, 0x38($sp) -/* 01D174 8001C574 E7BB0030 */ swc1 $f27, 0x30($sp) -/* 01D178 8001C578 E7B50018 */ swc1 $f21, 0x18($sp) -/* 01D17C 8001C57C 10E00004 */ beqz $a3, .L8001C590 -/* 01D180 8001C580 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 01D184 8001C584 0C007106 */ jal func_8001C418 -/* 01D188 8001C588 46007306 */ mov.s $f12, $f14 -/* 01D18C 8001C58C AFA20064 */ sw $v0, 0x64($sp) -.L8001C590: -/* 01D190 8001C590 3C01800E */ lui $at, %hi(D_800E5644) # $at, 0x800e -/* 01D194 8001C594 3C138012 */ lui $s3, %hi(D_8011AF04) # $s3, 0x8012 -/* 01D198 8001C598 8FBE0064 */ lw $fp, 0x64($sp) -/* 01D19C 8001C59C C4345644 */ lwc1 $f20, %lo(D_800E5644)($at) -/* 01D1A0 8001C5A0 241700FF */ li $s7, 255 -/* 01D1A4 8001C5A4 2673AF04 */ addiu $s3, %lo(D_8011AF04) # addiu $s3, $s3, -0x50fc -/* 01D1A8 8001C5A8 00008025 */ move $s0, $zero -/* 01D1AC 8001C5AC 00008825 */ move $s1, $zero -/* 01D1B0 8001C5B0 24160080 */ li $s6, 128 -/* 01D1B4 8001C5B4 24150003 */ li $s5, 3 -/* 01D1B8 8001C5B8 24140002 */ li $s4, 2 -.L8001C5BC: -/* 01D1BC 8001C5BC 8E6E0000 */ lw $t6, ($s3) -/* 01D1C0 8001C5C0 00000000 */ nop -/* 01D1C4 8001C5C4 01D17821 */ addu $t7, $t6, $s1 -/* 01D1C8 8001C5C8 8DE20000 */ lw $v0, ($t7) -/* 01D1CC 8001C5CC 00000000 */ nop -/* 01D1D0 8001C5D0 10400024 */ beqz $v0, .L8001C664 -/* 01D1D4 8001C5D4 00000000 */ nop -/* 01D1D8 8001C5D8 8C43003C */ lw $v1, 0x3c($v0) -/* 01D1DC 8001C5DC 12400006 */ beqz $s2, .L8001C5F8 -/* 01D1E0 8001C5E0 24040001 */ li $a0, 1 -/* 01D1E4 8001C5E4 8078000E */ lb $t8, 0xe($v1) -/* 01D1E8 8001C5E8 00000000 */ nop -/* 01D1EC 8001C5EC 13D80002 */ beq $fp, $t8, .L8001C5F8 -/* 01D1F0 8001C5F0 00000000 */ nop -/* 01D1F4 8001C5F4 00002025 */ move $a0, $zero -.L8001C5F8: -/* 01D1F8 8001C5F8 16540006 */ bne $s2, $s4, .L8001C614 -/* 01D1FC 8001C5FC 00000000 */ nop -/* 01D200 8001C600 90790008 */ lbu $t9, 8($v1) -/* 01D204 8001C604 00000000 */ nop -/* 01D208 8001C608 12B90002 */ beq $s5, $t9, .L8001C614 -/* 01D20C 8001C60C 00000000 */ nop -/* 01D210 8001C610 00002025 */ move $a0, $zero -.L8001C614: -/* 01D214 8001C614 10800013 */ beqz $a0, .L8001C664 -/* 01D218 8001C618 00000000 */ nop -/* 01D21C 8001C61C C444000C */ lwc1 $f4, 0xc($v0) -/* 01D220 8001C620 C4460010 */ lwc1 $f6, 0x10($v0) -/* 01D224 8001C624 46182001 */ sub.s $f0, $f4, $f24 -/* 01D228 8001C628 C4480014 */ lwc1 $f8, 0x14($v0) -/* 01D22C 8001C62C 46000282 */ mul.s $f10, $f0, $f0 -/* 01D230 8001C630 46163081 */ sub.s $f2, $f6, $f22 -/* 01D234 8001C634 46021402 */ mul.s $f16, $f2, $f2 -/* 01D238 8001C638 461A4381 */ sub.s $f14, $f8, $f26 -/* 01D23C 8001C63C 460E7102 */ mul.s $f4, $f14, $f14 -/* 01D240 8001C640 46105480 */ add.s $f18, $f10, $f16 -/* 01D244 8001C644 0C0326B4 */ jal sqrtf -/* 01D248 8001C648 46049300 */ add.s $f12, $f18, $f4 -/* 01D24C 8001C64C 4614003C */ c.lt.s $f0, $f20 -/* 01D250 8001C650 00000000 */ nop -/* 01D254 8001C654 45000003 */ bc1f .L8001C664 -/* 01D258 8001C658 00000000 */ nop -/* 01D25C 8001C65C 46000506 */ mov.s $f20, $f0 -/* 01D260 8001C660 0200B825 */ move $s7, $s0 -.L8001C664: -/* 01D264 8001C664 26100001 */ addiu $s0, $s0, 1 -/* 01D268 8001C668 1616FFD4 */ bne $s0, $s6, .L8001C5BC -/* 01D26C 8001C66C 26310004 */ addiu $s1, $s1, 4 -/* 01D270 8001C670 8FBF005C */ lw $ra, 0x5c($sp) -/* 01D274 8001C674 02E01025 */ move $v0, $s7 -/* 01D278 8001C678 8FB70054 */ lw $s7, 0x54($sp) -/* 01D27C 8001C67C C7B50018 */ lwc1 $f21, 0x18($sp) -/* 01D280 8001C680 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 01D284 8001C684 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 01D288 8001C688 C7B60024 */ lwc1 $f22, 0x24($sp) -/* 01D28C 8001C68C C7B90028 */ lwc1 $f25, 0x28($sp) -/* 01D290 8001C690 C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 01D294 8001C694 C7BB0030 */ lwc1 $f27, 0x30($sp) -/* 01D298 8001C698 C7BA0034 */ lwc1 $f26, 0x34($sp) -/* 01D29C 8001C69C 8FB00038 */ lw $s0, 0x38($sp) -/* 01D2A0 8001C6A0 8FB1003C */ lw $s1, 0x3c($sp) -/* 01D2A4 8001C6A4 8FB20040 */ lw $s2, 0x40($sp) -/* 01D2A8 8001C6A8 8FB30044 */ lw $s3, 0x44($sp) -/* 01D2AC 8001C6AC 8FB40048 */ lw $s4, 0x48($sp) -/* 01D2B0 8001C6B0 8FB5004C */ lw $s5, 0x4c($sp) -/* 01D2B4 8001C6B4 8FB60050 */ lw $s6, 0x50($sp) -/* 01D2B8 8001C6B8 8FBE0058 */ lw $fp, 0x58($sp) -/* 01D2BC 8001C6BC 03E00008 */ jr $ra -/* 01D2C0 8001C6C0 27BD0080 */ addiu $sp, $sp, 0x80 - -glabel func_8001C6C4 -/* 01D2C4 8001C6C4 27BDFF18 */ addiu $sp, $sp, -0xe8 -/* 01D2C8 8001C6C8 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 01D2CC 8001C6CC 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 01D2D0 8001C6D0 AFB2004C */ sw $s2, 0x4c($sp) -/* 01D2D4 8001C6D4 00809025 */ move $s2, $a0 -/* 01D2D8 8001C6D8 AFBF005C */ sw $ra, 0x5c($sp) -/* 01D2DC 8001C6DC AFB50058 */ sw $s5, 0x58($sp) -/* 01D2E0 8001C6E0 AFB40054 */ sw $s4, 0x54($sp) -/* 01D2E4 8001C6E4 AFB30050 */ sw $s3, 0x50($sp) -/* 01D2E8 8001C6E8 AFB10048 */ sw $s1, 0x48($sp) -/* 01D2EC 8001C6EC AFB00044 */ sw $s0, 0x44($sp) -/* 01D2F0 8001C6F0 E7BF0038 */ swc1 $f31, 0x38($sp) -/* 01D2F4 8001C6F4 E7BE003C */ swc1 $f30, 0x3c($sp) -/* 01D2F8 8001C6F8 E7BD0030 */ swc1 $f29, 0x30($sp) -/* 01D2FC 8001C6FC E7BC0034 */ swc1 $f28, 0x34($sp) -/* 01D300 8001C700 E7BB0028 */ swc1 $f27, 0x28($sp) -/* 01D304 8001C704 E7BA002C */ swc1 $f26, 0x2c($sp) -/* 01D308 8001C708 E7B90020 */ swc1 $f25, 0x20($sp) -/* 01D30C 8001C70C E7B80024 */ swc1 $f24, 0x24($sp) -/* 01D310 8001C710 E7B70018 */ swc1 $f23, 0x18($sp) -/* 01D314 8001C714 E7B6001C */ swc1 $f22, 0x1c($sp) -/* 01D318 8001C718 E7B50010 */ swc1 $f21, 0x10($sp) -/* 01D31C 8001C71C E7B40014 */ swc1 $f20, 0x14($sp) -/* 01D320 8001C720 AFA500EC */ sw $a1, 0xec($sp) -/* 01D324 8001C724 AFA600F0 */ sw $a2, 0xf0($sp) -/* 01D328 8001C728 15C00009 */ bnez $t6, .L8001C750 -/* 01D32C 8001C72C AFA700F4 */ sw $a3, 0xf4($sp) -/* 01D330 8001C730 3C01800E */ lui $at, %hi(D_800E564C) # $at, 0x800e -/* 01D334 8001C734 C7A400F0 */ lwc1 $f4, 0xf0($sp) -/* 01D338 8001C738 C4295648 */ lwc1 $f9, %lo(D_800E5648)($at) -/* 01D33C 8001C73C C428564C */ lwc1 $f8, %lo(D_800E564C)($at) -/* 01D340 8001C740 460021A1 */ cvt.d.s $f6, $f4 -/* 01D344 8001C744 46283282 */ mul.d $f10, $f6, $f8 -/* 01D348 8001C748 46205420 */ cvt.s.d $f16, $f10 -/* 01D34C 8001C74C E7B000F0 */ swc1 $f16, 0xf0($sp) -.L8001C750: -/* 01D350 8001C750 00002825 */ move $a1, $zero -/* 01D354 8001C754 02403025 */ move $a2, $s2 -/* 01D358 8001C758 27B500AC */ addiu $s5, $sp, 0xac -/* 01D35C 8001C75C 27B400C0 */ addiu $s4, $sp, 0xc0 -/* 01D360 8001C760 27B300D4 */ addiu $s3, $sp, 0xd4 -/* 01D364 8001C764 24110005 */ li $s1, 5 -/* 01D368 8001C768 241000FF */ li $s0, 255 -.L8001C76C: -/* 01D36C 8001C76C 90C4000C */ lbu $a0, 0xc($a2) -/* 01D370 8001C770 00000000 */ nop -/* 01D374 8001C774 16040004 */ bne $s0, $a0, .L8001C788 -/* 01D378 8001C778 00000000 */ nop -/* 01D37C 8001C77C 44800000 */ mtc1 $zero, $f0 -/* 01D380 8001C780 1000011D */ b .L8001CBF8 -/* 01D384 8001C784 8FBF005C */ lw $ra, 0x5c($sp) -.L8001C788: -/* 01D388 8001C788 AFA50080 */ sw $a1, 0x80($sp) -/* 01D38C 8001C78C 0C007485 */ jal func_8001D214 -/* 01D390 8001C790 AFA6006C */ sw $a2, 0x6c($sp) -/* 01D394 8001C794 8FA50080 */ lw $a1, 0x80($sp) -/* 01D398 8001C798 8FA6006C */ lw $a2, 0x6c($sp) -/* 01D39C 8001C79C 14400004 */ bnez $v0, .L8001C7B0 -/* 01D3A0 8001C7A0 00051880 */ sll $v1, $a1, 2 -/* 01D3A4 8001C7A4 44800000 */ mtc1 $zero, $f0 -/* 01D3A8 8001C7A8 10000113 */ b .L8001CBF8 -/* 01D3AC 8001C7AC 8FBF005C */ lw $ra, 0x5c($sp) -.L8001C7B0: -/* 01D3B0 8001C7B0 C452000C */ lwc1 $f18, 0xc($v0) -/* 01D3B4 8001C7B4 02637821 */ addu $t7, $s3, $v1 -/* 01D3B8 8001C7B8 E5F20000 */ swc1 $f18, ($t7) -/* 01D3BC 8001C7BC C4440010 */ lwc1 $f4, 0x10($v0) -/* 01D3C0 8001C7C0 0283C021 */ addu $t8, $s4, $v1 -/* 01D3C4 8001C7C4 E7040000 */ swc1 $f4, ($t8) -/* 01D3C8 8001C7C8 C4460014 */ lwc1 $f6, 0x14($v0) -/* 01D3CC 8001C7CC 24A50001 */ addiu $a1, $a1, 1 -/* 01D3D0 8001C7D0 02A3C821 */ addu $t9, $s5, $v1 -/* 01D3D4 8001C7D4 24C60001 */ addiu $a2, $a2, 1 -/* 01D3D8 8001C7D8 14B1FFE4 */ bne $a1, $s1, .L8001C76C -/* 01D3DC 8001C7DC E7260000 */ swc1 $f6, ($t9) -/* 01D3E0 8001C7E0 8E460000 */ lw $a2, ($s2) -/* 01D3E4 8001C7E4 02602025 */ move $a0, $s3 -/* 01D3E8 8001C7E8 0C008950 */ jal func_80022540 -/* 01D3EC 8001C7EC 00002825 */ move $a1, $zero -/* 01D3F0 8001C7F0 E7A000A8 */ swc1 $f0, 0xa8($sp) -/* 01D3F4 8001C7F4 8E460000 */ lw $a2, ($s2) -/* 01D3F8 8001C7F8 02802025 */ move $a0, $s4 -/* 01D3FC 8001C7FC 0C008950 */ jal func_80022540 -/* 01D400 8001C800 00002825 */ move $a1, $zero -/* 01D404 8001C804 8E460000 */ lw $a2, ($s2) -/* 01D408 8001C808 46000786 */ mov.s $f30, $f0 -/* 01D40C 8001C80C 02A02025 */ move $a0, $s5 -/* 01D410 8001C810 0C008950 */ jal func_80022540 -/* 01D414 8001C814 00002825 */ move $a1, $zero -/* 01D418 8001C818 E7A000A0 */ swc1 $f0, 0xa0($sp) -/* 01D41C 8001C81C C64A0008 */ lwc1 $f10, 8($s2) -/* 01D420 8001C820 44804000 */ mtc1 $zero, $f8 -/* 01D424 8001C824 4480E000 */ mtc1 $zero, $f28 -/* 01D428 8001C828 460A4032 */ c.eq.s $f8, $f10 -/* 01D42C 8001C82C 00008825 */ move $s1, $zero -/* 01D430 8001C830 45000004 */ bc1f .L8001C844 -/* 01D434 8001C834 3C01800E */ lui $at, %hi(D_800E5650) # $at, 0x800e -/* 01D438 8001C838 C4305650 */ lwc1 $f16, %lo(D_800E5650)($at) -/* 01D43C 8001C83C 00000000 */ nop -/* 01D440 8001C840 E6500008 */ swc1 $f16, 8($s2) -.L8001C844: -/* 01D444 8001C844 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 01D448 8001C848 4481E800 */ mtc1 $at, $f29 -/* 01D44C 8001C84C 00008025 */ move $s0, $zero -.L8001C850: -/* 01D450 8001C850 C6520008 */ lwc1 $f18, 8($s2) -/* 01D454 8001C854 C7A400F0 */ lwc1 $f4, 0xf0($sp) -/* 01D458 8001C858 C6480000 */ lwc1 $f8, ($s2) -/* 01D45C 8001C85C 46049182 */ mul.s $f6, $f18, $f4 -/* 01D460 8001C860 02602025 */ move $a0, $s3 -/* 01D464 8001C864 46064500 */ add.s $f20, $f8, $f6 -/* 01D468 8001C868 4600A021 */ cvt.d.s $f0, $f20 -/* 01D46C 8001C86C 4620E03E */ c.le.d $f28, $f0 -/* 01D470 8001C870 00000000 */ nop -/* 01D474 8001C874 45000004 */ bc1f .L8001C888 -/* 01D478 8001C878 00000000 */ nop -/* 01D47C 8001C87C 463C0281 */ sub.d $f10, $f0, $f28 -/* 01D480 8001C880 24110001 */ li $s1, 1 -/* 01D484 8001C884 46205520 */ cvt.s.d $f20, $f10 -.L8001C888: -/* 01D488 8001C888 4406A000 */ mfc1 $a2, $f20 -/* 01D48C 8001C88C 0C008950 */ jal func_80022540 -/* 01D490 8001C890 02202825 */ move $a1, $s1 -/* 01D494 8001C894 4406A000 */ mfc1 $a2, $f20 -/* 01D498 8001C898 46000586 */ mov.s $f22, $f0 -/* 01D49C 8001C89C 02802025 */ move $a0, $s4 -/* 01D4A0 8001C8A0 0C008950 */ jal func_80022540 -/* 01D4A4 8001C8A4 02202825 */ move $a1, $s1 -/* 01D4A8 8001C8A8 4406A000 */ mfc1 $a2, $f20 -/* 01D4AC 8001C8AC 46000606 */ mov.s $f24, $f0 -/* 01D4B0 8001C8B0 02A02025 */ move $a0, $s5 -/* 01D4B4 8001C8B4 0C008950 */ jal func_80022540 -/* 01D4B8 8001C8B8 02202825 */ move $a1, $s1 -/* 01D4BC 8001C8BC C7B000A8 */ lwc1 $f16, 0xa8($sp) -/* 01D4C0 8001C8C0 C7B200A0 */ lwc1 $f18, 0xa0($sp) -/* 01D4C4 8001C8C4 461EC601 */ sub.s $f24, $f24, $f30 -/* 01D4C8 8001C8C8 4610B581 */ sub.s $f22, $f22, $f16 -/* 01D4CC 8001C8CC 16000016 */ bnez $s0, .L8001C928 -/* 01D4D0 8001C8D0 46120681 */ sub.s $f26, $f0, $f18 -/* 01D4D4 8001C8D4 4616B102 */ mul.s $f4, $f22, $f22 -/* 01D4D8 8001C8D8 00008825 */ move $s1, $zero -/* 01D4DC 8001C8DC 4618C202 */ mul.s $f8, $f24, $f24 -/* 01D4E0 8001C8E0 00000000 */ nop -/* 01D4E4 8001C8E4 461AD282 */ mul.s $f10, $f26, $f26 -/* 01D4E8 8001C8E8 46082180 */ add.s $f6, $f4, $f8 -/* 01D4EC 8001C8EC 0C0326B4 */ jal sqrtf -/* 01D4F0 8001C8F0 460A3300 */ add.s $f12, $f6, $f10 -/* 01D4F4 8001C8F4 C7B000F0 */ lwc1 $f16, 0xf0($sp) -/* 01D4F8 8001C8F8 44809000 */ mtc1 $zero, $f18 -/* 01D4FC 8001C8FC 46100083 */ div.s $f2, $f0, $f16 -/* 01D500 8001C900 C7A800F4 */ lwc1 $f8, 0xf4($sp) -/* 01D504 8001C904 46029032 */ c.eq.s $f18, $f2 -/* 01D508 8001C908 00000000 */ nop -/* 01D50C 8001C90C 45010006 */ bc1t .L8001C928 -/* 01D510 8001C910 00000000 */ nop -/* 01D514 8001C914 46024183 */ div.s $f6, $f8, $f2 -/* 01D518 8001C918 C6440008 */ lwc1 $f4, 8($s2) -/* 01D51C 8001C91C 00000000 */ nop -/* 01D520 8001C920 46062282 */ mul.s $f10, $f4, $f6 -/* 01D524 8001C924 E64A0008 */ swc1 $f10, 8($s2) -.L8001C928: -/* 01D528 8001C928 26100001 */ addiu $s0, $s0, 1 -/* 01D52C 8001C92C 24010002 */ li $at, 2 -/* 01D530 8001C930 1601FFC7 */ bne $s0, $at, .L8001C850 -/* 01D534 8001C934 00000000 */ nop -/* 01D538 8001C938 8FA200EC */ lw $v0, 0xec($sp) -/* 01D53C 8001C93C E6540000 */ swc1 $f20, ($s2) -/* 01D540 8001C940 C7B000A8 */ lwc1 $f16, 0xa8($sp) -/* 01D544 8001C944 C7A800A0 */ lwc1 $f8, 0xa0($sp) -/* 01D548 8001C948 4610B480 */ add.s $f18, $f22, $f16 -/* 01D54C 8001C94C 461EC780 */ add.s $f30, $f24, $f30 -/* 01D550 8001C950 E7B200A8 */ swc1 $f18, 0xa8($sp) -/* 01D554 8001C954 4608D100 */ add.s $f4, $f26, $f8 -/* 01D558 8001C958 E7BE0088 */ swc1 $f30, 0x88($sp) -/* 01D55C 8001C95C E7A400A0 */ swc1 $f4, 0xa0($sp) -/* 01D560 8001C960 C7A600A8 */ lwc1 $f6, 0xa8($sp) -/* 01D564 8001C964 C44A000C */ lwc1 $f10, 0xc($v0) -/* 01D568 8001C968 C4500010 */ lwc1 $f16, 0x10($v0) -/* 01D56C 8001C96C 460A3581 */ sub.s $f22, $f6, $f10 -/* 01D570 8001C970 C7B200A0 */ lwc1 $f18, 0xa0($sp) -/* 01D574 8001C974 4616B102 */ mul.s $f4, $f22, $f22 -/* 01D578 8001C978 4610F601 */ sub.s $f24, $f30, $f16 -/* 01D57C 8001C97C C4480014 */ lwc1 $f8, 0x14($v0) -/* 01D580 8001C980 E7B600A8 */ swc1 $f22, 0xa8($sp) -/* 01D584 8001C984 4618C182 */ mul.s $f6, $f24, $f24 -/* 01D588 8001C988 46089681 */ sub.s $f26, $f18, $f8 -/* 01D58C 8001C98C E7BA00A0 */ swc1 $f26, 0xa0($sp) -/* 01D590 8001C990 461AD402 */ mul.s $f16, $f26, $f26 -/* 01D594 8001C994 46062280 */ add.s $f10, $f4, $f6 -/* 01D598 8001C998 4600C786 */ mov.s $f30, $f24 -/* 01D59C 8001C99C 0C0326B4 */ jal sqrtf -/* 01D5A0 8001C9A0 46105300 */ add.s $f12, $f10, $f16 -/* 01D5A4 8001C9A4 44809000 */ mtc1 $zero, $f18 -/* 01D5A8 8001C9A8 C7AA00A8 */ lwc1 $f10, 0xa8($sp) -/* 01D5AC 8001C9AC 46120032 */ c.eq.s $f0, $f18 -/* 01D5B0 8001C9B0 460A5402 */ mul.s $f16, $f10, $f10 -/* 01D5B4 8001C9B4 4501000D */ bc1t .L8001C9EC -/* 01D5B8 8001C9B8 3C01800E */ lui $at, %hi(D_800E565C) # $at, 0x800e -/* 01D5BC 8001C9BC C4295658 */ lwc1 $f9, %lo(D_800E5658)($at) -/* 01D5C0 8001C9C0 C428565C */ lwc1 $f8, %lo(D_800E565C)($at) -/* 01D5C4 8001C9C4 46000121 */ cvt.d.s $f4, $f0 -/* 01D5C8 8001C9C8 00000000 */ nop -/* 01D5CC 8001C9CC 46244183 */ div.d $f6, $f8, $f4 -/* 01D5D0 8001C9D0 46203520 */ cvt.s.d $f20, $f6 -/* 01D5D4 8001C9D4 4614B582 */ mul.s $f22, $f22, $f20 -/* 01D5D8 8001C9D8 00000000 */ nop -/* 01D5DC 8001C9DC 4614C602 */ mul.s $f24, $f24, $f20 -/* 01D5E0 8001C9E0 00000000 */ nop -/* 01D5E4 8001C9E4 4614D682 */ mul.s $f26, $f26, $f20 -/* 01D5E8 8001C9E8 00000000 */ nop -.L8001C9EC: -/* 01D5EC 8001C9EC 461EF482 */ mul.s $f18, $f30, $f30 -/* 01D5F0 8001C9F0 C7A400A0 */ lwc1 $f4, 0xa0($sp) -/* 01D5F4 8001C9F4 00000000 */ nop -/* 01D5F8 8001C9F8 46042182 */ mul.s $f6, $f4, $f4 -/* 01D5FC 8001C9FC 46128200 */ add.s $f8, $f16, $f18 -/* 01D600 8001CA00 0C0326B4 */ jal sqrtf -/* 01D604 8001CA04 46064300 */ add.s $f12, $f8, $f6 -/* 01D608 8001CA08 3C014180 */ li $at, 0x41800000 # 16.000000 -/* 01D60C 8001CA0C 44815000 */ mtc1 $at, $f10 -/* 01D610 8001CA10 C7B000F4 */ lwc1 $f16, 0xf4($sp) -/* 01D614 8001CA14 460A0503 */ div.s $f20, $f0, $f10 -/* 01D618 8001CA18 4614803C */ c.lt.s $f16, $f20 -/* 01D61C 8001CA1C 00000000 */ nop -/* 01D620 8001CA20 45000002 */ bc1f .L8001CA2C -/* 01D624 8001CA24 00000000 */ nop -/* 01D628 8001CA28 46008506 */ mov.s $f20, $f16 -.L8001CA2C: -/* 01D62C 8001CA2C 4600A4A1 */ cvt.d.s $f18, $f20 -/* 01D630 8001CA30 4632E03E */ c.le.d $f28, $f18 -/* 01D634 8001CA34 00000000 */ nop -/* 01D638 8001CA38 4500003C */ bc1f .L8001CB2C -/* 01D63C 8001CA3C 8FAB00EC */ lw $t3, 0xec($sp) -/* 01D640 8001CA40 4600B306 */ mov.s $f12, $f22 -/* 01D644 8001CA44 0C01C1D4 */ jal func_80070750 -/* 01D648 8001CA48 4600D386 */ mov.s $f14, $f26 -/* 01D64C 8001CA4C 8FA800EC */ lw $t0, 0xec($sp) -/* 01D650 8001CA50 24018000 */ li $at, -32768 -/* 01D654 8001CA54 85030000 */ lh $v1, ($t0) -/* 01D658 8001CA58 34148001 */ li $s4, 32769 -/* 01D65C 8001CA5C 3069FFFF */ andi $t1, $v1, 0xffff -/* 01D660 8001CA60 00498023 */ subu $s0, $v0, $t1 -/* 01D664 8001CA64 02018021 */ addu $s0, $s0, $at -/* 01D668 8001CA68 0214082A */ slt $at, $s0, $s4 -/* 01D66C 8001CA6C 14200003 */ bnez $at, .L8001CA7C -/* 01D670 8001CA70 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 01D674 8001CA74 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 01D678 8001CA78 02018021 */ addu $s0, $s0, $at -.L8001CA7C: -/* 01D67C 8001CA7C 2A018000 */ slti $at, $s0, -0x8000 -/* 01D680 8001CA80 10200002 */ beqz $at, .L8001CA8C -/* 01D684 8001CA84 3401FFFF */ li $at, 65535 -/* 01D688 8001CA88 02018021 */ addu $s0, $s0, $at -.L8001CA8C: -/* 01D68C 8001CA8C 444AF800 */ cfc1 $t2, $31 -/* 01D690 8001CA90 C7A400F0 */ lwc1 $f4, 0xf0($sp) -/* 01D694 8001CA94 35410003 */ ori $at, $t2, 3 -/* 01D698 8001CA98 38210002 */ xori $at, $at, 2 -/* 01D69C 8001CA9C 44C1F800 */ ctc1 $at, $31 -/* 01D6A0 8001CAA0 8FAE00EC */ lw $t6, 0xec($sp) -/* 01D6A4 8001CAA4 46002224 */ cvt.w.s $f8, $f4 -/* 01D6A8 8001CAA8 3C01437F */ li $at, 0x437F0000 # 255.000000 -/* 01D6AC 8001CAAC 44134000 */ mfc1 $s3, $f8 -/* 01D6B0 8001CAB0 44CAF800 */ ctc1 $t2, $31 -/* 01D6B4 8001CAB4 02130019 */ multu $s0, $s3 -/* 01D6B8 8001CAB8 44817000 */ mtc1 $at, $f14 -/* 01D6BC 8001CABC 4600C306 */ mov.s $f12, $f24 -/* 01D6C0 8001CAC0 00005812 */ mflo $t3 -/* 01D6C4 8001CAC4 000B6103 */ sra $t4, $t3, 4 -/* 01D6C8 8001CAC8 006C6821 */ addu $t5, $v1, $t4 -/* 01D6CC 8001CACC 0C01C1D4 */ jal func_80070750 -/* 01D6D0 8001CAD0 A5CD0000 */ sh $t5, ($t6) -/* 01D6D4 8001CAD4 8FAF00EC */ lw $t7, 0xec($sp) -/* 01D6D8 8001CAD8 00000000 */ nop -/* 01D6DC 8001CADC 85E30002 */ lh $v1, 2($t7) -/* 01D6E0 8001CAE0 00000000 */ nop -/* 01D6E4 8001CAE4 3078FFFF */ andi $t8, $v1, 0xffff -/* 01D6E8 8001CAE8 00588023 */ subu $s0, $v0, $t8 -/* 01D6EC 8001CAEC 0214082A */ slt $at, $s0, $s4 -/* 01D6F0 8001CAF0 14200003 */ bnez $at, .L8001CB00 -/* 01D6F4 8001CAF4 3C01FFFF */ lui $at, (0xFFFF0001 >> 16) # lui $at, 0xffff -/* 01D6F8 8001CAF8 34210001 */ ori $at, (0xFFFF0001 & 0xFFFF) # ori $at, $at, 1 -/* 01D6FC 8001CAFC 02018021 */ addu $s0, $s0, $at -.L8001CB00: -/* 01D700 8001CB00 2A018000 */ slti $at, $s0, -0x8000 -/* 01D704 8001CB04 10200002 */ beqz $at, .L8001CB10 -/* 01D708 8001CB08 3401FFFF */ li $at, 65535 -/* 01D70C 8001CB0C 02018021 */ addu $s0, $s0, $at -.L8001CB10: -/* 01D710 8001CB10 02130019 */ multu $s0, $s3 -/* 01D714 8001CB14 8FAA00EC */ lw $t2, 0xec($sp) -/* 01D718 8001CB18 0000C812 */ mflo $t9 -/* 01D71C 8001CB1C 00194103 */ sra $t0, $t9, 4 -/* 01D720 8001CB20 00684821 */ addu $t1, $v1, $t0 -/* 01D724 8001CB24 A5490002 */ sh $t1, 2($t2) -/* 01D728 8001CB28 8FAB00EC */ lw $t3, 0xec($sp) -.L8001CB2C: -/* 01D72C 8001CB2C 34108000 */ li $s0, 32768 -/* 01D730 8001CB30 856C0000 */ lh $t4, ($t3) -/* 01D734 8001CB34 A5600004 */ sh $zero, 4($t3) -/* 01D738 8001CB38 01902021 */ addu $a0, $t4, $s0 -/* 01D73C 8001CB3C 00046C00 */ sll $t5, $a0, 0x10 -/* 01D740 8001CB40 0C01C1F1 */ jal func_800707C4 -/* 01D744 8001CB44 000D2403 */ sra $a0, $t5, 0x10 -/* 01D748 8001CB48 8FAF00EC */ lw $t7, 0xec($sp) -/* 01D74C 8001CB4C 46140582 */ mul.s $f22, $f0, $f20 -/* 01D750 8001CB50 85F80000 */ lh $t8, ($t7) -/* 01D754 8001CB54 00000000 */ nop -/* 01D758 8001CB58 03102021 */ addu $a0, $t8, $s0 -/* 01D75C 8001CB5C 0004CC00 */ sll $t9, $a0, 0x10 -/* 01D760 8001CB60 0C01C1FE */ jal func_800707F8 -/* 01D764 8001CB64 00192403 */ sra $a0, $t9, 0x10 -/* 01D768 8001CB68 C7A600F0 */ lwc1 $f6, 0xf0($sp) -/* 01D76C 8001CB6C 8FA400EC */ lw $a0, 0xec($sp) -/* 01D770 8001CB70 4606B282 */ mul.s $f10, $f22, $f6 -/* 01D774 8001CB74 24060000 */ li $a2, 0 -/* 01D778 8001CB78 46140402 */ mul.s $f16, $f0, $f20 -/* 01D77C 8001CB7C 44055000 */ mfc1 $a1, $f10 -/* 01D780 8001CB80 46068482 */ mul.s $f18, $f16, $f6 -/* 01D784 8001CB84 44079000 */ mfc1 $a3, $f18 -/* 01D788 8001CB88 0C00455C */ jal func_80011570 -/* 01D78C 8001CB8C 00000000 */ nop -/* 01D790 8001CB90 C7A40088 */ lwc1 $f4, 0x88($sp) -/* 01D794 8001CB94 8FA900EC */ lw $t1, 0xec($sp) -/* 01D798 8001CB98 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 01D79C 8001CB9C E5240010 */ swc1 $f4, 0x10($t1) -/* 01D7A0 8001CBA0 C7A800F0 */ lwc1 $f8, 0xf0($sp) -/* 01D7A4 8001CBA4 44818000 */ mtc1 $at, $f16 -/* 01D7A8 8001CBA8 4608A282 */ mul.s $f10, $f20, $f8 -/* 01D7AC 8001CBAC 00000000 */ nop -/* 01D7B0 8001CBB0 46105502 */ mul.s $f20, $f10, $f16 -/* 01D7B4 8001CBB4 1220000E */ beqz $s1, .L8001CBF0 -/* 01D7B8 8001CBB8 00000000 */ nop -/* 01D7BC 8001CBBC 924A000D */ lbu $t2, 0xd($s2) -/* 01D7C0 8001CBC0 924B000E */ lbu $t3, 0xe($s2) -/* 01D7C4 8001CBC4 924C000F */ lbu $t4, 0xf($s2) -/* 01D7C8 8001CBC8 924D0010 */ lbu $t5, 0x10($s2) -/* 01D7CC 8001CBCC A24A000C */ sb $t2, 0xc($s2) -/* 01D7D0 8001CBD0 A24B000D */ sb $t3, 0xd($s2) -/* 01D7D4 8001CBD4 A24C000E */ sb $t4, 0xe($s2) -/* 01D7D8 8001CBD8 A24D000F */ sb $t5, 0xf($s2) -/* 01D7DC 8001CBDC 8FA600F8 */ lw $a2, 0xf8($sp) -/* 01D7E0 8001CBE0 318500FF */ andi $a1, $t4, 0xff -/* 01D7E4 8001CBE4 0C007312 */ jal func_8001CC48 -/* 01D7E8 8001CBE8 31A400FF */ andi $a0, $t5, 0xff -/* 01D7EC 8001CBEC A2420010 */ sb $v0, 0x10($s2) -.L8001CBF0: -/* 01D7F0 8001CBF0 4600A006 */ mov.s $f0, $f20 -/* 01D7F4 8001CBF4 8FBF005C */ lw $ra, 0x5c($sp) -.L8001CBF8: -/* 01D7F8 8001CBF8 C7B50010 */ lwc1 $f21, 0x10($sp) -/* 01D7FC 8001CBFC C7B40014 */ lwc1 $f20, 0x14($sp) -/* 01D800 8001CC00 C7B70018 */ lwc1 $f23, 0x18($sp) -/* 01D804 8001CC04 C7B6001C */ lwc1 $f22, 0x1c($sp) -/* 01D808 8001CC08 C7B90020 */ lwc1 $f25, 0x20($sp) -/* 01D80C 8001CC0C C7B80024 */ lwc1 $f24, 0x24($sp) -/* 01D810 8001CC10 C7BB0028 */ lwc1 $f27, 0x28($sp) -/* 01D814 8001CC14 C7BA002C */ lwc1 $f26, 0x2c($sp) -/* 01D818 8001CC18 C7BD0030 */ lwc1 $f29, 0x30($sp) -/* 01D81C 8001CC1C C7BC0034 */ lwc1 $f28, 0x34($sp) -/* 01D820 8001CC20 C7BF0038 */ lwc1 $f31, 0x38($sp) -/* 01D824 8001CC24 C7BE003C */ lwc1 $f30, 0x3c($sp) -/* 01D828 8001CC28 8FB00044 */ lw $s0, 0x44($sp) -/* 01D82C 8001CC2C 8FB10048 */ lw $s1, 0x48($sp) -/* 01D830 8001CC30 8FB2004C */ lw $s2, 0x4c($sp) -/* 01D834 8001CC34 8FB30050 */ lw $s3, 0x50($sp) -/* 01D838 8001CC38 8FB40054 */ lw $s4, 0x54($sp) -/* 01D83C 8001CC3C 8FB50058 */ lw $s5, 0x58($sp) -/* 01D840 8001CC40 03E00008 */ jr $ra -/* 01D844 8001CC44 27BD00E8 */ addiu $sp, $sp, 0xe8 - -glabel func_8001CC48 -/* 01D848 8001CC48 27BDFFF8 */ addiu $sp, $sp, -8 -/* 01D84C 8001CC4C AFB00004 */ sw $s0, 4($sp) -/* 01D850 8001CC50 2881FFFF */ slti $at, $a0, -1 -/* 01D854 8001CC54 14200004 */ bnez $at, .L8001CC68 -/* 01D858 8001CC58 00A08025 */ move $s0, $a1 -/* 01D85C 8001CC5C 28810080 */ slti $at, $a0, 0x80 -/* 01D860 8001CC60 14200003 */ bnez $at, .L8001CC70 -/* 01D864 8001CC64 3C0E8012 */ lui $t6, %hi(D_8011AF04) # $t6, 0x8012 -.L8001CC68: -/* 01D868 8001CC68 1000002C */ b .L8001CD1C -/* 01D86C 8001CC6C 240200FF */ li $v0, 255 -.L8001CC70: -/* 01D870 8001CC70 8DCEAF04 */ lw $t6, %lo(D_8011AF04)($t6) -/* 01D874 8001CC74 00047880 */ sll $t7, $a0, 2 -/* 01D878 8001CC78 01CFC021 */ addu $t8, $t6, $t7 -/* 01D87C 8001CC7C 8F020000 */ lw $v0, ($t8) -/* 01D880 8001CC80 30D90003 */ andi $t9, $a2, 3 -/* 01D884 8001CC84 14400003 */ bnez $v0, .L8001CC94 -/* 01D888 8001CC88 00002825 */ move $a1, $zero -/* 01D88C 8001CC8C 10000023 */ b .L8001CD1C -/* 01D890 8001CC90 240200FF */ li $v0, 255 -.L8001CC94: -/* 01D894 8001CC94 8C440064 */ lw $a0, 0x64($v0) -/* 01D898 8001CC98 8C43003C */ lw $v1, 0x3c($v0) -/* 01D89C 8001CC9C 00994021 */ addu $t0, $a0, $t9 -/* 01D8A0 8001CCA0 81070018 */ lb $a3, 0x18($t0) -/* 01D8A4 8001CCA4 240400FF */ li $a0, 255 -/* 01D8A8 8001CCA8 24E70001 */ addiu $a3, $a3, 1 -/* 01D8AC 8001CCAC 30EA0003 */ andi $t2, $a3, 3 -/* 01D8B0 8001CCB0 01403825 */ move $a3, $t2 -/* 01D8B4 8001CCB4 00004825 */ move $t1, $zero -.L8001CCB8: -/* 01D8B8 8001CCB8 00675821 */ addu $t3, $v1, $a3 -/* 01D8BC 8001CCBC 9162000A */ lbu $v0, 0xa($t3) -/* 01D8C0 8001CCC0 00000000 */ nop -/* 01D8C4 8001CCC4 10820006 */ beq $a0, $v0, .L8001CCE0 -/* 01D8C8 8001CCC8 00000000 */ nop -/* 01D8CC 8001CCCC 12020005 */ beq $s0, $v0, .L8001CCE4 -/* 01D8D0 8001CCD0 25290001 */ addiu $t1, $t1, 1 -/* 01D8D4 8001CCD4 A1070018 */ sb $a3, 0x18($t0) -/* 01D8D8 8001CCD8 24090004 */ li $t1, 4 -/* 01D8DC 8001CCDC 24A50001 */ addiu $a1, $a1, 1 -.L8001CCE0: -/* 01D8E0 8001CCE0 25290001 */ addiu $t1, $t1, 1 -.L8001CCE4: -/* 01D8E4 8001CCE4 24E70001 */ addiu $a3, $a3, 1 -/* 01D8E8 8001CCE8 29210004 */ slti $at, $t1, 4 -/* 01D8EC 8001CCEC 30EC0003 */ andi $t4, $a3, 3 -/* 01D8F0 8001CCF0 1420FFF1 */ bnez $at, .L8001CCB8 -/* 01D8F4 8001CCF4 01803825 */ move $a3, $t4 -/* 01D8F8 8001CCF8 14A00003 */ bnez $a1, .L8001CD08 -/* 01D8FC 8001CCFC 00000000 */ nop -/* 01D900 8001CD00 10000006 */ b .L8001CD1C -/* 01D904 8001CD04 240200FF */ li $v0, 255 -.L8001CD08: -/* 01D908 8001CD08 810D0018 */ lb $t5, 0x18($t0) -/* 01D90C 8001CD0C 00000000 */ nop -/* 01D910 8001CD10 006D7021 */ addu $t6, $v1, $t5 -/* 01D914 8001CD14 91C2000A */ lbu $v0, 0xa($t6) -/* 01D918 8001CD18 00000000 */ nop -.L8001CD1C: -/* 01D91C 8001CD1C 8FB00004 */ lw $s0, 4($sp) -/* 01D920 8001CD20 03E00008 */ jr $ra -/* 01D924 8001CD24 27BD0008 */ addiu $sp, $sp, 8 - -glabel func_8001CD28 -/* 01D928 8001CD28 27BDFC88 */ addiu $sp, $sp, -0x378 -/* 01D92C 8001CD2C AFB60020 */ sw $s6, 0x20($sp) -/* 01D930 8001CD30 00A0B025 */ move $s6, $a1 -/* 01D934 8001CD34 AFBF002C */ sw $ra, 0x2c($sp) -/* 01D938 8001CD38 AFBE0028 */ sw $fp, 0x28($sp) -/* 01D93C 8001CD3C AFB70024 */ sw $s7, 0x24($sp) -/* 01D940 8001CD40 AFB5001C */ sw $s5, 0x1c($sp) -/* 01D944 8001CD44 AFB40018 */ sw $s4, 0x18($sp) -/* 01D948 8001CD48 AFB30014 */ sw $s3, 0x14($sp) -/* 01D94C 8001CD4C AFB20010 */ sw $s2, 0x10($sp) -/* 01D950 8001CD50 AFB1000C */ sw $s1, 0xc($sp) -/* 01D954 8001CD54 AFB00008 */ sw $s0, 8($sp) -/* 01D958 8001CD58 AFA40378 */ sw $a0, 0x378($sp) -/* 01D95C 8001CD5C AFA60380 */ sw $a2, 0x380($sp) -/* 01D960 8001CD60 AFA70384 */ sw $a3, 0x384($sp) -/* 01D964 8001CD64 00006825 */ move $t5, $zero -/* 01D968 8001CD68 27AA0154 */ addiu $t2, $sp, 0x154 -.L8001CD6C: -/* 01D96C 8001CD6C 000D7080 */ sll $t6, $t5, 2 -/* 01D970 8001CD70 25AD0001 */ addiu $t5, $t5, 1 -/* 01D974 8001CD74 000DC400 */ sll $t8, $t5, 0x10 -/* 01D978 8001CD78 00186C03 */ sra $t5, $t8, 0x10 -/* 01D97C 8001CD7C 014E7821 */ addu $t7, $t2, $t6 -/* 01D980 8001CD80 29A10080 */ slti $at, $t5, 0x80 -/* 01D984 8001CD84 1420FFF9 */ bnez $at, .L8001CD6C -/* 01D988 8001CD88 ADE00000 */ sw $zero, ($t7) -/* 01D98C 8001CD8C 8FAE0378 */ lw $t6, 0x378($sp) -/* 01D990 8001CD90 3C038012 */ lui $v1, %hi(D_8011AF04) # $v1, 0x8012 -/* 01D994 8001CD94 8C63AF04 */ lw $v1, %lo(D_8011AF04)($v1) -/* 01D998 8001CD98 000E7880 */ sll $t7, $t6, 2 -/* 01D99C 8001CD9C 006F2021 */ addu $a0, $v1, $t7 -/* 01D9A0 8001CDA0 8C820000 */ lw $v0, ($a0) -/* 01D9A4 8001CDA4 24180001 */ li $t8, 1 -/* 01D9A8 8001CDA8 8C540064 */ lw $s4, 0x64($v0) -/* 01D9AC 8001CDAC 8C51003C */ lw $s1, 0x3c($v0) -/* 01D9B0 8001CDB0 8FBE0370 */ lw $fp, 0x370($sp) -/* 01D9B4 8001CDB4 87A6036C */ lh $a2, 0x36c($sp) -/* 01D9B8 8001CDB8 00004825 */ move $t1, $zero -/* 01D9BC 8001CDBC 0000F825 */ move $ra, $zero -/* 01D9C0 8001CDC0 241200FF */ li $s2, 255 -/* 01D9C4 8001CDC4 00009825 */ move $s3, $zero -/* 01D9C8 8001CDC8 A3B80363 */ sb $t8, 0x363($sp) -/* 01D9CC 8001CDCC 0000A825 */ move $s5, $zero -/* 01D9D0 8001CDD0 AFA4004C */ sw $a0, 0x4c($sp) -/* 01D9D4 8001CDD4 241700FF */ li $s7, 255 -/* 01D9D8 8001CDD8 27AB0054 */ addiu $t3, $sp, 0x54 -/* 01D9DC 8001CDDC 27A800D4 */ addiu $t0, $sp, 0xd4 -/* 01D9E0 8001CDE0 AFA30050 */ sw $v1, 0x50($sp) -/* 01D9E4 8001CDE4 00006825 */ move $t5, $zero -.L8001CDE8: -/* 01D9E8 8001CDE8 000DC880 */ sll $t9, $t5, 2 -.L8001CDEC: -/* 01D9EC 8001CDEC 02997021 */ addu $t6, $s4, $t9 -/* 01D9F0 8001CDF0 8DCF0000 */ lw $t7, ($t6) -/* 01D9F4 8001CDF4 8FB80378 */ lw $t8, 0x378($sp) -/* 01D9F8 8001CDF8 11E0008A */ beqz $t7, .L8001D024 -/* 01D9FC 8001CDFC 022D8021 */ addu $s0, $s1, $t5 -/* 01DA00 8001CE00 92230009 */ lbu $v1, 9($s1) -/* 01DA04 8001CE04 9202000A */ lbu $v0, 0xa($s0) -/* 01DA08 8001CE08 17030005 */ bne $t8, $v1, .L8001CE20 -/* 01DA0C 8001CE0C 24070001 */ li $a3, 1 -/* 01DA10 8001CE10 8FB90380 */ lw $t9, 0x380($sp) -/* 01DA14 8001CE14 00000000 */ nop -/* 01DA18 8001CE18 10590007 */ beq $v0, $t9, .L8001CE38 -/* 01DA1C 8001CE1C 00000000 */ nop -.L8001CE20: -/* 01DA20 8001CE20 8FAE0380 */ lw $t6, 0x380($sp) -/* 01DA24 8001CE24 8FAF0378 */ lw $t7, 0x378($sp) -/* 01DA28 8001CE28 15C30009 */ bne $t6, $v1, .L8001CE50 -/* 01DA2C 8001CE2C 00000000 */ nop -/* 01DA30 8001CE30 144F0007 */ bne $v0, $t7, .L8001CE50 -/* 01DA34 8001CE34 00000000 */ nop -.L8001CE38: -/* 01DA38 8001CE38 12A00002 */ beqz $s5, .L8001CE44 -/* 01DA3C 8001CE3C 00003825 */ move $a3, $zero -/* 01DA40 8001CE40 24070001 */ li $a3, 1 -.L8001CE44: -/* 01DA44 8001CE44 26B50001 */ addiu $s5, $s5, 1 -/* 01DA48 8001CE48 0015C600 */ sll $t8, $s5, 0x18 -/* 01DA4C 8001CE4C 0018AE03 */ sra $s5, $t8, 0x18 -.L8001CE50: -/* 01DA50 8001CE50 10E00022 */ beqz $a3, .L8001CEDC -/* 01DA54 8001CE54 2524FFFF */ addiu $a0, $t1, -1 -/* 01DA58 8001CE58 00003025 */ move $a2, $zero -/* 01DA5C 8001CE5C 19200010 */ blez $t1, .L8001CEA0 -/* 01DA60 8001CE60 00003825 */ move $a3, $zero -/* 01DA64 8001CE64 83AE00D4 */ lb $t6, 0xd4($sp) -/* 01DA68 8001CE68 00000000 */ nop -/* 01DA6C 8001CE6C 104E000D */ beq $v0, $t6, .L8001CEA4 -/* 01DA70 8001CE70 000D7840 */ sll $t7, $t5, 1 -.L8001CE74: -/* 01DA74 8001CE74 24C60001 */ addiu $a2, $a2, 1 -/* 01DA78 8001CE78 00067C00 */ sll $t7, $a2, 0x10 -/* 01DA7C 8001CE7C 000FC403 */ sra $t8, $t7, 0x10 -/* 01DA80 8001CE80 0309082A */ slt $at, $t8, $t1 -/* 01DA84 8001CE84 10200006 */ beqz $at, .L8001CEA0 -/* 01DA88 8001CE88 03003025 */ move $a2, $t8 -/* 01DA8C 8001CE8C 0118C821 */ addu $t9, $t0, $t8 -/* 01DA90 8001CE90 832E0000 */ lb $t6, ($t9) -/* 01DA94 8001CE94 00000000 */ nop -/* 01DA98 8001CE98 144EFFF6 */ bne $v0, $t6, .L8001CE74 -/* 01DA9C 8001CE9C 00000000 */ nop -.L8001CEA0: -/* 01DAA0 8001CEA0 000D7840 */ sll $t7, $t5, 1 -.L8001CEA4: -/* 01DAA4 8001CEA4 028FC021 */ addu $t8, $s4, $t7 -/* 01DAA8 8001CEA8 87190010 */ lh $t9, 0x10($t8) -/* 01DAAC 8001CEAC 14C90003 */ bne $a2, $t1, .L8001CEBC -/* 01DAB0 8001CEB0 033FF021 */ addu $fp, $t9, $ra -/* 01DAB4 8001CEB4 10000009 */ b .L8001CEDC -/* 01DAB8 8001CEB8 24070002 */ li $a3, 2 -.L8001CEBC: -/* 01DABC 8001CEBC 00027080 */ sll $t6, $v0, 2 -/* 01DAC0 8001CEC0 014E7821 */ addu $t7, $t2, $t6 -/* 01DAC4 8001CEC4 8DF80000 */ lw $t8, ($t7) -/* 01DAC8 8001CEC8 00000000 */ nop -/* 01DACC 8001CECC 03D8082A */ slt $at, $fp, $t8 -/* 01DAD0 8001CED0 10200002 */ beqz $at, .L8001CEDC -/* 01DAD4 8001CED4 00000000 */ nop -/* 01DAD8 8001CED8 24070001 */ li $a3, 1 -.L8001CEDC: -/* 01DADC 8001CEDC 10E00051 */ beqz $a3, .L8001D024 -/* 01DAE0 8001CEE0 0002C880 */ sll $t9, $v0, 2 -/* 01DAE4 8001CEE4 00C4082A */ slt $at, $a2, $a0 -/* 01DAE8 8001CEE8 1020000C */ beqz $at, .L8001CF1C -/* 01DAEC 8001CEEC 01596021 */ addu $t4, $t2, $t9 -.L8001CEF0: -/* 01DAF0 8001CEF0 01061021 */ addu $v0, $t0, $a2 -/* 01DAF4 8001CEF4 01661821 */ addu $v1, $t3, $a2 -/* 01DAF8 8001CEF8 24C60001 */ addiu $a2, $a2, 1 -/* 01DAFC 8001CEFC 0006C400 */ sll $t8, $a2, 0x10 -/* 01DB00 8001CF00 804E0001 */ lb $t6, 1($v0) -/* 01DB04 8001CF04 806F0001 */ lb $t7, 1($v1) -/* 01DB08 8001CF08 00183403 */ sra $a2, $t8, 0x10 -/* 01DB0C 8001CF0C 00C4082A */ slt $at, $a2, $a0 -/* 01DB10 8001CF10 A04E0000 */ sb $t6, ($v0) -/* 01DB14 8001CF14 1420FFF6 */ bnez $at, .L8001CEF0 -/* 01DB18 8001CF18 A06F0000 */ sb $t7, ($v1) -.L8001CF1C: -/* 01DB1C 8001CF1C 24010002 */ li $at, 2 -/* 01DB20 8001CF20 14E10005 */ bne $a3, $at, .L8001CF38 -/* 01DB24 8001CF24 00000000 */ nop -/* 01DB28 8001CF28 25290001 */ addiu $t1, $t1, 1 -/* 01DB2C 8001CF2C 00097400 */ sll $t6, $t1, 0x10 -/* 01DB30 8001CF30 000E4C03 */ sra $t1, $t6, 0x10 -/* 01DB34 8001CF34 2524FFFF */ addiu $a0, $t1, -1 -.L8001CF38: -/* 01DB38 8001CF38 AD9E0000 */ sw $fp, ($t4) -/* 01DB3C 8001CF3C 00041400 */ sll $v0, $a0, 0x10 -/* 01DB40 8001CF40 83AE0363 */ lb $t6, 0x363($sp) -/* 01DB44 8001CF44 00043400 */ sll $a2, $a0, 0x10 -/* 01DB48 8001CF48 0002CC03 */ sra $t9, $v0, 0x10 -/* 01DB4C 8001CF4C 0006C403 */ sra $t8, $a2, 0x10 -/* 01DB50 8001CF50 03003025 */ move $a2, $t8 -/* 01DB54 8001CF54 03201025 */ move $v0, $t9 -/* 01DB58 8001CF58 01792821 */ addu $a1, $t3, $t9 -/* 01DB5C 8001CF5C 11C00004 */ beqz $t6, .L8001CF70 -/* 01DB60 8001CF60 01191821 */ addu $v1, $t0, $t9 -/* 01DB64 8001CF64 920F000A */ lbu $t7, 0xa($s0) -/* 01DB68 8001CF68 10000002 */ b .L8001CF74 -/* 01DB6C 8001CF6C A0AF0000 */ sb $t7, ($a1) -.L8001CF70: -/* 01DB70 8001CF70 A0B30000 */ sb $s3, ($a1) -.L8001CF74: -/* 01DB74 8001CF74 9218000A */ lbu $t8, 0xa($s0) -/* 01DB78 8001CF78 1840002A */ blez $v0, .L8001D024 -/* 01DB7C 8001CF7C A0780000 */ sb $t8, ($v1) -/* 01DB80 8001CF80 8079FFFF */ lb $t9, -1($v1) -/* 01DB84 8001CF84 01061021 */ addu $v0, $t0, $a2 -/* 01DB88 8001CF88 00197080 */ sll $t6, $t9, 2 -/* 01DB8C 8001CF8C 80790000 */ lb $t9, ($v1) -/* 01DB90 8001CF90 014E7821 */ addu $t7, $t2, $t6 -/* 01DB94 8001CF94 8DF80000 */ lw $t8, ($t7) -/* 01DB98 8001CF98 00197080 */ sll $t6, $t9, 2 -/* 01DB9C 8001CF9C 014E7821 */ addu $t7, $t2, $t6 -/* 01DBA0 8001CFA0 8DF90000 */ lw $t9, ($t7) -/* 01DBA4 8001CFA4 00000000 */ nop -/* 01DBA8 8001CFA8 0319082A */ slt $at, $t8, $t9 -/* 01DBAC 8001CFAC 1020001D */ beqz $at, .L8001D024 -/* 01DBB0 8001CFB0 00000000 */ nop -/* 01DBB4 8001CFB4 80440000 */ lb $a0, ($v0) -/* 01DBB8 8001CFB8 8045FFFF */ lb $a1, -1($v0) -/* 01DBBC 8001CFBC 00000000 */ nop -/* 01DBC0 8001CFC0 01661821 */ addu $v1, $t3, $a2 -.L8001CFC4: -/* 01DBC4 8001CFC4 24C6FFFF */ addiu $a2, $a2, -1 -/* 01DBC8 8001CFC8 80670000 */ lb $a3, ($v1) -/* 01DBCC 8001CFCC 806EFFFF */ lb $t6, -1($v1) -/* 01DBD0 8001CFD0 0006C400 */ sll $t8, $a2, 0x10 -/* 01DBD4 8001CFD4 0018CC03 */ sra $t9, $t8, 0x10 -/* 01DBD8 8001CFD8 A0450000 */ sb $a1, ($v0) -/* 01DBDC 8001CFDC A044FFFF */ sb $a0, -1($v0) -/* 01DBE0 8001CFE0 03203025 */ move $a2, $t9 -/* 01DBE4 8001CFE4 A067FFFF */ sb $a3, -1($v1) -/* 01DBE8 8001CFE8 1B20000E */ blez $t9, .L8001D024 -/* 01DBEC 8001CFEC A06E0000 */ sb $t6, ($v1) -/* 01DBF0 8001CFF0 01191021 */ addu $v0, $t0, $t9 -/* 01DBF4 8001CFF4 8045FFFF */ lb $a1, -1($v0) -/* 01DBF8 8001CFF8 80440000 */ lb $a0, ($v0) -/* 01DBFC 8001CFFC 00057080 */ sll $t6, $a1, 2 -/* 01DC00 8001D000 014E7821 */ addu $t7, $t2, $t6 -/* 01DC04 8001D004 0004C880 */ sll $t9, $a0, 2 -/* 01DC08 8001D008 8DF80000 */ lw $t8, ($t7) -/* 01DC0C 8001D00C 01597021 */ addu $t6, $t2, $t9 -/* 01DC10 8001D010 8DCF0000 */ lw $t7, ($t6) -/* 01DC14 8001D014 00000000 */ nop -/* 01DC18 8001D018 030F082A */ slt $at, $t8, $t7 -/* 01DC1C 8001D01C 1420FFE9 */ bnez $at, .L8001CFC4 -/* 01DC20 8001D020 01661821 */ addu $v1, $t3, $a2 -.L8001D024: -/* 01DC24 8001D024 25AD0001 */ addiu $t5, $t5, 1 -/* 01DC28 8001D028 000DCC00 */ sll $t9, $t5, 0x10 -/* 01DC2C 8001D02C 00196C03 */ sra $t5, $t9, 0x10 -/* 01DC30 8001D030 29A10004 */ slti $at, $t5, 4 -/* 01DC34 8001D034 1420FF6D */ bnez $at, .L8001CDEC -/* 01DC38 8001D038 000DC880 */ sll $t9, $t5, 2 -/* 01DC3C 8001D03C 1920002A */ blez $t1, .L8001D0E8 -/* 01DC40 8001D040 00000000 */ nop -/* 01DC44 8001D044 2529FFFF */ addiu $t1, $t1, -1 -/* 01DC48 8001D048 0009C400 */ sll $t8, $t1, 0x10 -/* 01DC4C 8001D04C 00184C03 */ sra $t1, $t8, 0x10 -/* 01DC50 8001D050 0109C821 */ addu $t9, $t0, $t1 -/* 01DC54 8001D054 83230000 */ lb $v1, ($t9) -/* 01DC58 8001D058 8FAE0050 */ lw $t6, 0x50($sp) -/* 01DC5C 8001D05C 0003C080 */ sll $t8, $v1, 2 -/* 01DC60 8001D060 01D87821 */ addu $t7, $t6, $t8 -/* 01DC64 8001D064 8DE20000 */ lw $v0, ($t7) -/* 01DC68 8001D068 0169C821 */ addu $t9, $t3, $t1 -/* 01DC6C 8001D06C 8C51003C */ lw $s1, 0x3c($v0) -/* 01DC70 8001D070 83330000 */ lb $s3, ($t9) -/* 01DC74 8001D074 922E0009 */ lbu $t6, 9($s1) -/* 01DC78 8001D078 32D90100 */ andi $t9, $s6, 0x100 -/* 01DC7C 8001D07C 000EC080 */ sll $t8, $t6, 2 -/* 01DC80 8001D080 01587821 */ addu $t7, $t2, $t8 -/* 01DC84 8001D084 8DFF0000 */ lw $ra, ($t7) -/* 01DC88 8001D088 8C540064 */ lw $s4, 0x64($v0) -/* 01DC8C 8001D08C 13200008 */ beqz $t9, .L8001D0B0 -/* 01DC90 8001D090 A3A00363 */ sb $zero, 0x363($sp) -/* 01DC94 8001D094 32CE007F */ andi $t6, $s6, 0x7f -/* 01DC98 8001D098 15C3000C */ bne $t6, $v1, .L8001D0CC -/* 01DC9C 8001D09C 00000000 */ nop -/* 01DCA0 8001D0A0 00139400 */ sll $s2, $s3, 0x10 -/* 01DCA4 8001D0A4 0012C403 */ sra $t8, $s2, 0x10 -/* 01DCA8 8001D0A8 10000008 */ b .L8001D0CC -/* 01DCAC 8001D0AC 03009025 */ move $s2, $t8 -.L8001D0B0: -/* 01DCB0 8001D0B0 922F0008 */ lbu $t7, 8($s1) -/* 01DCB4 8001D0B4 00000000 */ nop -/* 01DCB8 8001D0B8 16CF0004 */ bne $s6, $t7, .L8001D0CC -/* 01DCBC 8001D0BC 00000000 */ nop -/* 01DCC0 8001D0C0 00139400 */ sll $s2, $s3, 0x10 -/* 01DCC4 8001D0C4 0012CC03 */ sra $t9, $s2, 0x10 -/* 01DCC8 8001D0C8 03209025 */ move $s2, $t9 -.L8001D0CC: -/* 01DCCC 8001D0CC 15200006 */ bnez $t1, .L8001D0E8 -/* 01DCD0 8001D0D0 00000000 */ nop -/* 01DCD4 8001D0D4 16570004 */ bne $s2, $s7, .L8001D0E8 -/* 01DCD8 8001D0D8 00000000 */ nop -/* 01DCDC 8001D0DC 00139400 */ sll $s2, $s3, 0x10 -/* 01DCE0 8001D0E0 00127403 */ sra $t6, $s2, 0x10 -/* 01DCE4 8001D0E4 01C09025 */ move $s2, $t6 -.L8001D0E8: -/* 01DCE8 8001D0E8 16570005 */ bne $s2, $s7, .L8001D100 -/* 01DCEC 8001D0EC 00000000 */ nop -/* 01DCF0 8001D0F0 1D20FF3D */ bgtz $t1, .L8001CDE8 -/* 01DCF4 8001D0F4 00006825 */ move $t5, $zero -/* 01DCF8 8001D0F8 AFBE0370 */ sw $fp, 0x370($sp) -/* 01DCFC 8001D0FC A7A6036C */ sh $a2, 0x36c($sp) -.L8001D100: -/* 01DD00 8001D100 1257001E */ beq $s2, $s7, .L8001D17C -/* 01DD04 8001D104 8FBF002C */ lw $ra, 0x2c($sp) -/* 01DD08 8001D108 8FB8004C */ lw $t8, 0x4c($sp) -/* 01DD0C 8001D10C 00006825 */ move $t5, $zero -/* 01DD10 8001D110 8F020000 */ lw $v0, ($t8) -/* 01DD14 8001D114 00000000 */ nop -/* 01DD18 8001D118 8C51003C */ lw $s1, 0x3c($v0) -/* 01DD1C 8001D11C 8C540064 */ lw $s4, 0x64($v0) -/* 01DD20 8001D120 922F000A */ lbu $t7, 0xa($s1) -/* 01DD24 8001D124 00000000 */ nop -/* 01DD28 8001D128 124F000D */ beq $s2, $t7, .L8001D160 -/* 01DD2C 8001D12C 29A10004 */ slti $at, $t5, 4 -.L8001D130: -/* 01DD30 8001D130 25AD0001 */ addiu $t5, $t5, 1 -/* 01DD34 8001D134 000DCC00 */ sll $t9, $t5, 0x10 -/* 01DD38 8001D138 00197403 */ sra $t6, $t9, 0x10 -/* 01DD3C 8001D13C 29C10004 */ slti $at, $t6, 4 -/* 01DD40 8001D140 10200006 */ beqz $at, .L8001D15C -/* 01DD44 8001D144 01C06825 */ move $t5, $t6 -/* 01DD48 8001D148 022EC021 */ addu $t8, $s1, $t6 -/* 01DD4C 8001D14C 930F000A */ lbu $t7, 0xa($t8) -/* 01DD50 8001D150 00000000 */ nop -/* 01DD54 8001D154 164FFFF6 */ bne $s2, $t7, .L8001D130 -/* 01DD58 8001D158 00000000 */ nop -.L8001D15C: -/* 01DD5C 8001D15C 29A10004 */ slti $at, $t5, 4 -.L8001D160: -/* 01DD60 8001D160 10200006 */ beqz $at, .L8001D17C -/* 01DD64 8001D164 8FBF002C */ lw $ra, 0x2c($sp) -/* 01DD68 8001D168 8FB90384 */ lw $t9, 0x384($sp) -/* 01DD6C 8001D16C 00000000 */ nop -/* 01DD70 8001D170 02997021 */ addu $t6, $s4, $t9 -/* 01DD74 8001D174 A1CD0018 */ sb $t5, 0x18($t6) -/* 01DD78 8001D178 8FBF002C */ lw $ra, 0x2c($sp) -.L8001D17C: -/* 01DD7C 8001D17C 02401025 */ move $v0, $s2 -/* 01DD80 8001D180 8FB20010 */ lw $s2, 0x10($sp) -/* 01DD84 8001D184 8FB00008 */ lw $s0, 8($sp) -/* 01DD88 8001D188 8FB1000C */ lw $s1, 0xc($sp) -/* 01DD8C 8001D18C 8FB30014 */ lw $s3, 0x14($sp) -/* 01DD90 8001D190 8FB40018 */ lw $s4, 0x18($sp) -/* 01DD94 8001D194 8FB5001C */ lw $s5, 0x1c($sp) -/* 01DD98 8001D198 8FB60020 */ lw $s6, 0x20($sp) -/* 01DD9C 8001D19C 8FB70024 */ lw $s7, 0x24($sp) -/* 01DDA0 8001D1A0 8FBE0028 */ lw $fp, 0x28($sp) -/* 01DDA4 8001D1A4 03E00008 */ jr $ra -/* 01DDA8 8001D1A8 27BD0378 */ addiu $sp, $sp, 0x378 - -glabel func_8001D1AC -/* 01DDAC 8001D1AC 240E0001 */ li $t6, 1 -/* 01DDB0 8001D1B0 3C018012 */ lui $at, 0x8012 -/* 01DDB4 8001D1B4 03E00008 */ jr $ra -/* 01DDB8 8001D1B8 AC2EAF10 */ sw $t6, -0x50f0($at) - -glabel func_8001D1BC -/* 01DDBC 8001D1BC 3C038012 */ lui $v1, %hi(D_8011AF08) # $v1, 0x8012 -/* 01DDC0 8001D1C0 2463AF08 */ addiu $v1, %lo(D_8011AF08) # addiu $v1, $v1, -0x50f8 -/* 01DDC4 8001D1C4 8C620000 */ lw $v0, ($v1) -/* 01DDC8 8001D1C8 00000000 */ nop -/* 01DDCC 8001D1CC 10820003 */ beq $a0, $v0, .L8001D1DC -/* 01DDD0 8001D1D0 00000000 */ nop -/* 01DDD4 8001D1D4 AC620004 */ sw $v0, 4($v1) -/* 01DDD8 8001D1D8 AC640000 */ sw $a0, ($v1) -.L8001D1DC: -/* 01DDDC 8001D1DC 03E00008 */ jr $ra -/* 01DDE0 8001D1E0 00000000 */ nop - -/* 01DDE4 8001D1E4 3C038012 */ lui $v1, %hi(D_8011AF08) # $v1, 0x8012 -/* 01DDE8 8001D1E8 2463AF08 */ addiu $v1, %lo(D_8011AF08) # addiu $v1, $v1, -0x50f8 -/* 01DDEC 8001D1EC 8C6E0004 */ lw $t6, 4($v1) -/* 01DDF0 8001D1F0 3C0F8012 */ lui $t7, %hi(D_8011AF04) # $t7, 0x8012 -/* 01DDF4 8001D1F4 AC8E0000 */ sw $t6, ($a0) -/* 01DDF8 8001D1F8 8C780004 */ lw $t8, 4($v1) -/* 01DDFC 8001D1FC 8DEFAF04 */ lw $t7, %lo(D_8011AF04)($t7) -/* 01DE00 8001D200 0018C880 */ sll $t9, $t8, 2 -/* 01DE04 8001D204 01F94021 */ addu $t0, $t7, $t9 -/* 01DE08 8001D208 8D020000 */ lw $v0, ($t0) -/* 01DE0C 8001D20C 03E00008 */ jr $ra -/* 01DE10 8001D210 00000000 */ nop - -glabel func_8001D214 -/* 01DE14 8001D214 04800009 */ bltz $a0, .L8001D23C -/* 01DE18 8001D218 28810080 */ slti $at, $a0, 0x80 -/* 01DE1C 8001D21C 10200007 */ beqz $at, .L8001D23C -/* 01DE20 8001D220 3C0E8012 */ lui $t6, %hi(D_8011AF04) # $t6, 0x8012 -/* 01DE24 8001D224 8DCEAF04 */ lw $t6, %lo(D_8011AF04)($t6) -/* 01DE28 8001D228 00047880 */ sll $t7, $a0, 2 -/* 01DE2C 8001D22C 01CFC021 */ addu $t8, $t6, $t7 -/* 01DE30 8001D230 8F020000 */ lw $v0, ($t8) -/* 01DE34 8001D234 03E00008 */ jr $ra -/* 01DE38 8001D238 00000000 */ nop - -.L8001D23C: -/* 01DE3C 8001D23C 00001025 */ move $v0, $zero -/* 01DE40 8001D240 03E00008 */ jr $ra -/* 01DE44 8001D244 00000000 */ nop - -/* 01DE48 8001D248 AFA40000 */ sw $a0, ($sp) -/* 01DE4C 8001D24C AFA50004 */ sw $a1, 4($sp) -/* 01DE50 8001D250 03E00008 */ jr $ra -/* 01DE54 8001D254 AFA60008 */ sw $a2, 8($sp) - -glabel func_8001D258 -/* 01DE58 8001D258 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 01DE5C 8001D25C AFA60028 */ sw $a2, 0x28($sp) -/* 01DE60 8001D260 AFA7002C */ sw $a3, 0x2c($sp) -/* 01DE64 8001D264 87AE002E */ lh $t6, 0x2e($sp) -/* 01DE68 8001D268 87AF0032 */ lh $t7, 0x32($sp) -/* 01DE6C 8001D26C 87A7002A */ lh $a3, 0x2a($sp) -/* 01DE70 8001D270 AFBF001C */ sw $ra, 0x1c($sp) -/* 01DE74 8001D274 44067000 */ mfc1 $a2, $f14 -/* 01DE78 8001D278 3C048012 */ lui $a0, %hi(D_8011AF30) # $a0, 0x8012 -/* 01DE7C 8001D27C 44056000 */ mfc1 $a1, $f12 -/* 01DE80 8001D280 2484AF30 */ addiu $a0, %lo(D_8011AF30) # addiu $a0, $a0, -0x50d0 -/* 01DE84 8001D284 AFAE0010 */ sw $t6, 0x10($sp) -/* 01DE88 8001D288 0C00752D */ jal func_8001D4B4 -/* 01DE8C 8001D28C AFAF0014 */ sw $t7, 0x14($sp) -/* 01DE90 8001D290 8FBF001C */ lw $ra, 0x1c($sp) -/* 01DE94 8001D294 27BD0020 */ addiu $sp, $sp, 0x20 -/* 01DE98 8001D298 03E00008 */ jr $ra -/* 01DE9C 8001D29C 00000000 */ nop - -/* 01DEA0 8001D2A0 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 01DEA4 8001D2A4 AFBF0024 */ sw $ra, 0x24($sp) -/* 01DEA8 8001D2A8 AFB10020 */ sw $s1, 0x20($sp) -/* 01DEAC 8001D2AC AFB0001C */ sw $s0, 0x1c($sp) -/* 01DEB0 8001D2B0 AFA70034 */ sw $a3, 0x34($sp) -/* 01DEB4 8001D2B4 8C900054 */ lw $s0, 0x54($a0) -/* 01DEB8 8001D2B8 44856000 */ mtc1 $a1, $f12 -/* 01DEBC 8001D2BC 44867000 */ mtc1 $a2, $f14 -/* 01DEC0 8001D2C0 12000077 */ beqz $s0, .L8001D4A0 -/* 01DEC4 8001D2C4 00808825 */ move $s1, $a0 -/* 01DEC8 8001D2C8 C6040028 */ lwc1 $f4, 0x28($s0) -/* 01DECC 8001D2CC 44801000 */ mtc1 $zero, $f2 -/* 01DED0 8001D2D0 460C2180 */ add.s $f6, $f4, $f12 -/* 01DED4 8001D2D4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 01DED8 8001D2D8 E6060028 */ swc1 $f6, 0x28($s0) -/* 01DEDC 8001D2DC 8C900054 */ lw $s0, 0x54($a0) -/* 01DEE0 8001D2E0 00000000 */ nop -/* 01DEE4 8001D2E4 C6000028 */ lwc1 $f0, 0x28($s0) -/* 01DEE8 8001D2E8 00000000 */ nop -/* 01DEEC 8001D2EC 4602003C */ c.lt.s $f0, $f2 -/* 01DEF0 8001D2F0 00000000 */ nop -/* 01DEF4 8001D2F4 45000005 */ bc1f .L8001D30C -/* 01DEF8 8001D2F8 00000000 */ nop -/* 01DEFC 8001D2FC E6020028 */ swc1 $f2, 0x28($s0) -/* 01DF00 8001D300 8C900054 */ lw $s0, 0x54($a0) -/* 01DF04 8001D304 1000000B */ b .L8001D334 -/* 01DF08 8001D308 C608002C */ lwc1 $f8, 0x2c($s0) -.L8001D30C: -/* 01DF0C 8001D30C 44816000 */ mtc1 $at, $f12 -/* 01DF10 8001D310 00000000 */ nop -/* 01DF14 8001D314 4600603C */ c.lt.s $f12, $f0 -/* 01DF18 8001D318 00000000 */ nop -/* 01DF1C 8001D31C 45000004 */ bc1f .L8001D330 -/* 01DF20 8001D320 00000000 */ nop -/* 01DF24 8001D324 E60C0028 */ swc1 $f12, 0x28($s0) -/* 01DF28 8001D328 8E300054 */ lw $s0, 0x54($s1) -/* 01DF2C 8001D32C 00000000 */ nop -.L8001D330: -/* 01DF30 8001D330 C608002C */ lwc1 $f8, 0x2c($s0) -.L8001D334: -/* 01DF34 8001D334 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 01DF38 8001D338 460E4280 */ add.s $f10, $f8, $f14 -/* 01DF3C 8001D33C 44818000 */ mtc1 $at, $f16 -/* 01DF40 8001D340 E60A002C */ swc1 $f10, 0x2c($s0) -/* 01DF44 8001D344 8E300054 */ lw $s0, 0x54($s1) -/* 01DF48 8001D348 3C01800E */ lui $at, %hi(D_800E5660) # $at, 0x800e -/* 01DF4C 8001D34C C600002C */ lwc1 $f0, 0x2c($s0) -/* 01DF50 8001D350 00000000 */ nop -/* 01DF54 8001D354 4602003C */ c.lt.s $f0, $f2 -/* 01DF58 8001D358 00000000 */ nop -/* 01DF5C 8001D35C 45000006 */ bc1f .L8001D378 -/* 01DF60 8001D360 00000000 */ nop -/* 01DF64 8001D364 E602002C */ swc1 $f2, 0x2c($s0) -/* 01DF68 8001D368 8E300054 */ lw $s0, 0x54($s1) -/* 01DF6C 8001D36C 00000000 */ nop -/* 01DF70 8001D370 C600002C */ lwc1 $f0, 0x2c($s0) -/* 01DF74 8001D374 00000000 */ nop -.L8001D378: -/* 01DF78 8001D378 4600803E */ c.le.s $f16, $f0 -/* 01DF7C 8001D37C 00000000 */ nop -/* 01DF80 8001D380 45000008 */ bc1f .L8001D3A4 -/* 01DF84 8001D384 00000000 */ nop -/* 01DF88 8001D388 C4325660 */ lwc1 $f18, %lo(D_800E5660)($at) -/* 01DF8C 8001D38C 00000000 */ nop -/* 01DF90 8001D390 E612002C */ swc1 $f18, 0x2c($s0) -/* 01DF94 8001D394 8E300054 */ lw $s0, 0x54($s1) -/* 01DF98 8001D398 00000000 */ nop -/* 01DF9C 8001D39C C600002C */ lwc1 $f0, 0x2c($s0) -/* 01DFA0 8001D3A0 00000000 */ nop -.L8001D3A4: -/* 01DFA4 8001D3A4 86080024 */ lh $t0, 0x24($s0) -/* 01DFA8 8001D3A8 87A9003A */ lh $t1, 0x3a($sp) -/* 01DFAC 8001D3AC 860E0022 */ lh $t6, 0x22($s0) -/* 01DFB0 8001D3B0 8E050028 */ lw $a1, 0x28($s0) -/* 01DFB4 8001D3B4 01095021 */ addu $t2, $t0, $t1 -/* 01DFB8 8001D3B8 87AF0036 */ lh $t7, 0x36($sp) -/* 01DFBC 8001D3BC AFAA0010 */ sw $t2, 0x10($sp) -/* 01DFC0 8001D3C0 860B0026 */ lh $t3, 0x26($s0) -/* 01DFC4 8001D3C4 87AC003E */ lh $t4, 0x3e($sp) -/* 01DFC8 8001D3C8 01CF3821 */ addu $a3, $t6, $t7 -/* 01DFCC 8001D3CC 0007C400 */ sll $t8, $a3, 0x10 -/* 01DFD0 8001D3D0 44060000 */ mfc1 $a2, $f0 -/* 01DFD4 8001D3D4 016C6821 */ addu $t5, $t3, $t4 -/* 01DFD8 8001D3D8 AFAD0014 */ sw $t5, 0x14($sp) -/* 01DFDC 8001D3DC 00183C03 */ sra $a3, $t8, 0x10 -/* 01DFE0 8001D3E0 0C00752D */ jal func_8001D4B4 -/* 01DFE4 8001D3E4 02002025 */ move $a0, $s0 -/* 01DFE8 8001D3E8 8E220040 */ lw $v0, 0x40($s1) -/* 01DFEC 8001D3EC 00000000 */ nop -/* 01DFF0 8001D3F0 904E003D */ lbu $t6, 0x3d($v0) -/* 01DFF4 8001D3F4 00000000 */ nop -/* 01DFF8 8001D3F8 11C0002A */ beqz $t6, .L8001D4A4 -/* 01DFFC 8001D3FC 8FBF0024 */ lw $ra, 0x24($sp) -/* 01E000 8001D400 904F003A */ lbu $t7, 0x3a($v0) -/* 01E004 8001D404 8E380054 */ lw $t8, 0x54($s1) -/* 01E008 8001D408 00000000 */ nop -/* 01E00C 8001D40C A30F0004 */ sb $t7, 4($t8) -/* 01E010 8001D410 8E390040 */ lw $t9, 0x40($s1) -/* 01E014 8001D414 8E290054 */ lw $t1, 0x54($s1) -/* 01E018 8001D418 9328003B */ lbu $t0, 0x3b($t9) -/* 01E01C 8001D41C 00000000 */ nop -/* 01E020 8001D420 A1280005 */ sb $t0, 5($t1) -/* 01E024 8001D424 8E2A0040 */ lw $t2, 0x40($s1) -/* 01E028 8001D428 8E2C0054 */ lw $t4, 0x54($s1) -/* 01E02C 8001D42C 914B003C */ lbu $t3, 0x3c($t2) -/* 01E030 8001D430 00000000 */ nop -/* 01E034 8001D434 A18B0006 */ sb $t3, 6($t4) -/* 01E038 8001D438 8E2D0040 */ lw $t5, 0x40($s1) -/* 01E03C 8001D43C 8E2F0054 */ lw $t7, 0x54($s1) -/* 01E040 8001D440 91AE003D */ lbu $t6, 0x3d($t5) -/* 01E044 8001D444 00000000 */ nop -/* 01E048 8001D448 A1EE0007 */ sb $t6, 7($t7) -/* 01E04C 8001D44C 8E300054 */ lw $s0, 0x54($s1) -/* 01E050 8001D450 00000000 */ nop -/* 01E054 8001D454 8618001C */ lh $t8, 0x1c($s0) -/* 01E058 8001D458 00000000 */ nop -/* 01E05C 8001D45C 0018C843 */ sra $t9, $t8, 1 -/* 01E060 8001D460 00194023 */ negu $t0, $t9 -/* 01E064 8001D464 A6080008 */ sh $t0, 8($s0) -/* 01E068 8001D468 8E300054 */ lw $s0, 0x54($s1) -/* 01E06C 8001D46C 00000000 */ nop -/* 01E070 8001D470 8609001E */ lh $t1, 0x1e($s0) -/* 01E074 8001D474 00000000 */ nop -/* 01E078 8001D478 00095043 */ sra $t2, $t1, 1 -/* 01E07C 8001D47C 000A5823 */ negu $t3, $t2 -/* 01E080 8001D480 A60B000A */ sh $t3, 0xa($s0) -/* 01E084 8001D484 8E300054 */ lw $s0, 0x54($s1) -/* 01E088 8001D488 00000000 */ nop -/* 01E08C 8001D48C 860C0020 */ lh $t4, 0x20($s0) -/* 01E090 8001D490 00000000 */ nop -/* 01E094 8001D494 000C6843 */ sra $t5, $t4, 1 -/* 01E098 8001D498 000D7023 */ negu $t6, $t5 -/* 01E09C 8001D49C A60E000C */ sh $t6, 0xc($s0) -.L8001D4A0: -/* 01E0A0 8001D4A0 8FBF0024 */ lw $ra, 0x24($sp) -.L8001D4A4: -/* 01E0A4 8001D4A4 8FB0001C */ lw $s0, 0x1c($sp) -/* 01E0A8 8001D4A8 8FB10020 */ lw $s1, 0x20($sp) -/* 01E0AC 8001D4AC 03E00008 */ jr $ra -/* 01E0B0 8001D4B0 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8001D4B4 -/* 01E0B4 8001D4B4 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 01E0B8 8001D4B8 AFBF0014 */ sw $ra, 0x14($sp) -/* 01E0BC 8001D4BC AFA40030 */ sw $a0, 0x30($sp) -/* 01E0C0 8001D4C0 AFA7003C */ sw $a3, 0x3c($sp) -/* 01E0C4 8001D4C4 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 01E0C8 8001D4C8 44856000 */ mtc1 $a1, $f12 -/* 01E0CC 8001D4CC 44867000 */ mtc1 $a2, $f14 -/* 01E0D0 8001D4D0 44812000 */ mtc1 $at, $f4 -/* 01E0D4 8001D4D4 A4870022 */ sh $a3, 0x22($a0) -/* 01E0D8 8001D4D8 E48C0028 */ swc1 $f12, 0x28($a0) -/* 01E0DC 8001D4DC E48E002C */ swc1 $f14, 0x2c($a0) -/* 01E0E0 8001D4E0 E4840000 */ swc1 $f4, ($a0) -/* 01E0E4 8001D4E4 87B80042 */ lh $t8, 0x42($sp) -/* 01E0E8 8001D4E8 44800000 */ mtc1 $zero, $f0 -/* 01E0EC 8001D4EC A4980024 */ sh $t8, 0x24($a0) -/* 01E0F0 8001D4F0 87B90046 */ lh $t9, 0x46($sp) -/* 01E0F4 8001D4F4 3C01C680 */ li $at, 0xC6800000 # -16384.000000 -/* 01E0F8 8001D4F8 A4990026 */ sh $t9, 0x26($a0) -/* 01E0FC 8001D4FC 87A80046 */ lh $t0, 0x46($sp) -/* 01E100 8001D500 87A90042 */ lh $t1, 0x42($sp) -/* 01E104 8001D504 44813000 */ mtc1 $at, $f6 -/* 01E108 8001D508 00803025 */ move $a2, $a0 -/* 01E10C 8001D50C A7A7002C */ sh $a3, 0x2c($sp) -/* 01E110 8001D510 AFA60030 */ sw $a2, 0x30($sp) -/* 01E114 8001D514 27A40028 */ addiu $a0, $sp, 0x28 -/* 01E118 8001D518 27A5001C */ addiu $a1, $sp, 0x1c -/* 01E11C 8001D51C E7A0001C */ swc1 $f0, 0x1c($sp) -/* 01E120 8001D520 E7A00020 */ swc1 $f0, 0x20($sp) -/* 01E124 8001D524 A7A80028 */ sh $t0, 0x28($sp) -/* 01E128 8001D528 A7A9002A */ sh $t1, 0x2a($sp) -/* 01E12C 8001D52C 0C01C0C8 */ jal func_80070320 -/* 01E130 8001D530 E7A60024 */ swc1 $f6, 0x24($sp) -/* 01E134 8001D534 C7A8001C */ lwc1 $f8, 0x1c($sp) -/* 01E138 8001D538 8FA60030 */ lw $a2, 0x30($sp) -/* 01E13C 8001D53C 46004287 */ neg.s $f10, $f8 -/* 01E140 8001D540 444AF800 */ cfc1 $t2, $31 -/* 01E144 8001D544 00000000 */ nop -/* 01E148 8001D548 35410003 */ ori $at, $t2, 3 -/* 01E14C 8001D54C 38210002 */ xori $at, $at, 2 -/* 01E150 8001D550 44C1F800 */ ctc1 $at, $31 -/* 01E154 8001D554 00000000 */ nop -/* 01E158 8001D558 46005424 */ cvt.w.s $f16, $f10 -/* 01E15C 8001D55C 440B8000 */ mfc1 $t3, $f16 -/* 01E160 8001D560 44CAF800 */ ctc1 $t2, $31 -/* 01E164 8001D564 A4CB001C */ sh $t3, 0x1c($a2) -/* 01E168 8001D568 C7B20020 */ lwc1 $f18, 0x20($sp) -/* 01E16C 8001D56C 00000000 */ nop -/* 01E170 8001D570 46009107 */ neg.s $f4, $f18 -/* 01E174 8001D574 444CF800 */ cfc1 $t4, $31 -/* 01E178 8001D578 00000000 */ nop -/* 01E17C 8001D57C 35810003 */ ori $at, $t4, 3 -/* 01E180 8001D580 38210002 */ xori $at, $at, 2 -/* 01E184 8001D584 44C1F800 */ ctc1 $at, $31 -/* 01E188 8001D588 00000000 */ nop -/* 01E18C 8001D58C 460021A4 */ cvt.w.s $f6, $f4 -/* 01E190 8001D590 440D3000 */ mfc1 $t5, $f6 -/* 01E194 8001D594 44CCF800 */ ctc1 $t4, $31 -/* 01E198 8001D598 A4CD001E */ sh $t5, 0x1e($a2) -/* 01E19C 8001D59C C7A80024 */ lwc1 $f8, 0x24($sp) -/* 01E1A0 8001D5A0 A0C00018 */ sb $zero, 0x18($a2) -/* 01E1A4 8001D5A4 46004287 */ neg.s $f10, $f8 -/* 01E1A8 8001D5A8 444EF800 */ cfc1 $t6, $31 -/* 01E1AC 8001D5AC A0C00019 */ sb $zero, 0x19($a2) -/* 01E1B0 8001D5B0 35C10003 */ ori $at, $t6, 3 -/* 01E1B4 8001D5B4 38210002 */ xori $at, $at, 2 -/* 01E1B8 8001D5B8 44C1F800 */ ctc1 $at, $31 -/* 01E1BC 8001D5BC A0C0001A */ sb $zero, 0x1a($a2) -/* 01E1C0 8001D5C0 46005424 */ cvt.w.s $f16, $f10 -/* 01E1C4 8001D5C4 440F8000 */ mfc1 $t7, $f16 -/* 01E1C8 8001D5C8 44CEF800 */ ctc1 $t6, $31 -/* 01E1CC 8001D5CC A4CF0020 */ sh $t7, 0x20($a2) -/* 01E1D0 8001D5D0 8FBF0014 */ lw $ra, 0x14($sp) -/* 01E1D4 8001D5D4 27BD0030 */ addiu $sp, $sp, 0x30 -/* 01E1D8 8001D5D8 03E00008 */ jr $ra -/* 01E1DC 8001D5DC 00000000 */ nop - -glabel func_8001D5E0 -/* 01E1E0 8001D5E0 460C6102 */ mul.s $f4, $f12, $f12 -/* 01E1E4 8001D5E4 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 01E1E8 8001D5E8 E7B6001C */ swc1 $f22, 0x1c($sp) -/* 01E1EC 8001D5EC 4486B000 */ mtc1 $a2, $f22 -/* 01E1F0 8001D5F0 460E7182 */ mul.s $f6, $f14, $f14 -/* 01E1F4 8001D5F4 E7B50010 */ swc1 $f21, 0x10($sp) -/* 01E1F8 8001D5F8 E7B40014 */ swc1 $f20, 0x14($sp) -/* 01E1FC 8001D5FC AFBF0024 */ sw $ra, 0x24($sp) -/* 01E200 8001D600 4616B282 */ mul.s $f10, $f22, $f22 -/* 01E204 8001D604 46062200 */ add.s $f8, $f4, $f6 -/* 01E208 8001D608 E7B70018 */ swc1 $f23, 0x18($sp) -/* 01E20C 8001D60C E7AE002C */ swc1 $f14, 0x2c($sp) -/* 01E210 8001D610 46006506 */ mov.s $f20, $f12 -/* 01E214 8001D614 0C0326B4 */ jal sqrtf -/* 01E218 8001D618 460A4300 */ add.s $f12, $f8, $f10 -/* 01E21C 8001D61C 44808000 */ mtc1 $zero, $f16 -/* 01E220 8001D620 C7AE002C */ lwc1 $f14, 0x2c($sp) -/* 01E224 8001D624 46100032 */ c.eq.s $f0, $f16 -/* 01E228 8001D628 3C01C600 */ li $at, 0xC6000000 # -8192.000000 -/* 01E22C 8001D62C 4501000A */ bc1t .L8001D658 -/* 01E230 8001D630 00000000 */ nop -/* 01E234 8001D634 44819000 */ mtc1 $at, $f18 -/* 01E238 8001D638 00000000 */ nop -/* 01E23C 8001D63C 46009083 */ div.s $f2, $f18, $f0 -/* 01E240 8001D640 4602A502 */ mul.s $f20, $f20, $f2 -/* 01E244 8001D644 00000000 */ nop -/* 01E248 8001D648 46027382 */ mul.s $f14, $f14, $f2 -/* 01E24C 8001D64C 00000000 */ nop -/* 01E250 8001D650 4602B582 */ mul.s $f22, $f22, $f2 -/* 01E254 8001D654 00000000 */ nop -.L8001D658: -/* 01E258 8001D658 444EF800 */ cfc1 $t6, $31 -/* 01E25C 8001D65C 3C028012 */ lui $v0, %hi(D_8011AFE8) # $v0, 0x8012 -/* 01E260 8001D660 35C10003 */ ori $at, $t6, 3 -/* 01E264 8001D664 38210002 */ xori $at, $at, 2 -/* 01E268 8001D668 44C1F800 */ ctc1 $at, $31 -/* 01E26C 8001D66C 8FBF0024 */ lw $ra, 0x24($sp) -/* 01E270 8001D670 4600A124 */ cvt.w.s $f4, $f20 -/* 01E274 8001D674 2442AFE8 */ addiu $v0, %lo(D_8011AFE8) # addiu $v0, $v0, -0x5018 -/* 01E278 8001D678 44CEF800 */ ctc1 $t6, $31 -/* 01E27C 8001D67C 440F2000 */ mfc1 $t7, $f4 -/* 01E280 8001D680 C7B40014 */ lwc1 $f20, 0x14($sp) -/* 01E284 8001D684 4458F800 */ cfc1 $t8, $31 -/* 01E288 8001D688 C7B50010 */ lwc1 $f21, 0x10($sp) -/* 01E28C 8001D68C 37010003 */ ori $at, $t8, 3 -/* 01E290 8001D690 38210002 */ xori $at, $at, 2 -/* 01E294 8001D694 44C1F800 */ ctc1 $at, $31 -/* 01E298 8001D698 C7B70018 */ lwc1 $f23, 0x18($sp) -/* 01E29C 8001D69C 460071A4 */ cvt.w.s $f6, $f14 -/* 01E2A0 8001D6A0 A44F0000 */ sh $t7, ($v0) -/* 01E2A4 8001D6A4 44D8F800 */ ctc1 $t8, $31 -/* 01E2A8 8001D6A8 44193000 */ mfc1 $t9, $f6 -/* 01E2AC 8001D6AC 00000000 */ nop -/* 01E2B0 8001D6B0 4448F800 */ cfc1 $t0, $31 -/* 01E2B4 8001D6B4 A4590002 */ sh $t9, 2($v0) -/* 01E2B8 8001D6B8 35010003 */ ori $at, $t0, 3 -/* 01E2BC 8001D6BC 38210002 */ xori $at, $at, 2 -/* 01E2C0 8001D6C0 44C1F800 */ ctc1 $at, $31 -/* 01E2C4 8001D6C4 00000000 */ nop -/* 01E2C8 8001D6C8 4600B224 */ cvt.w.s $f8, $f22 -/* 01E2CC 8001D6CC C7B6001C */ lwc1 $f22, 0x1c($sp) -/* 01E2D0 8001D6D0 44094000 */ mfc1 $t1, $f8 -/* 01E2D4 8001D6D4 44C8F800 */ ctc1 $t0, $31 -/* 01E2D8 8001D6D8 27BD0028 */ addiu $sp, $sp, 0x28 -/* 01E2DC 8001D6DC 03E00008 */ jr $ra -/* 01E2E0 8001D6E0 A4490004 */ sh $t1, 4($v0) - -glabel func_8001D6E4 -/* 01E2E4 8001D6E4 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 01E2E8 8001D6E8 AFBF0024 */ sw $ra, 0x24($sp) -/* 01E2EC 8001D6EC AFB10020 */ sw $s1, 0x20($sp) -/* 01E2F0 8001D6F0 AFB0001C */ sw $s0, 0x1c($sp) -/* 01E2F4 8001D6F4 AFA60038 */ sw $a2, 0x38($sp) -/* 01E2F8 8001D6F8 84880028 */ lh $t0, 0x28($a0) -/* 01E2FC 8001D6FC 44876000 */ mtc1 $a3, $f12 -/* 01E300 8001D700 00A08025 */ move $s0, $a1 -/* 01E304 8001D704 00808825 */ move $s1, $a0 -/* 01E308 8001D708 00003825 */ move $a3, $zero -/* 01E30C 8001D70C 00004825 */ move $t1, $zero -/* 01E310 8001D710 19000018 */ blez $t0, .L8001D774 -/* 01E314 8001D714 00001825 */ move $v1, $zero -/* 01E318 8001D718 8C860038 */ lw $a2, 0x38($a0) -/* 01E31C 8001D71C 240400FF */ li $a0, 255 -/* 01E320 8001D720 2405000C */ li $a1, 12 -.L8001D724: -/* 01E324 8001D724 00650019 */ multu $v1, $a1 -/* 01E328 8001D728 24630001 */ addiu $v1, $v1, 1 -/* 01E32C 8001D72C 00035400 */ sll $t2, $v1, 0x10 -/* 01E330 8001D730 000A1C03 */ sra $v1, $t2, 0x10 -/* 01E334 8001D734 0068082A */ slt $at, $v1, $t0 -/* 01E338 8001D738 00007012 */ mflo $t6 -/* 01E33C 8001D73C 00CE1021 */ addu $v0, $a2, $t6 -/* 01E340 8001D740 904F0006 */ lbu $t7, 6($v0) -/* 01E344 8001D744 00000000 */ nop -/* 01E348 8001D748 108F0002 */ beq $a0, $t7, .L8001D754 -/* 01E34C 8001D74C 00000000 */ nop -/* 01E350 8001D750 2407FFFF */ li $a3, -1 -.L8001D754: -/* 01E354 8001D754 8C580008 */ lw $t8, 8($v0) -/* 01E358 8001D758 00000000 */ nop -/* 01E35C 8001D75C 33198000 */ andi $t9, $t8, 0x8000 -/* 01E360 8001D760 13200002 */ beqz $t9, .L8001D76C -/* 01E364 8001D764 00000000 */ nop -/* 01E368 8001D768 2409FFFF */ li $t1, -1 -.L8001D76C: -/* 01E36C 8001D76C 1420FFED */ bnez $at, .L8001D724 -/* 01E370 8001D770 00000000 */ nop -.L8001D774: -/* 01E374 8001D774 10E00019 */ beqz $a3, .L8001D7DC -/* 01E378 8001D778 00000000 */ nop -/* 01E37C 8001D77C 8E0C0040 */ lw $t4, 0x40($s0) -/* 01E380 8001D780 87A6003A */ lh $a2, 0x3a($sp) -/* 01E384 8001D784 918D0071 */ lbu $t5, 0x71($t4) -/* 01E388 8001D788 02002025 */ move $a0, $s0 -/* 01E38C 8001D78C 11A0000E */ beqz $t5, .L8001D7C8 -/* 01E390 8001D790 02202825 */ move $a1, $s1 -/* 01E394 8001D794 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 01E398 8001D798 44812000 */ mtc1 $at, $f4 -/* 01E39C 8001D79C 87A6003A */ lh $a2, 0x3a($sp) -/* 01E3A0 8001D7A0 02002025 */ move $a0, $s0 -/* 01E3A4 8001D7A4 02202825 */ move $a1, $s1 -/* 01E3A8 8001D7A8 02003825 */ move $a3, $s0 -/* 01E3AC 8001D7AC E7AC0010 */ swc1 $f12, 0x10($sp) -/* 01E3B0 8001D7B0 A7A9002E */ sh $t1, 0x2e($sp) -/* 01E3B4 8001D7B4 0C007603 */ jal func_8001D80C -/* 01E3B8 8001D7B8 E7A40014 */ swc1 $f4, 0x14($sp) -/* 01E3BC 8001D7BC 87A9002E */ lh $t1, 0x2e($sp) -/* 01E3C0 8001D7C0 10000006 */ b .L8001D7DC -/* 01E3C4 8001D7C4 00000000 */ nop -.L8001D7C8: -/* 01E3C8 8001D7C8 44076000 */ mfc1 $a3, $f12 -/* 01E3CC 8001D7CC 0C0091D1 */ jal func_80024744 -/* 01E3D0 8001D7D0 A7A9002E */ sh $t1, 0x2e($sp) -/* 01E3D4 8001D7D4 87A9002E */ lh $t1, 0x2e($sp) -/* 01E3D8 8001D7D8 00000000 */ nop -.L8001D7DC: -/* 01E3DC 8001D7DC 11200007 */ beqz $t1, .L8001D7FC -/* 01E3E0 8001D7E0 8FBF0024 */ lw $ra, 0x24($sp) -/* 01E3E4 8001D7E4 86050004 */ lh $a1, 4($s0) -/* 01E3E8 8001D7E8 86060002 */ lh $a2, 2($s0) -/* 01E3EC 8001D7EC 86070000 */ lh $a3, ($s0) -/* 01E3F0 8001D7F0 0C007755 */ jal func_8001DD54 -/* 01E3F4 8001D7F4 02202025 */ move $a0, $s1 -/* 01E3F8 8001D7F8 8FBF0024 */ lw $ra, 0x24($sp) -.L8001D7FC: -/* 01E3FC 8001D7FC 8FB0001C */ lw $s0, 0x1c($sp) -/* 01E400 8001D800 8FB10020 */ lw $s1, 0x20($sp) -/* 01E404 8001D804 03E00008 */ jr $ra -/* 01E408 8001D808 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_8001D80C -/* 01E40C 8001D80C 27BDFF60 */ addiu $sp, $sp, -0xa0 -/* 01E410 8001D810 AFB20020 */ sw $s2, 0x20($sp) -/* 01E414 8001D814 AFBF003C */ sw $ra, 0x3c($sp) -/* 01E418 8001D818 AFBE0038 */ sw $fp, 0x38($sp) -/* 01E41C 8001D81C AFB70034 */ sw $s7, 0x34($sp) -/* 01E420 8001D820 AFB60030 */ sw $s6, 0x30($sp) -/* 01E424 8001D824 AFB5002C */ sw $s5, 0x2c($sp) -/* 01E428 8001D828 AFB40028 */ sw $s4, 0x28($sp) -/* 01E42C 8001D82C AFB30024 */ sw $s3, 0x24($sp) -/* 01E430 8001D830 AFB1001C */ sw $s1, 0x1c($sp) -/* 01E434 8001D834 AFB00018 */ sw $s0, 0x18($sp) -/* 01E438 8001D838 AFA600A8 */ sw $a2, 0xa8($sp) -/* 01E43C 8001D83C AFA700AC */ sw $a3, 0xac($sp) -/* 01E440 8001D840 8C820054 */ lw $v0, 0x54($a0) -/* 01E444 8001D844 00069400 */ sll $s2, $a2, 0x10 -/* 01E448 8001D848 00127403 */ sra $t6, $s2, 0x10 -/* 01E44C 8001D84C 01C09025 */ move $s2, $t6 -/* 01E450 8001D850 00808825 */ move $s1, $a0 -/* 01E454 8001D854 10400133 */ beqz $v0, .L8001DD24 -/* 01E458 8001D858 00A0B825 */ move $s7, $a1 -/* 01E45C 8001D85C 8CAF0040 */ lw $t7, 0x40($a1) -/* 01E460 8001D860 8C9E0044 */ lw $fp, 0x44($a0) -/* 01E464 8001D864 AFAF0054 */ sw $t7, 0x54($sp) -/* 01E468 8001D868 84580008 */ lh $t8, 8($v0) -/* 01E46C 8001D86C 27B0005C */ addiu $s0, $sp, 0x5c -/* 01E470 8001D870 0018C8C0 */ sll $t9, $t8, 3 -/* 01E474 8001D874 00197023 */ negu $t6, $t9 -/* 01E478 8001D878 448E2000 */ mtc1 $t6, $f4 -/* 01E47C 8001D87C 02002825 */ move $a1, $s0 -/* 01E480 8001D880 468021A0 */ cvt.s.w $f6, $f4 -/* 01E484 8001D884 E7A6005C */ swc1 $f6, 0x5c($sp) -/* 01E488 8001D888 8C8F0054 */ lw $t7, 0x54($a0) -/* 01E48C 8001D88C 00000000 */ nop -/* 01E490 8001D890 85F8000A */ lh $t8, 0xa($t7) -/* 01E494 8001D894 00000000 */ nop -/* 01E498 8001D898 0018C8C0 */ sll $t9, $t8, 3 -/* 01E49C 8001D89C 00197023 */ negu $t6, $t9 -/* 01E4A0 8001D8A0 448E4000 */ mtc1 $t6, $f8 -/* 01E4A4 8001D8A4 00000000 */ nop -/* 01E4A8 8001D8A8 468042A0 */ cvt.s.w $f10, $f8 -/* 01E4AC 8001D8AC E7AA0060 */ swc1 $f10, 0x60($sp) -/* 01E4B0 8001D8B0 8C8F0054 */ lw $t7, 0x54($a0) -/* 01E4B4 8001D8B4 00000000 */ nop -/* 01E4B8 8001D8B8 85F8000C */ lh $t8, 0xc($t7) -/* 01E4BC 8001D8BC 00000000 */ nop -/* 01E4C0 8001D8C0 0018C8C0 */ sll $t9, $t8, 3 -/* 01E4C4 8001D8C4 00197023 */ negu $t6, $t9 -/* 01E4C8 8001D8C8 448E8000 */ mtc1 $t6, $f16 -/* 01E4CC 8001D8CC 00000000 */ nop -/* 01E4D0 8001D8D0 468084A0 */ cvt.s.w $f18, $f16 -/* 01E4D4 8001D8D4 E7B20064 */ swc1 $f18, 0x64($sp) -/* 01E4D8 8001D8D8 848F0000 */ lh $t7, ($a0) -/* 01E4DC 8001D8DC 00000000 */ nop -/* 01E4E0 8001D8E0 000FC023 */ negu $t8, $t7 -/* 01E4E4 8001D8E4 A7B80094 */ sh $t8, 0x94($sp) -/* 01E4E8 8001D8E8 84990002 */ lh $t9, 2($a0) -/* 01E4EC 8001D8EC 00000000 */ nop -/* 01E4F0 8001D8F0 00197023 */ negu $t6, $t9 -/* 01E4F4 8001D8F4 A7AE0096 */ sh $t6, 0x96($sp) -/* 01E4F8 8001D8F8 848F0004 */ lh $t7, 4($a0) -/* 01E4FC 8001D8FC A7A0009E */ sh $zero, 0x9e($sp) -/* 01E500 8001D900 000FC023 */ negu $t8, $t7 -/* 01E504 8001D904 A7B80098 */ sh $t8, 0x98($sp) -/* 01E508 8001D908 0C01C0F6 */ jal func_800703D8 -/* 01E50C 8001D90C 27A40094 */ addiu $a0, $sp, 0x94 -/* 01E510 8001D910 8E390040 */ lw $t9, 0x40($s1) -/* 01E514 8001D914 87A9009E */ lh $t1, 0x9e($sp) -/* 01E518 8001D918 932E003D */ lbu $t6, 0x3d($t9) -/* 01E51C 8001D91C 00000000 */ nop -/* 01E520 8001D920 11C0000B */ beqz $t6, .L8001D950 -/* 01E524 8001D924 00000000 */ nop -/* 01E528 8001D928 12400009 */ beqz $s2, .L8001D950 -/* 01E52C 8001D92C 00000000 */ nop -/* 01E530 8001D930 0C01A769 */ jal func_80069DA4 -/* 01E534 8001D934 A7A9009E */ sh $t1, 0x9e($sp) -/* 01E538 8001D938 00402025 */ move $a0, $v0 -/* 01E53C 8001D93C 02002825 */ move $a1, $s0 -/* 01E540 8001D940 0C01BDBB */ jal func_8006F6EC -/* 01E544 8001D944 02003025 */ move $a2, $s0 -/* 01E548 8001D948 87A9009E */ lh $t1, 0x9e($sp) -/* 01E54C 8001D94C 00000000 */ nop -.L8001D950: -/* 01E550 8001D950 C7A4005C */ lwc1 $f4, 0x5c($sp) -/* 01E554 8001D954 C7AA0060 */ lwc1 $f10, 0x60($sp) -/* 01E558 8001D958 46002187 */ neg.s $f6, $f4 -/* 01E55C 8001D95C 444FF800 */ cfc1 $t7, $31 -/* 01E560 8001D960 C7A40064 */ lwc1 $f4, 0x64($sp) -/* 01E564 8001D964 35E10003 */ ori $at, $t7, 3 -/* 01E568 8001D968 38210002 */ xori $at, $at, 2 -/* 01E56C 8001D96C 44C1F800 */ ctc1 $at, $31 -/* 01E570 8001D970 8E220054 */ lw $v0, 0x54($s1) -/* 01E574 8001D974 46003224 */ cvt.w.s $f8, $f6 -/* 01E578 8001D978 844E001C */ lh $t6, 0x1c($v0) -/* 01E57C 8001D97C 44CFF800 */ ctc1 $t7, $31 -/* 01E580 8001D980 44134000 */ mfc1 $s3, $f8 -/* 01E584 8001D984 46005407 */ neg.s $f16, $f10 -/* 01E588 8001D988 4458F800 */ cfc1 $t8, $31 -/* 01E58C 8001D98C 000E7880 */ sll $t7, $t6, 2 -/* 01E590 8001D990 37010003 */ ori $at, $t8, 3 -/* 01E594 8001D994 38210002 */ xori $at, $at, 2 -/* 01E598 8001D998 44C1F800 */ ctc1 $at, $31 -/* 01E59C 8001D99C 448F5000 */ mtc1 $t7, $f10 -/* 01E5A0 8001D9A0 460084A4 */ cvt.w.s $f18, $f16 -/* 01E5A4 8001D9A4 90560007 */ lbu $s6, 7($v0) -/* 01E5A8 8001D9A8 44D8F800 */ ctc1 $t8, $31 -/* 01E5AC 8001D9AC 44149000 */ mfc1 $s4, $f18 -/* 01E5B0 8001D9B0 46002187 */ neg.s $f6, $f4 -/* 01E5B4 8001D9B4 4459F800 */ cfc1 $t9, $31 -/* 01E5B8 8001D9B8 00000000 */ nop -/* 01E5BC 8001D9BC 37210003 */ ori $at, $t9, 3 -/* 01E5C0 8001D9C0 38210002 */ xori $at, $at, 2 -/* 01E5C4 8001D9C4 44C1F800 */ ctc1 $at, $31 -/* 01E5C8 8001D9C8 00000000 */ nop -/* 01E5CC 8001D9CC 46003224 */ cvt.w.s $f8, $f6 -/* 01E5D0 8001D9D0 44D9F800 */ ctc1 $t9, $31 -/* 01E5D4 8001D9D4 44154000 */ mfc1 $s5, $f8 -/* 01E5D8 8001D9D8 46805420 */ cvt.s.w $f16, $f10 -/* 01E5DC 8001D9DC E7B0005C */ swc1 $f16, 0x5c($sp) -/* 01E5E0 8001D9E0 8E380054 */ lw $t8, 0x54($s1) -/* 01E5E4 8001D9E4 00000000 */ nop -/* 01E5E8 8001D9E8 8719001E */ lh $t9, 0x1e($t8) -/* 01E5EC 8001D9EC 00000000 */ nop -/* 01E5F0 8001D9F0 00197080 */ sll $t6, $t9, 2 -/* 01E5F4 8001D9F4 448E9000 */ mtc1 $t6, $f18 -/* 01E5F8 8001D9F8 00000000 */ nop -/* 01E5FC 8001D9FC 46809120 */ cvt.s.w $f4, $f18 -/* 01E600 8001DA00 E7A40060 */ swc1 $f4, 0x60($sp) -/* 01E604 8001DA04 8E2F0054 */ lw $t7, 0x54($s1) -/* 01E608 8001DA08 00000000 */ nop -/* 01E60C 8001DA0C 85F80020 */ lh $t8, 0x20($t7) -/* 01E610 8001DA10 00000000 */ nop -/* 01E614 8001DA14 0018C880 */ sll $t9, $t8, 2 -/* 01E618 8001DA18 44993000 */ mtc1 $t9, $f6 -/* 01E61C 8001DA1C 00000000 */ nop -/* 01E620 8001DA20 46803220 */ cvt.s.w $f8, $f6 -/* 01E624 8001DA24 12400009 */ beqz $s2, .L8001DA4C -/* 01E628 8001DA28 E7A80064 */ swc1 $f8, 0x64($sp) -/* 01E62C 8001DA2C 0C01A769 */ jal func_80069DA4 -/* 01E630 8001DA30 A7A9009E */ sh $t1, 0x9e($sp) -/* 01E634 8001DA34 00402025 */ move $a0, $v0 -/* 01E638 8001DA38 02002825 */ move $a1, $s0 -/* 01E63C 8001DA3C 0C01BDBB */ jal func_8006F6EC -/* 01E640 8001DA40 02003025 */ move $a2, $s0 -/* 01E644 8001DA44 87A9009E */ lh $t1, 0x9e($sp) -/* 01E648 8001DA48 00000000 */ nop -.L8001DA4C: -/* 01E64C 8001DA4C 27A40094 */ addiu $a0, $sp, 0x94 -/* 01E650 8001DA50 02002825 */ move $a1, $s0 -/* 01E654 8001DA54 0C01C0F6 */ jal func_800703D8 -/* 01E658 8001DA58 A7A9009E */ sh $t1, 0x9e($sp) -/* 01E65C 8001DA5C 444EF800 */ cfc1 $t6, $31 -/* 01E660 8001DA60 3C01437F */ li $at, 0x437F0000 # 255.000000 -/* 01E664 8001DA64 44816000 */ mtc1 $at, $f12 -/* 01E668 8001DA68 35C10003 */ ori $at, $t6, 3 -/* 01E66C 8001DA6C 38210002 */ xori $at, $at, 2 -/* 01E670 8001DA70 44C1F800 */ ctc1 $at, $31 -/* 01E674 8001DA74 C7AA005C */ lwc1 $f10, 0x5c($sp) -/* 01E678 8001DA78 C7B20060 */ lwc1 $f18, 0x60($sp) -/* 01E67C 8001DA7C 46005424 */ cvt.w.s $f16, $f10 -/* 01E680 8001DA80 C7A60064 */ lwc1 $f6, 0x64($sp) -/* 01E684 8001DA84 44CEF800 */ ctc1 $t6, $31 -/* 01E688 8001DA88 8E220054 */ lw $v0, 0x54($s1) -/* 01E68C 8001DA8C 440C8000 */ mfc1 $t4, $f16 -/* 01E690 8001DA90 444FF800 */ cfc1 $t7, $31 -/* 01E694 8001DA94 C4400000 */ lwc1 $f0, ($v0) -/* 01E698 8001DA98 35E10003 */ ori $at, $t7, 3 -/* 01E69C 8001DA9C 38210002 */ xori $at, $at, 2 -/* 01E6A0 8001DAA0 44C1F800 */ ctc1 $at, $31 -/* 01E6A4 8001DAA4 C44A0028 */ lwc1 $f10, 0x28($v0) -/* 01E6A8 8001DAA8 46009124 */ cvt.w.s $f4, $f18 -/* 01E6AC 8001DAAC C7A200B0 */ lwc1 $f2, 0xb0($sp) -/* 01E6B0 8001DAB0 44CFF800 */ ctc1 $t7, $31 -/* 01E6B4 8001DAB4 440D2000 */ mfc1 $t5, $f4 -/* 01E6B8 8001DAB8 87A9009E */ lh $t1, 0x9e($sp) -/* 01E6BC 8001DABC 4458F800 */ cfc1 $t8, $31 -/* 01E6C0 8001DAC0 2412000A */ li $s2, 10 -/* 01E6C4 8001DAC4 37010003 */ ori $at, $t8, 3 -/* 01E6C8 8001DAC8 38210002 */ xori $at, $at, 2 -/* 01E6CC 8001DACC 44C1F800 */ ctc1 $at, $31 -/* 01E6D0 8001DAD0 00000000 */ nop -/* 01E6D4 8001DAD4 46003224 */ cvt.w.s $f8, $f6 -/* 01E6D8 8001DAD8 44D8F800 */ ctc1 $t8, $31 -/* 01E6DC 8001DADC 441F4000 */ mfc1 $ra, $f8 -/* 01E6E0 8001DAE0 46005402 */ mul.s $f16, $f10, $f0 -/* 01E6E4 8001DAE4 C448002C */ lwc1 $f8, 0x2c($v0) -/* 01E6E8 8001DAE8 A7A0009A */ sh $zero, 0x9a($sp) -/* 01E6EC 8001DAEC 86E30028 */ lh $v1, 0x28($s7) -/* 01E6F0 8001DAF0 460C8482 */ mul.s $f18, $f16, $f12 -/* 01E6F4 8001DAF4 00000000 */ nop -/* 01E6F8 8001DAF8 46029102 */ mul.s $f4, $f18, $f2 -/* 01E6FC 8001DAFC 4459F800 */ cfc1 $t9, $31 -/* 01E700 8001DB00 00000000 */ nop -/* 01E704 8001DB04 37210003 */ ori $at, $t9, 3 -/* 01E708 8001DB08 38210002 */ xori $at, $at, 2 -/* 01E70C 8001DB0C 44C1F800 */ ctc1 $at, $31 -/* 01E710 8001DB10 00000000 */ nop -/* 01E714 8001DB14 460021A4 */ cvt.w.s $f6, $f4 -/* 01E718 8001DB18 44D9F800 */ ctc1 $t9, $31 -/* 01E71C 8001DB1C 440A3000 */ mfc1 $t2, $f6 -/* 01E720 8001DB20 46004282 */ mul.s $f10, $f8, $f0 -/* 01E724 8001DB24 00000000 */ nop -/* 01E728 8001DB28 460C5402 */ mul.s $f16, $f10, $f12 -/* 01E72C 8001DB2C 00000000 */ nop -/* 01E730 8001DB30 46028482 */ mul.s $f18, $f16, $f2 -/* 01E734 8001DB34 444EF800 */ cfc1 $t6, $31 -/* 01E738 8001DB38 00000000 */ nop -/* 01E73C 8001DB3C 35C10003 */ ori $at, $t6, 3 -/* 01E740 8001DB40 38210002 */ xori $at, $at, 2 -/* 01E744 8001DB44 44C1F800 */ ctc1 $at, $31 -/* 01E748 8001DB48 00000000 */ nop -/* 01E74C 8001DB4C 46009124 */ cvt.w.s $f4, $f18 -/* 01E750 8001DB50 44102000 */ mfc1 $s0, $f4 -/* 01E754 8001DB54 44CEF800 */ ctc1 $t6, $31 -/* 01E758 8001DB58 18600072 */ blez $v1, .L8001DD24 -/* 01E75C 8001DB5C 00000000 */ nop -/* 01E760 8001DB60 8EE60038 */ lw $a2, 0x38($s7) -/* 01E764 8001DB64 24110006 */ li $s1, 6 -.L8001DB68: -/* 01E768 8001DB68 87AB009A */ lh $t3, 0x9a($sp) -/* 01E76C 8001DB6C 240100FF */ li $at, 255 -/* 01E770 8001DB70 000B7880 */ sll $t7, $t3, 2 -/* 01E774 8001DB74 01EB7823 */ subu $t7, $t7, $t3 -/* 01E778 8001DB78 000F5880 */ sll $t3, $t7, 2 -/* 01E77C 8001DB7C 00CB1021 */ addu $v0, $a2, $t3 -/* 01E780 8001DB80 90580006 */ lbu $t8, 6($v0) -/* 01E784 8001DB84 00000000 */ nop -/* 01E788 8001DB88 13010053 */ beq $t8, $at, .L8001DCD8 -/* 01E78C 8001DB8C 00000000 */ nop -/* 01E790 8001DB90 84450002 */ lh $a1, 2($v0) -/* 01E794 8001DB94 8459000E */ lh $t9, 0xe($v0) -/* 01E798 8001DB98 00000000 */ nop -/* 01E79C 8001DB9C 00B9082A */ slt $at, $a1, $t9 -/* 01E7A0 8001DBA0 10200059 */ beqz $at, .L8001DD08 -/* 01E7A4 8001DBA4 87A2009A */ lh $v0, 0x9a($sp) -.L8001DBA8: -/* 01E7A8 8001DBA8 01310019 */ multu $t1, $s1 -/* 01E7AC 8001DBAC 8FAE0054 */ lw $t6, 0x54($sp) -/* 01E7B0 8001DBB0 00007812 */ mflo $t7 -/* 01E7B4 8001DBB4 01CF1021 */ addu $v0, $t6, $t7 -/* 01E7B8 8001DBB8 84460004 */ lh $a2, 4($v0) -/* 01E7BC 8001DBBC 84470000 */ lh $a3, ($v0) -/* 01E7C0 8001DBC0 00D50019 */ multu $a2, $s5 -/* 01E7C4 8001DBC4 84480002 */ lh $t0, 2($v0) -/* 01E7C8 8001DBC8 0000C012 */ mflo $t8 -/* 01E7CC 8001DBCC 00000000 */ nop -/* 01E7D0 8001DBD0 00000000 */ nop -/* 01E7D4 8001DBD4 00F30019 */ multu $a3, $s3 -/* 01E7D8 8001DBD8 0000C812 */ mflo $t9 -/* 01E7DC 8001DBDC 03197021 */ addu $t6, $t8, $t9 -/* 01E7E0 8001DBE0 00000000 */ nop -/* 01E7E4 8001DBE4 01140019 */ multu $t0, $s4 -/* 01E7E8 8001DBE8 00007812 */ mflo $t7 -/* 01E7EC 8001DBEC 01CF2021 */ addu $a0, $t6, $t7 -/* 01E7F0 8001DBF0 0004C343 */ sra $t8, $a0, 0xd -/* 01E7F4 8001DBF4 1B000009 */ blez $t8, .L8001DC1C -/* 01E7F8 8001DBF8 00002025 */ move $a0, $zero -/* 01E7FC 8001DBFC 03160019 */ multu $t8, $s6 -/* 01E800 8001DC00 00002012 */ mflo $a0 -/* 01E804 8001DC04 0004CC03 */ sra $t9, $a0, 0x10 -/* 01E808 8001DC08 2B210100 */ slti $at, $t9, 0x100 -/* 01E80C 8001DC0C 14200003 */ bnez $at, .L8001DC1C -/* 01E810 8001DC10 03202025 */ move $a0, $t9 -/* 01E814 8001DC14 10000001 */ b .L8001DC1C -/* 01E818 8001DC18 240400FF */ li $a0, 255 -.L8001DC1C: -/* 01E81C 8001DC1C 00DF0019 */ multu $a2, $ra -/* 01E820 8001DC20 00007012 */ mflo $t6 -/* 01E824 8001DC24 00000000 */ nop -/* 01E828 8001DC28 00000000 */ nop -/* 01E82C 8001DC2C 00EC0019 */ multu $a3, $t4 -/* 01E830 8001DC30 00007812 */ mflo $t7 -/* 01E834 8001DC34 01CFC021 */ addu $t8, $t6, $t7 -/* 01E838 8001DC38 00000000 */ nop -/* 01E83C 8001DC3C 010D0019 */ multu $t0, $t5 -/* 01E840 8001DC40 0000C812 */ mflo $t9 -/* 01E844 8001DC44 03191821 */ addu $v1, $t8, $t9 -/* 01E848 8001DC48 00037343 */ sra $t6, $v1, 0xd -/* 01E84C 8001DC4C 19C0000A */ blez $t6, .L8001DC78 -/* 01E850 8001DC50 01401825 */ move $v1, $t2 -/* 01E854 8001DC54 01D00019 */ multu $t6, $s0 -/* 01E858 8001DC58 00001812 */ mflo $v1 -/* 01E85C 8001DC5C 00037C03 */ sra $t7, $v1, 0x10 -/* 01E860 8001DC60 01EA1821 */ addu $v1, $t7, $t2 -/* 01E864 8001DC64 28610100 */ slti $at, $v1, 0x100 -/* 01E868 8001DC68 14200003 */ bnez $at, .L8001DC78 -/* 01E86C 8001DC6C 00000000 */ nop -/* 01E870 8001DC70 10000001 */ b .L8001DC78 -/* 01E874 8001DC74 240300FF */ li $v1, 255 -.L8001DC78: -/* 01E878 8001DC78 00B20019 */ multu $a1, $s2 -/* 01E87C 8001DC7C 25290001 */ addiu $t1, $t1, 1 -/* 01E880 8001DC80 0009CC00 */ sll $t9, $t1, 0x10 -/* 01E884 8001DC84 00194C03 */ sra $t1, $t9, 0x10 -/* 01E888 8001DC88 24A50001 */ addiu $a1, $a1, 1 -/* 01E88C 8001DC8C 00057C00 */ sll $t7, $a1, 0x10 -/* 01E890 8001DC90 000F2C03 */ sra $a1, $t7, 0x10 -/* 01E894 8001DC94 0000C012 */ mflo $t8 -/* 01E898 8001DC98 03D81021 */ addu $v0, $fp, $t8 -/* 01E89C 8001DC9C A0440006 */ sb $a0, 6($v0) -/* 01E8A0 8001DCA0 A0440007 */ sb $a0, 7($v0) -/* 01E8A4 8001DCA4 A0440008 */ sb $a0, 8($v0) -/* 01E8A8 8001DCA8 A0430009 */ sb $v1, 9($v0) -/* 01E8AC 8001DCAC 8EE60038 */ lw $a2, 0x38($s7) -/* 01E8B0 8001DCB0 00000000 */ nop -/* 01E8B4 8001DCB4 00CBC821 */ addu $t9, $a2, $t3 -/* 01E8B8 8001DCB8 872E000E */ lh $t6, 0xe($t9) -/* 01E8BC 8001DCBC 00000000 */ nop -/* 01E8C0 8001DCC0 00AE082A */ slt $at, $a1, $t6 -/* 01E8C4 8001DCC4 1420FFB8 */ bnez $at, .L8001DBA8 -/* 01E8C8 8001DCC8 00000000 */ nop -/* 01E8CC 8001DCCC 86E30028 */ lh $v1, 0x28($s7) -/* 01E8D0 8001DCD0 1000000D */ b .L8001DD08 -/* 01E8D4 8001DCD4 87A2009A */ lh $v0, 0x9a($sp) -.L8001DCD8: -/* 01E8D8 8001DCD8 8C4F0008 */ lw $t7, 8($v0) -/* 01E8DC 8001DCDC 00000000 */ nop -/* 01E8E0 8001DCE0 31F88000 */ andi $t8, $t7, 0x8000 -/* 01E8E4 8001DCE4 13000007 */ beqz $t8, .L8001DD04 -/* 01E8E8 8001DCE8 00000000 */ nop -/* 01E8EC 8001DCEC 8459000E */ lh $t9, 0xe($v0) -/* 01E8F0 8001DCF0 844F0002 */ lh $t7, 2($v0) -/* 01E8F4 8001DCF4 01397021 */ addu $t6, $t1, $t9 -/* 01E8F8 8001DCF8 01CF4823 */ subu $t1, $t6, $t7 -/* 01E8FC 8001DCFC 0009C400 */ sll $t8, $t1, 0x10 -/* 01E900 8001DD00 00184C03 */ sra $t1, $t8, 0x10 -.L8001DD04: -/* 01E904 8001DD04 87A2009A */ lh $v0, 0x9a($sp) -.L8001DD08: -/* 01E908 8001DD08 00000000 */ nop -/* 01E90C 8001DD0C 24420001 */ addiu $v0, $v0, 1 -/* 01E910 8001DD10 00027400 */ sll $t6, $v0, 0x10 -/* 01E914 8001DD14 000E7C03 */ sra $t7, $t6, 0x10 -/* 01E918 8001DD18 01E3082A */ slt $at, $t7, $v1 -/* 01E91C 8001DD1C 1420FF92 */ bnez $at, .L8001DB68 -/* 01E920 8001DD20 A7AF009A */ sh $t7, 0x9a($sp) -.L8001DD24: -/* 01E924 8001DD24 8FBF003C */ lw $ra, 0x3c($sp) -/* 01E928 8001DD28 8FB00018 */ lw $s0, 0x18($sp) -/* 01E92C 8001DD2C 8FB1001C */ lw $s1, 0x1c($sp) -/* 01E930 8001DD30 8FB20020 */ lw $s2, 0x20($sp) -/* 01E934 8001DD34 8FB30024 */ lw $s3, 0x24($sp) -/* 01E938 8001DD38 8FB40028 */ lw $s4, 0x28($sp) -/* 01E93C 8001DD3C 8FB5002C */ lw $s5, 0x2c($sp) -/* 01E940 8001DD40 8FB60030 */ lw $s6, 0x30($sp) -/* 01E944 8001DD44 8FB70034 */ lw $s7, 0x34($sp) -/* 01E948 8001DD48 8FBE0038 */ lw $fp, 0x38($sp) -/* 01E94C 8001DD4C 03E00008 */ jr $ra -/* 01E950 8001DD50 27BD00A0 */ addiu $sp, $sp, 0xa0 - -glabel func_8001DD54 -/* 01E954 8001DD54 27BDFEE8 */ addiu $sp, $sp, -0x118 -/* 01E958 8001DD58 AFBF003C */ sw $ra, 0x3c($sp) -/* 01E95C 8001DD5C AFBE0038 */ sw $fp, 0x38($sp) -/* 01E960 8001DD60 AFB70034 */ sw $s7, 0x34($sp) -/* 01E964 8001DD64 AFB60030 */ sw $s6, 0x30($sp) -/* 01E968 8001DD68 AFB5002C */ sw $s5, 0x2c($sp) -/* 01E96C 8001DD6C AFB40028 */ sw $s4, 0x28($sp) -/* 01E970 8001DD70 AFB30024 */ sw $s3, 0x24($sp) -/* 01E974 8001DD74 AFB20020 */ sw $s2, 0x20($sp) -/* 01E978 8001DD78 AFB1001C */ sw $s1, 0x1c($sp) -/* 01E97C 8001DD7C AFB00018 */ sw $s0, 0x18($sp) -/* 01E980 8001DD80 AFA5011C */ sw $a1, 0x11c($sp) -/* 01E984 8001DD84 AFA60120 */ sw $a2, 0x120($sp) -/* 01E988 8001DD88 AFA70124 */ sw $a3, 0x124($sp) -/* 01E98C 8001DD8C 8C890008 */ lw $t1, 8($a0) -/* 01E990 8001DD90 44800000 */ mtc1 $zero, $f0 -/* 01E994 8001DD94 AFA90078 */ sw $t1, 0x78($sp) -/* 01E998 8001DD98 8C8A0040 */ lw $t2, 0x40($a0) -/* 01E99C 8001DD9C 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 01E9A0 8001DDA0 44812000 */ mtc1 $at, $f4 -/* 01E9A4 8001DDA4 27B10098 */ addiu $s1, $sp, 0x98 -/* 01E9A8 8001DDA8 0080F025 */ move $fp, $a0 -/* 01E9AC 8001DDAC 00A07025 */ move $t6, $a1 -/* 01E9B0 8001DDB0 0000A025 */ move $s4, $zero -/* 01E9B4 8001DDB4 A7AE0084 */ sh $t6, 0x84($sp) -/* 01E9B8 8001DDB8 A7A60082 */ sh $a2, 0x82($sp) -/* 01E9BC 8001DDBC A7A70080 */ sh $a3, 0x80($sp) -/* 01E9C0 8001DDC0 27A50080 */ addiu $a1, $sp, 0x80 -/* 01E9C4 8001DDC4 02202025 */ move $a0, $s1 -/* 01E9C8 8001DDC8 E7A0008C */ swc1 $f0, 0x8c($sp) -/* 01E9CC 8001DDCC E7A00090 */ swc1 $f0, 0x90($sp) -/* 01E9D0 8001DDD0 E7A00094 */ swc1 $f0, 0x94($sp) -/* 01E9D4 8001DDD4 AFAA0074 */ sw $t2, 0x74($sp) -/* 01E9D8 8001DDD8 0C01BF0C */ jal func_8006FC30 -/* 01E9DC 8001DDDC E7A40088 */ swc1 $f4, 0x88($sp) -/* 01E9E0 8001DDE0 02202025 */ move $a0, $s1 -/* 01E9E4 8001DDE4 0C01BD78 */ jal func_8006F5E0 -/* 01E9E8 8001DDE8 27A500D8 */ addiu $a1, $sp, 0xd8 -/* 01E9EC 8001DDEC A7A00062 */ sh $zero, 0x62($sp) -/* 01E9F0 8001DDF0 87C20028 */ lh $v0, 0x28($fp) -/* 01E9F4 8001DDF4 3C138012 */ lui $s3, %hi(D_8011AF68) # $s3, 0x8012 -/* 01E9F8 8001DDF8 184000C4 */ blez $v0, .L8001E10C -/* 01E9FC 8001DDFC 2673AF68 */ addiu $s3, %lo(D_8011AF68) # addiu $s3, $s3, -0x5098 -/* 01EA00 8001DE00 3C118012 */ lui $s1, %hi(D_8011AFE8) # $s1, 0x8012 -/* 01EA04 8001DE04 8FC60038 */ lw $a2, 0x38($fp) -/* 01EA08 8001DE08 2631AFE8 */ addiu $s1, %lo(D_8011AFE8) # addiu $s1, $s1, -0x5018 -.L8001DE0C: -/* 01EA0C 8001DE0C 87B70062 */ lh $s7, 0x62($sp) -/* 01EA10 8001DE10 3C010002 */ lui $at, 2 -/* 01EA14 8001DE14 00175880 */ sll $t3, $s7, 2 -/* 01EA18 8001DE18 01775823 */ subu $t3, $t3, $s7 -/* 01EA1C 8001DE1C 000BB880 */ sll $s7, $t3, 2 -/* 01EA20 8001DE20 00D72821 */ addu $a1, $a2, $s7 -/* 01EA24 8001DE24 8CA30008 */ lw $v1, 8($a1) -/* 01EA28 8001DE28 00000000 */ nop -/* 01EA2C 8001DE2C 306C8000 */ andi $t4, $v1, 0x8000 -/* 01EA30 8001DE30 118000A3 */ beqz $t4, .L8001E0C0 -/* 01EA34 8001DE34 00616824 */ and $t5, $v1, $at -/* 01EA38 8001DE38 35AE8000 */ ori $t6, $t5, 0x8000 -/* 01EA3C 8001DE3C 39CF8000 */ xori $t7, $t6, 0x8000 -/* 01EA40 8001DE40 AFAF0070 */ sw $t7, 0x70($sp) -/* 01EA44 8001DE44 90B90000 */ lbu $t9, ($a1) -/* 01EA48 8001DE48 8FD80000 */ lw $t8, ($fp) -/* 01EA4C 8001DE4C 001940C0 */ sll $t0, $t9, 3 -/* 01EA50 8001DE50 03084821 */ addu $t1, $t8, $t0 -/* 01EA54 8001DE54 8D240000 */ lw $a0, ($t1) -/* 01EA58 8001DE58 24070020 */ li $a3, 32 -/* 01EA5C 8001DE5C 90820000 */ lbu $v0, ($a0) -/* 01EA60 8001DE60 00009025 */ move $s2, $zero -/* 01EA64 8001DE64 10470014 */ beq $v0, $a3, .L8001DEB8 -/* 01EA68 8001DE68 24190006 */ li $t9, 6 -/* 01EA6C 8001DE6C 24010040 */ li $at, 64 -/* 01EA70 8001DE70 1041000D */ beq $v0, $at, .L8001DEA8 -/* 01EA74 8001DE74 240E0005 */ li $t6, 5 -/* 01EA78 8001DE78 24010080 */ li $at, 128 -/* 01EA7C 8001DE7C 10410006 */ beq $v0, $at, .L8001DE98 -/* 01EA80 8001DE80 240C0004 */ li $t4, 4 -/* 01EA84 8001DE84 240A0007 */ li $t2, 7 -/* 01EA88 8001DE88 240B01FF */ li $t3, 511 -/* 01EA8C 8001DE8C A7AB0068 */ sh $t3, 0x68($sp) -/* 01EA90 8001DE90 1000000C */ b .L8001DEC4 -/* 01EA94 8001DE94 A7AA006A */ sh $t2, 0x6a($sp) -.L8001DE98: -/* 01EA98 8001DE98 240D0FFF */ li $t5, 4095 -/* 01EA9C 8001DE9C A7AD0068 */ sh $t5, 0x68($sp) -/* 01EAA0 8001DEA0 10000008 */ b .L8001DEC4 -/* 01EAA4 8001DEA4 A7AC006A */ sh $t4, 0x6a($sp) -.L8001DEA8: -/* 01EAA8 8001DEA8 240F07FF */ li $t7, 2047 -/* 01EAAC 8001DEAC A7AF0068 */ sh $t7, 0x68($sp) -/* 01EAB0 8001DEB0 10000004 */ b .L8001DEC4 -/* 01EAB4 8001DEB4 A7AE006A */ sh $t6, 0x6a($sp) -.L8001DEB8: -/* 01EAB8 8001DEB8 241803FF */ li $t8, 1023 -/* 01EABC 8001DEBC A7B80068 */ sh $t8, 0x68($sp) -/* 01EAC0 8001DEC0 A7B9006A */ sh $t9, 0x6a($sp) -.L8001DEC4: -/* 01EAC4 8001DEC4 90820001 */ lbu $v0, 1($a0) -/* 01EAC8 8001DEC8 24150006 */ li $s5, 6 -/* 01EACC 8001DECC 1047000E */ beq $v0, $a3, .L8001DF08 -/* 01EAD0 8001DED0 241603FF */ li $s6, 1023 -/* 01EAD4 8001DED4 24010040 */ li $at, 64 -/* 01EAD8 8001DED8 10410009 */ beq $v0, $at, .L8001DF00 -/* 01EADC 8001DEDC 24150005 */ li $s5, 5 -/* 01EAE0 8001DEE0 24010080 */ li $at, 128 -/* 01EAE4 8001DEE4 10410004 */ beq $v0, $at, .L8001DEF8 -/* 01EAE8 8001DEE8 24150004 */ li $s5, 4 -/* 01EAEC 8001DEEC 24150007 */ li $s5, 7 -/* 01EAF0 8001DEF0 10000005 */ b .L8001DF08 -/* 01EAF4 8001DEF4 241601FF */ li $s6, 511 -.L8001DEF8: -/* 01EAF8 8001DEF8 10000003 */ b .L8001DF08 -/* 01EAFC 8001DEFC 24160FFF */ li $s6, 4095 -.L8001DF00: -/* 01EB00 8001DF00 10000001 */ b .L8001DF08 -/* 01EB04 8001DF04 241607FF */ li $s6, 2047 -.L8001DF08: -/* 01EB08 8001DF08 84B00002 */ lh $s0, 2($a1) -/* 01EB0C 8001DF0C 84A8000E */ lh $t0, 0xe($a1) -/* 01EB10 8001DF10 00000000 */ nop -/* 01EB14 8001DF14 0208082A */ slt $at, $s0, $t0 -/* 01EB18 8001DF18 10200040 */ beqz $at, .L8001E01C -.L8001DF1C: -/* 01EB1C 8001DF1C 00145080 */ sll $t2, $s4, 2 -/* 01EB20 8001DF20 8FA90074 */ lw $t1, 0x74($sp) -/* 01EB24 8001DF24 01545023 */ subu $t2, $t2, $s4 -/* 01EB28 8001DF28 000A5040 */ sll $t2, $t2, 1 -/* 01EB2C 8001DF2C 012A1021 */ addu $v0, $t1, $t2 -/* 01EB30 8001DF30 844B0000 */ lh $t3, ($v0) -/* 01EB34 8001DF34 26940001 */ addiu $s4, $s4, 1 -/* 01EB38 8001DF38 A62B0006 */ sh $t3, 6($s1) -/* 01EB3C 8001DF3C 844C0002 */ lh $t4, 2($v0) -/* 01EB40 8001DF40 00147400 */ sll $t6, $s4, 0x10 -/* 01EB44 8001DF44 A62C0008 */ sh $t4, 8($s1) -/* 01EB48 8001DF48 844D0004 */ lh $t5, 4($v0) -/* 01EB4C 8001DF4C 3C058012 */ lui $a1, %hi(D_8011AFEE) # $a1, 0x8012 -/* 01EB50 8001DF50 000EA403 */ sra $s4, $t6, 0x10 -/* 01EB54 8001DF54 24A5AFEE */ addiu $a1, %lo(D_8011AFEE) # addiu $a1, $a1, -0x5012 -/* 01EB58 8001DF58 27A400D8 */ addiu $a0, $sp, 0xd8 -/* 01EB5C 8001DF5C 0C01BED8 */ jal func_8006FB60 -/* 01EB60 8001DF60 A62D000A */ sh $t5, 0xa($s1) -/* 01EB64 8001DF64 8FB90070 */ lw $t9, 0x70($sp) -/* 01EB68 8001DF68 02202025 */ move $a0, $s1 -/* 01EB6C 8001DF6C 17200003 */ bnez $t9, .L8001DF7C -/* 01EB70 8001DF70 3C058012 */ lui $a1, %hi(D_8011AFEE) # $a1, 0x8012 -/* 01EB74 8001DF74 0C01BE6E */ jal func_8006F9B8 -/* 01EB78 8001DF78 24A5AFEE */ addiu $a1, %lo(D_8011AFEE) # addiu $a1, $a1, -0x5012 -.L8001DF7C: -/* 01EB7C 8001DF7C 86220006 */ lh $v0, 6($s1) -/* 01EB80 8001DF80 86230008 */ lh $v1, 8($s1) -/* 01EB84 8001DF84 18400004 */ blez $v0, .L8001DF98 -/* 01EB88 8001DF88 34078000 */ li $a3, 32768 -/* 01EB8C 8001DF8C 2442FFFF */ addiu $v0, $v0, -1 -/* 01EB90 8001DF90 0002C400 */ sll $t8, $v0, 0x10 -/* 01EB94 8001DF94 00181403 */ sra $v0, $t8, 0x10 -.L8001DF98: -/* 01EB98 8001DF98 18600004 */ blez $v1, .L8001DFAC -/* 01EB9C 8001DF9C 00025880 */ sll $t3, $v0, 2 -/* 01EBA0 8001DFA0 2463FFFF */ addiu $v1, $v1, -1 -/* 01EBA4 8001DFA4 00034C00 */ sll $t1, $v1, 0x10 -/* 01EBA8 8001DFA8 00091C03 */ sra $v1, $t1, 0x10 -.L8001DFAC: -/* 01EBAC 8001DFAC 01671021 */ addu $v0, $t3, $a3 -/* 01EBB0 8001DFB0 00037080 */ sll $t6, $v1, 2 -/* 01EBB4 8001DFB4 87A8006A */ lh $t0, 0x6a($sp) -/* 01EBB8 8001DFB8 00026400 */ sll $t4, $v0, 0x10 -/* 01EBBC 8001DFBC 01C71821 */ addu $v1, $t6, $a3 -/* 01EBC0 8001DFC0 000C6C03 */ sra $t5, $t4, 0x10 -/* 01EBC4 8001DFC4 00037C00 */ sll $t7, $v1, 0x10 -/* 01EBC8 8001DFC8 87AA0068 */ lh $t2, 0x68($sp) -/* 01EBCC 8001DFCC 000FCC03 */ sra $t9, $t7, 0x10 -/* 01EBD0 8001DFD0 0012C080 */ sll $t8, $s2, 2 -/* 01EBD4 8001DFD4 010D4807 */ srav $t1, $t5, $t0 -/* 01EBD8 8001DFD8 02782021 */ addu $a0, $s3, $t8 -/* 01EBDC 8001DFDC 02B96007 */ srav $t4, $t9, $s5 -/* 01EBE0 8001DFE0 01966824 */ and $t5, $t4, $s6 -/* 01EBE4 8001DFE4 012A5824 */ and $t3, $t1, $t2 -/* 01EBE8 8001DFE8 A48B0000 */ sh $t3, ($a0) -/* 01EBEC 8001DFEC A48D0002 */ sh $t5, 2($a0) -/* 01EBF0 8001DFF0 8FC60038 */ lw $a2, 0x38($fp) -/* 01EBF4 8001DFF4 26100001 */ addiu $s0, $s0, 1 -/* 01EBF8 8001DFF8 00D72821 */ addu $a1, $a2, $s7 -/* 01EBFC 8001DFFC 84A8000E */ lh $t0, 0xe($a1) -/* 01EC00 8001E000 00107400 */ sll $t6, $s0, 0x10 -/* 01EC04 8001E004 000E8403 */ sra $s0, $t6, 0x10 -/* 01EC08 8001E008 26520001 */ addiu $s2, $s2, 1 -/* 01EC0C 8001E00C 0012CC00 */ sll $t9, $s2, 0x10 -/* 01EC10 8001E010 0208082A */ slt $at, $s0, $t0 -/* 01EC14 8001E014 1420FFC1 */ bnez $at, .L8001DF1C -/* 01EC18 8001E018 00199403 */ sra $s2, $t9, 0x10 -.L8001E01C: -/* 01EC1C 8001E01C 84B00004 */ lh $s0, 4($a1) -/* 01EC20 8001E020 84A90010 */ lh $t1, 0x10($a1) -/* 01EC24 8001E024 8FA70078 */ lw $a3, 0x78($sp) -/* 01EC28 8001E028 0209082A */ slt $at, $s0, $t1 -/* 01EC2C 8001E02C 10200021 */ beqz $at, .L8001E0B4 -/* 01EC30 8001E030 00105100 */ sll $t2, $s0, 4 -.L8001E034: -/* 01EC34 8001E034 00EA1021 */ addu $v0, $a3, $t2 -/* 01EC38 8001E038 904B0001 */ lbu $t3, 1($v0) -/* 01EC3C 8001E03C 904F0002 */ lbu $t7, 2($v0) -/* 01EC40 8001E040 000B6080 */ sll $t4, $t3, 2 -/* 01EC44 8001E044 026C1821 */ addu $v1, $s3, $t4 -/* 01EC48 8001E048 846D0000 */ lh $t5, ($v1) -/* 01EC4C 8001E04C 000FC880 */ sll $t9, $t7, 2 -/* 01EC50 8001E050 A44D0004 */ sh $t5, 4($v0) -/* 01EC54 8001E054 846E0002 */ lh $t6, 2($v1) -/* 01EC58 8001E058 02792021 */ addu $a0, $s3, $t9 -/* 01EC5C 8001E05C A44E0006 */ sh $t6, 6($v0) -/* 01EC60 8001E060 84980000 */ lh $t8, ($a0) -/* 01EC64 8001E064 90490003 */ lbu $t1, 3($v0) -/* 01EC68 8001E068 A4580008 */ sh $t8, 8($v0) -/* 01EC6C 8001E06C 84880002 */ lh $t0, 2($a0) -/* 01EC70 8001E070 00095080 */ sll $t2, $t1, 2 -/* 01EC74 8001E074 026A2821 */ addu $a1, $s3, $t2 -/* 01EC78 8001E078 A448000A */ sh $t0, 0xa($v0) -/* 01EC7C 8001E07C 84AB0000 */ lh $t3, ($a1) -/* 01EC80 8001E080 26100001 */ addiu $s0, $s0, 1 -/* 01EC84 8001E084 A44B000C */ sh $t3, 0xc($v0) -/* 01EC88 8001E088 84AC0002 */ lh $t4, 2($a1) -/* 01EC8C 8001E08C 00106C00 */ sll $t5, $s0, 0x10 -/* 01EC90 8001E090 A44C000E */ sh $t4, 0xe($v0) -/* 01EC94 8001E094 8FC60038 */ lw $a2, 0x38($fp) -/* 01EC98 8001E098 000D8403 */ sra $s0, $t5, 0x10 -/* 01EC9C 8001E09C 00D77821 */ addu $t7, $a2, $s7 -/* 01ECA0 8001E0A0 85F90010 */ lh $t9, 0x10($t7) -/* 01ECA4 8001E0A4 00000000 */ nop -/* 01ECA8 8001E0A8 0219082A */ slt $at, $s0, $t9 -/* 01ECAC 8001E0AC 1420FFE1 */ bnez $at, .L8001E034 -/* 01ECB0 8001E0B0 00105100 */ sll $t2, $s0, 4 -.L8001E0B4: -/* 01ECB4 8001E0B4 87C20028 */ lh $v0, 0x28($fp) -/* 01ECB8 8001E0B8 1000000D */ b .L8001E0F0 -/* 01ECBC 8001E0BC 87AD0062 */ lh $t5, 0x62($sp) -.L8001E0C0: -/* 01ECC0 8001E0C0 90B80006 */ lbu $t8, 6($a1) -/* 01ECC4 8001E0C4 00000000 */ nop -/* 01ECC8 8001E0C8 2B0100FF */ slti $at, $t8, 0xff -/* 01ECCC 8001E0CC 10200008 */ beqz $at, .L8001E0F0 -/* 01ECD0 8001E0D0 87AD0062 */ lh $t5, 0x62($sp) -/* 01ECD4 8001E0D4 84A8000E */ lh $t0, 0xe($a1) -/* 01ECD8 8001E0D8 84AA0002 */ lh $t2, 2($a1) -/* 01ECDC 8001E0DC 02884821 */ addu $t1, $s4, $t0 -/* 01ECE0 8001E0E0 012AA023 */ subu $s4, $t1, $t2 -/* 01ECE4 8001E0E4 00145C00 */ sll $t3, $s4, 0x10 -/* 01ECE8 8001E0E8 000BA403 */ sra $s4, $t3, 0x10 -/* 01ECEC 8001E0EC 87AD0062 */ lh $t5, 0x62($sp) -.L8001E0F0: -/* 01ECF0 8001E0F0 00000000 */ nop -/* 01ECF4 8001E0F4 25AE0001 */ addiu $t6, $t5, 1 -/* 01ECF8 8001E0F8 000E7C00 */ sll $t7, $t6, 0x10 -/* 01ECFC 8001E0FC 000FCC03 */ sra $t9, $t7, 0x10 -/* 01ED00 8001E100 0322082A */ slt $at, $t9, $v0 -/* 01ED04 8001E104 1420FF41 */ bnez $at, .L8001DE0C -/* 01ED08 8001E108 A7AE0062 */ sh $t6, 0x62($sp) -.L8001E10C: -/* 01ED0C 8001E10C 8FBF003C */ lw $ra, 0x3c($sp) -/* 01ED10 8001E110 8FB00018 */ lw $s0, 0x18($sp) -/* 01ED14 8001E114 8FB1001C */ lw $s1, 0x1c($sp) -/* 01ED18 8001E118 8FB20020 */ lw $s2, 0x20($sp) -/* 01ED1C 8001E11C 8FB30024 */ lw $s3, 0x24($sp) -/* 01ED20 8001E120 8FB40028 */ lw $s4, 0x28($sp) -/* 01ED24 8001E124 8FB5002C */ lw $s5, 0x2c($sp) -/* 01ED28 8001E128 8FB60030 */ lw $s6, 0x30($sp) -/* 01ED2C 8001E12C 8FB70034 */ lw $s7, 0x34($sp) -/* 01ED30 8001E130 8FBE0038 */ lw $fp, 0x38($sp) -/* 01ED34 8001E134 03E00008 */ jr $ra -/* 01ED38 8001E138 27BD0118 */ addiu $sp, $sp, 0x118 - -/* 01ED3C 8001E13C 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 01ED40 8001E140 3C0B8012 */ lui $t3, %hi(D_8011AE5C) # $t3, 0x8012 -/* 01ED44 8001E144 256BAE5C */ addiu $t3, %lo(D_8011AE5C) # addiu $t3, $t3, -0x51a4 -/* 01ED48 8001E148 AFB00008 */ sw $s0, 8($sp) -/* 01ED4C 8001E14C 8D630000 */ lw $v1, ($t3) -/* 01ED50 8001E150 00048400 */ sll $s0, $a0, 0x10 -/* 01ED54 8001E154 00107403 */ sra $t6, $s0, 0x10 -/* 01ED58 8001E158 AFB1000C */ sw $s1, 0xc($sp) -/* 01ED5C 8001E15C 00A08825 */ move $s1, $a1 -/* 01ED60 8001E160 01C08025 */ move $s0, $t6 -/* 01ED64 8001E164 AFA40010 */ sw $a0, 0x10($sp) -/* 01ED68 8001E168 18600048 */ blez $v1, .L8001E28C -/* 01ED6C 8001E16C 00001025 */ move $v0, $zero -/* 01ED70 8001E170 3C0C8012 */ lui $t4, %hi(D_8011AE58) # $t4, 0x8012 -/* 01ED74 8001E174 8FAA0028 */ lw $t2, 0x28($sp) -/* 01ED78 8001E178 8FA90024 */ lw $t1, 0x24($sp) -/* 01ED7C 8001E17C 8FA80020 */ lw $t0, 0x20($sp) -/* 01ED80 8001E180 258CAE58 */ addiu $t4, %lo(D_8011AE58) # addiu $t4, $t4, -0x51a8 -/* 01ED84 8001E184 240D0001 */ li $t5, 1 -.L8001E188: -/* 01ED88 8001E188 8D8F0000 */ lw $t7, ($t4) -/* 01ED8C 8001E18C 0002C080 */ sll $t8, $v0, 2 -/* 01ED90 8001E190 01F8C821 */ addu $t9, $t7, $t8 -/* 01ED94 8001E194 8F240000 */ lw $a0, ($t9) -/* 01ED98 8001E198 00000000 */ nop -/* 01ED9C 8001E19C 848E0006 */ lh $t6, 6($a0) -/* 01EDA0 8001E1A0 00000000 */ nop -/* 01EDA4 8001E1A4 31CF8000 */ andi $t7, $t6, 0x8000 -/* 01EDA8 8001E1A8 15E00034 */ bnez $t7, .L8001E27C -/* 01EDAC 8001E1AC 00000000 */ nop -/* 01EDB0 8001E1B0 84980048 */ lh $t8, 0x48($a0) -/* 01EDB4 8001E1B4 00000000 */ nop -/* 01EDB8 8001E1B8 15B80030 */ bne $t5, $t8, .L8001E27C -/* 01EDBC 8001E1BC 00000000 */ nop -/* 01EDC0 8001E1C0 8C850064 */ lw $a1, 0x64($a0) -/* 01EDC4 8001E1C4 00000000 */ nop -/* 01EDC8 8001E1C8 84B90000 */ lh $t9, ($a1) -/* 01EDCC 8001E1CC 00000000 */ nop -/* 01EDD0 8001E1D0 1619002B */ bne $s0, $t9, .L8001E280 -/* 01EDD4 8001E1D4 24420001 */ addiu $v0, $v0, 1 -/* 01EDD8 8001E1D8 444EF800 */ cfc1 $t6, $31 -/* 01EDDC 8001E1DC C484000C */ lwc1 $f4, 0xc($a0) -/* 01EDE0 8001E1E0 35C10003 */ ori $at, $t6, 3 -/* 01EDE4 8001E1E4 38210002 */ xori $at, $at, 2 -/* 01EDE8 8001E1E8 44C1F800 */ ctc1 $at, $31 -/* 01EDEC 8001E1EC 00000000 */ nop -/* 01EDF0 8001E1F0 460021A4 */ cvt.w.s $f6, $f4 -/* 01EDF4 8001E1F4 44CEF800 */ ctc1 $t6, $31 -/* 01EDF8 8001E1F8 440F3000 */ mfc1 $t7, $f6 -/* 01EDFC 8001E1FC 00000000 */ nop -/* 01EE00 8001E200 4458F800 */ cfc1 $t8, $31 -/* 01EE04 8001E204 A62F0000 */ sh $t7, ($s1) -/* 01EE08 8001E208 37010003 */ ori $at, $t8, 3 -/* 01EE0C 8001E20C 38210002 */ xori $at, $at, 2 -/* 01EE10 8001E210 44C1F800 */ ctc1 $at, $31 -/* 01EE14 8001E214 C4880010 */ lwc1 $f8, 0x10($a0) -/* 01EE18 8001E218 35C10003 */ ori $at, $t6, 3 -/* 01EE1C 8001E21C 460042A4 */ cvt.w.s $f10, $f8 -/* 01EE20 8001E220 38210002 */ xori $at, $at, 2 -/* 01EE24 8001E224 44195000 */ mfc1 $t9, $f10 -/* 01EE28 8001E228 44D8F800 */ ctc1 $t8, $31 -/* 01EE2C 8001E22C A4D90000 */ sh $t9, ($a2) -/* 01EE30 8001E230 C4900014 */ lwc1 $f16, 0x14($a0) -/* 01EE34 8001E234 44C1F800 */ ctc1 $at, $31 -/* 01EE38 8001E238 00000000 */ nop -/* 01EE3C 8001E23C 460084A4 */ cvt.w.s $f18, $f16 -/* 01EE40 8001E240 440F9000 */ mfc1 $t7, $f18 -/* 01EE44 8001E244 44CEF800 */ ctc1 $t6, $31 -/* 01EE48 8001E248 A4EF0000 */ sh $t7, ($a3) -/* 01EE4C 8001E24C 84980004 */ lh $t8, 4($a0) -/* 01EE50 8001E250 00000000 */ nop -/* 01EE54 8001E254 A5180000 */ sh $t8, ($t0) -/* 01EE58 8001E258 84990002 */ lh $t9, 2($a0) -/* 01EE5C 8001E25C 00000000 */ nop -/* 01EE60 8001E260 A5390000 */ sh $t9, ($t1) -/* 01EE64 8001E264 848E0000 */ lh $t6, ($a0) -/* 01EE68 8001E268 00000000 */ nop -/* 01EE6C 8001E26C A54E0000 */ sh $t6, ($t2) -/* 01EE70 8001E270 8D630000 */ lw $v1, ($t3) -/* 01EE74 8001E274 00000000 */ nop -/* 01EE78 8001E278 00601025 */ move $v0, $v1 -.L8001E27C: -/* 01EE7C 8001E27C 24420001 */ addiu $v0, $v0, 1 -.L8001E280: -/* 01EE80 8001E280 0043082A */ slt $at, $v0, $v1 -/* 01EE84 8001E284 1420FFC0 */ bnez $at, .L8001E188 -/* 01EE88 8001E288 00000000 */ nop -.L8001E28C: -/* 01EE8C 8001E28C 8FB00008 */ lw $s0, 8($sp) -/* 01EE90 8001E290 8FB1000C */ lw $s1, 0xc($sp) -/* 01EE94 8001E294 03E00008 */ jr $ra -/* 01EE98 8001E298 27BD0010 */ addiu $sp, $sp, 0x10 - -glabel func_8001E29C -/* 01EE9C 8001E29C 04800006 */ bltz $a0, .L8001E2B8 -/* 01EEA0 8001E2A0 3C0E8012 */ lui $t6, %hi(D_8011ADA0) # $t6, 0x8012 -/* 01EEA4 8001E2A4 8DCEADA0 */ lw $t6, %lo(D_8011ADA0)($t6) -/* 01EEA8 8001E2A8 3C0F8012 */ lui $t7, 0x8012 -/* 01EEAC 8001E2AC 008E082A */ slt $at, $a0, $t6 -/* 01EEB0 8001E2B0 14200005 */ bnez $at, .L8001E2C8 -/* 01EEB4 8001E2B4 0004C080 */ sll $t8, $a0, 2 -.L8001E2B8: -/* 01EEB8 8001E2B8 3C028012 */ lui $v0, %hi(D_8011AD6C) # $v0, 0x8012 -/* 01EEBC 8001E2BC 8C42AD6C */ lw $v0, %lo(D_8011AD6C)($v0) -/* 01EEC0 8001E2C0 03E00008 */ jr $ra -/* 01EEC4 8001E2C4 00000000 */ nop - -.L8001E2C8: -/* 01EEC8 8001E2C8 8DEFAD70 */ lw $t7, -0x5290($t7) -/* 01EECC 8001E2CC 3C0A8012 */ lui $t2, %hi(D_8011AD6C) # $t2, 0x8012 -/* 01EED0 8001E2D0 01F8C821 */ addu $t9, $t7, $t8 -/* 01EED4 8001E2D4 8F280000 */ lw $t0, ($t9) -/* 01EED8 8001E2D8 8D4AAD6C */ lw $t2, %lo(D_8011AD6C)($t2) -/* 01EEDC 8001E2DC 00084880 */ sll $t1, $t0, 2 -/* 01EEE0 8001E2E0 012A1021 */ addu $v0, $t1, $t2 -/* 01EEE4 8001E2E4 03E00008 */ jr $ra -/* 01EEE8 8001E2E8 00000000 */ nop - -glabel func_8001E2EC -/* 01EEEC 8001E2EC 04800012 */ bltz $a0, .L8001E338 -/* 01EEF0 8001E2F0 28810008 */ slti $at, $a0, 8 -/* 01EEF4 8001E2F4 10200010 */ beqz $at, .L8001E338 -/* 01EEF8 8001E2F8 3C0E8012 */ lui $t6, %hi(D_8011ADCC) # $t6, 0x8012 -/* 01EEFC 8001E2FC 8DCEADCC */ lw $t6, %lo(D_8011ADCC)($t6) -/* 01EF00 8001E300 3C188012 */ lui $t8, %hi(D_8011ADCC) # $t8, 0x8012 -/* 01EF04 8001E304 01C41021 */ addu $v0, $t6, $a0 -/* 01EF08 8001E308 80430000 */ lb $v1, ($v0) -/* 01EF0C 8001E30C 00000000 */ nop -/* 01EF10 8001E310 18600007 */ blez $v1, .L8001E330 -/* 01EF14 8001E314 246FFFFF */ addiu $t7, $v1, -1 -/* 01EF18 8001E318 A04F0000 */ sb $t7, ($v0) -/* 01EF1C 8001E31C 8F18ADCC */ lw $t8, %lo(D_8011ADCC)($t8) -/* 01EF20 8001E320 00000000 */ nop -/* 01EF24 8001E324 0304C821 */ addu $t9, $t8, $a0 -/* 01EF28 8001E328 83230000 */ lb $v1, ($t9) -/* 01EF2C 8001E32C 00000000 */ nop -.L8001E330: -/* 01EF30 8001E330 03E00008 */ jr $ra -/* 01EF34 8001E334 00601025 */ move $v0, $v1 - -.L8001E338: -/* 01EF38 8001E338 00001025 */ move $v0, $zero -/* 01EF3C 8001E33C 03E00008 */ jr $ra -/* 01EF40 8001E340 00000000 */ nop - -glabel func_8001E344 -/* 01EF44 8001E344 04800007 */ bltz $a0, .L8001E364 -/* 01EF48 8001E348 28810008 */ slti $at, $a0, 8 -/* 01EF4C 8001E34C 10200005 */ beqz $at, .L8001E364 -/* 01EF50 8001E350 3C0F8012 */ lui $t7, %hi(D_8011ADCC) # $t7, 0x8012 -/* 01EF54 8001E354 8DEFADCC */ lw $t7, %lo(D_8011ADCC)($t7) -/* 01EF58 8001E358 240E0008 */ li $t6, 8 -/* 01EF5C 8001E35C 01E4C021 */ addu $t8, $t7, $a0 -/* 01EF60 8001E360 A30E0000 */ sb $t6, ($t8) -.L8001E364: -/* 01EF64 8001E364 03E00008 */ jr $ra -/* 01EF68 8001E368 00000000 */ nop - -glabel func_8001E36C -/* 01EF6C 8001E36C 3C01C6FA */ li $at, 0xC6FA0000 # -32000.000000 -/* 01EF70 8001E370 44810000 */ mtc1 $at, $f0 -/* 01EF74 8001E374 27BDFFF8 */ addiu $sp, $sp, -8 -/* 01EF78 8001E378 AFB00004 */ sw $s0, 4($sp) -/* 01EF7C 8001E37C E4A00000 */ swc1 $f0, ($a1) -/* 01EF80 8001E380 E4C00000 */ swc1 $f0, ($a2) -/* 01EF84 8001E384 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 -/* 01EF88 8001E388 E4E00000 */ swc1 $f0, ($a3) -/* 01EF8C 8001E38C 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) -/* 01EF90 8001E390 00808025 */ move $s0, $a0 -/* 01EF94 8001E394 18600027 */ blez $v1, .L8001E434 -/* 01EF98 8001E398 00001025 */ move $v0, $zero -/* 01EF9C 8001E39C 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 -/* 01EFA0 8001E3A0 2529AE58 */ addiu $t1, %lo(D_8011AE58) # addiu $t1, $t1, -0x51a8 -/* 01EFA4 8001E3A4 00004025 */ move $t0, $zero -/* 01EFA8 8001E3A8 240A0027 */ li $t2, 39 -.L8001E3AC: -/* 01EFAC 8001E3AC 8D2E0000 */ lw $t6, ($t1) -/* 01EFB0 8001E3B0 24420001 */ addiu $v0, $v0, 1 -/* 01EFB4 8001E3B4 01C87821 */ addu $t7, $t6, $t0 -/* 01EFB8 8001E3B8 8DE40000 */ lw $a0, ($t7) -/* 01EFBC 8001E3BC 00000000 */ nop -/* 01EFC0 8001E3C0 1080001A */ beqz $a0, .L8001E42C -/* 01EFC4 8001E3C4 0043082A */ slt $at, $v0, $v1 -/* 01EFC8 8001E3C8 84980006 */ lh $t8, 6($a0) -/* 01EFCC 8001E3CC 00000000 */ nop -/* 01EFD0 8001E3D0 33198000 */ andi $t9, $t8, 0x8000 -/* 01EFD4 8001E3D4 17200015 */ bnez $t9, .L8001E42C -/* 01EFD8 8001E3D8 0043082A */ slt $at, $v0, $v1 -/* 01EFDC 8001E3DC 848B0048 */ lh $t3, 0x48($a0) -/* 01EFE0 8001E3E0 00000000 */ nop -/* 01EFE4 8001E3E4 154B0011 */ bne $t2, $t3, .L8001E42C -/* 01EFE8 8001E3E8 0043082A */ slt $at, $v0, $v1 -/* 01EFEC 8001E3EC 8C8C0078 */ lw $t4, 0x78($a0) -/* 01EFF0 8001E3F0 00000000 */ nop -/* 01EFF4 8001E3F4 160C000D */ bne $s0, $t4, .L8001E42C -/* 01EFF8 8001E3F8 0043082A */ slt $at, $v0, $v1 -/* 01EFFC 8001E3FC C484000C */ lwc1 $f4, 0xc($a0) -/* 01F000 8001E400 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 -/* 01F004 8001E404 E4A40000 */ swc1 $f4, ($a1) -/* 01F008 8001E408 C4860010 */ lwc1 $f6, 0x10($a0) -/* 01F00C 8001E40C 00000000 */ nop -/* 01F010 8001E410 E4C60000 */ swc1 $f6, ($a2) -/* 01F014 8001E414 C4880014 */ lwc1 $f8, 0x14($a0) -/* 01F018 8001E418 00000000 */ nop -/* 01F01C 8001E41C E4E80000 */ swc1 $f8, ($a3) -/* 01F020 8001E420 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) -/* 01F024 8001E424 00000000 */ nop -/* 01F028 8001E428 0043082A */ slt $at, $v0, $v1 -.L8001E42C: -/* 01F02C 8001E42C 1420FFDF */ bnez $at, .L8001E3AC -/* 01F030 8001E430 25080004 */ addiu $t0, $t0, 4 -.L8001E434: -/* 01F034 8001E434 8FB00004 */ lw $s0, 4($sp) -/* 01F038 8001E438 03E00008 */ jr $ra -/* 01F03C 8001E43C 27BD0008 */ addiu $sp, $sp, 8 - -glabel func_8001E440 -/* 01F040 8001E440 3C028012 */ lui $v0, %hi(D_8011AE7A) # $v0, 0x8012 -/* 01F044 8001E444 8442AE7A */ lh $v0, %lo(D_8011AE7A)($v0) -/* 01F048 8001E448 03E00008 */ jr $ra -/* 01F04C 8001E44C 00000000 */ nop - -glabel func_8001E450 -/* 01F050 8001E450 3C018012 */ lui $at, 0x8012 -/* 01F054 8001E454 03E00008 */ jr $ra -/* 01F058 8001E458 A424AE7A */ sh $a0, -0x5186($at) - -glabel func_8001E45C -/* 01F05C 8001E45C 3C028012 */ lui $v0, %hi(D_8011AE7A) # $v0, 0x8012 -/* 01F060 8001E460 2442AE7A */ addiu $v0, %lo(D_8011AE7A) # addiu $v0, $v0, -0x5186 -/* 01F064 8001E464 844E0000 */ lh $t6, ($v0) -/* 01F068 8001E468 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 01F06C 8001E46C 108E000D */ beq $a0, $t6, .L8001E4A4 -/* 01F070 8001E470 AFBF0014 */ sw $ra, 0x14($sp) -/* 01F074 8001E474 A4440000 */ sh $a0, ($v0) -/* 01F078 8001E478 3C018012 */ lui $at, %hi(D_8011ADAC) # $at, 0x8012 -/* 01F07C 8001E47C AC20ADAC */ sw $zero, %lo(D_8011ADAC)($at) -/* 01F080 8001E480 3C018012 */ lui $at, %hi(D_8011AE7E) # $at, 0x8012 -/* 01F084 8001E484 240F0001 */ li $t7, 1 -/* 01F088 8001E488 0C01B683 */ jal func_8006DA0C -/* 01F08C 8001E48C A02FAE7E */ sb $t7, %lo(D_8011AE7E)($at) -/* 01F090 8001E490 24010001 */ li $at, 1 -/* 01F094 8001E494 14410004 */ bne $v0, $at, .L8001E4A8 -/* 01F098 8001E498 8FBF0014 */ lw $ra, 0x14($sp) -/* 01F09C 8001E49C 0C01BD0B */ jal func_8006F42C -/* 01F0A0 8001E4A0 00000000 */ nop -.L8001E4A4: -/* 01F0A4 8001E4A4 8FBF0014 */ lw $ra, 0x14($sp) -.L8001E4A8: -/* 01F0A8 8001E4A8 27BD0018 */ addiu $sp, $sp, 0x18 -/* 01F0AC 8001E4AC 03E00008 */ jr $ra -/* 01F0B0 8001E4B0 00000000 */ nop - -/* 01F0B4 8001E4B4 3C028012 */ lui $v0, %hi(D_8011AE60) # $v0, 0x8012 -/* 01F0B8 8001E4B8 8C42AE60 */ lw $v0, %lo(D_8011AE60)($v0) -/* 01F0BC 8001E4BC 03E00008 */ jr $ra -/* 01F0C0 8001E4C0 00000000 */ nop - -glabel func_8001E4C4 -/* 01F0C4 8001E4C4 3C088012 */ lui $t0, %hi(D_8011AE5C) # $t0, 0x8012 -/* 01F0C8 8001E4C8 2508AE5C */ addiu $t0, %lo(D_8011AE5C) # addiu $t0, $t0, -0x51a4 -/* 01F0CC 8001E4CC 8D030000 */ lw $v1, ($t0) -/* 01F0D0 8001E4D0 00001025 */ move $v0, $zero -/* 01F0D4 8001E4D4 18600013 */ blez $v1, .L8001E524 -/* 01F0D8 8001E4D8 00002025 */ move $a0, $zero -/* 01F0DC 8001E4DC 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 -/* 01F0E0 8001E4E0 2529AE58 */ addiu $t1, %lo(D_8011AE58) # addiu $t1, $t1, -0x51a8 -/* 01F0E4 8001E4E4 2406DFFF */ li $a2, -8193 -.L8001E4E8: -/* 01F0E8 8001E4E8 8D2E0000 */ lw $t6, ($t1) -/* 01F0EC 8001E4EC 24420001 */ addiu $v0, $v0, 1 -/* 01F0F0 8001E4F0 01C47821 */ addu $t7, $t6, $a0 -/* 01F0F4 8001E4F4 8DE50000 */ lw $a1, ($t7) -/* 01F0F8 8001E4F8 24840004 */ addiu $a0, $a0, 4 -/* 01F0FC 8001E4FC 84B80006 */ lh $t8, 6($a1) -/* 01F100 8001E500 00000000 */ nop -/* 01F104 8001E504 0306C824 */ and $t9, $t8, $a2 -/* 01F108 8001E508 A4B90006 */ sh $t9, 6($a1) -/* 01F10C 8001E50C 8D030000 */ lw $v1, ($t0) -/* 01F110 8001E510 00000000 */ nop -/* 01F114 8001E514 0043082A */ slt $at, $v0, $v1 -/* 01F118 8001E518 1420FFF3 */ bnez $at, .L8001E4E8 -/* 01F11C 8001E51C 00000000 */ nop -/* 01F120 8001E520 00001025 */ move $v0, $zero -.L8001E524: -/* 01F124 8001E524 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 -/* 01F128 8001E528 1860002C */ blez $v1, .L8001E5DC -/* 01F12C 8001E52C 2529AE58 */ addiu $t1, %lo(D_8011AE58) # addiu $t1, $t1, -0x51a8 -/* 01F130 8001E530 3C0B8012 */ lui $t3, %hi(D_8011AE7A) # $t3, 0x8012 -/* 01F134 8001E534 256BAE7A */ addiu $t3, %lo(D_8011AE7A) # addiu $t3, $t3, -0x5186 -/* 01F138 8001E538 00002025 */ move $a0, $zero -/* 01F13C 8001E53C 240C0014 */ li $t4, 20 -/* 01F140 8001E540 240A0031 */ li $t2, 49 -.L8001E544: -/* 01F144 8001E544 8D2D0000 */ lw $t5, ($t1) -/* 01F148 8001E548 00000000 */ nop -/* 01F14C 8001E54C 01A47021 */ addu $t6, $t5, $a0 -/* 01F150 8001E550 8DC50000 */ lw $a1, ($t6) -/* 01F154 8001E554 00000000 */ nop -/* 01F158 8001E558 10A0001A */ beqz $a1, .L8001E5C4 -/* 01F15C 8001E55C 00000000 */ nop -/* 01F160 8001E560 84A30006 */ lh $v1, 6($a1) -/* 01F164 8001E564 00000000 */ nop -/* 01F168 8001E568 306F8000 */ andi $t7, $v1, 0x8000 -/* 01F16C 8001E56C 15E00015 */ bnez $t7, .L8001E5C4 -/* 01F170 8001E570 00000000 */ nop -/* 01F174 8001E574 84B80048 */ lh $t8, 0x48($a1) -/* 01F178 8001E578 00000000 */ nop -/* 01F17C 8001E57C 15580011 */ bne $t2, $t8, .L8001E5C4 -/* 01F180 8001E580 00000000 */ nop -/* 01F184 8001E584 8CA6003C */ lw $a2, 0x3c($a1) -/* 01F188 8001E588 85790000 */ lh $t9, ($t3) -/* 01F18C 8001E58C 80C70021 */ lb $a3, 0x21($a2) -/* 01F190 8001E590 00000000 */ nop -/* 01F194 8001E594 1327000B */ beq $t9, $a3, .L8001E5C4 -/* 01F198 8001E598 00000000 */ nop -/* 01F19C 8001E59C 11870009 */ beq $t4, $a3, .L8001E5C4 -/* 01F1A0 8001E5A0 00000000 */ nop -/* 01F1A4 8001E5A4 8CA60064 */ lw $a2, 0x64($a1) -/* 01F1A8 8001E5A8 346D2000 */ ori $t5, $v1, 0x2000 -/* 01F1AC 8001E5AC 10C00005 */ beqz $a2, .L8001E5C4 -/* 01F1B0 8001E5B0 A4AD0006 */ sh $t5, 6($a1) -/* 01F1B4 8001E5B4 84CE0006 */ lh $t6, 6($a2) -/* 01F1B8 8001E5B8 00000000 */ nop -/* 01F1BC 8001E5BC 35CF2000 */ ori $t7, $t6, 0x2000 -/* 01F1C0 8001E5C0 A4CF0006 */ sh $t7, 6($a2) -.L8001E5C4: -/* 01F1C4 8001E5C4 8D030000 */ lw $v1, ($t0) -/* 01F1C8 8001E5C8 24420001 */ addiu $v0, $v0, 1 -/* 01F1CC 8001E5CC 0043082A */ slt $at, $v0, $v1 -/* 01F1D0 8001E5D0 1420FFDC */ bnez $at, .L8001E544 -/* 01F1D4 8001E5D4 24840004 */ addiu $a0, $a0, 4 -/* 01F1D8 8001E5D8 00001025 */ move $v0, $zero -.L8001E5DC: -/* 01F1DC 8001E5DC 2466FFFF */ addiu $a2, $v1, -1 -/* 01F1E0 8001E5E0 04C0003D */ bltz $a2, .L8001E6D8 -/* 01F1E4 8001E5E4 00C03825 */ move $a3, $a2 -/* 01F1E8 8001E5E8 00E2082A */ slt $at, $a3, $v0 -.L8001E5EC: -/* 01F1EC 8001E5EC 14200014 */ bnez $at, .L8001E640 -/* 01F1F0 8001E5F0 00001825 */ move $v1, $zero -/* 01F1F4 8001E5F4 8D380000 */ lw $t8, ($t1) -/* 01F1F8 8001E5F8 0002C880 */ sll $t9, $v0, 2 -/* 01F1FC 8001E5FC 03192021 */ addu $a0, $t8, $t9 -.L8001E600: -/* 01F200 8001E600 8C8D0000 */ lw $t5, ($a0) -/* 01F204 8001E604 00000000 */ nop -/* 01F208 8001E608 85AE0006 */ lh $t6, 6($t5) -/* 01F20C 8001E60C 00000000 */ nop -/* 01F210 8001E610 31CF2000 */ andi $t7, $t6, 0x2000 -/* 01F214 8001E614 11E00004 */ beqz $t7, .L8001E628 -/* 01F218 8001E618 00000000 */ nop -/* 01F21C 8001E61C 24420001 */ addiu $v0, $v0, 1 -/* 01F220 8001E620 10000002 */ b .L8001E62C -/* 01F224 8001E624 24840004 */ addiu $a0, $a0, 4 -.L8001E628: -/* 01F228 8001E628 2403FFFF */ li $v1, -1 -.L8001E62C: -/* 01F22C 8001E62C 00E2082A */ slt $at, $a3, $v0 -/* 01F230 8001E630 14200003 */ bnez $at, .L8001E640 -/* 01F234 8001E634 00000000 */ nop -/* 01F238 8001E638 1060FFF1 */ beqz $v1, .L8001E600 -/* 01F23C 8001E63C 00000000 */ nop -.L8001E640: -/* 01F240 8001E640 04C00013 */ bltz $a2, .L8001E690 -/* 01F244 8001E644 00001825 */ move $v1, $zero -/* 01F248 8001E648 8D380000 */ lw $t8, ($t1) -/* 01F24C 8001E64C 0006C880 */ sll $t9, $a2, 2 -/* 01F250 8001E650 03192021 */ addu $a0, $t8, $t9 -.L8001E654: -/* 01F254 8001E654 8C8D0000 */ lw $t5, ($a0) -/* 01F258 8001E658 00000000 */ nop -/* 01F25C 8001E65C 85AE0006 */ lh $t6, 6($t5) -/* 01F260 8001E660 00000000 */ nop -/* 01F264 8001E664 31CF2000 */ andi $t7, $t6, 0x2000 -/* 01F268 8001E668 11E00003 */ beqz $t7, .L8001E678 -/* 01F26C 8001E66C 00000000 */ nop -/* 01F270 8001E670 10000003 */ b .L8001E680 -/* 01F274 8001E674 2403FFFF */ li $v1, -1 -.L8001E678: -/* 01F278 8001E678 24C6FFFF */ addiu $a2, $a2, -1 -/* 01F27C 8001E67C 2484FFFC */ addiu $a0, $a0, -4 -.L8001E680: -/* 01F280 8001E680 04C00004 */ bltz $a2, .L8001E694 -/* 01F284 8001E684 0046082A */ slt $at, $v0, $a2 -/* 01F288 8001E688 1060FFF2 */ beqz $v1, .L8001E654 -/* 01F28C 8001E68C 00000000 */ nop -.L8001E690: -/* 01F290 8001E690 0046082A */ slt $at, $v0, $a2 -.L8001E694: -/* 01F294 8001E694 1020000D */ beqz $at, .L8001E6CC -/* 01F298 8001E698 0002C080 */ sll $t8, $v0, 2 -/* 01F29C 8001E69C 8D230000 */ lw $v1, ($t1) -/* 01F2A0 8001E6A0 00064080 */ sll $t0, $a2, 2 -/* 01F2A4 8001E6A4 0068C821 */ addu $t9, $v1, $t0 -/* 01F2A8 8001E6A8 8F2D0000 */ lw $t5, ($t9) -/* 01F2AC 8001E6AC 00782021 */ addu $a0, $v1, $t8 -/* 01F2B0 8001E6B0 8C850000 */ lw $a1, ($a0) -/* 01F2B4 8001E6B4 AC8D0000 */ sw $t5, ($a0) -/* 01F2B8 8001E6B8 8D2E0000 */ lw $t6, ($t1) -/* 01F2BC 8001E6BC 24420001 */ addiu $v0, $v0, 1 -/* 01F2C0 8001E6C0 01C87821 */ addu $t7, $t6, $t0 -/* 01F2C4 8001E6C4 24C6FFFF */ addiu $a2, $a2, -1 -/* 01F2C8 8001E6C8 ADE50000 */ sw $a1, ($t7) -.L8001E6CC: -/* 01F2CC 8001E6CC 00C2082A */ slt $at, $a2, $v0 -/* 01F2D0 8001E6D0 1020FFC6 */ beqz $at, .L8001E5EC -/* 01F2D4 8001E6D4 00E2082A */ slt $at, $a3, $v0 -.L8001E6D8: -/* 01F2D8 8001E6D8 3C018012 */ lui $at, %hi(D_8011AE60) # $at, 0x8012 -/* 01F2DC 8001E6DC AC22AE60 */ sw $v0, %lo(D_8011AE60)($at) -/* 01F2E0 8001E6E0 3C018012 */ lui $at, 0x8012 -/* 01F2E4 8001E6E4 03E00008 */ jr $ra -/* 01F2E8 8001E6E8 A420AE7C */ sh $zero, -0x5184($at) - -glabel func_8001E6EC -/* 01F2EC 8001E6EC 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 01F2F0 8001E6F0 AFB00004 */ sw $s0, 4($sp) -/* 01F2F4 8001E6F4 3C038012 */ lui $v1, %hi(D_8011AE00) # $v1, 0x8012 -/* 01F2F8 8001E6F8 8063AE00 */ lb $v1, %lo(D_8011AE00)($v1) -/* 01F2FC 8001E6FC 00048600 */ sll $s0, $a0, 0x18 -/* 01F300 8001E700 00107603 */ sra $t6, $s0, 0x18 -/* 01F304 8001E704 01C08025 */ move $s0, $t6 -/* 01F308 8001E708 AFB2000C */ sw $s2, 0xc($sp) -/* 01F30C 8001E70C AFB10008 */ sw $s1, 8($sp) -/* 01F310 8001E710 AFA40010 */ sw $a0, 0x10($sp) -/* 01F314 8001E714 1860005A */ blez $v1, .L8001E880 -/* 01F318 8001E718 00001025 */ move $v0, $zero -/* 01F31C 8001E71C 3C058012 */ lui $a1, %hi(D_8011ADD8) # $a1, 0x8012 -/* 01F320 8001E720 3C128012 */ lui $s2, %hi(D_8011AE74) # $s2, 0x8012 -/* 01F324 8001E724 3C118012 */ lui $s1, %hi(D_8011AE78) # $s1, 0x8012 -/* 01F328 8001E728 3C0C8012 */ lui $t4, %hi(D_8011AE7A) # $t4, 0x8012 -/* 01F32C 8001E72C 258CAE7A */ addiu $t4, %lo(D_8011AE7A) # addiu $t4, $t4, -0x5186 -/* 01F330 8001E730 2631AE78 */ addiu $s1, %lo(D_8011AE78) # addiu $s1, $s1, -0x5188 -/* 01F334 8001E734 2652AE74 */ addiu $s2, %lo(D_8011AE74) # addiu $s2, $s2, -0x518c -/* 01F338 8001E738 24A5ADD8 */ addiu $a1, %lo(D_8011ADD8) # addiu $a1, $a1, -0x5228 -/* 01F33C 8001E73C 240D0014 */ li $t5, 20 -.L8001E740: -/* 01F340 8001E740 8CA40000 */ lw $a0, ($a1) -/* 01F344 8001E744 858F0000 */ lh $t7, ($t4) -/* 01F348 8001E748 8C86003C */ lw $a2, 0x3c($a0) -/* 01F34C 8001E74C 8C870064 */ lw $a3, 0x64($a0) -/* 01F350 8001E750 80C80009 */ lb $t0, 9($a2) -/* 01F354 8001E754 24420001 */ addiu $v0, $v0, 1 -/* 01F358 8001E758 11E80003 */ beq $t7, $t0, .L8001E768 -/* 01F35C 8001E75C 00000000 */ nop -/* 01F360 8001E760 15A80045 */ bne $t5, $t0, .L8001E878 -/* 01F364 8001E764 0043082A */ slt $at, $v0, $v1 -.L8001E768: -/* 01F368 8001E768 86290000 */ lh $t1, ($s1) -/* 01F36C 8001E76C 00004025 */ move $t0, $zero -/* 01F370 8001E770 19200014 */ blez $t1, .L8001E7C4 -/* 01F374 8001E774 00000000 */ nop -/* 01F378 8001E778 8E4B0000 */ lw $t3, ($s2) -/* 01F37C 8001E77C 80CA0008 */ lb $t2, 8($a2) -/* 01F380 8001E780 8D780000 */ lw $t8, ($t3) -/* 01F384 8001E784 00000000 */ nop -/* 01F388 8001E788 8F19007C */ lw $t9, 0x7c($t8) -/* 01F38C 8001E78C 00000000 */ nop -/* 01F390 8001E790 1159000C */ beq $t2, $t9, .L8001E7C4 -/* 01F394 8001E794 00000000 */ nop -.L8001E798: -/* 01F398 8001E798 25080001 */ addiu $t0, $t0, 1 -/* 01F39C 8001E79C 0109082A */ slt $at, $t0, $t1 -/* 01F3A0 8001E7A0 10200008 */ beqz $at, .L8001E7C4 -/* 01F3A4 8001E7A4 00087080 */ sll $t6, $t0, 2 -/* 01F3A8 8001E7A8 016E7821 */ addu $t7, $t3, $t6 -/* 01F3AC 8001E7AC 8DF80000 */ lw $t8, ($t7) -/* 01F3B0 8001E7B0 00000000 */ nop -/* 01F3B4 8001E7B4 8F19007C */ lw $t9, 0x7c($t8) -/* 01F3B8 8001E7B8 00000000 */ nop -/* 01F3BC 8001E7BC 1559FFF6 */ bne $t2, $t9, .L8001E798 -/* 01F3C0 8001E7C0 00000000 */ nop -.L8001E7C4: -/* 01F3C4 8001E7C4 11090027 */ beq $t0, $t1, .L8001E864 -/* 01F3C8 8001E7C8 00000000 */ nop -/* 01F3CC 8001E7CC 8E4E0000 */ lw $t6, ($s2) -/* 01F3D0 8001E7D0 00087880 */ sll $t7, $t0, 2 -/* 01F3D4 8001E7D4 01CFC021 */ addu $t8, $t6, $t7 -/* 01F3D8 8001E7D8 8F190000 */ lw $t9, ($t8) -/* 01F3DC 8001E7DC 00000000 */ nop -/* 01F3E0 8001E7E0 8F260064 */ lw $a2, 0x64($t9) -/* 01F3E4 8001E7E4 00000000 */ nop -/* 01F3E8 8001E7E8 10C0001E */ beqz $a2, .L8001E864 -/* 01F3EC 8001E7EC 00000000 */ nop -/* 01F3F0 8001E7F0 8CCE005C */ lw $t6, 0x5c($a2) -/* 01F3F4 8001E7F4 24080001 */ li $t0, 1 -/* 01F3F8 8001E7F8 11C00003 */ beqz $t6, .L8001E808 -/* 01F3FC 8001E7FC 00000000 */ nop -/* 01F400 8001E800 10000001 */ b .L8001E808 -/* 01F404 8001E804 00004025 */ move $t0, $zero -.L8001E808: -/* 01F408 8001E808 1208001B */ beq $s0, $t0, .L8001E878 -/* 01F40C 8001E80C 0043082A */ slt $at, $v0, $v1 -/* 01F410 8001E810 C4C4000C */ lwc1 $f4, 0xc($a2) -/* 01F414 8001E814 3C038012 */ lui $v1, %hi(D_8011AE00) # $v1, 0x8012 -/* 01F418 8001E818 E4E40000 */ swc1 $f4, ($a3) -/* 01F41C 8001E81C C4C60010 */ lwc1 $f6, 0x10($a2) -/* 01F420 8001E820 00000000 */ nop -/* 01F424 8001E824 E4E60004 */ swc1 $f6, 4($a3) -/* 01F428 8001E828 C4C80014 */ lwc1 $f8, 0x14($a2) -/* 01F42C 8001E82C ACE6000C */ sw $a2, 0xc($a3) -/* 01F430 8001E830 E4E80008 */ swc1 $f8, 8($a3) -/* 01F434 8001E834 C48A000C */ lwc1 $f10, 0xc($a0) -/* 01F438 8001E838 00000000 */ nop -/* 01F43C 8001E83C E4CA000C */ swc1 $f10, 0xc($a2) -/* 01F440 8001E840 C4900010 */ lwc1 $f16, 0x10($a0) -/* 01F444 8001E844 00000000 */ nop -/* 01F448 8001E848 E4D00010 */ swc1 $f16, 0x10($a2) -/* 01F44C 8001E84C C4920014 */ lwc1 $f18, 0x14($a0) -/* 01F450 8001E850 00000000 */ nop -/* 01F454 8001E854 E4D20014 */ swc1 $f18, 0x14($a2) -/* 01F458 8001E858 8063AE00 */ lb $v1, %lo(D_8011AE00)($v1) -/* 01F45C 8001E85C 10000006 */ b .L8001E878 -/* 01F460 8001E860 0043082A */ slt $at, $v0, $v1 -.L8001E864: -/* 01F464 8001E864 ACE0000C */ sw $zero, 0xc($a3) -/* 01F468 8001E868 3C038012 */ lui $v1, %hi(D_8011AE00) # $v1, 0x8012 -/* 01F46C 8001E86C 8063AE00 */ lb $v1, %lo(D_8011AE00)($v1) -/* 01F470 8001E870 00000000 */ nop -/* 01F474 8001E874 0043082A */ slt $at, $v0, $v1 -.L8001E878: -/* 01F478 8001E878 1420FFB1 */ bnez $at, .L8001E740 -/* 01F47C 8001E87C 24A50004 */ addiu $a1, $a1, 4 -.L8001E880: -/* 01F480 8001E880 3C018012 */ lui $at, %hi(D_8011AE01) # $at, 0x8012 -/* 01F484 8001E884 8FB00004 */ lw $s0, 4($sp) -/* 01F488 8001E888 8FB10008 */ lw $s1, 8($sp) -/* 01F48C 8001E88C 8FB2000C */ lw $s2, 0xc($sp) -/* 01F490 8001E890 A020AE01 */ sb $zero, %lo(D_8011AE01)($at) -/* 01F494 8001E894 03E00008 */ jr $ra -/* 01F498 8001E898 27BD0010 */ addiu $sp, $sp, 0x10 - -glabel func_8001E89C -/* 01F49C 8001E89C 3C028012 */ lui $v0, %hi(D_8011AE01) # $v0, 0x8012 -/* 01F4A0 8001E8A0 2442AE01 */ addiu $v0, %lo(D_8011AE01) # addiu $v0, $v0, -0x51ff -/* 01F4A4 8001E8A4 804E0000 */ lb $t6, ($v0) -/* 01F4A8 8001E8A8 00000000 */ nop -/* 01F4AC 8001E8AC 11C00003 */ beqz $t6, .L8001E8BC -/* 01F4B0 8001E8B0 00000000 */ nop -/* 01F4B4 8001E8B4 03E00008 */ jr $ra -/* 01F4B8 8001E8B8 A0400000 */ sb $zero, ($v0) - -.L8001E8BC: -/* 01F4BC 8001E8BC 3C038012 */ lui $v1, %hi(D_8011AE00) # $v1, 0x8012 -/* 01F4C0 8001E8C0 8063AE00 */ lb $v1, %lo(D_8011AE00)($v1) -/* 01F4C4 8001E8C4 00001025 */ move $v0, $zero -/* 01F4C8 8001E8C8 1860001A */ blez $v1, .L8001E934 -/* 01F4CC 8001E8CC 3C058012 */ lui $a1, %hi(D_8011ADD8) # $a1, 0x8012 -/* 01F4D0 8001E8D0 24A5ADD8 */ addiu $a1, %lo(D_8011ADD8) # addiu $a1, $a1, -0x5228 -.L8001E8D4: -/* 01F4D4 8001E8D4 8CA40000 */ lw $a0, ($a1) -/* 01F4D8 8001E8D8 24420001 */ addiu $v0, $v0, 1 -/* 01F4DC 8001E8DC 8C860064 */ lw $a2, 0x64($a0) -/* 01F4E0 8001E8E0 00000000 */ nop -/* 01F4E4 8001E8E4 8CC7000C */ lw $a3, 0xc($a2) -/* 01F4E8 8001E8E8 00000000 */ nop -/* 01F4EC 8001E8EC 10E0000F */ beqz $a3, .L8001E92C -/* 01F4F0 8001E8F0 0043082A */ slt $at, $v0, $v1 -/* 01F4F4 8001E8F4 C4C40000 */ lwc1 $f4, ($a2) -/* 01F4F8 8001E8F8 3C038012 */ lui $v1, %hi(D_8011AE00) # $v1, 0x8012 -/* 01F4FC 8001E8FC E4E4000C */ swc1 $f4, 0xc($a3) -/* 01F500 8001E900 8CCF000C */ lw $t7, 0xc($a2) -/* 01F504 8001E904 C4C60004 */ lwc1 $f6, 4($a2) -/* 01F508 8001E908 00000000 */ nop -/* 01F50C 8001E90C E5E60010 */ swc1 $f6, 0x10($t7) -/* 01F510 8001E910 8CD8000C */ lw $t8, 0xc($a2) -/* 01F514 8001E914 C4C80008 */ lwc1 $f8, 8($a2) -/* 01F518 8001E918 00000000 */ nop -/* 01F51C 8001E91C E7080014 */ swc1 $f8, 0x14($t8) -/* 01F520 8001E920 8063AE00 */ lb $v1, %lo(D_8011AE00)($v1) -/* 01F524 8001E924 00000000 */ nop -/* 01F528 8001E928 0043082A */ slt $at, $v0, $v1 -.L8001E92C: -/* 01F52C 8001E92C 1420FFE9 */ bnez $at, .L8001E8D4 -/* 01F530 8001E930 24A50004 */ addiu $a1, $a1, 4 -.L8001E934: -/* 01F534 8001E934 03E00008 */ jr $ra -/* 01F538 8001E938 00000000 */ nop - -glabel func_8001E93C -/* 01F53C 8001E93C 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 01F540 8001E940 3C0E8012 */ lui $t6, %hi(D_8011AE7E) # $t6, 0x8012 -/* 01F544 8001E944 81CEAE7E */ lb $t6, %lo(D_8011AE7E)($t6) -/* 01F548 8001E948 AFBF0024 */ sw $ra, 0x24($sp) -/* 01F54C 8001E94C AFB30020 */ sw $s3, 0x20($sp) -/* 01F550 8001E950 AFB2001C */ sw $s2, 0x1c($sp) -/* 01F554 8001E954 AFB10018 */ sw $s1, 0x18($sp) -/* 01F558 8001E958 11C00023 */ beqz $t6, .L8001E9E8 -/* 01F55C 8001E95C AFB00014 */ sw $s0, 0x14($sp) -/* 01F560 8001E960 3C048012 */ lui $a0, %hi(D_8011AE78) # $a0, 0x8012 -/* 01F564 8001E964 8484AE78 */ lh $a0, %lo(D_8011AE78)($a0) -/* 01F568 8001E968 00009825 */ move $s3, $zero -/* 01F56C 8001E96C 1880001E */ blez $a0, .L8001E9E8 -/* 01F570 8001E970 00008825 */ move $s1, $zero -/* 01F574 8001E974 3C0D8012 */ lui $t5, %hi(D_8011AE74) # $t5, 0x8012 -/* 01F578 8001E978 25ADAE74 */ addiu $t5, %lo(D_8011AE74) # addiu $t5, $t5, -0x518c -/* 01F57C 8001E97C 24100014 */ li $s0, 20 -.L8001E980: -/* 01F580 8001E980 8DAF0000 */ lw $t7, ($t5) -/* 01F584 8001E984 00000000 */ nop -/* 01F588 8001E988 01F1C021 */ addu $t8, $t7, $s1 -/* 01F58C 8001E98C 8F020000 */ lw $v0, ($t8) -/* 01F590 8001E990 00000000 */ nop -/* 01F594 8001E994 8C430064 */ lw $v1, 0x64($v0) -/* 01F598 8001E998 8C48003C */ lw $t0, 0x3c($v0) -/* 01F59C 8001E99C 1060000E */ beqz $v1, .L8001E9D8 -/* 01F5A0 8001E9A0 00000000 */ nop -/* 01F5A4 8001E9A4 81190021 */ lb $t9, 0x21($t0) -/* 01F5A8 8001E9A8 00000000 */ nop -/* 01F5AC 8001E9AC 1219000A */ beq $s0, $t9, .L8001E9D8 -/* 01F5B0 8001E9B0 00000000 */ nop -/* 01F5B4 8001E9B4 00602025 */ move $a0, $v1 -/* 01F5B8 8001E9B8 0C003FEE */ jal func_8000FFB8 -/* 01F5BC 8001E9BC AFA2003C */ sw $v0, 0x3c($sp) -/* 01F5C0 8001E9C0 8FA2003C */ lw $v0, 0x3c($sp) -/* 01F5C4 8001E9C4 3C048012 */ lui $a0, %hi(D_8011AE78) # $a0, 0x8012 -/* 01F5C8 8001E9C8 AC400064 */ sw $zero, 0x64($v0) -/* 01F5CC 8001E9CC 3C0D8012 */ lui $t5, %hi(D_8011AE74) # $t5, 0x8012 -/* 01F5D0 8001E9D0 8484AE78 */ lh $a0, %lo(D_8011AE78)($a0) -/* 01F5D4 8001E9D4 25ADAE74 */ addiu $t5, %lo(D_8011AE74) # addiu $t5, $t5, -0x518c -.L8001E9D8: -/* 01F5D8 8001E9D8 26730001 */ addiu $s3, $s3, 1 -/* 01F5DC 8001E9DC 0264082A */ slt $at, $s3, $a0 -/* 01F5E0 8001E9E0 1420FFE7 */ bnez $at, .L8001E980 -/* 01F5E4 8001E9E4 26310004 */ addiu $s1, $s1, 4 -.L8001E9E8: -/* 01F5E8 8001E9E8 3C028012 */ lui $v0, %hi(D_8011AD3E) # $v0, 0x8012 -/* 01F5EC 8001E9EC 2442AD3E */ addiu $v0, %lo(D_8011AD3E) # addiu $v0, $v0, -0x52c2 -/* 01F5F0 8001E9F0 804E0000 */ lb $t6, ($v0) -/* 01F5F4 8001E9F4 24100014 */ li $s0, 20 -/* 01F5F8 8001E9F8 29C10015 */ slti $at, $t6, 0x15 -/* 01F5FC 8001E9FC 14200002 */ bnez $at, .L8001EA08 -/* 01F600 8001EA00 00009825 */ move $s3, $zero -/* 01F604 8001EA04 A0400000 */ sb $zero, ($v0) -.L8001EA08: -/* 01F608 8001EA08 0C007931 */ jal func_8001E4C4 -/* 01F60C 8001EA0C 00000000 */ nop -/* 01F610 8001EA10 3C068012 */ lui $a2, %hi(D_8011AE5C) # $a2, 0x8012 -/* 01F614 8001EA14 8CC6AE5C */ lw $a2, %lo(D_8011AE5C)($a2) -/* 01F618 8001EA18 3C0D8012 */ lui $t5, %hi(D_8011AE74) # $t5, 0x8012 -/* 01F61C 8001EA1C 18C00023 */ blez $a2, .L8001EAAC -/* 01F620 8001EA20 25ADAE74 */ addiu $t5, %lo(D_8011AE74) # addiu $t5, $t5, -0x518c -/* 01F624 8001EA24 3C058012 */ lui $a1, %hi(D_8011AE58) # $a1, 0x8012 -/* 01F628 8001EA28 3C0B8012 */ lui $t3, %hi(D_8011ADD8) # $t3, 0x8012 -/* 01F62C 8001EA2C 3C098012 */ lui $t1, %hi(D_8011AE7A) # $t1, 0x8012 -/* 01F630 8001EA30 8CA5AE58 */ lw $a1, %lo(D_8011AE58)($a1) -/* 01F634 8001EA34 2529AE7A */ addiu $t1, %lo(D_8011AE7A) # addiu $t1, $t1, -0x5186 -/* 01F638 8001EA38 256BADD8 */ addiu $t3, %lo(D_8011ADD8) # addiu $t3, $t3, -0x5228 -/* 01F63C 8001EA3C 00005025 */ move $t2, $zero -/* 01F640 8001EA40 00063880 */ sll $a3, $a2, 2 -/* 01F644 8001EA44 24080053 */ li $t0, 83 -.L8001EA48: -/* 01F648 8001EA48 8CA20000 */ lw $v0, ($a1) -/* 01F64C 8001EA4C 254A0004 */ addiu $t2, $t2, 4 -/* 01F650 8001EA50 10400014 */ beqz $v0, .L8001EAA4 -/* 01F654 8001EA54 0147082A */ slt $at, $t2, $a3 -/* 01F658 8001EA58 844F0006 */ lh $t7, 6($v0) -/* 01F65C 8001EA5C 00000000 */ nop -/* 01F660 8001EA60 31F88000 */ andi $t8, $t7, 0x8000 -/* 01F664 8001EA64 1700000F */ bnez $t8, .L8001EAA4 -/* 01F668 8001EA68 00000000 */ nop -/* 01F66C 8001EA6C 84590048 */ lh $t9, 0x48($v0) -/* 01F670 8001EA70 00000000 */ nop -/* 01F674 8001EA74 1519000B */ bne $t0, $t9, .L8001EAA4 -/* 01F678 8001EA78 00000000 */ nop -/* 01F67C 8001EA7C 8C43003C */ lw $v1, 0x3c($v0) -/* 01F680 8001EA80 852E0000 */ lh $t6, ($t1) -/* 01F684 8001EA84 80640009 */ lb $a0, 9($v1) -/* 01F688 8001EA88 00137880 */ sll $t7, $s3, 2 -/* 01F68C 8001EA8C 11C40003 */ beq $t6, $a0, .L8001EA9C -/* 01F690 8001EA90 016FC021 */ addu $t8, $t3, $t7 -/* 01F694 8001EA94 16040003 */ bne $s0, $a0, .L8001EAA4 -/* 01F698 8001EA98 00000000 */ nop -.L8001EA9C: -/* 01F69C 8001EA9C AF020000 */ sw $v0, ($t8) -/* 01F6A0 8001EAA0 26730001 */ addiu $s3, $s3, 1 -.L8001EAA4: -/* 01F6A4 8001EAA4 1420FFE8 */ bnez $at, .L8001EA48 -/* 01F6A8 8001EAA8 24A50004 */ addiu $a1, $a1, 4 -.L8001EAAC: -/* 01F6AC 8001EAAC 3C018012 */ lui $at, %hi(D_8011AE00) # $at, 0x8012 -/* 01F6B0 8001EAB0 A033AE00 */ sb $s3, %lo(D_8011AE00)($at) -/* 01F6B4 8001EAB4 24120001 */ li $s2, 1 -/* 01F6B8 8001EAB8 3C018012 */ lui $at, %hi(D_8011AE01) # $at, 0x8012 -/* 01F6BC 8001EABC A032AE01 */ sb $s2, %lo(D_8011AE01)($at) -/* 01F6C0 8001EAC0 3C0C8012 */ lui $t4, %hi(D_8011AE60) # $t4, 0x8012 -/* 01F6C4 8001EAC4 8D8CAE60 */ lw $t4, %lo(D_8011AE60)($t4) -/* 01F6C8 8001EAC8 3C018012 */ lui $at, %hi(D_8011AE78) # $at, 0x8012 -/* 01F6CC 8001EACC A420AE78 */ sh $zero, %lo(D_8011AE78)($at) -/* 01F6D0 8001EAD0 0186082A */ slt $at, $t4, $a2 -/* 01F6D4 8001EAD4 1020001E */ beqz $at, .L8001EB50 -/* 01F6D8 8001EAD8 00009825 */ move $s3, $zero -/* 01F6DC 8001EADC 3C038012 */ lui $v1, %hi(D_8011AE58) # $v1, 0x8012 -/* 01F6E0 8001EAE0 2463AE58 */ addiu $v1, %lo(D_8011AE58) # addiu $v1, $v1, -0x51a8 -/* 01F6E4 8001EAE4 000C5080 */ sll $t2, $t4, 2 -/* 01F6E8 8001EAE8 24040031 */ li $a0, 49 -.L8001EAEC: -/* 01F6EC 8001EAEC 8C790000 */ lw $t9, ($v1) -/* 01F6F0 8001EAF0 258C0001 */ addiu $t4, $t4, 1 -/* 01F6F4 8001EAF4 032A7021 */ addu $t6, $t9, $t2 -/* 01F6F8 8001EAF8 8DC20000 */ lw $v0, ($t6) -/* 01F6FC 8001EAFC 00000000 */ nop -/* 01F700 8001EB00 10400011 */ beqz $v0, .L8001EB48 -/* 01F704 8001EB04 0186082A */ slt $at, $t4, $a2 -/* 01F708 8001EB08 844F0006 */ lh $t7, 6($v0) -/* 01F70C 8001EB0C 00000000 */ nop -/* 01F710 8001EB10 31F88000 */ andi $t8, $t7, 0x8000 -/* 01F714 8001EB14 1700000C */ bnez $t8, .L8001EB48 -/* 01F718 8001EB18 0186082A */ slt $at, $t4, $a2 -/* 01F71C 8001EB1C 84590048 */ lh $t9, 0x48($v0) -/* 01F720 8001EB20 00137880 */ sll $t7, $s3, 2 -/* 01F724 8001EB24 14990008 */ bne $a0, $t9, .L8001EB48 -/* 01F728 8001EB28 0186082A */ slt $at, $t4, $a2 -/* 01F72C 8001EB2C 8DAE0000 */ lw $t6, ($t5) -/* 01F730 8001EB30 3C068012 */ lui $a2, %hi(D_8011AE5C) # $a2, 0x8012 -/* 01F734 8001EB34 01CFC021 */ addu $t8, $t6, $t7 -/* 01F738 8001EB38 AF020000 */ sw $v0, ($t8) -/* 01F73C 8001EB3C 8CC6AE5C */ lw $a2, %lo(D_8011AE5C)($a2) -/* 01F740 8001EB40 26730001 */ addiu $s3, $s3, 1 -/* 01F744 8001EB44 0186082A */ slt $at, $t4, $a2 -.L8001EB48: -/* 01F748 8001EB48 1420FFE8 */ bnez $at, .L8001EAEC -/* 01F74C 8001EB4C 254A0004 */ addiu $t2, $t2, 4 -.L8001EB50: -/* 01F750 8001EB50 00006025 */ move $t4, $zero -/* 01F754 8001EB54 267FFFFF */ addiu $ra, $s3, -1 -/* 01F758 8001EB58 24110002 */ li $s1, 2 -.L8001EB5C: -/* 01F75C 8001EB5C 1BE00041 */ blez $ra, .L8001EC64 -/* 01F760 8001EB60 02405825 */ move $t3, $s2 -/* 01F764 8001EB64 00005025 */ move $t2, $zero -.L8001EB68: -/* 01F768 8001EB68 8DB90000 */ lw $t9, ($t5) -/* 01F76C 8001EB6C 258C0001 */ addiu $t4, $t4, 1 -/* 01F770 8001EB70 032A2821 */ addu $a1, $t9, $t2 -/* 01F774 8001EB74 8CA60000 */ lw $a2, ($a1) -/* 01F778 8001EB78 8CA70004 */ lw $a3, 4($a1) -/* 01F77C 8001EB7C 8CC9003C */ lw $t1, 0x3c($a2) -/* 01F780 8001EB80 8CE4003C */ lw $a0, 0x3c($a3) -/* 01F784 8001EB84 812E0021 */ lb $t6, 0x21($t1) -/* 01F788 8001EB88 81220010 */ lb $v0, 0x10($t1) -/* 01F78C 8001EB8C 80830010 */ lb $v1, 0x10($a0) -/* 01F790 8001EB90 160E0004 */ bne $s0, $t6, .L8001EBA4 -/* 01F794 8001EB94 00000000 */ nop -/* 01F798 8001EB98 2442FE70 */ addiu $v0, $v0, -0x190 -/* 01F79C 8001EB9C 00027C00 */ sll $t7, $v0, 0x10 -/* 01F7A0 8001EBA0 000F1403 */ sra $v0, $t7, 0x10 -.L8001EBA4: -/* 01F7A4 8001EBA4 80990021 */ lb $t9, 0x21($a0) -/* 01F7A8 8001EBA8 00000000 */ nop -/* 01F7AC 8001EBAC 16190005 */ bne $s0, $t9, .L8001EBC4 -/* 01F7B0 8001EBB0 0062082A */ slt $at, $v1, $v0 -/* 01F7B4 8001EBB4 2463FE70 */ addiu $v1, $v1, -0x190 -/* 01F7B8 8001EBB8 00037400 */ sll $t6, $v1, 0x10 -/* 01F7BC 8001EBBC 000E1C03 */ sra $v1, $t6, 0x10 -/* 01F7C0 8001EBC0 0062082A */ slt $at, $v1, $v0 -.L8001EBC4: -/* 01F7C4 8001EBC4 10200007 */ beqz $at, .L8001EBE4 -/* 01F7C8 8001EBC8 00000000 */ nop -/* 01F7CC 8001EBCC ACA70000 */ sw $a3, ($a1) -/* 01F7D0 8001EBD0 8DB80000 */ lw $t8, ($t5) -/* 01F7D4 8001EBD4 00005825 */ move $t3, $zero -/* 01F7D8 8001EBD8 030AC821 */ addu $t9, $t8, $t2 -/* 01F7DC 8001EBDC 1000001E */ b .L8001EC58 -/* 01F7E0 8001EBE0 AF260004 */ sw $a2, 4($t9) -.L8001EBE4: -/* 01F7E4 8001EBE4 1443001C */ bne $v0, $v1, .L8001EC58 -/* 01F7E8 8001EBE8 00000000 */ nop -/* 01F7EC 8001EBEC 80820011 */ lb $v0, 0x11($a0) -/* 01F7F0 8001EBF0 81230011 */ lb $v1, 0x11($t1) -/* 01F7F4 8001EBF4 00000000 */ nop -/* 01F7F8 8001EBF8 0043082A */ slt $at, $v0, $v1 -/* 01F7FC 8001EBFC 10200007 */ beqz $at, .L8001EC1C -/* 01F800 8001EC00 00000000 */ nop -/* 01F804 8001EC04 ACA70000 */ sw $a3, ($a1) -/* 01F808 8001EC08 8DAE0000 */ lw $t6, ($t5) -/* 01F80C 8001EC0C 00005825 */ move $t3, $zero -/* 01F810 8001EC10 01CA7821 */ addu $t7, $t6, $t2 -/* 01F814 8001EC14 10000010 */ b .L8001EC58 -/* 01F818 8001EC18 ADE60004 */ sw $a2, 4($t7) -.L8001EC1C: -/* 01F81C 8001EC1C 1443000E */ bne $v0, $v1, .L8001EC58 -/* 01F820 8001EC20 00000000 */ nop -/* 01F824 8001EC24 8CF80078 */ lw $t8, 0x78($a3) -/* 01F828 8001EC28 00000000 */ nop -/* 01F82C 8001EC2C 12580005 */ beq $s2, $t8, .L8001EC44 -/* 01F830 8001EC30 00000000 */ nop -/* 01F834 8001EC34 8CD90078 */ lw $t9, 0x78($a2) -/* 01F838 8001EC38 00000000 */ nop -/* 01F83C 8001EC3C 16390006 */ bne $s1, $t9, .L8001EC58 -/* 01F840 8001EC40 00000000 */ nop -.L8001EC44: -/* 01F844 8001EC44 ACA70000 */ sw $a3, ($a1) -/* 01F848 8001EC48 8DAE0000 */ lw $t6, ($t5) -/* 01F84C 8001EC4C 00005825 */ move $t3, $zero -/* 01F850 8001EC50 01CA7821 */ addu $t7, $t6, $t2 -/* 01F854 8001EC54 ADE60004 */ sw $a2, 4($t7) -.L8001EC58: -/* 01F858 8001EC58 159FFFC3 */ bne $t4, $ra, .L8001EB68 -/* 01F85C 8001EC5C 254A0004 */ addiu $t2, $t2, 4 -/* 01F860 8001EC60 00006025 */ move $t4, $zero -.L8001EC64: -/* 01F864 8001EC64 1160FFBD */ beqz $t3, .L8001EB5C -/* 01F868 8001EC68 00000000 */ nop -/* 01F86C 8001EC6C 1A600071 */ blez $s3, .L8001EE34 -/* 01F870 8001EC70 2404FF9B */ li $a0, -101 -/* 01F874 8001EC74 32620003 */ andi $v0, $s3, 3 -/* 01F878 8001EC78 1040001A */ beqz $v0, .L8001ECE4 -/* 01F87C 8001EC7C 00401825 */ move $v1, $v0 -/* 01F880 8001EC80 8FA20028 */ lw $v0, 0x28($sp) -/* 01F884 8001EC84 000C5080 */ sll $t2, $t4, 2 -.L8001EC88: -/* 01F888 8001EC88 8DB80000 */ lw $t8, ($t5) -/* 01F88C 8001EC8C 258C0001 */ addiu $t4, $t4, 1 -/* 01F890 8001EC90 030AC821 */ addu $t9, $t8, $t2 -/* 01F894 8001EC94 8F2E0000 */ lw $t6, ($t9) -/* 01F898 8001EC98 00000000 */ nop -/* 01F89C 8001EC9C 8DC9003C */ lw $t1, 0x3c($t6) -/* 01F8A0 8001ECA0 00000000 */ nop -/* 01F8A4 8001ECA4 812F0010 */ lb $t7, 0x10($t1) -/* 01F8A8 8001ECA8 01204025 */ move $t0, $t1 -/* 01F8AC 8001ECAC 108F0003 */ beq $a0, $t7, .L8001ECBC -/* 01F8B0 8001ECB0 00000000 */ nop -/* 01F8B4 8001ECB4 81240010 */ lb $a0, 0x10($t1) -/* 01F8B8 8001ECB8 00001025 */ move $v0, $zero -.L8001ECBC: -/* 01F8BC 8001ECBC A1020011 */ sb $v0, 0x11($t0) -/* 01F8C0 8001ECC0 8DB80000 */ lw $t8, ($t5) -/* 01F8C4 8001ECC4 24420001 */ addiu $v0, $v0, 1 -/* 01F8C8 8001ECC8 030AC821 */ addu $t9, $t8, $t2 -/* 01F8CC 8001ECCC 8F2E0000 */ lw $t6, ($t9) -/* 01F8D0 8001ECD0 254A0004 */ addiu $t2, $t2, 4 -/* 01F8D4 8001ECD4 146CFFEC */ bne $v1, $t4, .L8001EC88 -/* 01F8D8 8001ECD8 ADC00078 */ sw $zero, 0x78($t6) -/* 01F8DC 8001ECDC 11930055 */ beq $t4, $s3, .L8001EE34 -/* 01F8E0 8001ECE0 AFA20028 */ sw $v0, 0x28($sp) -.L8001ECE4: -/* 01F8E4 8001ECE4 8FA20028 */ lw $v0, 0x28($sp) -/* 01F8E8 8001ECE8 000C5080 */ sll $t2, $t4, 2 -/* 01F8EC 8001ECEC 00132880 */ sll $a1, $s3, 2 -.L8001ECF0: -/* 01F8F0 8001ECF0 8DAF0000 */ lw $t7, ($t5) -/* 01F8F4 8001ECF4 00000000 */ nop -/* 01F8F8 8001ECF8 01EAC021 */ addu $t8, $t7, $t2 -/* 01F8FC 8001ECFC 8F190000 */ lw $t9, ($t8) -/* 01F900 8001ED00 00000000 */ nop -/* 01F904 8001ED04 8F29003C */ lw $t1, 0x3c($t9) -/* 01F908 8001ED08 00000000 */ nop -/* 01F90C 8001ED0C 812E0010 */ lb $t6, 0x10($t1) -/* 01F910 8001ED10 01204025 */ move $t0, $t1 -/* 01F914 8001ED14 108E0003 */ beq $a0, $t6, .L8001ED24 -/* 01F918 8001ED18 00000000 */ nop -/* 01F91C 8001ED1C 81240010 */ lb $a0, 0x10($t1) -/* 01F920 8001ED20 00001025 */ move $v0, $zero -.L8001ED24: -/* 01F924 8001ED24 A1020011 */ sb $v0, 0x11($t0) -/* 01F928 8001ED28 8DAF0000 */ lw $t7, ($t5) -/* 01F92C 8001ED2C 24420001 */ addiu $v0, $v0, 1 -/* 01F930 8001ED30 01EAC021 */ addu $t8, $t7, $t2 -/* 01F934 8001ED34 8F190000 */ lw $t9, ($t8) -/* 01F938 8001ED38 00000000 */ nop -/* 01F93C 8001ED3C AF200078 */ sw $zero, 0x78($t9) -/* 01F940 8001ED40 8DAE0000 */ lw $t6, ($t5) -/* 01F944 8001ED44 00000000 */ nop -/* 01F948 8001ED48 01CA7821 */ addu $t7, $t6, $t2 -/* 01F94C 8001ED4C 8DF80004 */ lw $t8, 4($t7) -/* 01F950 8001ED50 00000000 */ nop -/* 01F954 8001ED54 8F08003C */ lw $t0, 0x3c($t8) -/* 01F958 8001ED58 00000000 */ nop -/* 01F95C 8001ED5C 81030010 */ lb $v1, 0x10($t0) -/* 01F960 8001ED60 00000000 */ nop -/* 01F964 8001ED64 10830003 */ beq $a0, $v1, .L8001ED74 -/* 01F968 8001ED68 00000000 */ nop -/* 01F96C 8001ED6C 00602025 */ move $a0, $v1 -/* 01F970 8001ED70 00001025 */ move $v0, $zero -.L8001ED74: -/* 01F974 8001ED74 A1020011 */ sb $v0, 0x11($t0) -/* 01F978 8001ED78 8DB90000 */ lw $t9, ($t5) -/* 01F97C 8001ED7C 24420001 */ addiu $v0, $v0, 1 -/* 01F980 8001ED80 032A7021 */ addu $t6, $t9, $t2 -/* 01F984 8001ED84 8DCF0004 */ lw $t7, 4($t6) -/* 01F988 8001ED88 00000000 */ nop -/* 01F98C 8001ED8C ADE00078 */ sw $zero, 0x78($t7) -/* 01F990 8001ED90 8DB80000 */ lw $t8, ($t5) -/* 01F994 8001ED94 00000000 */ nop -/* 01F998 8001ED98 030AC821 */ addu $t9, $t8, $t2 -/* 01F99C 8001ED9C 8F2E0008 */ lw $t6, 8($t9) -/* 01F9A0 8001EDA0 00000000 */ nop -/* 01F9A4 8001EDA4 8DC8003C */ lw $t0, 0x3c($t6) -/* 01F9A8 8001EDA8 00000000 */ nop -/* 01F9AC 8001EDAC 81030010 */ lb $v1, 0x10($t0) -/* 01F9B0 8001EDB0 00000000 */ nop -/* 01F9B4 8001EDB4 10830003 */ beq $a0, $v1, .L8001EDC4 -/* 01F9B8 8001EDB8 00000000 */ nop -/* 01F9BC 8001EDBC 00602025 */ move $a0, $v1 -/* 01F9C0 8001EDC0 00001025 */ move $v0, $zero -.L8001EDC4: -/* 01F9C4 8001EDC4 A1020011 */ sb $v0, 0x11($t0) -/* 01F9C8 8001EDC8 8DAF0000 */ lw $t7, ($t5) -/* 01F9CC 8001EDCC 24420001 */ addiu $v0, $v0, 1 -/* 01F9D0 8001EDD0 01EAC021 */ addu $t8, $t7, $t2 -/* 01F9D4 8001EDD4 8F190008 */ lw $t9, 8($t8) -/* 01F9D8 8001EDD8 00000000 */ nop -/* 01F9DC 8001EDDC AF200078 */ sw $zero, 0x78($t9) -/* 01F9E0 8001EDE0 8DAE0000 */ lw $t6, ($t5) -/* 01F9E4 8001EDE4 00000000 */ nop -/* 01F9E8 8001EDE8 01CA7821 */ addu $t7, $t6, $t2 -/* 01F9EC 8001EDEC 8DF8000C */ lw $t8, 0xc($t7) -/* 01F9F0 8001EDF0 00000000 */ nop -/* 01F9F4 8001EDF4 8F08003C */ lw $t0, 0x3c($t8) -/* 01F9F8 8001EDF8 00000000 */ nop -/* 01F9FC 8001EDFC 81030010 */ lb $v1, 0x10($t0) -/* 01FA00 8001EE00 00000000 */ nop -/* 01FA04 8001EE04 10830003 */ beq $a0, $v1, .L8001EE14 -/* 01FA08 8001EE08 00000000 */ nop -/* 01FA0C 8001EE0C 00602025 */ move $a0, $v1 -/* 01FA10 8001EE10 00001025 */ move $v0, $zero -.L8001EE14: -/* 01FA14 8001EE14 A1020011 */ sb $v0, 0x11($t0) -/* 01FA18 8001EE18 8DB90000 */ lw $t9, ($t5) -/* 01FA1C 8001EE1C 24420001 */ addiu $v0, $v0, 1 -/* 01FA20 8001EE20 032A7021 */ addu $t6, $t9, $t2 -/* 01FA24 8001EE24 8DCF000C */ lw $t7, 0xc($t6) -/* 01FA28 8001EE28 254A0010 */ addiu $t2, $t2, 0x10 -/* 01FA2C 8001EE2C 1545FFB0 */ bne $t2, $a1, .L8001ECF0 -/* 01FA30 8001EE30 ADE00078 */ sw $zero, 0x78($t7) -.L8001EE34: -/* 01FA34 8001EE34 3C188012 */ lui $t8, %hi(D_8011AE7E) # $t8, 0x8012 -/* 01FA38 8001EE38 8318AE7E */ lb $t8, %lo(D_8011AE7E)($t8) -/* 01FA3C 8001EE3C 3C018012 */ lui $at, %hi(D_8011AE78) # $at, 0x8012 -/* 01FA40 8001EE40 13000003 */ beqz $t8, .L8001EE50 -/* 01FA44 8001EE44 A433AE78 */ sh $s3, %lo(D_8011AE78)($at) -/* 01FA48 8001EE48 0C007B9D */ jal func_8001EE74 -/* 01FA4C 8001EE4C 00000000 */ nop -.L8001EE50: -/* 01FA50 8001EE50 8FBF0024 */ lw $ra, 0x24($sp) -/* 01FA54 8001EE54 3C018012 */ lui $at, %hi(D_8011AE7E) # $at, 0x8012 -/* 01FA58 8001EE58 8FB00014 */ lw $s0, 0x14($sp) -/* 01FA5C 8001EE5C 8FB10018 */ lw $s1, 0x18($sp) -/* 01FA60 8001EE60 8FB2001C */ lw $s2, 0x1c($sp) -/* 01FA64 8001EE64 8FB30020 */ lw $s3, 0x20($sp) -/* 01FA68 8001EE68 A020AE7E */ sb $zero, %lo(D_8011AE7E)($at) -/* 01FA6C 8001EE6C 03E00008 */ jr $ra -/* 01FA70 8001EE70 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_8001EE74 -/* 01FA74 8001EE74 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* 01FA78 8001EE78 AFB70034 */ sw $s7, 0x34($sp) -/* 01FA7C 8001EE7C 3C178012 */ lui $s7, %hi(D_8011AE78) # $s7, 0x8012 -/* 01FA80 8001EE80 26F7AE78 */ addiu $s7, %lo(D_8011AE78) # addiu $s7, $s7, -0x5188 -/* 01FA84 8001EE84 86EE0000 */ lh $t6, ($s7) -/* 01FA88 8001EE88 AFB30024 */ sw $s3, 0x24($sp) -/* 01FA8C 8001EE8C AFBF003C */ sw $ra, 0x3c($sp) -/* 01FA90 8001EE90 AFBE0038 */ sw $fp, 0x38($sp) -/* 01FA94 8001EE94 AFB60030 */ sw $s6, 0x30($sp) -/* 01FA98 8001EE98 AFB5002C */ sw $s5, 0x2c($sp) -/* 01FA9C 8001EE9C AFB40028 */ sw $s4, 0x28($sp) -/* 01FAA0 8001EEA0 AFB20020 */ sw $s2, 0x20($sp) -/* 01FAA4 8001EEA4 AFB1001C */ sw $s1, 0x1c($sp) -/* 01FAA8 8001EEA8 AFB00018 */ sw $s0, 0x18($sp) -/* 01FAAC 8001EEAC 19C0002E */ blez $t6, .L8001EF68 -/* 01FAB0 8001EEB0 00009825 */ move $s3, $zero -/* 01FAB4 8001EEB4 3C1E8012 */ lui $fp, %hi(D_8011AD26) # $fp, 0x8012 -/* 01FAB8 8001EEB8 3C148012 */ lui $s4, %hi(D_8011AE74) # $s4, 0x8012 -/* 01FABC 8001EEBC 2694AE74 */ addiu $s4, %lo(D_8011AE74) # addiu $s4, $s4, -0x518c -/* 01FAC0 8001EEC0 27DEAD26 */ addiu $fp, %lo(D_8011AD26) # addiu $fp, $fp, -0x52da -/* 01FAC4 8001EEC4 00009025 */ move $s2, $zero -/* 01FAC8 8001EEC8 24160014 */ li $s6, 20 -/* 01FACC 8001EECC 2415FFFF */ li $s5, -1 -.L8001EED0: -/* 01FAD0 8001EED0 8E8F0000 */ lw $t7, ($s4) -/* 01FAD4 8001EED4 00000000 */ nop -/* 01FAD8 8001EED8 01F2C021 */ addu $t8, $t7, $s2 -/* 01FADC 8001EEDC 8F110000 */ lw $s1, ($t8) -/* 01FAE0 8001EEE0 00000000 */ nop -/* 01FAE4 8001EEE4 8E390064 */ lw $t9, 0x64($s1) -/* 01FAE8 8001EEE8 8E30003C */ lw $s0, 0x3c($s1) -/* 01FAEC 8001EEEC 1720000B */ bnez $t9, .L8001EF1C -/* 01FAF0 8001EEF0 00000000 */ nop -/* 01FAF4 8001EEF4 82080011 */ lb $t0, 0x11($s0) -/* 01FAF8 8001EEF8 00000000 */ nop -/* 01FAFC 8001EEFC 15000007 */ bnez $t0, .L8001EF1C -/* 01FB00 8001EF00 00000000 */ nop -/* 01FB04 8001EF04 8609000C */ lh $t1, 0xc($s0) -/* 01FB08 8001EF08 02202025 */ move $a0, $s1 -/* 01FB0C 8001EF0C 12A90003 */ beq $s5, $t1, .L8001EF1C -/* 01FB10 8001EF10 00000000 */ nop -/* 01FB14 8001EF14 0C007C8F */ jal func_8001F23C -/* 01FB18 8001EF18 02002825 */ move $a1, $s0 -.L8001EF1C: -/* 01FB1C 8001EF1C 83CA0000 */ lb $t2, ($fp) -/* 01FB20 8001EF20 00000000 */ nop -/* 01FB24 8001EF24 15400005 */ bnez $t2, .L8001EF3C -/* 01FB28 8001EF28 00000000 */ nop -/* 01FB2C 8001EF2C 820B0021 */ lb $t3, 0x21($s0) -/* 01FB30 8001EF30 00000000 */ nop -/* 01FB34 8001EF34 12CB0007 */ beq $s6, $t3, .L8001EF54 -/* 01FB38 8001EF38 00000000 */ nop -.L8001EF3C: -/* 01FB3C 8001EF3C 8E250064 */ lw $a1, 0x64($s1) -/* 01FB40 8001EF40 00000000 */ nop -/* 01FB44 8001EF44 10A00003 */ beqz $a1, .L8001EF54 -/* 01FB48 8001EF48 00000000 */ nop -/* 01FB4C 8001EF4C 0C007BE9 */ jal func_8001EFA4 -/* 01FB50 8001EF50 02202025 */ move $a0, $s1 -.L8001EF54: -/* 01FB54 8001EF54 86EC0000 */ lh $t4, ($s7) -/* 01FB58 8001EF58 26730001 */ addiu $s3, $s3, 1 -/* 01FB5C 8001EF5C 026C082A */ slt $at, $s3, $t4 -/* 01FB60 8001EF60 1420FFDB */ bnez $at, .L8001EED0 -/* 01FB64 8001EF64 26520004 */ addiu $s2, $s2, 4 -.L8001EF68: -/* 01FB68 8001EF68 3C1E8012 */ lui $fp, %hi(D_8011AD26) # $fp, 0x8012 -/* 01FB6C 8001EF6C 27DEAD26 */ addiu $fp, %lo(D_8011AD26) # addiu $fp, $fp, -0x52da -/* 01FB70 8001EF70 8FBF003C */ lw $ra, 0x3c($sp) -/* 01FB74 8001EF74 A3C00000 */ sb $zero, ($fp) -/* 01FB78 8001EF78 8FBE0038 */ lw $fp, 0x38($sp) -/* 01FB7C 8001EF7C 8FB00018 */ lw $s0, 0x18($sp) -/* 01FB80 8001EF80 8FB1001C */ lw $s1, 0x1c($sp) -/* 01FB84 8001EF84 8FB20020 */ lw $s2, 0x20($sp) -/* 01FB88 8001EF88 8FB30024 */ lw $s3, 0x24($sp) -/* 01FB8C 8001EF8C 8FB40028 */ lw $s4, 0x28($sp) -/* 01FB90 8001EF90 8FB5002C */ lw $s5, 0x2c($sp) -/* 01FB94 8001EF94 8FB60030 */ lw $s6, 0x30($sp) -/* 01FB98 8001EF98 8FB70034 */ lw $s7, 0x34($sp) -/* 01FB9C 8001EF9C 03E00008 */ jr $ra -/* 01FBA0 8001EFA0 27BD0040 */ addiu $sp, $sp, 0x40 - -glabel func_8001EFA4 -/* 01FBA4 8001EFA4 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 01FBA8 8001EFA8 AFBF0024 */ sw $ra, 0x24($sp) -/* 01FBAC 8001EFAC AFB20020 */ sw $s2, 0x20($sp) -/* 01FBB0 8001EFB0 AFB1001C */ sw $s1, 0x1c($sp) -/* 01FBB4 8001EFB4 AFB00018 */ sw $s0, 0x18($sp) -/* 01FBB8 8001EFB8 8C91003C */ lw $s1, 0x3c($a0) -/* 01FBBC 8001EFBC 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 01FBC0 8001EFC0 922F000B */ lbu $t7, 0xb($s1) -/* 01FBC4 8001EFC4 44811000 */ mtc1 $at, $f2 -/* 01FBC8 8001EFC8 448F2000 */ mtc1 $t7, $f4 -/* 01FBCC 8001EFCC 3C014280 */ li $at, 0x42800000 # 64.000000 -/* 01FBD0 8001EFD0 46802020 */ cvt.s.w $f0, $f4 -/* 01FBD4 8001EFD4 8CB00064 */ lw $s0, 0x64($a1) -/* 01FBD8 8001EFD8 44813000 */ mtc1 $at, $f6 -/* 01FBDC 8001EFDC 4602003C */ c.lt.s $f0, $f2 -/* 01FBE0 8001EFE0 00809025 */ move $s2, $a0 -/* 01FBE4 8001EFE4 45000003 */ bc1f .L8001EFF4 -/* 01FBE8 8001EFE8 00000000 */ nop -/* 01FBEC 8001EFEC 46001006 */ mov.s $f0, $f2 -/* 01FBF0 8001EFF0 00000000 */ nop -.L8001EFF4: -/* 01FBF4 8001EFF4 46060003 */ div.s $f0, $f0, $f6 -/* 01FBF8 8001EFF8 8CB80040 */ lw $t8, 0x40($a1) -/* 01FBFC 8001EFFC 00000000 */ nop -/* 01FC00 8001F000 C708000C */ lwc1 $f8, 0xc($t8) -/* 01FC04 8001F004 ACA00078 */ sw $zero, 0x78($a1) -/* 01FC08 8001F008 ACA0007C */ sw $zero, 0x7c($a1) -/* 01FC0C 8001F00C 46004282 */ mul.s $f10, $f8, $f0 -/* 01FC10 8001F010 E4AA0008 */ swc1 $f10, 8($a1) -/* 01FC14 8001F014 82220022 */ lb $v0, 0x22($s1) -/* 01FC18 8001F018 00000000 */ nop -/* 01FC1C 8001F01C 28410002 */ slti $at, $v0, 2 -/* 01FC20 8001F020 14200006 */ bnez $at, .L8001F03C -/* 01FC24 8001F024 2841000A */ slti $at, $v0, 0xa -/* 01FC28 8001F028 10200004 */ beqz $at, .L8001F03C -/* 01FC2C 8001F02C 2459FFFF */ addiu $t9, $v0, -1 -/* 01FC30 8001F030 ACB90078 */ sw $t9, 0x78($a1) -/* 01FC34 8001F034 82220022 */ lb $v0, 0x22($s1) -/* 01FC38 8001F038 00000000 */ nop -.L8001F03C: -/* 01FC3C 8001F03C 2841000A */ slti $at, $v0, 0xa -/* 01FC40 8001F040 14200004 */ bnez $at, .L8001F054 -/* 01FC44 8001F044 28410012 */ slti $at, $v0, 0x12 -/* 01FC48 8001F048 10200002 */ beqz $at, .L8001F054 -/* 01FC4C 8001F04C 2448FFF7 */ addiu $t0, $v0, -9 -/* 01FC50 8001F050 ACA80078 */ sw $t0, 0x78($a1) -.L8001F054: -/* 01FC54 8001F054 C650000C */ lwc1 $f16, 0xc($s2) -/* 01FC58 8001F058 3C01800E */ lui $at, %hi(D_800E5668) # $at, 0x800e -/* 01FC5C 8001F05C E4B0000C */ swc1 $f16, 0xc($a1) -/* 01FC60 8001F060 C6520010 */ lwc1 $f18, 0x10($s2) -/* 01FC64 8001F064 00000000 */ nop -/* 01FC68 8001F068 E4B20010 */ swc1 $f18, 0x10($a1) -/* 01FC6C 8001F06C C6440014 */ lwc1 $f4, 0x14($s2) -/* 01FC70 8001F070 00000000 */ nop -/* 01FC74 8001F074 E4A40014 */ swc1 $f4, 0x14($a1) -/* 01FC78 8001F078 86490000 */ lh $t1, ($s2) -/* 01FC7C 8001F07C 00000000 */ nop -/* 01FC80 8001F080 A4A90000 */ sh $t1, ($a1) -/* 01FC84 8001F084 864A0004 */ lh $t2, 4($s2) -/* 01FC88 8001F088 00000000 */ nop -/* 01FC8C 8001F08C A4AA0004 */ sh $t2, 4($a1) -/* 01FC90 8001F090 864B0002 */ lh $t3, 2($s2) -/* 01FC94 8001F094 00000000 */ nop -/* 01FC98 8001F098 A4AB0002 */ sh $t3, 2($a1) -/* 01FC9C 8001F09C A6000026 */ sh $zero, 0x26($s0) -/* 01FCA0 8001F0A0 822C0021 */ lb $t4, 0x21($s1) -/* 01FCA4 8001F0A4 00000000 */ nop -/* 01FCA8 8001F0A8 A20C003D */ sb $t4, 0x3d($s0) -/* 01FCAC 8001F0AC 822D0010 */ lb $t5, 0x10($s1) -/* 01FCB0 8001F0B0 00000000 */ nop -/* 01FCB4 8001F0B4 A60D0028 */ sh $t5, 0x28($s0) -/* 01FCB8 8001F0B8 822E0014 */ lb $t6, 0x14($s1) -/* 01FCBC 8001F0BC C430566C */ lwc1 $f16, %lo(D_800E566C)($at) -/* 01FCC0 8001F0C0 448E3000 */ mtc1 $t6, $f6 -/* 01FCC4 8001F0C4 C4315668 */ lwc1 $f17, %lo(D_800E5668)($at) -/* 01FCC8 8001F0C8 46803220 */ cvt.s.w $f8, $f6 -/* 01FCCC 8001F0CC 460042A1 */ cvt.d.s $f10, $f8 -/* 01FCD0 8001F0D0 46305482 */ mul.d $f18, $f10, $f16 -/* 01FCD4 8001F0D4 46209120 */ cvt.s.d $f4, $f18 -/* 01FCD8 8001F0D8 E6040008 */ swc1 $f4, 8($s0) -/* 01FCDC 8001F0DC 8624000E */ lh $a0, 0xe($s1) -/* 01FCE0 8001F0E0 0C00322D */ jal func_8000C8B4 -/* 01FCE4 8001F0E4 AFA5002C */ sw $a1, 0x2c($sp) -/* 01FCE8 8001F0E8 8FA5002C */ lw $a1, 0x2c($sp) -/* 01FCEC 8001F0EC A602002A */ sh $v0, 0x2a($s0) -/* 01FCF0 8001F0F0 822F0012 */ lb $t7, 0x12($s1) -/* 01FCF4 8001F0F4 44800000 */ mtc1 $zero, $f0 -/* 01FCF8 8001F0F8 A0AF003B */ sb $t7, 0x3b($a1) -/* 01FCFC 8001F0FC 92380016 */ lbu $t8, 0x16($s1) -/* 01FD00 8001F100 00000000 */ nop -/* 01FD04 8001F104 A4B80018 */ sh $t8, 0x18($a1) -/* 01FD08 8001F108 82390017 */ lb $t9, 0x17($s1) -/* 01FD0C 8001F10C E6000010 */ swc1 $f0, 0x10($s0) -/* 01FD10 8001F110 44993000 */ mtc1 $t9, $f6 -/* 01FD14 8001F114 00000000 */ nop -/* 01FD18 8001F118 46803220 */ cvt.s.w $f8, $f6 -/* 01FD1C 8001F11C E6080014 */ swc1 $f8, 0x14($s0) -/* 01FD20 8001F120 92280018 */ lbu $t0, 0x18($s1) -/* 01FD24 8001F124 00000000 */ nop -/* 01FD28 8001F128 A208002C */ sb $t0, 0x2c($s0) -/* 01FD2C 8001F12C 92290019 */ lbu $t1, 0x19($s1) -/* 01FD30 8001F130 00000000 */ nop -/* 01FD34 8001F134 A209002E */ sb $t1, 0x2e($s0) -/* 01FD38 8001F138 822A002C */ lb $t2, 0x2c($s1) -/* 01FD3C 8001F13C 00000000 */ nop -/* 01FD40 8001F140 A20A003E */ sb $t2, 0x3e($s0) -/* 01FD44 8001F144 822B002D */ lb $t3, 0x2d($s1) -/* 01FD48 8001F148 00000000 */ nop -/* 01FD4C 8001F14C A20B003F */ sb $t3, 0x3f($s0) -/* 01FD50 8001F150 822C001A */ lb $t4, 0x1a($s1) -/* 01FD54 8001F154 00000000 */ nop -/* 01FD58 8001F158 A20C0031 */ sb $t4, 0x31($s0) -/* 01FD5C 8001F15C 822D001B */ lb $t5, 0x1b($s1) -/* 01FD60 8001F160 00000000 */ nop -/* 01FD64 8001F164 A20D0032 */ sb $t5, 0x32($s0) -/* 01FD68 8001F168 822E001C */ lb $t6, 0x1c($s1) -/* 01FD6C 8001F16C 00000000 */ nop -/* 01FD70 8001F170 A20E0033 */ sb $t6, 0x33($s0) -/* 01FD74 8001F174 822F0020 */ lb $t7, 0x20($s1) -/* 01FD78 8001F178 A200002D */ sb $zero, 0x2d($s0) -/* 01FD7C 8001F17C E6000004 */ swc1 $f0, 4($s0) -/* 01FD80 8001F180 E6000000 */ swc1 $f0, ($s0) -/* 01FD84 8001F184 A20F0034 */ sb $t7, 0x34($s0) -/* 01FD88 8001F188 AE40006C */ sw $zero, 0x6c($s2) -/* 01FD8C 8001F18C 86240024 */ lh $a0, 0x24($s1) -/* 01FD90 8001F190 0C00322D */ jal func_8000C8B4 -/* 01FD94 8001F194 00000000 */ nop -/* 01FD98 8001F198 A6020036 */ sh $v0, 0x36($s0) -/* 01FD9C 8001F19C 82380026 */ lb $t8, 0x26($s1) -/* 01FDA0 8001F1A0 00000000 */ nop -/* 01FDA4 8001F1A4 A218003A */ sb $t8, 0x3a($s0) -/* 01FDA8 8001F1A8 82230013 */ lb $v1, 0x13($s1) -/* 01FDAC 8001F1AC 00000000 */ nop -/* 01FDB0 8001F1B0 04600002 */ bltz $v1, .L8001F1BC -/* 01FDB4 8001F1B4 00000000 */ nop -/* 01FDB8 8001F1B8 A203002F */ sb $v1, 0x2f($s0) -.L8001F1BC: -/* 01FDBC 8001F1BC 8239001F */ lb $t9, 0x1f($s1) -/* 01FDC0 8001F1C0 8E040018 */ lw $a0, 0x18($s0) -/* 01FDC4 8001F1C4 A2190039 */ sb $t9, 0x39($s0) -/* 01FDC8 8001F1C8 9228001E */ lbu $t0, 0x1e($s1) -/* 01FDCC 8001F1CC 240D00FF */ li $t5, 255 -/* 01FDD0 8001F1D0 A2080038 */ sb $t0, 0x38($s0) -/* 01FDD4 8001F1D4 82290029 */ lb $t1, 0x29($s1) -/* 01FDD8 8001F1D8 00000000 */ nop -/* 01FDDC 8001F1DC A209003B */ sb $t1, 0x3b($s0) -/* 01FDE0 8001F1E0 822A002E */ lb $t2, 0x2e($s1) -/* 01FDE4 8001F1E4 00000000 */ nop -/* 01FDE8 8001F1E8 A20A0040 */ sb $t2, 0x40($s0) -/* 01FDEC 8001F1EC 822B002F */ lb $t3, 0x2f($s1) -/* 01FDF0 8001F1F0 00000000 */ nop -/* 01FDF4 8001F1F4 A20B0041 */ sb $t3, 0x41($s0) -/* 01FDF8 8001F1F8 822C002B */ lb $t4, 0x2b($s1) -/* 01FDFC 8001F1FC A20D0042 */ sb $t5, 0x42($s0) -/* 01FE00 8001F200 10800003 */ beqz $a0, .L8001F210 -/* 01FE04 8001F204 A20C003C */ sb $t4, 0x3c($s0) -/* 01FE08 8001F208 0C001223 */ jal func_8000488C -/* 01FE0C 8001F20C 00000000 */ nop -.L8001F210: -/* 01FE10 8001F210 AE000018 */ sw $zero, 0x18($s0) -/* 01FE14 8001F214 822E0030 */ lb $t6, 0x30($s1) -/* 01FE18 8001F218 AE12001C */ sw $s2, 0x1c($s0) -/* 01FE1C 8001F21C A2000045 */ sb $zero, 0x45($s0) -/* 01FE20 8001F220 A20E0043 */ sb $t6, 0x43($s0) -/* 01FE24 8001F224 8FBF0024 */ lw $ra, 0x24($sp) -/* 01FE28 8001F228 8FB20020 */ lw $s2, 0x20($sp) -/* 01FE2C 8001F22C 8FB1001C */ lw $s1, 0x1c($sp) -/* 01FE30 8001F230 8FB00018 */ lw $s0, 0x18($sp) -/* 01FE34 8001F234 03E00008 */ jr $ra -/* 01FE38 8001F238 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_8001F23C -/* 01FE3C 8001F23C 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* 01FE40 8001F240 AFBF002C */ sw $ra, 0x2c($sp) -/* 01FE44 8001F244 AFB50028 */ sw $s5, 0x28($sp) -/* 01FE48 8001F248 AFB40024 */ sw $s4, 0x24($sp) -/* 01FE4C 8001F24C AFB30020 */ sw $s3, 0x20($sp) -/* 01FE50 8001F250 AFB2001C */ sw $s2, 0x1c($sp) -/* 01FE54 8001F254 AFB10018 */ sw $s1, 0x18($sp) -/* 01FE58 8001F258 AFB00014 */ sw $s0, 0x14($sp) -/* 01FE5C 8001F25C 84AE0002 */ lh $t6, 2($a1) -/* 01FE60 8001F260 0080A025 */ move $s4, $a0 -/* 01FE64 8001F264 A7AE003E */ sh $t6, 0x3e($sp) -/* 01FE68 8001F268 84AF0004 */ lh $t7, 4($a1) -/* 01FE6C 8001F26C 27B5003C */ addiu $s5, $sp, 0x3c -/* 01FE70 8001F270 A7AF0040 */ sh $t7, 0x40($sp) -/* 01FE74 8001F274 84B80006 */ lh $t8, 6($a1) -/* 01FE78 8001F278 02A02025 */ move $a0, $s5 -/* 01FE7C 8001F27C A7B80042 */ sh $t8, 0x42($sp) -/* 01FE80 8001F280 84B9000C */ lh $t9, 0xc($a1) -/* 01FE84 8001F284 00000000 */ nop -/* 01FE88 8001F288 00194043 */ sra $t0, $t9, 1 -/* 01FE8C 8001F28C 31090080 */ andi $t1, $t0, 0x80 -/* 01FE90 8001F290 352A0008 */ ori $t2, $t1, 8 -/* 01FE94 8001F294 A3AA003D */ sb $t2, 0x3d($sp) -/* 01FE98 8001F298 84AB000C */ lh $t3, 0xc($a1) -/* 01FE9C 8001F29C 24050001 */ li $a1, 1 -/* 01FEA0 8001F2A0 0C003A95 */ jal func_8000EA54 -/* 01FEA4 8001F2A4 A3AB003C */ sb $t3, 0x3c($sp) -/* 01FEA8 8001F2A8 AE820064 */ sw $v0, 0x64($s4) -/* 01FEAC 8001F2AC 1040000D */ beqz $v0, .L8001F2E4 -/* 01FEB0 8001F2B0 00408825 */ move $s1, $v0 -/* 01FEB4 8001F2B4 844C0048 */ lh $t4, 0x48($v0) -/* 01FEB8 8001F2B8 2401000C */ li $at, 12 -/* 01FEBC 8001F2BC 15810009 */ bne $t4, $at, .L8001F2E4 -/* 01FEC0 8001F2C0 3C0D8012 */ lui $t5, %hi(D_8011AEF4) # $t5, 0x8012 -/* 01FEC4 8001F2C4 91ADAEF4 */ lbu $t5, %lo(D_8011AEF4)($t5) -/* 01FEC8 8001F2C8 00000000 */ nop -/* 01FECC 8001F2CC 11A00005 */ beqz $t5, .L8001F2E4 -/* 01FED0 8001F2D0 00000000 */ nop -/* 01FED4 8001F2D4 0C003FEE */ jal func_8000FFB8 -/* 01FED8 8001F2D8 00402025 */ move $a0, $v0 -/* 01FEDC 8001F2DC AE800064 */ sw $zero, 0x64($s4) -/* 01FEE0 8001F2E0 00008825 */ move $s1, $zero -.L8001F2E4: -/* 01FEE4 8001F2E4 1220002B */ beqz $s1, .L8001F394 -/* 01FEE8 8001F2E8 02802025 */ move $a0, $s4 -/* 01FEEC 8001F2EC AE20003C */ sw $zero, 0x3c($s1) -/* 01FEF0 8001F2F0 0C007BE9 */ jal func_8001EFA4 -/* 01FEF4 8001F2F4 02202825 */ move $a1, $s1 -/* 01FEF8 8001F2F8 8E2E0040 */ lw $t6, 0x40($s1) -/* 01FEFC 8001F2FC 24010033 */ li $at, 51 -/* 01FF00 8001F300 81CF0054 */ lb $t7, 0x54($t6) -/* 01FF04 8001F304 3C138012 */ lui $s3, %hi(D_8011AD3E) # $s3, 0x8012 -/* 01FF08 8001F308 15E10022 */ bne $t7, $at, .L8001F394 -/* 01FF0C 8001F30C 2673AD3E */ addiu $s3, %lo(D_8011AD3E) # addiu $s3, $s3, -0x52c2 -/* 01FF10 8001F310 8E220064 */ lw $v0, 0x64($s1) -/* 01FF14 8001F314 82780000 */ lb $t8, ($s3) -/* 01FF18 8001F318 0C019884 */ jal func_80066210 -/* 01FF1C 8001F31C A0580044 */ sb $t8, 0x44($v0) -/* 01FF20 8001F320 0C01B067 */ jal func_8006C19C -/* 01FF24 8001F324 00409025 */ move $s2, $v0 -/* 01FF28 8001F328 10400002 */ beqz $v0, .L8001F334 -/* 01FF2C 8001F32C 00000000 */ nop -/* 01FF30 8001F330 24120001 */ li $s2, 1 -.L8001F334: -/* 01FF34 8001F334 1A400013 */ blez $s2, .L8001F384 -/* 01FF38 8001F338 00008025 */ move $s0, $zero -/* 01FF3C 8001F33C 02A02025 */ move $a0, $s5 -.L8001F340: -/* 01FF40 8001F340 0C003A95 */ jal func_8000EA54 -/* 01FF44 8001F344 24050001 */ li $a1, 1 -/* 01FF48 8001F348 1040000B */ beqz $v0, .L8001F378 -/* 01FF4C 8001F34C 00408825 */ move $s1, $v0 -/* 01FF50 8001F350 AC40003C */ sw $zero, 0x3c($v0) -/* 01FF54 8001F354 02802025 */ move $a0, $s4 -/* 01FF58 8001F358 0C007BE9 */ jal func_8001EFA4 -/* 01FF5C 8001F35C 00402825 */ move $a1, $v0 -/* 01FF60 8001F360 8E220064 */ lw $v0, 0x64($s1) -/* 01FF64 8001F364 26100001 */ addiu $s0, $s0, 1 -/* 01FF68 8001F368 A0500030 */ sb $s0, 0x30($v0) -/* 01FF6C 8001F36C 82790000 */ lb $t9, ($s3) -/* 01FF70 8001F370 00000000 */ nop -/* 01FF74 8001F374 A0590044 */ sb $t9, 0x44($v0) -.L8001F378: -/* 01FF78 8001F378 0212082A */ slt $at, $s0, $s2 -/* 01FF7C 8001F37C 1420FFF0 */ bnez $at, .L8001F340 -/* 01FF80 8001F380 02A02025 */ move $a0, $s5 -.L8001F384: -/* 01FF84 8001F384 82680000 */ lb $t0, ($s3) -/* 01FF88 8001F388 00000000 */ nop -/* 01FF8C 8001F38C 25090001 */ addiu $t1, $t0, 1 -/* 01FF90 8001F390 A2690000 */ sb $t1, ($s3) -.L8001F394: -/* 01FF94 8001F394 8FBF002C */ lw $ra, 0x2c($sp) -/* 01FF98 8001F398 8FB00014 */ lw $s0, 0x14($sp) -/* 01FF9C 8001F39C 8FB10018 */ lw $s1, 0x18($sp) -/* 01FFA0 8001F3A0 8FB2001C */ lw $s2, 0x1c($sp) -/* 01FFA4 8001F3A4 8FB30020 */ lw $s3, 0x20($sp) -/* 01FFA8 8001F3A8 8FB40024 */ lw $s4, 0x24($sp) -/* 01FFAC 8001F3AC 8FB50028 */ lw $s5, 0x28($sp) -/* 01FFB0 8001F3B0 03E00008 */ jr $ra -/* 01FFB4 8001F3B4 27BD0048 */ addiu $sp, $sp, 0x48 - -glabel func_8001F3B8 -/* 01FFB8 8001F3B8 3C028012 */ lui $v0, %hi(D_8011ADD4) # $v0, 0x8012 -/* 01FFBC 8001F3BC 8042ADD4 */ lb $v0, %lo(D_8011ADD4)($v0) -/* 01FFC0 8001F3C0 03E00008 */ jr $ra -/* 01FFC4 8001F3C4 00000000 */ nop - -glabel func_8001F3C8 -/* 01FFC8 8001F3C8 3C028012 */ lui $v0, %hi(D_8011ADD4) # $v0, 0x8012 -/* 01FFCC 8001F3CC 2442ADD4 */ addiu $v0, %lo(D_8011ADD4) # addiu $v0, $v0, -0x522c -/* 01FFD0 8001F3D0 804E0000 */ lb $t6, ($v0) -/* 01FFD4 8001F3D4 3C018012 */ lui $at, %hi(D_8011AE78) # $at, 0x8012 -/* 01FFD8 8001F3D8 108E0002 */ beq $a0, $t6, .L8001F3E4 -/* 01FFDC 8001F3DC 00000000 */ nop -/* 01FFE0 8001F3E0 A420AE78 */ sh $zero, %lo(D_8011AE78)($at) -.L8001F3E4: -/* 01FFE4 8001F3E4 03E00008 */ jr $ra -/* 01FFE8 8001F3E8 A0440000 */ sb $a0, ($v0) - -glabel func_8001F3EC -/* 01FFEC 8001F3EC 3C028012 */ lui $v0, %hi(D_8011AE78) # $v0, 0x8012 -/* 01FFF0 8001F3F0 8442AE78 */ lh $v0, %lo(D_8011AE78)($v0) -/* 01FFF4 8001F3F4 00802825 */ move $a1, $a0 -/* 01FFF8 8001F3F8 14400003 */ bnez $v0, .L8001F408 -/* 01FFFC 8001F3FC 00000000 */ nop -/* 020000 8001F400 03E00008 */ jr $ra -/* 020004 8001F404 2402FFFF */ li $v0, -1 - -.L8001F408: -/* 020008 8001F408 1840000E */ blez $v0, .L8001F444 -/* 02000C 8001F40C 00001825 */ move $v1, $zero -/* 020010 8001F410 3C068012 */ lui $a2, %hi(D_8011AE74) # $a2, 0x8012 -/* 020014 8001F414 8CC6AE74 */ lw $a2, %lo(D_8011AE74)($a2) -/* 020018 8001F418 00002025 */ move $a0, $zero -/* 02001C 8001F41C 00023880 */ sll $a3, $v0, 2 -.L8001F420: -/* 020020 8001F420 8CCE0000 */ lw $t6, ($a2) -/* 020024 8001F424 24840004 */ addiu $a0, $a0, 4 -/* 020028 8001F428 8DCF007C */ lw $t7, 0x7c($t6) -/* 02002C 8001F42C 0087082A */ slt $at, $a0, $a3 -/* 020030 8001F430 14AF0002 */ bne $a1, $t7, .L8001F43C -/* 020034 8001F434 00000000 */ nop -/* 020038 8001F438 24630001 */ addiu $v1, $v1, 1 -.L8001F43C: -/* 02003C 8001F43C 1420FFF8 */ bnez $at, .L8001F420 -/* 020040 8001F440 24C60004 */ addiu $a2, $a2, 4 -.L8001F444: -/* 020044 8001F444 00601025 */ move $v0, $v1 -/* 020048 8001F448 03E00008 */ jr $ra -/* 02004C 8001F44C 00000000 */ nop - -glabel func_8001F450 -/* 020050 8001F450 240E0001 */ li $t6, 1 -/* 020054 8001F454 3C018012 */ lui $at, 0x8012 -/* 020058 8001F458 03E00008 */ jr $ra -/* 02005C 8001F45C A02EAD53 */ sb $t6, -0x52ad($at) - -glabel func_8001F460 -/* 020060 8001F460 27BDFE68 */ addiu $sp, $sp, -0x198 -/* 020064 8001F464 3C0E8012 */ lui $t6, %hi(D_8011AE7A) # $t6, 0x8012 -/* 020068 8001F468 85CEAE7A */ lh $t6, %lo(D_8011AE7A)($t6) -/* 02006C 8001F46C AFB60050 */ sw $s6, 0x50($sp) -/* 020070 8001F470 AFB40048 */ sw $s4, 0x48($sp) -/* 020074 8001F474 00C0A025 */ move $s4, $a2 -/* 020078 8001F478 0080B025 */ move $s6, $a0 -/* 02007C 8001F47C AFBF0054 */ sw $ra, 0x54($sp) -/* 020080 8001F480 AFB5004C */ sw $s5, 0x4c($sp) -/* 020084 8001F484 AFB30044 */ sw $s3, 0x44($sp) -/* 020088 8001F488 AFB20040 */ sw $s2, 0x40($sp) -/* 02008C 8001F48C AFB1003C */ sw $s1, 0x3c($sp) -/* 020090 8001F490 AFB00038 */ sw $s0, 0x38($sp) -/* 020094 8001F494 E7B70030 */ swc1 $f23, 0x30($sp) -/* 020098 8001F498 E7B60034 */ swc1 $f22, 0x34($sp) -/* 02009C 8001F49C E7B50028 */ swc1 $f21, 0x28($sp) -/* 0200A0 8001F4A0 E7B4002C */ swc1 $f20, 0x2c($sp) -/* 0200A4 8001F4A4 05C10003 */ bgez $t6, .L8001F4B4 -/* 0200A8 8001F4A8 AFA5019C */ sw $a1, 0x19c($sp) -/* 0200AC 8001F4AC 100006F9 */ b .L80021094 -/* 0200B0 8001F4B0 24020001 */ li $v0, 1 -.L8001F4B4: -/* 0200B4 8001F4B4 8FAF019C */ lw $t7, 0x19c($sp) -/* 0200B8 8001F4B8 24180008 */ li $t8, 8 -/* 0200BC 8001F4BC 29E10009 */ slti $at, $t7, 9 -/* 0200C0 8001F4C0 14200002 */ bnez $at, .L8001F4CC -/* 0200C4 8001F4C4 00009025 */ move $s2, $zero -/* 0200C8 8001F4C8 AFB8019C */ sw $t8, 0x19c($sp) -.L8001F4CC: -/* 0200CC 8001F4CC 8FB9019C */ lw $t9, 0x19c($sp) -/* 0200D0 8001F4D0 3C0E8000 */ lui $t6, %hi(D_80000300) # $t6, 0x8000 -/* 0200D4 8001F4D4 44992000 */ mtc1 $t9, $f4 -/* 0200D8 8001F4D8 8DCE0300 */ lw $t6, %lo(D_80000300)($t6) -/* 0200DC 8001F4DC 46802020 */ cvt.s.w $f0, $f4 -/* 0200E0 8001F4E0 3C01800E */ lui $at, %hi(D_800E5674) # $at, 0x800e -/* 0200E4 8001F4E4 00008025 */ move $s0, $zero -/* 0200E8 8001F4E8 E7A00114 */ swc1 $f0, 0x114($sp) -/* 0200EC 8001F4EC 8ED30064 */ lw $s3, 0x64($s6) -/* 0200F0 8001F4F0 15C00007 */ bnez $t6, .L8001F510 -/* 0200F4 8001F4F4 24110004 */ li $s1, 4 -/* 0200F8 8001F4F8 C4295670 */ lwc1 $f9, %lo(D_800E5670)($at) -/* 0200FC 8001F4FC C4285674 */ lwc1 $f8, %lo(D_800E5674)($at) -/* 020100 8001F500 460001A1 */ cvt.d.s $f6, $f0 -/* 020104 8001F504 46283282 */ mul.d $f10, $f6, $f8 -/* 020108 8001F508 46205120 */ cvt.s.d $f4, $f10 -/* 02010C 8001F50C E7A40114 */ swc1 $f4, 0x114($sp) -.L8001F510: -/* 020110 8001F510 866F002A */ lh $t7, 0x2a($s3) -/* 020114 8001F514 00000000 */ nop -/* 020118 8001F518 05E10019 */ bgez $t7, .L8001F580 -/* 02011C 8001F51C 00000000 */ nop -/* 020120 8001F520 92620034 */ lbu $v0, 0x34($s3) -/* 020124 8001F524 00004025 */ move $t0, $zero -/* 020128 8001F528 30580001 */ andi $t8, $v0, 1 -/* 02012C 8001F52C 13000002 */ beqz $t8, .L8001F538 -/* 020130 8001F530 30590002 */ andi $t9, $v0, 2 -/* 020134 8001F534 34088000 */ li $t0, 32768 -.L8001F538: -/* 020138 8001F538 13200003 */ beqz $t9, .L8001F548 -/* 02013C 8001F53C 304F0004 */ andi $t7, $v0, 4 -/* 020140 8001F540 350E4000 */ ori $t6, $t0, 0x4000 -/* 020144 8001F544 01C04025 */ move $t0, $t6 -.L8001F548: -/* 020148 8001F548 11E00002 */ beqz $t7, .L8001F554 -/* 02014C 8001F54C 35181000 */ ori $t8, $t0, 0x1000 -/* 020150 8001F550 03004025 */ move $t0, $t8 -.L8001F554: -/* 020154 8001F554 02002025 */ move $a0, $s0 -/* 020158 8001F558 0C01A955 */ jal func_8006A554 -/* 02015C 8001F55C AFA80174 */ sw $t0, 0x174($sp) -/* 020160 8001F560 8FA80174 */ lw $t0, 0x174($sp) -/* 020164 8001F564 26100001 */ addiu $s0, $s0, 1 -/* 020168 8001F568 1611FFFA */ bne $s0, $s1, .L8001F554 -/* 02016C 8001F56C 02429025 */ or $s2, $s2, $v0 -/* 020170 8001F570 0248C824 */ and $t9, $s2, $t0 -/* 020174 8001F574 13200002 */ beqz $t9, .L8001F580 -/* 020178 8001F578 240E0001 */ li $t6, 1 -/* 02017C 8001F57C A66E002A */ sh $t6, 0x2a($s3) -.L8001F580: -/* 020180 8001F580 8662002A */ lh $v0, 0x2a($s3) -/* 020184 8001F584 00000000 */ nop -/* 020188 8001F588 04400018 */ bltz $v0, .L8001F5EC -/* 02018C 8001F58C 00000000 */ nop -/* 020190 8001F590 826F0045 */ lb $t7, 0x45($s3) -/* 020194 8001F594 8FB8019C */ lw $t8, 0x19c($sp) -/* 020198 8001F598 15E00014 */ bnez $t7, .L8001F5EC -/* 02019C 8001F59C 0058C823 */ subu $t9, $v0, $t8 -/* 0201A0 8001F5A0 A679002A */ sh $t9, 0x2a($s3) -/* 0201A4 8001F5A4 8662002A */ lh $v0, 0x2a($s3) -/* 0201A8 8001F5A8 240E0001 */ li $t6, 1 -/* 0201AC 8001F5AC 1C40000F */ bgtz $v0, .L8001F5EC -/* 0201B0 8001F5B0 02C02025 */ move $a0, $s6 -/* 0201B4 8001F5B4 8E6F001C */ lw $t7, 0x1c($s3) -/* 0201B8 8001F5B8 A26E0045 */ sb $t6, 0x45($s3) -/* 0201BC 8001F5BC 8DF1003C */ lw $s1, 0x3c($t7) -/* 0201C0 8001F5C0 02602825 */ move $a1, $s3 -/* 0201C4 8001F5C4 0C008441 */ jal func_80021104 -/* 0201C8 8001F5C8 02203025 */ move $a2, $s1 -/* 0201CC 8001F5CC A660002A */ sh $zero, 0x2a($s3) -/* 0201D0 8001F5D0 02C02025 */ move $a0, $s6 -/* 0201D4 8001F5D4 02202825 */ move $a1, $s1 -/* 0201D8 8001F5D8 02603025 */ move $a2, $s3 -/* 0201DC 8001F5DC 0C008497 */ jal func_8002125C -/* 0201E0 8001F5E0 2407FFFF */ li $a3, -1 -/* 0201E4 8001F5E4 8662002A */ lh $v0, 0x2a($s3) -/* 0201E8 8001F5E8 00000000 */ nop -.L8001F5EC: -/* 0201EC 8001F5EC 1040000D */ beqz $v0, .L8001F624 -/* 0201F0 8001F5F0 00000000 */ nop -/* 0201F4 8001F5F4 8278003A */ lb $t8, 0x3a($s3) -/* 0201F8 8001F5F8 00000000 */ nop -/* 0201FC 8001F5FC 13000007 */ beqz $t8, .L8001F61C -/* 020200 8001F600 00000000 */ nop -/* 020204 8001F604 86D90006 */ lh $t9, 6($s6) -/* 020208 8001F608 24020001 */ li $v0, 1 -/* 02020C 8001F60C 372E4000 */ ori $t6, $t9, 0x4000 -/* 020210 8001F610 A6CE0006 */ sh $t6, 6($s6) -/* 020214 8001F614 1000069F */ b .L80021094 -/* 020218 8001F618 A2600042 */ sb $zero, 0x42($s3) -.L8001F61C: -/* 02021C 8001F61C 1000069D */ b .L80021094 -/* 020220 8001F620 00001025 */ move $v0, $zero -.L8001F624: -/* 020224 8001F624 86CF0006 */ lh $t7, 6($s6) -/* 020228 8001F628 2410BFFF */ li $s0, -16385 -/* 02022C 8001F62C 31F8BFFF */ andi $t8, $t7, 0xbfff -/* 020230 8001F630 A6D80006 */ sh $t8, 6($s6) -/* 020234 8001F634 82630039 */ lb $v1, 0x39($s3) -/* 020238 8001F638 2401FFFE */ li $at, -2 -/* 02023C 8001F63C 18600010 */ blez $v1, .L8001F680 -/* 020240 8001F640 00000000 */ nop -/* 020244 8001F644 0C000646 */ jal func_80001918 -/* 020248 8001F648 00000000 */ nop -/* 02024C 8001F64C 82630039 */ lb $v1, 0x39($s3) -/* 020250 8001F650 00000000 */ nop -/* 020254 8001F654 10620006 */ beq $v1, $v0, .L8001F670 -/* 020258 8001F658 2419FFFE */ li $t9, -2 -/* 02025C 8001F65C 0C0002CD */ jal func_80000B34 -/* 020260 8001F660 306400FF */ andi $a0, $v1, 0xff -/* 020264 8001F664 0C0002C6 */ jal func_80000B18 -/* 020268 8001F668 00000000 */ nop -/* 02026C 8001F66C 2419FFFE */ li $t9, -2 -.L8001F670: -/* 020270 8001F670 0C00032F */ jal func_80000CBC -/* 020274 8001F674 A2790039 */ sb $t9, 0x39($s3) -/* 020278 8001F678 10000008 */ b .L8001F69C -/* 02027C 8001F67C 82630038 */ lb $v1, 0x38($s3) -.L8001F680: -/* 020280 8001F680 14610005 */ bne $v1, $at, .L8001F698 -/* 020284 8001F684 00000000 */ nop -/* 020288 8001F688 0C0002CA */ jal func_80000B28 -/* 02028C 8001F68C 00000000 */ nop -/* 020290 8001F690 240EFFFF */ li $t6, -1 -/* 020294 8001F694 A26E0039 */ sb $t6, 0x39($s3) -.L8001F698: -/* 020298 8001F698 82630038 */ lb $v1, 0x38($s3) -.L8001F69C: -/* 02029C 8001F69C 00000000 */ nop -/* 0202A0 8001F6A0 1060001D */ beqz $v1, .L8001F718 -/* 0202A4 8001F6A4 00000000 */ nop -/* 0202A8 8001F6A8 866F0024 */ lh $t7, 0x24($s3) -/* 0202AC 8001F6AC 306200FF */ andi $v0, $v1, 0xff -/* 0202B0 8001F6B0 15E00019 */ bnez $t7, .L8001F718 -/* 0202B4 8001F6B4 240100FF */ li $at, 255 -/* 0202B8 8001F6B8 14410009 */ bne $v0, $at, .L8001F6E0 -/* 0202BC 8001F6BC 00000000 */ nop -/* 0202C0 8001F6C0 8E640018 */ lw $a0, 0x18($s3) -/* 0202C4 8001F6C4 00000000 */ nop -/* 0202C8 8001F6C8 10800012 */ beqz $a0, .L8001F714 -/* 0202CC 8001F6CC 00000000 */ nop -/* 0202D0 8001F6D0 0C001223 */ jal func_8000488C -/* 0202D4 8001F6D4 00000000 */ nop -/* 0202D8 8001F6D8 1000000F */ b .L8001F718 -/* 0202DC 8001F6DC A2600038 */ sb $zero, 0x38($s3) -.L8001F6E0: -/* 0202E0 8001F6E0 8E640018 */ lw $a0, 0x18($s3) -/* 0202E4 8001F6E4 00000000 */ nop -/* 0202E8 8001F6E8 10800007 */ beqz $a0, .L8001F708 -/* 0202EC 8001F6EC 00000000 */ nop -/* 0202F0 8001F6F0 0C001223 */ jal func_8000488C -/* 0202F4 8001F6F4 00000000 */ nop -/* 0202F8 8001F6F8 82620038 */ lb $v0, 0x38($s3) -/* 0202FC 8001F6FC 00000000 */ nop -/* 020300 8001F700 305800FF */ andi $t8, $v0, 0xff -/* 020304 8001F704 03001025 */ move $v0, $t8 -.L8001F708: -/* 020308 8001F708 3044FFFF */ andi $a0, $v0, 0xffff -/* 02030C 8001F70C 0C000741 */ jal func_80001D04 -/* 020310 8001F710 26650018 */ addiu $a1, $s3, 0x18 -.L8001F714: -/* 020314 8001F714 A2600038 */ sb $zero, 0x38($s3) -.L8001F718: -/* 020318 8001F718 82620043 */ lb $v0, 0x43($s3) -/* 02031C 8001F71C 00000000 */ nop -/* 020320 8001F720 10400004 */ beqz $v0, .L8001F734 -/* 020324 8001F724 00000000 */ nop -/* 020328 8001F728 0C000326 */ jal func_80000C98 -/* 02032C 8001F72C 00022200 */ sll $a0, $v0, 8 -/* 020330 8001F730 A2600043 */ sb $zero, 0x43($s3) -.L8001F734: -/* 020334 8001F734 82620041 */ lb $v0, 0x41($s3) -/* 020338 8001F738 92680042 */ lbu $t0, 0x42($s3) -/* 02033C 8001F73C 30590001 */ andi $t9, $v0, 1 -/* 020340 8001F740 13200010 */ beqz $t9, .L8001F784 -/* 020344 8001F744 304E0002 */ andi $t6, $v0, 2 -/* 020348 8001F748 304E0002 */ andi $t6, $v0, 2 -/* 02034C 8001F74C 8FA2019C */ lw $v0, 0x19c($sp) -/* 020350 8001F750 11C00002 */ beqz $t6, .L8001F75C -/* 020354 8001F754 000278C0 */ sll $t7, $v0, 3 -/* 020358 8001F758 00004025 */ move $t0, $zero -.L8001F75C: -/* 02035C 8001F75C 01E8082A */ slt $at, $t7, $t0 -/* 020360 8001F760 10200003 */ beqz $at, .L8001F770 -/* 020364 8001F764 00000000 */ nop -/* 020368 8001F768 10000013 */ b .L8001F7B8 -/* 02036C 8001F76C 010F4023 */ subu $t0, $t0, $t7 -.L8001F770: -/* 020370 8001F770 86D80006 */ lh $t8, 6($s6) -/* 020374 8001F774 00004025 */ move $t0, $zero -/* 020378 8001F778 37194000 */ ori $t9, $t8, 0x4000 -/* 02037C 8001F77C 1000000E */ b .L8001F7B8 -/* 020380 8001F780 A6D90006 */ sh $t9, 6($s6) -.L8001F784: -/* 020384 8001F784 8FAF019C */ lw $t7, 0x19c($sp) -/* 020388 8001F788 11C00002 */ beqz $t6, .L8001F794 -/* 02038C 8001F78C 000FC0C0 */ sll $t8, $t7, 3 -/* 020390 8001F790 240800FF */ li $t0, 255 -.L8001F794: -/* 020394 8001F794 01184021 */ addu $t0, $t0, $t8 -/* 020398 8001F798 29010100 */ slti $at, $t0, 0x100 -/* 02039C 8001F79C 14200002 */ bnez $at, .L8001F7A8 -/* 0203A0 8001F7A0 00000000 */ nop -/* 0203A4 8001F7A4 240800FF */ li $t0, 255 -.L8001F7A8: -/* 0203A8 8001F7A8 86D90006 */ lh $t9, 6($s6) -/* 0203AC 8001F7AC 00000000 */ nop -/* 0203B0 8001F7B0 03307024 */ and $t6, $t9, $s0 -/* 0203B4 8001F7B4 A6CE0006 */ sh $t6, 6($s6) -.L8001F7B8: -/* 0203B8 8001F7B8 9262003B */ lbu $v0, 0x3b($s3) -/* 0203BC 8001F7BC 2401007F */ li $at, 127 -/* 0203C0 8001F7C0 3052007F */ andi $s2, $v0, 0x7f -/* 0203C4 8001F7C4 12410070 */ beq $s2, $at, .L8001F988 -/* 0203C8 8001F7C8 A2680042 */ sb $t0, 0x42($s3) -/* 0203CC 8001F7CC 2A410008 */ slti $at, $s2, 8 -/* 0203D0 8001F7D0 14200026 */ bnez $at, .L8001F86C -/* 0203D4 8001F7D4 2A410006 */ slti $at, $s2, 6 -/* 0203D8 8001F7D8 0C0078A7 */ jal func_8001E29C -/* 0203DC 8001F7DC 2404000D */ li $a0, 13 -/* 0203E0 8001F7E0 00127880 */ sll $t7, $s2, 2 -/* 0203E4 8001F7E4 01F27821 */ addu $t7, $t7, $s2 -/* 0203E8 8001F7E8 004F1821 */ addu $v1, $v0, $t7 -/* 0203EC 8001F7EC 2471FFD8 */ addiu $s1, $v1, -0x28 -/* 0203F0 8001F7F0 82280000 */ lb $t0, ($s1) -/* 0203F4 8001F7F4 82300001 */ lb $s0, 1($s1) -/* 0203F8 8001F7F8 311800FF */ andi $t8, $t0, 0xff -/* 0203FC 8001F7FC 27080384 */ addiu $t0, $t8, 0x384 -/* 020400 8001F800 321900FF */ andi $t9, $s0, 0xff -/* 020404 8001F804 27300384 */ addiu $s0, $t9, 0x384 -/* 020408 8001F808 AFA80174 */ sw $t0, 0x174($sp) -/* 02040C 8001F80C 0C00322D */ jal func_8000C8B4 -/* 020410 8001F810 24040006 */ li $a0, 6 -/* 020414 8001F814 8FA80174 */ lw $t0, 0x174($sp) -/* 020418 8001F818 82250002 */ lb $a1, 2($s1) -/* 02041C 8001F81C 82260003 */ lb $a2, 3($s1) -/* 020420 8001F820 82270004 */ lb $a3, 4($s1) -/* 020424 8001F824 AFB00014 */ sw $s0, 0x14($sp) -/* 020428 8001F828 AFA80010 */ sw $t0, 0x10($sp) -/* 02042C 8001F82C 9279003C */ lbu $t9, 0x3c($s3) -/* 020430 8001F830 30AE00FF */ andi $t6, $a1, 0xff -/* 020434 8001F834 00590019 */ multu $v0, $t9 -/* 020438 8001F838 01C02825 */ move $a1, $t6 -/* 02043C 8001F83C 30CF00FF */ andi $t7, $a2, 0xff -/* 020440 8001F840 30F800FF */ andi $t8, $a3, 0xff -/* 020444 8001F844 03003825 */ move $a3, $t8 -/* 020448 8001F848 01E03025 */ move $a2, $t7 -/* 02044C 8001F84C 00002025 */ move $a0, $zero -/* 020450 8001F850 00007012 */ mflo $t6 -/* 020454 8001F854 AFAE0018 */ sw $t6, 0x18($sp) -/* 020458 8001F858 0C00C378 */ jal func_80030DE0 -/* 02045C 8001F85C 00000000 */ nop -/* 020460 8001F860 10000048 */ b .L8001F984 -/* 020464 8001F864 241800FF */ li $t8, 255 -/* 020468 8001F868 2A410006 */ slti $at, $s2, 6 -.L8001F86C: -/* 02046C 8001F86C 1420001A */ bnez $at, .L8001F8D8 -/* 020470 8001F870 2404000E */ li $a0, 14 -/* 020474 8001F874 240F0040 */ li $t7, 64 -/* 020478 8001F878 24010007 */ li $at, 7 -/* 02047C 8001F87C 16410008 */ bne $s2, $at, .L8001F8A0 -/* 020480 8001F880 A3AF00A4 */ sb $t7, 0xa4($sp) -/* 020484 8001F884 241800C8 */ li $t8, 200 -/* 020488 8001F888 241900C8 */ li $t9, 200 -/* 02048C 8001F88C 240E00FF */ li $t6, 255 -/* 020490 8001F890 A3AE00A7 */ sb $t6, 0xa7($sp) -/* 020494 8001F894 A3B900A6 */ sb $t9, 0xa6($sp) -/* 020498 8001F898 10000007 */ b .L8001F8B8 -/* 02049C 8001F89C A3B800A5 */ sb $t8, 0xa5($sp) -.L8001F8A0: -/* 0204A0 8001F8A0 240F00FF */ li $t7, 255 -/* 0204A4 8001F8A4 241800FF */ li $t8, 255 -/* 0204A8 8001F8A8 241900FF */ li $t9, 255 -/* 0204AC 8001F8AC A3B900A7 */ sb $t9, 0xa7($sp) -/* 0204B0 8001F8B0 A3B800A6 */ sb $t8, 0xa6($sp) -/* 0204B4 8001F8B4 A3AF00A5 */ sb $t7, 0xa5($sp) -.L8001F8B8: -/* 0204B8 8001F8B8 240E0007 */ li $t6, 7 -/* 0204BC 8001F8BC 240F0003 */ li $t7, 3 -/* 0204C0 8001F8C0 A7AE00A8 */ sh $t6, 0xa8($sp) -/* 0204C4 8001F8C4 A7AF00AA */ sh $t7, 0xaa($sp) -/* 0204C8 8001F8C8 0C030076 */ jal func_800C01D8 -/* 0204CC 8001F8CC 27A400A4 */ addiu $a0, $sp, 0xa4 -/* 0204D0 8001F8D0 1000002C */ b .L8001F984 -/* 0204D4 8001F8D4 241800FF */ li $t8, 255 -.L8001F8D8: -/* 0204D8 8001F8D8 0C0078A7 */ jal func_8001E29C -/* 0204DC 8001F8DC A3A200A4 */ sb $v0, 0xa4($sp) -/* 0204E0 8001F8E0 82780040 */ lb $t8, 0x40($s3) -/* 0204E4 8001F8E4 00000000 */ nop -/* 0204E8 8001F8E8 0018C880 */ sll $t9, $t8, 2 -/* 0204EC 8001F8EC 0338C823 */ subu $t9, $t9, $t8 -/* 0204F0 8001F8F0 00598821 */ addu $s1, $v0, $t9 -/* 0204F4 8001F8F4 822E0000 */ lb $t6, ($s1) -/* 0204F8 8001F8F8 00000000 */ nop -/* 0204FC 8001F8FC A3AE00A5 */ sb $t6, 0xa5($sp) -/* 020500 8001F900 822F0001 */ lb $t7, 1($s1) -/* 020504 8001F904 00000000 */ nop -/* 020508 8001F908 A3AF00A6 */ sb $t7, 0xa6($sp) -/* 02050C 8001F90C 82380002 */ lb $t8, 2($s1) -/* 020510 8001F910 340FFFFF */ li $t7, 65535 -/* 020514 8001F914 A3B800A7 */ sb $t8, 0xa7($sp) -/* 020518 8001F918 9279003B */ lbu $t9, 0x3b($s3) -/* 02051C 8001F91C 00000000 */ nop -/* 020520 8001F920 332E0080 */ andi $t6, $t9, 0x80 -/* 020524 8001F924 11C00003 */ beqz $t6, .L8001F934 -/* 020528 8001F928 00000000 */ nop -/* 02052C 8001F92C 10000002 */ b .L8001F938 -/* 020530 8001F930 A7A000AA */ sh $zero, 0xaa($sp) -.L8001F934: -/* 020534 8001F934 A7AF00AA */ sh $t7, 0xaa($sp) -.L8001F938: -/* 020538 8001F938 0C00322D */ jal func_8000C8B4 -/* 02053C 8001F93C 24040006 */ li $a0, 6 -/* 020540 8001F940 9278003C */ lbu $t8, 0x3c($s3) -/* 020544 8001F944 00000000 */ nop -/* 020548 8001F948 00580019 */ multu $v0, $t8 -/* 02054C 8001F94C 0000C812 */ mflo $t9 -/* 020550 8001F950 A7B900A8 */ sh $t9, 0xa8($sp) -/* 020554 8001F954 0C030063 */ jal func_800C018C -/* 020558 8001F958 00000000 */ nop -/* 02055C 8001F95C 10400006 */ beqz $v0, .L8001F978 -/* 020560 8001F960 00000000 */ nop -/* 020564 8001F964 93AE00A4 */ lbu $t6, 0xa4($sp) -/* 020568 8001F968 00000000 */ nop -/* 02056C 8001F96C 31CF0080 */ andi $t7, $t6, 0x80 -/* 020570 8001F970 11E00004 */ beqz $t7, .L8001F984 -/* 020574 8001F974 241800FF */ li $t8, 255 -.L8001F978: -/* 020578 8001F978 0C030076 */ jal func_800C01D8 -/* 02057C 8001F97C 27A400A4 */ addiu $a0, $sp, 0xa4 -/* 020580 8001F980 241800FF */ li $t8, 255 -.L8001F984: -/* 020584 8001F984 A278003B */ sb $t8, 0x3b($s3) -.L8001F988: -/* 020588 8001F988 9279002E */ lbu $t9, 0x2e($s3) -/* 02058C 8001F98C 24010001 */ li $at, 1 -/* 020590 8001F990 1721003E */ bne $t9, $at, .L8001FA8C -/* 020594 8001F994 00000000 */ nop -/* 020598 8001F998 C7A60114 */ lwc1 $f6, 0x114($sp) -/* 02059C 8001F99C 3C014020 */ li $at, 0x40200000 # 2.500000 -/* 0205A0 8001F9A0 44815800 */ mtc1 $at, $f11 -/* 0205A4 8001F9A4 44805000 */ mtc1 $zero, $f10 -/* 0205A8 8001F9A8 46003221 */ cvt.d.s $f8, $f6 -/* 0205AC 8001F9AC 462A4102 */ mul.d $f4, $f8, $f10 -/* 0205B0 8001F9B0 826F0031 */ lb $t7, 0x31($s3) -/* 0205B4 8001F9B4 86CE0000 */ lh $t6, ($s6) -/* 0205B8 8001F9B8 448F3000 */ mtc1 $t7, $f6 -/* 0205BC 8001F9BC 86CF0002 */ lh $t7, 2($s6) -/* 0205C0 8001F9C0 46803220 */ cvt.s.w $f8, $f6 -/* 0205C4 8001F9C4 46202020 */ cvt.s.d $f0, $f4 -/* 0205C8 8001F9C8 46004282 */ mul.s $f10, $f8, $f0 -/* 0205CC 8001F9CC 4458F800 */ cfc1 $t8, $31 -/* 0205D0 8001F9D0 00000000 */ nop -/* 0205D4 8001F9D4 37010003 */ ori $at, $t8, 3 -/* 0205D8 8001F9D8 38210002 */ xori $at, $at, 2 -/* 0205DC 8001F9DC 44C1F800 */ ctc1 $at, $31 -/* 0205E0 8001F9E0 00000000 */ nop -/* 0205E4 8001F9E4 46005124 */ cvt.w.s $f4, $f10 -/* 0205E8 8001F9E8 44D8F800 */ ctc1 $t8, $31 -/* 0205EC 8001F9EC 44182000 */ mfc1 $t8, $f4 -/* 0205F0 8001F9F0 00000000 */ nop -/* 0205F4 8001F9F4 01D8C821 */ addu $t9, $t6, $t8 -/* 0205F8 8001F9F8 A6D90000 */ sh $t9, ($s6) -/* 0205FC 8001F9FC 826E0032 */ lb $t6, 0x32($s3) -/* 020600 8001FA00 00000000 */ nop -/* 020604 8001FA04 448E3000 */ mtc1 $t6, $f6 -/* 020608 8001FA08 86CE0004 */ lh $t6, 4($s6) -/* 02060C 8001FA0C 46803220 */ cvt.s.w $f8, $f6 -/* 020610 8001FA10 46004282 */ mul.s $f10, $f8, $f0 -/* 020614 8001FA14 4458F800 */ cfc1 $t8, $31 -/* 020618 8001FA18 00000000 */ nop -/* 02061C 8001FA1C 37010003 */ ori $at, $t8, 3 -/* 020620 8001FA20 38210002 */ xori $at, $at, 2 -/* 020624 8001FA24 44C1F800 */ ctc1 $at, $31 -/* 020628 8001FA28 00000000 */ nop -/* 02062C 8001FA2C 46005124 */ cvt.w.s $f4, $f10 -/* 020630 8001FA30 44D8F800 */ ctc1 $t8, $31 -/* 020634 8001FA34 44182000 */ mfc1 $t8, $f4 -/* 020638 8001FA38 00000000 */ nop -/* 02063C 8001FA3C 01F8C821 */ addu $t9, $t7, $t8 -/* 020640 8001FA40 A6D90002 */ sh $t9, 2($s6) -/* 020644 8001FA44 826F0033 */ lb $t7, 0x33($s3) -/* 020648 8001FA48 00000000 */ nop -/* 02064C 8001FA4C 448F3000 */ mtc1 $t7, $f6 -/* 020650 8001FA50 00000000 */ nop -/* 020654 8001FA54 46803220 */ cvt.s.w $f8, $f6 -/* 020658 8001FA58 46004282 */ mul.s $f10, $f8, $f0 -/* 02065C 8001FA5C 4458F800 */ cfc1 $t8, $31 -/* 020660 8001FA60 00000000 */ nop -/* 020664 8001FA64 37010003 */ ori $at, $t8, 3 -/* 020668 8001FA68 38210002 */ xori $at, $at, 2 -/* 02066C 8001FA6C 44C1F800 */ ctc1 $at, $31 -/* 020670 8001FA70 00000000 */ nop -/* 020674 8001FA74 46005124 */ cvt.w.s $f4, $f10 -/* 020678 8001FA78 44D8F800 */ ctc1 $t8, $31 -/* 02067C 8001FA7C 44182000 */ mfc1 $t8, $f4 -/* 020680 8001FA80 00000000 */ nop -/* 020684 8001FA84 01D8C821 */ addu $t9, $t6, $t8 -/* 020688 8001FA88 A6D90004 */ sh $t9, 4($s6) -.L8001FA8C: -/* 02068C 8001FA8C 128000C5 */ beqz $s4, .L8001FDA4 -/* 020690 8001FA90 00000000 */ nop -/* 020694 8001FA94 8E8F0040 */ lw $t7, 0x40($s4) -/* 020698 8001FA98 00000000 */ nop -/* 02069C 8001FA9C 81EE0053 */ lb $t6, 0x53($t7) -/* 0206A0 8001FAA0 00000000 */ nop -/* 0206A4 8001FAA4 15C000BF */ bnez $t6, .L8001FDA4 -/* 0206A8 8001FAA8 00000000 */ nop -/* 0206AC 8001FAAC 4459F800 */ cfc1 $t9, $31 -/* 0206B0 8001FAB0 82D8003B */ lb $t8, 0x3b($s6) -/* 0206B4 8001FAB4 37210003 */ ori $at, $t9, 3 -/* 0206B8 8001FAB8 38210002 */ xori $at, $at, 2 -/* 0206BC 8001FABC A298003B */ sb $t8, 0x3b($s4) -/* 0206C0 8001FAC0 C6620010 */ lwc1 $f2, 0x10($s3) -/* 0206C4 8001FAC4 44C1F800 */ ctc1 $at, $31 -/* 0206C8 8001FAC8 86820018 */ lh $v0, 0x18($s4) -/* 0206CC 8001FACC 460011A4 */ cvt.w.s $f6, $f2 -/* 0206D0 8001FAD0 440F3000 */ mfc1 $t7, $f6 -/* 0206D4 8001FAD4 44D9F800 */ ctc1 $t9, $31 -/* 0206D8 8001FAD8 000F7400 */ sll $t6, $t7, 0x10 -/* 0206DC 8001FADC 000EC403 */ sra $t8, $t6, 0x10 -/* 0206E0 8001FAE0 10580007 */ beq $v0, $t8, .L8001FB00 -/* 0206E4 8001FAE4 00000000 */ nop -/* 0206E8 8001FAE8 44824000 */ mtc1 $v0, $f8 -/* 0206EC 8001FAEC 00000000 */ nop -/* 0206F0 8001FAF0 468042A0 */ cvt.s.w $f10, $f8 -/* 0206F4 8001FAF4 E66A0010 */ swc1 $f10, 0x10($s3) -/* 0206F8 8001FAF8 C6620010 */ lwc1 $f2, 0x10($s3) -/* 0206FC 8001FAFC 00000000 */ nop -.L8001FB00: -/* 020700 8001FB00 828F003A */ lb $t7, 0x3a($s4) -/* 020704 8001FB04 8E990068 */ lw $t9, 0x68($s4) -/* 020708 8001FB08 000F7080 */ sll $t6, $t7, 2 -/* 02070C 8001FB0C 032EC021 */ addu $t8, $t9, $t6 -/* 020710 8001FB10 8F030000 */ lw $v1, ($t8) -/* 020714 8001FB14 00000000 */ nop -/* 020718 8001FB18 10600097 */ beqz $v1, .L8001FD78 -/* 02071C 8001FB1C 00000000 */ nop -/* 020720 8001FB20 8282003B */ lb $v0, 0x3b($s4) -/* 020724 8001FB24 8C640000 */ lw $a0, ($v1) -/* 020728 8001FB28 04400093 */ bltz $v0, .L8001FD78 -/* 02072C 8001FB2C 00000000 */ nop -/* 020730 8001FB30 848F0048 */ lh $t7, 0x48($a0) -/* 020734 8001FB34 00000000 */ nop -/* 020738 8001FB38 004F082A */ slt $at, $v0, $t7 -/* 02073C 8001FB3C 1020008E */ beqz $at, .L8001FD78 -/* 020740 8001FB40 00000000 */ nop -/* 020744 8001FB44 8C990044 */ lw $t9, 0x44($a0) -/* 020748 8001FB48 000270C0 */ sll $t6, $v0, 3 -/* 02074C 8001FB4C 032EC021 */ addu $t8, $t9, $t6 -/* 020750 8001FB50 8F150004 */ lw $s5, 4($t8) -/* 020754 8001FB54 9263002C */ lbu $v1, 0x2c($s3) -/* 020758 8001FB58 26B5FFFF */ addiu $s5, $s5, -1 -/* 02075C 8001FB5C 00157900 */ sll $t7, $s5, 4 -/* 020760 8001FB60 1060000A */ beqz $v1, .L8001FB8C -/* 020764 8001FB64 01E0A825 */ move $s5, $t7 -/* 020768 8001FB68 24010001 */ li $at, 1 -/* 02076C 8001FB6C 1061002F */ beq $v1, $at, .L8001FC2C -/* 020770 8001FB70 24010002 */ li $at, 2 -/* 020774 8001FB74 10610018 */ beq $v1, $at, .L8001FBD8 -/* 020778 8001FB78 24010003 */ li $at, 3 -/* 02077C 8001FB7C 10610055 */ beq $v1, $at, .L8001FCD4 -/* 020780 8001FB80 00000000 */ nop -/* 020784 8001FB84 1000007D */ b .L8001FD7C -/* 020788 8001FB88 4459F800 */ cfc1 $t9, $31 -.L8001FB8C: -/* 02078C 8001FB8C C6640014 */ lwc1 $f4, 0x14($s3) -/* 020790 8001FB90 C7A60114 */ lwc1 $f6, 0x114($sp) -/* 020794 8001FB94 00000000 */ nop -/* 020798 8001FB98 46062202 */ mul.s $f8, $f4, $f6 -/* 02079C 8001FB9C 44952000 */ mtc1 $s5, $f4 -/* 0207A0 8001FBA0 46081280 */ add.s $f10, $f2, $f8 -/* 0207A4 8001FBA4 46802020 */ cvt.s.w $f0, $f4 -/* 0207A8 8001FBA8 E66A0010 */ swc1 $f10, 0x10($s3) -/* 0207AC 8001FBAC C6620010 */ lwc1 $f2, 0x10($s3) -/* 0207B0 8001FBB0 00000000 */ nop -/* 0207B4 8001FBB4 4602003E */ c.le.s $f0, $f2 -/* 0207B8 8001FBB8 00000000 */ nop -/* 0207BC 8001FBBC 4500006E */ bc1f .L8001FD78 -/* 0207C0 8001FBC0 00000000 */ nop -/* 0207C4 8001FBC4 46001181 */ sub.s $f6, $f2, $f0 -/* 0207C8 8001FBC8 E6660010 */ swc1 $f6, 0x10($s3) -/* 0207CC 8001FBCC C6620010 */ lwc1 $f2, 0x10($s3) -/* 0207D0 8001FBD0 1000006A */ b .L8001FD7C -/* 0207D4 8001FBD4 4459F800 */ cfc1 $t9, $31 -.L8001FBD8: -/* 0207D8 8001FBD8 C6680014 */ lwc1 $f8, 0x14($s3) -/* 0207DC 8001FBDC C7AA0114 */ lwc1 $f10, 0x114($sp) -/* 0207E0 8001FBE0 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0207E4 8001FBE4 460A4102 */ mul.s $f4, $f8, $f10 -/* 0207E8 8001FBE8 44954000 */ mtc1 $s5, $f8 -/* 0207EC 8001FBEC 46041180 */ add.s $f6, $f2, $f4 -/* 0207F0 8001FBF0 46804020 */ cvt.s.w $f0, $f8 -/* 0207F4 8001FBF4 E6660010 */ swc1 $f6, 0x10($s3) -/* 0207F8 8001FBF8 C6620010 */ lwc1 $f2, 0x10($s3) -/* 0207FC 8001FBFC 00000000 */ nop -/* 020800 8001FC00 4602003E */ c.le.s $f0, $f2 -/* 020804 8001FC04 00000000 */ nop -/* 020808 8001FC08 4500005B */ bc1f .L8001FD78 -/* 02080C 8001FC0C 00000000 */ nop -/* 020810 8001FC10 44815000 */ mtc1 $at, $f10 -/* 020814 8001FC14 00000000 */ nop -/* 020818 8001FC18 460A0101 */ sub.s $f4, $f0, $f10 -/* 02081C 8001FC1C E6640010 */ swc1 $f4, 0x10($s3) -/* 020820 8001FC20 C6620010 */ lwc1 $f2, 0x10($s3) -/* 020824 8001FC24 10000055 */ b .L8001FD7C -/* 020828 8001FC28 4459F800 */ cfc1 $t9, $31 -.L8001FC2C: -/* 02082C 8001FC2C 9279002D */ lbu $t9, 0x2d($s3) -/* 020830 8001FC30 C7A60114 */ lwc1 $f6, 0x114($sp) -/* 020834 8001FC34 17200018 */ bnez $t9, .L8001FC98 -/* 020838 8001FC38 00000000 */ nop -/* 02083C 8001FC3C C6660014 */ lwc1 $f6, 0x14($s3) -/* 020840 8001FC40 C7A80114 */ lwc1 $f8, 0x114($sp) -/* 020844 8001FC44 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 020848 8001FC48 46083282 */ mul.s $f10, $f6, $f8 -/* 02084C 8001FC4C 44953000 */ mtc1 $s5, $f6 -/* 020850 8001FC50 460A1100 */ add.s $f4, $f2, $f10 -/* 020854 8001FC54 46803020 */ cvt.s.w $f0, $f6 -/* 020858 8001FC58 E6640010 */ swc1 $f4, 0x10($s3) -/* 02085C 8001FC5C C6620010 */ lwc1 $f2, 0x10($s3) -/* 020860 8001FC60 00000000 */ nop -/* 020864 8001FC64 4602003E */ c.le.s $f0, $f2 -/* 020868 8001FC68 00000000 */ nop -/* 02086C 8001FC6C 45000008 */ bc1f .L8001FC90 -/* 020870 8001FC70 00000000 */ nop -/* 020874 8001FC74 44814000 */ mtc1 $at, $f8 -/* 020878 8001FC78 240E0001 */ li $t6, 1 -/* 02087C 8001FC7C 46080281 */ sub.s $f10, $f0, $f8 -/* 020880 8001FC80 A26E002D */ sb $t6, 0x2d($s3) -/* 020884 8001FC84 E66A0010 */ swc1 $f10, 0x10($s3) -/* 020888 8001FC88 C6620010 */ lwc1 $f2, 0x10($s3) -/* 02088C 8001FC8C 00000000 */ nop -.L8001FC90: -/* 020890 8001FC90 1000003A */ b .L8001FD7C -/* 020894 8001FC94 4459F800 */ cfc1 $t9, $31 -.L8001FC98: -/* 020898 8001FC98 C6640014 */ lwc1 $f4, 0x14($s3) -/* 02089C 8001FC9C 4480B000 */ mtc1 $zero, $f22 -/* 0208A0 8001FCA0 46062202 */ mul.s $f8, $f4, $f6 -/* 0208A4 8001FCA4 46081281 */ sub.s $f10, $f2, $f8 -/* 0208A8 8001FCA8 E66A0010 */ swc1 $f10, 0x10($s3) -/* 0208AC 8001FCAC C6620010 */ lwc1 $f2, 0x10($s3) -/* 0208B0 8001FCB0 00000000 */ nop -/* 0208B4 8001FCB4 4616103E */ c.le.s $f2, $f22 -/* 0208B8 8001FCB8 00000000 */ nop -/* 0208BC 8001FCBC 4500002E */ bc1f .L8001FD78 -/* 0208C0 8001FCC0 00000000 */ nop -/* 0208C4 8001FCC4 E6760010 */ swc1 $f22, 0x10($s3) -/* 0208C8 8001FCC8 C6620010 */ lwc1 $f2, 0x10($s3) -/* 0208CC 8001FCCC 1000002A */ b .L8001FD78 -/* 0208D0 8001FCD0 A260002D */ sb $zero, 0x2d($s3) -.L8001FCD4: -/* 0208D4 8001FCD4 9278002D */ lbu $t8, 0x2d($s3) -/* 0208D8 8001FCD8 C7A40114 */ lwc1 $f4, 0x114($sp) -/* 0208DC 8001FCDC 17000018 */ bnez $t8, .L8001FD40 -/* 0208E0 8001FCE0 00000000 */ nop -/* 0208E4 8001FCE4 C6640014 */ lwc1 $f4, 0x14($s3) -/* 0208E8 8001FCE8 C7A60114 */ lwc1 $f6, 0x114($sp) -/* 0208EC 8001FCEC 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0208F0 8001FCF0 46062202 */ mul.s $f8, $f4, $f6 -/* 0208F4 8001FCF4 44952000 */ mtc1 $s5, $f4 -/* 0208F8 8001FCF8 46081280 */ add.s $f10, $f2, $f8 -/* 0208FC 8001FCFC 46802020 */ cvt.s.w $f0, $f4 -/* 020900 8001FD00 E66A0010 */ swc1 $f10, 0x10($s3) -/* 020904 8001FD04 C6620010 */ lwc1 $f2, 0x10($s3) -/* 020908 8001FD08 00000000 */ nop -/* 02090C 8001FD0C 4602003E */ c.le.s $f0, $f2 -/* 020910 8001FD10 00000000 */ nop -/* 020914 8001FD14 45000008 */ bc1f .L8001FD38 -/* 020918 8001FD18 00000000 */ nop -/* 02091C 8001FD1C 44813000 */ mtc1 $at, $f6 -/* 020920 8001FD20 240F0001 */ li $t7, 1 -/* 020924 8001FD24 46060201 */ sub.s $f8, $f0, $f6 -/* 020928 8001FD28 A26F002D */ sb $t7, 0x2d($s3) -/* 02092C 8001FD2C E6680010 */ swc1 $f8, 0x10($s3) -/* 020930 8001FD30 C6620010 */ lwc1 $f2, 0x10($s3) -/* 020934 8001FD34 00000000 */ nop -.L8001FD38: -/* 020938 8001FD38 10000010 */ b .L8001FD7C -/* 02093C 8001FD3C 4459F800 */ cfc1 $t9, $31 -.L8001FD40: -/* 020940 8001FD40 C66A0014 */ lwc1 $f10, 0x14($s3) -/* 020944 8001FD44 4480B000 */ mtc1 $zero, $f22 -/* 020948 8001FD48 46045182 */ mul.s $f6, $f10, $f4 -/* 02094C 8001FD4C 46061201 */ sub.s $f8, $f2, $f6 -/* 020950 8001FD50 E6680010 */ swc1 $f8, 0x10($s3) -/* 020954 8001FD54 C6620010 */ lwc1 $f2, 0x10($s3) -/* 020958 8001FD58 00000000 */ nop -/* 02095C 8001FD5C 4616103E */ c.le.s $f2, $f22 -/* 020960 8001FD60 00000000 */ nop -/* 020964 8001FD64 45000004 */ bc1f .L8001FD78 -/* 020968 8001FD68 00000000 */ nop -/* 02096C 8001FD6C E6760010 */ swc1 $f22, 0x10($s3) -/* 020970 8001FD70 C6620010 */ lwc1 $f2, 0x10($s3) -/* 020974 8001FD74 00000000 */ nop -.L8001FD78: -/* 020978 8001FD78 4459F800 */ cfc1 $t9, $31 -.L8001FD7C: -/* 02097C 8001FD7C 00000000 */ nop -/* 020980 8001FD80 37210003 */ ori $at, $t9, 3 -/* 020984 8001FD84 38210002 */ xori $at, $at, 2 -/* 020988 8001FD88 44C1F800 */ ctc1 $at, $31 -/* 02098C 8001FD8C 00000000 */ nop -/* 020990 8001FD90 460012A4 */ cvt.w.s $f10, $f2 -/* 020994 8001FD94 440E5000 */ mfc1 $t6, $f10 -/* 020998 8001FD98 44D9F800 */ ctc1 $t9, $31 -/* 02099C 8001FD9C A68E0018 */ sh $t6, 0x18($s4) -/* 0209A0 8001FDA0 00000000 */ nop -.L8001FDA4: -/* 0209A4 8001FDA4 C6660008 */ lwc1 $f6, 8($s3) -/* 0209A8 8001FDA8 44802800 */ mtc1 $zero, $f5 -/* 0209AC 8001FDAC 44802000 */ mtc1 $zero, $f4 -/* 0209B0 8001FDB0 46003221 */ cvt.d.s $f8, $f6 -/* 0209B4 8001FDB4 4624403E */ c.le.d $f8, $f4 -/* 0209B8 8001FDB8 4480B000 */ mtc1 $zero, $f22 -/* 0209BC 8001FDBC 45000006 */ bc1f .L8001FDD8 -/* 0209C0 8001FDC0 3C038012 */ lui $v1, %hi(D_8011AE78) # $v1, 0x8012 -/* 0209C4 8001FDC4 8FA5019C */ lw $a1, 0x19c($sp) -/* 0209C8 8001FDC8 0C008539 */ jal func_800214E4 -/* 0209CC 8001FDCC 02C02025 */ move $a0, $s6 -/* 0209D0 8001FDD0 100004B1 */ b .L80021098 -/* 0209D4 8001FDD4 8FBF0054 */ lw $ra, 0x54($sp) -.L8001FDD8: -/* 0209D8 8001FDD8 8463AE78 */ lh $v1, %lo(D_8011AE78)($v1) -/* 0209DC 8001FDDC 86650028 */ lh $a1, 0x28($s3) -/* 0209E0 8001FDE0 18600016 */ blez $v1, .L8001FE3C -/* 0209E4 8001FDE4 0000A025 */ move $s4, $zero -/* 0209E8 8001FDE8 3C078012 */ lui $a3, %hi(D_8011AE74) # $a3, 0x8012 -/* 0209EC 8001FDEC 24E7AE74 */ addiu $a3, %lo(D_8011AE74) # addiu $a3, $a3, -0x518c -/* 0209F0 8001FDF0 8CE60000 */ lw $a2, ($a3) -/* 0209F4 8001FDF4 00000000 */ nop -/* 0209F8 8001FDF8 8CD80000 */ lw $t8, ($a2) -/* 0209FC 8001FDFC 00000000 */ nop -/* 020A00 8001FE00 8F0F007C */ lw $t7, 0x7c($t8) -/* 020A04 8001FE04 00000000 */ nop -/* 020A08 8001FE08 10AF000C */ beq $a1, $t7, .L8001FE3C -/* 020A0C 8001FE0C 00000000 */ nop -.L8001FE10: -/* 020A10 8001FE10 26940001 */ addiu $s4, $s4, 1 -/* 020A14 8001FE14 0283082A */ slt $at, $s4, $v1 -/* 020A18 8001FE18 10200008 */ beqz $at, .L8001FE3C -/* 020A1C 8001FE1C 0014C880 */ sll $t9, $s4, 2 -/* 020A20 8001FE20 00D97021 */ addu $t6, $a2, $t9 -/* 020A24 8001FE24 8DD80000 */ lw $t8, ($t6) -/* 020A28 8001FE28 00000000 */ nop -/* 020A2C 8001FE2C 8F0F007C */ lw $t7, 0x7c($t8) -/* 020A30 8001FE30 00000000 */ nop -/* 020A34 8001FE34 14AFFFF6 */ bne $a1, $t7, .L8001FE10 -/* 020A38 8001FE38 00000000 */ nop -.L8001FE3C: -/* 020A3C 8001FE3C 3C078012 */ lui $a3, %hi(D_8011AE74) # $a3, 0x8012 -/* 020A40 8001FE40 0283082A */ slt $at, $s4, $v1 -/* 020A44 8001FE44 14200006 */ bnez $at, .L8001FE60 -/* 020A48 8001FE48 24E7AE74 */ addiu $a3, %lo(D_8011AE74) # addiu $a3, $a3, -0x518c -/* 020A4C 8001FE4C 8FA5019C */ lw $a1, 0x19c($sp) -/* 020A50 8001FE50 0C008539 */ jal func_800214E4 -/* 020A54 8001FE54 02C02025 */ move $a0, $s6 -/* 020A58 8001FE58 1000048F */ b .L80021098 -/* 020A5C 8001FE5C 8FBF0054 */ lw $ra, 0x54($sp) -.L8001FE60: -/* 020A60 8001FE60 26990001 */ addiu $t9, $s4, 1 -/* 020A64 8001FE64 0323082A */ slt $at, $t9, $v1 -/* 020A68 8001FE68 10200015 */ beqz $at, .L8001FEC0 -/* 020A6C 8001FE6C 24150001 */ li $s5, 1 -/* 020A70 8001FE70 8CEE0000 */ lw $t6, ($a3) -/* 020A74 8001FE74 0014C080 */ sll $t8, $s4, 2 -/* 020A78 8001FE78 01D82021 */ addu $a0, $t6, $t8 -/* 020A7C 8001FE7C 8C8F0004 */ lw $t7, 4($a0) -/* 020A80 8001FE80 02951021 */ addu $v0, $s4, $s5 -/* 020A84 8001FE84 8DF9007C */ lw $t9, 0x7c($t7) -/* 020A88 8001FE88 00000000 */ nop -/* 020A8C 8001FE8C 14B9000C */ bne $a1, $t9, .L8001FEC0 -/* 020A90 8001FE90 24420001 */ addiu $v0, $v0, 1 -.L8001FE94: -/* 020A94 8001FE94 0043082A */ slt $at, $v0, $v1 -/* 020A98 8001FE98 10200009 */ beqz $at, .L8001FEC0 -/* 020A9C 8001FE9C 26B50001 */ addiu $s5, $s5, 1 -/* 020AA0 8001FEA0 00157080 */ sll $t6, $s5, 2 -/* 020AA4 8001FEA4 008EC021 */ addu $t8, $a0, $t6 -/* 020AA8 8001FEA8 8F0F0000 */ lw $t7, ($t8) -/* 020AAC 8001FEAC 00000000 */ nop -/* 020AB0 8001FEB0 8DF9007C */ lw $t9, 0x7c($t7) -/* 020AB4 8001FEB4 00000000 */ nop -/* 020AB8 8001FEB8 10B9FFF6 */ beq $a1, $t9, .L8001FE94 -/* 020ABC 8001FEBC 24420001 */ addiu $v0, $v0, 1 -.L8001FEC0: -/* 020AC0 8001FEC0 2AA10002 */ slti $at, $s5, 2 -/* 020AC4 8001FEC4 10200006 */ beqz $at, .L8001FEE0 -/* 020AC8 8001FEC8 00000000 */ nop -/* 020ACC 8001FECC 8FA5019C */ lw $a1, 0x19c($sp) -/* 020AD0 8001FED0 0C008539 */ jal func_800214E4 -/* 020AD4 8001FED4 02C02025 */ move $a0, $s6 -/* 020AD8 8001FED8 1000046F */ b .L80021098 -/* 020ADC 8001FEDC 8FBF0054 */ lw $ra, 0x54($sp) -.L8001FEE0: -/* 020AE0 8001FEE0 8CE60000 */ lw $a2, ($a3) -/* 020AE4 8001FEE4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 020AE8 8001FEE8 8CCE0000 */ lw $t6, ($a2) -/* 020AEC 8001FEEC 44815800 */ mtc1 $at, $f11 -/* 020AF0 8001FEF0 8DD80040 */ lw $t8, 0x40($t6) -/* 020AF4 8001FEF4 44805000 */ mtc1 $zero, $f10 -/* 020AF8 8001FEF8 C706000C */ lwc1 $f6, 0xc($t8) -/* 020AFC 8001FEFC 00147880 */ sll $t7, $s4, 2 -/* 020B00 8001FF00 46003121 */ cvt.d.s $f4, $f6 -/* 020B04 8001FF04 00000000 */ nop -/* 020B08 8001FF08 46245203 */ div.d $f8, $f10, $f4 -/* 020B0C 8001FF0C 00157080 */ sll $t6, $s5, 2 -/* 020B10 8001FF10 00CFC821 */ addu $t9, $a2, $t7 -/* 020B14 8001FF14 032EC021 */ addu $t8, $t9, $t6 -/* 020B18 8001FF18 2AA10003 */ slti $at, $s5, 3 -/* 020B1C 8001FF1C 2403FFFF */ li $v1, -1 -/* 020B20 8001FF20 462041A0 */ cvt.s.d $f6, $f8 -/* 020B24 8001FF24 E7A600B4 */ swc1 $f6, 0xb4($sp) -/* 020B28 8001FF28 8F0FFFFC */ lw $t7, -4($t8) -/* 020B2C 8001FF2C 00000000 */ nop -/* 020B30 8001FF30 8DF1003C */ lw $s1, 0x3c($t7) -/* 020B34 8001FF34 14200009 */ bnez $at, .L8001FF5C -/* 020B38 8001FF38 2401FFFF */ li $at, -1 -/* 020B3C 8001FF3C 8222001D */ lb $v0, 0x1d($s1) -/* 020B40 8001FF40 26B9FFFF */ addiu $t9, $s5, -1 -/* 020B44 8001FF44 04400004 */ bltz $v0, .L8001FF58 -/* 020B48 8001FF48 0059082A */ slt $at, $v0, $t9 -/* 020B4C 8001FF4C 10200003 */ beqz $at, .L8001FF5C -/* 020B50 8001FF50 2401FFFF */ li $at, -1 -/* 020B54 8001FF54 00401825 */ move $v1, $v0 -.L8001FF58: -/* 020B58 8001FF58 2401FFFF */ li $at, -1 -.L8001FF5C: -/* 020B5C 8001FF5C 1461000B */ bne $v1, $at, .L8001FF8C -/* 020B60 8001FF60 00000000 */ nop -/* 020B64 8001FF64 866E0026 */ lh $t6, 0x26($s3) -/* 020B68 8001FF68 26B8FFFF */ addiu $t8, $s5, -1 -/* 020B6C 8001FF6C 01D8082A */ slt $at, $t6, $t8 -/* 020B70 8001FF70 14200006 */ bnez $at, .L8001FF8C -/* 020B74 8001FF74 00000000 */ nop -/* 020B78 8001FF78 8FA5019C */ lw $a1, 0x19c($sp) -/* 020B7C 8001FF7C 0C008539 */ jal func_800214E4 -/* 020B80 8001FF80 02C02025 */ move $a0, $s6 -/* 020B84 8001FF84 10000444 */ b .L80021098 -/* 020B88 8001FF88 8FBF0054 */ lw $ra, 0x54($sp) -.L8001FF8C: -/* 020B8C 8001FF8C 86620036 */ lh $v0, 0x36($s3) -/* 020B90 8001FF90 AFA30168 */ sw $v1, 0x168($sp) -/* 020B94 8001FF94 04400009 */ bltz $v0, .L8001FFBC -/* 020B98 8001FF98 27A90154 */ addiu $t1, $sp, 0x154 -/* 020B9C 8001FF9C 3C0F8012 */ lui $t7, %hi(D_8011AD53) # $t7, 0x8012 -/* 020BA0 8001FFA0 81EFAD53 */ lb $t7, %lo(D_8011AD53)($t7) -/* 020BA4 8001FFA4 8FB9019C */ lw $t9, 0x19c($sp) -/* 020BA8 8001FFA8 15E00002 */ bnez $t7, .L8001FFB4 -/* 020BAC 8001FFAC 00597023 */ subu $t6, $v0, $t9 -/* 020BB0 8001FFB0 A66E0036 */ sh $t6, 0x36($s3) -.L8001FFB4: -/* 020BB4 8001FFB4 10000437 */ b .L80021094 -/* 020BB8 8001FFB8 00001025 */ move $v0, $zero -.L8001FFBC: -/* 020BBC 8001FFBC 86700026 */ lh $s0, 0x26($s3) -/* 020BC0 8001FFC0 27AA0140 */ addiu $t2, $sp, 0x140 -/* 020BC4 8001FFC4 27AB012C */ addiu $t3, $sp, 0x12c -/* 020BC8 8001FFC8 27AD00E0 */ addiu $t5, $sp, 0xe0 -/* 020BCC 8001FFCC 27AC00CC */ addiu $t4, $sp, 0xcc -/* 020BD0 8001FFD0 27BF00B8 */ addiu $ra, $sp, 0xb8 -/* 020BD4 8001FFD4 27A700F4 */ addiu $a3, $sp, 0xf4 -/* 020BD8 8001FFD8 27B20108 */ addiu $s2, $sp, 0x108 -/* 020BDC 8001FFDC 2610FFFF */ addiu $s0, $s0, -1 -.L8001FFE0: -/* 020BE0 8001FFE0 2401FFFF */ li $at, -1 -/* 020BE4 8001FFE4 1601006A */ bne $s0, $at, .L80020190 -/* 020BE8 8001FFE8 0215082A */ slt $at, $s0, $s5 -/* 020BEC 8001FFEC 8FB80168 */ lw $t8, 0x168($sp) -/* 020BF0 8001FFF0 00147880 */ sll $t7, $s4, 2 -/* 020BF4 8001FFF4 13000037 */ beqz $t8, .L800200D4 -/* 020BF8 8001FFF8 02957021 */ addu $t6, $s4, $s5 -/* 020BFC 8001FFFC 00CF1021 */ addu $v0, $a2, $t7 -/* 020C00 80020000 8C590000 */ lw $t9, ($v0) -/* 020C04 80020004 8C4E0004 */ lw $t6, 4($v0) -/* 020C08 80020008 C720000C */ lwc1 $f0, 0xc($t9) -/* 020C0C 8002000C C5CA000C */ lwc1 $f10, 0xc($t6) -/* 020C10 80020010 00000000 */ nop -/* 020C14 80020014 460A0101 */ sub.s $f4, $f0, $f10 -/* 020C18 80020018 46002200 */ add.s $f8, $f4, $f0 -/* 020C1C 8002001C E5280000 */ swc1 $f8, ($t1) -/* 020C20 80020020 8C580000 */ lw $t8, ($v0) -/* 020C24 80020024 8C4F0004 */ lw $t7, 4($v0) -/* 020C28 80020028 C7020010 */ lwc1 $f2, 0x10($t8) -/* 020C2C 8002002C C5E60010 */ lwc1 $f6, 0x10($t7) -/* 020C30 80020030 00000000 */ nop -/* 020C34 80020034 46061281 */ sub.s $f10, $f2, $f6 -/* 020C38 80020038 46025100 */ add.s $f4, $f10, $f2 -/* 020C3C 8002003C E5440000 */ swc1 $f4, ($t2) -/* 020C40 80020040 8C590000 */ lw $t9, ($v0) -/* 020C44 80020044 8C4E0004 */ lw $t6, 4($v0) -/* 020C48 80020048 C72C0014 */ lwc1 $f12, 0x14($t9) -/* 020C4C 8002004C C5C80014 */ lwc1 $f8, 0x14($t6) -/* 020C50 80020050 00000000 */ nop -/* 020C54 80020054 46086181 */ sub.s $f6, $f12, $f8 -/* 020C58 80020058 460C3280 */ add.s $f10, $f6, $f12 -/* 020C5C 8002005C E56A0000 */ swc1 $f10, ($t3) -/* 020C60 80020060 8C580000 */ lw $t8, ($v0) -/* 020C64 80020064 00000000 */ nop -/* 020C68 80020068 870F0000 */ lh $t7, ($t8) -/* 020C6C 8002006C 00000000 */ nop -/* 020C70 80020070 448F2000 */ mtc1 $t7, $f4 -/* 020C74 80020074 00000000 */ nop -/* 020C78 80020078 46802220 */ cvt.s.w $f8, $f4 -/* 020C7C 8002007C E5A80000 */ swc1 $f8, ($t5) -/* 020C80 80020080 8C590000 */ lw $t9, ($v0) -/* 020C84 80020084 00000000 */ nop -/* 020C88 80020088 872E0002 */ lh $t6, 2($t9) -/* 020C8C 8002008C 00000000 */ nop -/* 020C90 80020090 448E3000 */ mtc1 $t6, $f6 -/* 020C94 80020094 00000000 */ nop -/* 020C98 80020098 468032A0 */ cvt.s.w $f10, $f6 -/* 020C9C 8002009C E58A0000 */ swc1 $f10, ($t4) -/* 020CA0 800200A0 8C580000 */ lw $t8, ($v0) -/* 020CA4 800200A4 00000000 */ nop -/* 020CA8 800200A8 870F0004 */ lh $t7, 4($t8) -/* 020CAC 800200AC 00000000 */ nop -/* 020CB0 800200B0 448F2000 */ mtc1 $t7, $f4 -/* 020CB4 800200B4 00000000 */ nop -/* 020CB8 800200B8 46802220 */ cvt.s.w $f8, $f4 -/* 020CBC 800200BC E7E80000 */ swc1 $f8, ($ra) -/* 020CC0 800200C0 8C590000 */ lw $t9, ($v0) -/* 020CC4 800200C4 00000000 */ nop -/* 020CC8 800200C8 C7260008 */ lwc1 $f6, 8($t9) -/* 020CCC 800200CC 1000010A */ b .L800204F8 -/* 020CD0 800200D0 E4E60000 */ swc1 $f6, ($a3) -.L800200D4: -/* 020CD4 800200D4 000EC080 */ sll $t8, $t6, 2 -/* 020CD8 800200D8 00D81021 */ addu $v0, $a2, $t8 -/* 020CDC 800200DC 8C4FFFFC */ lw $t7, -4($v0) -/* 020CE0 800200E0 00000000 */ nop -/* 020CE4 800200E4 C5EA000C */ lwc1 $f10, 0xc($t7) -/* 020CE8 800200E8 00000000 */ nop -/* 020CEC 800200EC E52A0000 */ swc1 $f10, ($t1) -/* 020CF0 800200F0 8C59FFFC */ lw $t9, -4($v0) -/* 020CF4 800200F4 00000000 */ nop -/* 020CF8 800200F8 C7240010 */ lwc1 $f4, 0x10($t9) -/* 020CFC 800200FC 00000000 */ nop -/* 020D00 80020100 E5440000 */ swc1 $f4, ($t2) -/* 020D04 80020104 8C4EFFFC */ lw $t6, -4($v0) -/* 020D08 80020108 00000000 */ nop -/* 020D0C 8002010C C5C80014 */ lwc1 $f8, 0x14($t6) -/* 020D10 80020110 00000000 */ nop -/* 020D14 80020114 E5680000 */ swc1 $f8, ($t3) -/* 020D18 80020118 8C58FFFC */ lw $t8, -4($v0) -/* 020D1C 8002011C 00000000 */ nop -/* 020D20 80020120 870F0000 */ lh $t7, ($t8) -/* 020D24 80020124 00000000 */ nop -/* 020D28 80020128 448F3000 */ mtc1 $t7, $f6 -/* 020D2C 8002012C 00000000 */ nop -/* 020D30 80020130 468032A0 */ cvt.s.w $f10, $f6 -/* 020D34 80020134 E5AA0000 */ swc1 $f10, ($t5) -/* 020D38 80020138 8C59FFFC */ lw $t9, -4($v0) -/* 020D3C 8002013C 00000000 */ nop -/* 020D40 80020140 872E0002 */ lh $t6, 2($t9) -/* 020D44 80020144 00000000 */ nop -/* 020D48 80020148 448E2000 */ mtc1 $t6, $f4 -/* 020D4C 8002014C 00000000 */ nop -/* 020D50 80020150 46802220 */ cvt.s.w $f8, $f4 -/* 020D54 80020154 E5880000 */ swc1 $f8, ($t4) -/* 020D58 80020158 8C58FFFC */ lw $t8, -4($v0) -/* 020D5C 8002015C 00000000 */ nop -/* 020D60 80020160 870F0004 */ lh $t7, 4($t8) -/* 020D64 80020164 00000000 */ nop -/* 020D68 80020168 448F3000 */ mtc1 $t7, $f6 -/* 020D6C 8002016C 00000000 */ nop -/* 020D70 80020170 468032A0 */ cvt.s.w $f10, $f6 -/* 020D74 80020174 E7EA0000 */ swc1 $f10, ($ra) -/* 020D78 80020178 8C59FFFC */ lw $t9, -4($v0) -/* 020D7C 8002017C 00000000 */ nop -/* 020D80 80020180 C7240008 */ lwc1 $f4, 8($t9) -/* 020D84 80020184 100000DC */ b .L800204F8 -/* 020D88 80020188 E4E40000 */ swc1 $f4, ($a3) -/* 020D8C 8002018C 0215082A */ slt $at, $s0, $s5 -.L80020190: -/* 020D90 80020190 1420008C */ bnez $at, .L800203C4 -/* 020D94 80020194 02142821 */ addu $a1, $s0, $s4 -/* 020D98 80020198 8FAE0168 */ lw $t6, 0x168($sp) -/* 020D9C 8002019C 2401FFFF */ li $at, -1 -/* 020DA0 800201A0 15C10055 */ bne $t6, $at, .L800202F8 -/* 020DA4 800201A4 02B41021 */ addu $v0, $s5, $s4 -/* 020DA8 800201A8 0002C080 */ sll $t8, $v0, 2 -/* 020DAC 800201AC 00D87821 */ addu $t7, $a2, $t8 -/* 020DB0 800201B0 8DF9FFFC */ lw $t9, -4($t7) -/* 020DB4 800201B4 00022880 */ sll $a1, $v0, 2 -/* 020DB8 800201B8 8F31003C */ lw $s1, 0x3c($t9) -/* 020DBC 800201BC 24010001 */ li $at, 1 -/* 020DC0 800201C0 822E0022 */ lb $t6, 0x22($s1) -/* 020DC4 800201C4 26B0FFFF */ addiu $s0, $s5, -1 -/* 020DC8 800201C8 15C1001A */ bne $t6, $at, .L80020234 -/* 020DCC 800201CC 24A5FFFC */ addiu $a1, $a1, -4 -/* 020DD0 800201D0 82640030 */ lb $a0, 0x30($s3) -/* 020DD4 800201D4 AFBF006C */ sw $ra, 0x6c($sp) -/* 020DD8 800201D8 AFAD0074 */ sw $t5, 0x74($sp) -/* 020DDC 800201DC AFAC0070 */ sw $t4, 0x70($sp) -/* 020DE0 800201E0 AFAB0078 */ sw $t3, 0x78($sp) -/* 020DE4 800201E4 AFAA007C */ sw $t2, 0x7c($sp) -/* 020DE8 800201E8 AFA90088 */ sw $t1, 0x88($sp) -/* 020DEC 800201EC AFA70068 */ sw $a3, 0x68($sp) -/* 020DF0 800201F0 0C01997A */ jal func_800665E8 -/* 020DF4 800201F4 AFA5005C */ sw $a1, 0x5c($sp) -/* 020DF8 800201F8 0C01A73F */ jal func_80069CFC -/* 020DFC 800201FC 00000000 */ nop -/* 020E00 80020200 3C068012 */ lui $a2, %hi(D_8011AE74) # $a2, 0x8012 -/* 020E04 80020204 8CC6AE74 */ lw $a2, %lo(D_8011AE74)($a2) -/* 020E08 80020208 8FA5005C */ lw $a1, 0x5c($sp) -/* 020E0C 8002020C 8FA70068 */ lw $a3, 0x68($sp) -/* 020E10 80020210 8FA90088 */ lw $t1, 0x88($sp) -/* 020E14 80020214 8FAA007C */ lw $t2, 0x7c($sp) -/* 020E18 80020218 8FAB0078 */ lw $t3, 0x78($sp) -/* 020E1C 8002021C 8FAC0070 */ lw $t4, 0x70($sp) -/* 020E20 80020220 8FAD0074 */ lw $t5, 0x74($sp) -/* 020E24 80020224 8FBF006C */ lw $ra, 0x6c($sp) -/* 020E28 80020228 00401825 */ move $v1, $v0 -/* 020E2C 8002022C 10000004 */ b .L80020240 -/* 020E30 80020230 00C52021 */ addu $a0, $a2, $a1 -.L80020234: -/* 020E34 80020234 00C52021 */ addu $a0, $a2, $a1 -/* 020E38 80020238 8C830000 */ lw $v1, ($a0) -/* 020E3C 8002023C 00000000 */ nop -.L80020240: -/* 020E40 80020240 8C98FFFC */ lw $t8, -4($a0) -/* 020E44 80020244 C460000C */ lwc1 $f0, 0xc($v1) -/* 020E48 80020248 C708000C */ lwc1 $f8, 0xc($t8) -/* 020E4C 8002024C 00000000 */ nop -/* 020E50 80020250 46080181 */ sub.s $f6, $f0, $f8 -/* 020E54 80020254 46003280 */ add.s $f10, $f6, $f0 -/* 020E58 80020258 E52A0000 */ swc1 $f10, ($t1) -/* 020E5C 8002025C 8C8FFFFC */ lw $t7, -4($a0) -/* 020E60 80020260 C4620010 */ lwc1 $f2, 0x10($v1) -/* 020E64 80020264 C5E40010 */ lwc1 $f4, 0x10($t7) -/* 020E68 80020268 00000000 */ nop -/* 020E6C 8002026C 46041201 */ sub.s $f8, $f2, $f4 -/* 020E70 80020270 46024180 */ add.s $f6, $f8, $f2 -/* 020E74 80020274 E5460000 */ swc1 $f6, ($t2) -/* 020E78 80020278 8C99FFFC */ lw $t9, -4($a0) -/* 020E7C 8002027C C46C0014 */ lwc1 $f12, 0x14($v1) -/* 020E80 80020280 C72A0014 */ lwc1 $f10, 0x14($t9) -/* 020E84 80020284 00000000 */ nop -/* 020E88 80020288 460A6101 */ sub.s $f4, $f12, $f10 -/* 020E8C 8002028C 460C2200 */ add.s $f8, $f4, $f12 -/* 020E90 80020290 E5680000 */ swc1 $f8, ($t3) -/* 020E94 80020294 846E0002 */ lh $t6, 2($v1) -/* 020E98 80020298 00000000 */ nop -/* 020E9C 8002029C 448E3000 */ mtc1 $t6, $f6 -/* 020EA0 800202A0 00000000 */ nop -/* 020EA4 800202A4 468032A0 */ cvt.s.w $f10, $f6 -/* 020EA8 800202A8 E58A0000 */ swc1 $f10, ($t4) -/* 020EAC 800202AC 84780004 */ lh $t8, 4($v1) -/* 020EB0 800202B0 00000000 */ nop -/* 020EB4 800202B4 44982000 */ mtc1 $t8, $f4 -/* 020EB8 800202B8 00000000 */ nop -/* 020EBC 800202BC 46802220 */ cvt.s.w $f8, $f4 -/* 020EC0 800202C0 E7E80000 */ swc1 $f8, ($ra) -/* 020EC4 800202C4 8C830000 */ lw $v1, ($a0) -/* 020EC8 800202C8 00000000 */ nop -/* 020ECC 800202CC 846F0000 */ lh $t7, ($v1) -/* 020ED0 800202D0 00000000 */ nop -/* 020ED4 800202D4 448F3000 */ mtc1 $t7, $f6 -/* 020ED8 800202D8 00000000 */ nop -/* 020EDC 800202DC 468032A0 */ cvt.s.w $f10, $f6 -/* 020EE0 800202E0 E5AA0000 */ swc1 $f10, ($t5) -/* 020EE4 800202E4 8C990000 */ lw $t9, ($a0) -/* 020EE8 800202E8 00000000 */ nop -/* 020EEC 800202EC C7240008 */ lwc1 $f4, 8($t9) -/* 020EF0 800202F0 10000081 */ b .L800204F8 -/* 020EF4 800202F4 E4E40000 */ swc1 $f4, ($a3) -.L800202F8: -/* 020EF8 800202F8 8FAE0168 */ lw $t6, 0x168($sp) -/* 020EFC 800202FC 00000000 */ nop -/* 020F00 80020300 028EC021 */ addu $t8, $s4, $t6 -/* 020F04 80020304 03107821 */ addu $t7, $t8, $s0 -/* 020F08 80020308 01F5C823 */ subu $t9, $t7, $s5 -/* 020F0C 8002030C 00197080 */ sll $t6, $t9, 2 -/* 020F10 80020310 00CE1021 */ addu $v0, $a2, $t6 -/* 020F14 80020314 8C580000 */ lw $t8, ($v0) -/* 020F18 80020318 00000000 */ nop -/* 020F1C 8002031C C708000C */ lwc1 $f8, 0xc($t8) -/* 020F20 80020320 00000000 */ nop -/* 020F24 80020324 E5280000 */ swc1 $f8, ($t1) -/* 020F28 80020328 8C4F0000 */ lw $t7, ($v0) -/* 020F2C 8002032C 00000000 */ nop -/* 020F30 80020330 C5E60010 */ lwc1 $f6, 0x10($t7) -/* 020F34 80020334 00000000 */ nop -/* 020F38 80020338 E5460000 */ swc1 $f6, ($t2) -/* 020F3C 8002033C 8C590000 */ lw $t9, ($v0) -/* 020F40 80020340 00000000 */ nop -/* 020F44 80020344 C72A0014 */ lwc1 $f10, 0x14($t9) -/* 020F48 80020348 00000000 */ nop -/* 020F4C 8002034C E56A0000 */ swc1 $f10, ($t3) -/* 020F50 80020350 8C4E0000 */ lw $t6, ($v0) -/* 020F54 80020354 00000000 */ nop -/* 020F58 80020358 85D80000 */ lh $t8, ($t6) -/* 020F5C 8002035C 00000000 */ nop -/* 020F60 80020360 44982000 */ mtc1 $t8, $f4 -/* 020F64 80020364 00000000 */ nop -/* 020F68 80020368 46802220 */ cvt.s.w $f8, $f4 -/* 020F6C 8002036C E5A80000 */ swc1 $f8, ($t5) -/* 020F70 80020370 8C4F0000 */ lw $t7, ($v0) -/* 020F74 80020374 00000000 */ nop -/* 020F78 80020378 85F90002 */ lh $t9, 2($t7) -/* 020F7C 8002037C 00000000 */ nop -/* 020F80 80020380 44993000 */ mtc1 $t9, $f6 -/* 020F84 80020384 00000000 */ nop -/* 020F88 80020388 468032A0 */ cvt.s.w $f10, $f6 -/* 020F8C 8002038C E58A0000 */ swc1 $f10, ($t4) -/* 020F90 80020390 8C4E0000 */ lw $t6, ($v0) -/* 020F94 80020394 00000000 */ nop -/* 020F98 80020398 85D80004 */ lh $t8, 4($t6) -/* 020F9C 8002039C 00000000 */ nop -/* 020FA0 800203A0 44982000 */ mtc1 $t8, $f4 -/* 020FA4 800203A4 00000000 */ nop -/* 020FA8 800203A8 46802220 */ cvt.s.w $f8, $f4 -/* 020FAC 800203AC E7E80000 */ swc1 $f8, ($ra) -/* 020FB0 800203B0 8C4F0000 */ lw $t7, ($v0) -/* 020FB4 800203B4 00000000 */ nop -/* 020FB8 800203B8 C5E60008 */ lwc1 $f6, 8($t7) -/* 020FBC 800203BC 1000004E */ b .L800204F8 -/* 020FC0 800203C0 E4E60000 */ swc1 $f6, ($a3) -.L800203C4: -/* 020FC4 800203C4 0005C880 */ sll $t9, $a1, 2 -/* 020FC8 800203C8 00D92021 */ addu $a0, $a2, $t9 -/* 020FCC 800203CC 8C820000 */ lw $v0, ($a0) -/* 020FD0 800203D0 24010001 */ li $at, 1 -/* 020FD4 800203D4 8C51003C */ lw $s1, 0x3c($v0) -/* 020FD8 800203D8 00401825 */ move $v1, $v0 -/* 020FDC 800203DC 822E0022 */ lb $t6, 0x22($s1) -/* 020FE0 800203E0 00000000 */ nop -/* 020FE4 800203E4 15C1001A */ bne $t6, $at, .L80020450 -/* 020FE8 800203E8 00000000 */ nop -/* 020FEC 800203EC 82640030 */ lb $a0, 0x30($s3) -/* 020FF0 800203F0 AFBF006C */ sw $ra, 0x6c($sp) -/* 020FF4 800203F4 AFAD0074 */ sw $t5, 0x74($sp) -/* 020FF8 800203F8 AFAC0070 */ sw $t4, 0x70($sp) -/* 020FFC 800203FC AFAB0078 */ sw $t3, 0x78($sp) -/* 021000 80020400 AFAA007C */ sw $t2, 0x7c($sp) -/* 021004 80020404 AFA90088 */ sw $t1, 0x88($sp) -/* 021008 80020408 AFA70068 */ sw $a3, 0x68($sp) -/* 02100C 8002040C 0C01997A */ jal func_800665E8 -/* 021010 80020410 AFB90080 */ sw $t9, 0x80($sp) -/* 021014 80020414 0C01A73F */ jal func_80069CFC -/* 021018 80020418 00000000 */ nop -/* 02101C 8002041C 3C068012 */ lui $a2, %hi(D_8011AE74) # $a2, 0x8012 -/* 021020 80020420 8CC6AE74 */ lw $a2, %lo(D_8011AE74)($a2) -/* 021024 80020424 8FA50080 */ lw $a1, 0x80($sp) -/* 021028 80020428 8FA70068 */ lw $a3, 0x68($sp) -/* 02102C 8002042C 8FA90088 */ lw $t1, 0x88($sp) -/* 021030 80020430 8FAA007C */ lw $t2, 0x7c($sp) -/* 021034 80020434 8FAB0078 */ lw $t3, 0x78($sp) -/* 021038 80020438 8FAC0070 */ lw $t4, 0x70($sp) -/* 02103C 8002043C 8FAD0074 */ lw $t5, 0x74($sp) -/* 021040 80020440 8FBF006C */ lw $ra, 0x6c($sp) -/* 021044 80020444 00401825 */ move $v1, $v0 -/* 021048 80020448 10000001 */ b .L80020450 -/* 02104C 8002044C 00C52021 */ addu $a0, $a2, $a1 -.L80020450: -/* 021050 80020450 C46A000C */ lwc1 $f10, 0xc($v1) -/* 021054 80020454 24010001 */ li $at, 1 -/* 021058 80020458 E52A0000 */ swc1 $f10, ($t1) -/* 02105C 8002045C C4640010 */ lwc1 $f4, 0x10($v1) -/* 021060 80020460 00000000 */ nop -/* 021064 80020464 E5440000 */ swc1 $f4, ($t2) -/* 021068 80020468 C4680014 */ lwc1 $f8, 0x14($v1) -/* 02106C 8002046C 00000000 */ nop -/* 021070 80020470 E5680000 */ swc1 $f8, ($t3) -/* 021074 80020474 84780002 */ lh $t8, 2($v1) -/* 021078 80020478 00000000 */ nop -/* 02107C 8002047C 44983000 */ mtc1 $t8, $f6 -/* 021080 80020480 00000000 */ nop -/* 021084 80020484 468032A0 */ cvt.s.w $f10, $f6 -/* 021088 80020488 E58A0000 */ swc1 $f10, ($t4) -/* 02108C 8002048C 846F0004 */ lh $t7, 4($v1) -/* 021090 80020490 00000000 */ nop -/* 021094 80020494 448F2000 */ mtc1 $t7, $f4 -/* 021098 80020498 00000000 */ nop -/* 02109C 8002049C 46802220 */ cvt.s.w $f8, $f4 -/* 0210A0 800204A0 E7E80000 */ swc1 $f8, ($ra) -/* 0210A4 800204A4 8C830000 */ lw $v1, ($a0) -/* 0210A8 800204A8 00000000 */ nop -/* 0210AC 800204AC 84790000 */ lh $t9, ($v1) -/* 0210B0 800204B0 00000000 */ nop -/* 0210B4 800204B4 44993000 */ mtc1 $t9, $f6 -/* 0210B8 800204B8 00000000 */ nop -/* 0210BC 800204BC 468032A0 */ cvt.s.w $f10, $f6 -/* 0210C0 800204C0 E5AA0000 */ swc1 $f10, ($t5) -/* 0210C4 800204C4 822E0022 */ lb $t6, 0x22($s1) -/* 0210C8 800204C8 00000000 */ nop -/* 0210CC 800204CC 15C10005 */ bne $t6, $at, .L800204E4 -/* 0210D0 800204D0 00000000 */ nop -/* 0210D4 800204D4 C5840000 */ lwc1 $f4, ($t4) -/* 0210D8 800204D8 00000000 */ nop -/* 0210DC 800204DC 46002207 */ neg.s $f8, $f4 -/* 0210E0 800204E0 E5880000 */ swc1 $f8, ($t4) -.L800204E4: -/* 0210E4 800204E4 8C980000 */ lw $t8, ($a0) -/* 0210E8 800204E8 00000000 */ nop -/* 0210EC 800204EC C7060008 */ lwc1 $f6, 8($t8) -/* 0210F0 800204F0 00000000 */ nop -/* 0210F4 800204F4 E4E60000 */ swc1 $f6, ($a3) -.L800204F8: -/* 0210F8 800204F8 24E70004 */ addiu $a3, $a3, 4 -/* 0210FC 800204FC 25290004 */ addiu $t1, $t1, 4 -/* 021100 80020500 254A0004 */ addiu $t2, $t2, 4 -/* 021104 80020504 256B0004 */ addiu $t3, $t3, 4 -/* 021108 80020508 25AD0004 */ addiu $t5, $t5, 4 -/* 02110C 8002050C 258C0004 */ addiu $t4, $t4, 4 -/* 021110 80020510 27FF0004 */ addiu $ra, $ra, 4 -/* 021114 80020514 14F2FEB2 */ bne $a3, $s2, .L8001FFE0 -/* 021118 80020518 26100001 */ addiu $s0, $s0, 1 -/* 02111C 8002051C C66A0004 */ lwc1 $f10, 4($s3) -/* 021120 80020520 00009025 */ move $s2, $zero -/* 021124 80020524 460AB032 */ c.eq.s $f22, $f10 -/* 021128 80020528 00008025 */ move $s0, $zero -/* 02112C 8002052C 45000005 */ bc1f .L80020544 -/* 021130 80020530 27B10154 */ addiu $s1, $sp, 0x154 -/* 021134 80020534 3C01800E */ lui $at, %hi(D_800E5678) # $at, 0x800e -/* 021138 80020538 C4245678 */ lwc1 $f4, %lo(D_800E5678)($at) -/* 02113C 8002053C 00000000 */ nop -/* 021140 80020540 E6640004 */ swc1 $f4, 4($s3) -.L80020544: -/* 021144 80020544 C6680004 */ lwc1 $f8, 4($s3) -/* 021148 80020548 C7A60114 */ lwc1 $f6, 0x114($sp) -/* 02114C 8002054C C6640000 */ lwc1 $f4, ($s3) -/* 021150 80020550 46064282 */ mul.s $f10, $f8, $f6 -/* 021154 80020554 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 021158 80020558 44814800 */ mtc1 $at, $f9 -/* 02115C 8002055C 44804000 */ mtc1 $zero, $f8 -/* 021160 80020560 460A2500 */ add.s $f20, $f4, $f10 -/* 021164 80020564 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 021168 80020568 4600A021 */ cvt.d.s $f0, $f20 -/* 02116C 8002056C 4620403E */ c.le.d $f8, $f0 -/* 021170 80020570 02202025 */ move $a0, $s1 -/* 021174 80020574 45000006 */ bc1f .L80020590 -/* 021178 80020578 00000000 */ nop -/* 02117C 8002057C 44813800 */ mtc1 $at, $f7 -/* 021180 80020580 44803000 */ mtc1 $zero, $f6 -/* 021184 80020584 24120001 */ li $s2, 1 -/* 021188 80020588 46260101 */ sub.d $f4, $f0, $f6 -/* 02118C 8002058C 46202520 */ cvt.s.d $f20, $f4 -.L80020590: -/* 021190 80020590 826F003F */ lb $t7, 0x3f($s3) -/* 021194 80020594 02402825 */ move $a1, $s2 -/* 021198 80020598 15E00010 */ bnez $t7, .L800205DC -/* 02119C 8002059C 00000000 */ nop -/* 0211A0 800205A0 4406A000 */ mfc1 $a2, $f20 -/* 0211A4 800205A4 0C008950 */ jal func_80022540 -/* 0211A8 800205A8 02202025 */ move $a0, $s1 -/* 0211AC 800205AC 4406A000 */ mfc1 $a2, $f20 -/* 0211B0 800205B0 E7A00124 */ swc1 $f0, 0x124($sp) -/* 0211B4 800205B4 27A40140 */ addiu $a0, $sp, 0x140 -/* 0211B8 800205B8 0C008950 */ jal func_80022540 -/* 0211BC 800205BC 02402825 */ move $a1, $s2 -/* 0211C0 800205C0 4406A000 */ mfc1 $a2, $f20 -/* 0211C4 800205C4 27A4012C */ addiu $a0, $sp, 0x12c -/* 0211C8 800205C8 02402825 */ move $a1, $s2 -/* 0211CC 800205CC 0C008950 */ jal func_80022540 -/* 0211D0 800205D0 E7A00120 */ swc1 $f0, 0x120($sp) -/* 0211D4 800205D4 1000000F */ b .L80020614 -/* 0211D8 800205D8 E7A0011C */ swc1 $f0, 0x11c($sp) -.L800205DC: -/* 0211DC 800205DC 4406A000 */ mfc1 $a2, $f20 -/* 0211E0 800205E0 0C008A22 */ jal func_80022888 -/* 0211E4 800205E4 02402825 */ move $a1, $s2 -/* 0211E8 800205E8 4406A000 */ mfc1 $a2, $f20 -/* 0211EC 800205EC E7A00124 */ swc1 $f0, 0x124($sp) -/* 0211F0 800205F0 27A40140 */ addiu $a0, $sp, 0x140 -/* 0211F4 800205F4 0C008A22 */ jal func_80022888 -/* 0211F8 800205F8 02402825 */ move $a1, $s2 -/* 0211FC 800205FC 4406A000 */ mfc1 $a2, $f20 -/* 021200 80020600 27A4012C */ addiu $a0, $sp, 0x12c -/* 021204 80020604 02402825 */ move $a1, $s2 -/* 021208 80020608 0C008A22 */ jal func_80022888 -/* 02120C 8002060C E7A00120 */ swc1 $f0, 0x120($sp) -/* 021210 80020610 E7A0011C */ swc1 $f0, 0x11c($sp) -.L80020614: -/* 021214 80020614 C7AA0124 */ lwc1 $f10, 0x124($sp) -/* 021218 80020618 C6C8000C */ lwc1 $f8, 0xc($s6) -/* 02121C 8002061C C7A40120 */ lwc1 $f4, 0x120($sp) -/* 021220 80020620 46085181 */ sub.s $f6, $f10, $f8 -/* 021224 80020624 24010001 */ li $at, 1 -/* 021228 80020628 E7A60124 */ swc1 $f6, 0x124($sp) -/* 02122C 8002062C C6CA0010 */ lwc1 $f10, 0x10($s6) -/* 021230 80020630 00000000 */ nop -/* 021234 80020634 460A2201 */ sub.s $f8, $f4, $f10 -/* 021238 80020638 E7A80120 */ swc1 $f8, 0x120($sp) -/* 02123C 8002063C C6C40014 */ lwc1 $f4, 0x14($s6) -/* 021240 80020640 00000000 */ nop -/* 021244 80020644 46040281 */ sub.s $f10, $f0, $f4 -/* 021248 80020648 12010016 */ beq $s0, $at, .L800206A4 -/* 02124C 8002064C E7AA011C */ swc1 $f10, 0x11c($sp) -/* 021250 80020650 46063102 */ mul.s $f4, $f6, $f6 -/* 021254 80020654 C7AE011C */ lwc1 $f14, 0x11c($sp) -/* 021258 80020658 00009025 */ move $s2, $zero -/* 02125C 8002065C 46084282 */ mul.s $f10, $f8, $f8 -/* 021260 80020660 00000000 */ nop -/* 021264 80020664 460E7202 */ mul.s $f8, $f14, $f14 -/* 021268 80020668 460A2180 */ add.s $f6, $f4, $f10 -/* 02126C 8002066C 0C0326B4 */ jal sqrtf -/* 021270 80020670 46083300 */ add.s $f12, $f6, $f8 -/* 021274 80020674 C7A40114 */ lwc1 $f4, 0x114($sp) -/* 021278 80020678 00000000 */ nop -/* 02127C 8002067C 46040083 */ div.s $f2, $f0, $f4 -/* 021280 80020680 4602B032 */ c.eq.s $f22, $f2 -/* 021284 80020684 00000000 */ nop -/* 021288 80020688 45010006 */ bc1t .L800206A4 -/* 02128C 8002068C 00000000 */ nop -/* 021290 80020690 C6660008 */ lwc1 $f6, 8($s3) -/* 021294 80020694 C66A0004 */ lwc1 $f10, 4($s3) -/* 021298 80020698 46023203 */ div.s $f8, $f6, $f2 -/* 02129C 8002069C 46085102 */ mul.s $f4, $f10, $f8 -/* 0212A0 800206A0 E6640004 */ swc1 $f4, 4($s3) -.L800206A4: -/* 0212A4 800206A4 26100001 */ addiu $s0, $s0, 1 -/* 0212A8 800206A8 24010002 */ li $at, 2 -/* 0212AC 800206AC 1601FFA5 */ bne $s0, $at, .L80020544 -/* 0212B0 800206B0 00000000 */ nop -/* 0212B4 800206B4 4406A000 */ mfc1 $a2, $f20 -/* 0212B8 800206B8 27A400F4 */ addiu $a0, $sp, 0xf4 -/* 0212BC 800206BC 0C008950 */ jal func_80022540 -/* 0212C0 800206C0 02402825 */ move $a1, $s2 -/* 0212C4 800206C4 C7A600B4 */ lwc1 $f6, 0xb4($sp) -/* 0212C8 800206C8 8ED90040 */ lw $t9, 0x40($s6) -/* 0212CC 800206CC 46060282 */ mul.s $f10, $f0, $f6 -/* 0212D0 800206D0 C728000C */ lwc1 $f8, 0xc($t9) -/* 0212D4 800206D4 00000000 */ nop -/* 0212D8 800206D8 46085102 */ mul.s $f4, $f10, $f8 -/* 0212DC 800206DC 12400024 */ beqz $s2, .L80020770 -/* 0212E0 800206E0 E6C40008 */ swc1 $f4, 8($s6) -/* 0212E4 800206E4 8FAE0168 */ lw $t6, 0x168($sp) -/* 0212E8 800206E8 2401FFFF */ li $at, -1 -/* 0212EC 800206EC 15C10020 */ bne $t6, $at, .L80020770 -/* 0212F0 800206F0 00000000 */ nop -/* 0212F4 800206F4 86780026 */ lh $t8, 0x26($s3) -/* 0212F8 800206F8 02202025 */ move $a0, $s1 -/* 0212FC 800206FC 270F0002 */ addiu $t7, $t8, 2 -/* 021300 80020700 16AF001B */ bne $s5, $t7, .L80020770 -/* 021304 80020704 00002825 */ move $a1, $zero -/* 021308 80020708 0C008950 */ jal func_80022540 -/* 02130C 8002070C 3C063F80 */ lui $a2, 0x3f80 -/* 021310 80020710 E7A00124 */ swc1 $f0, 0x124($sp) -/* 021314 80020714 27A40140 */ addiu $a0, $sp, 0x140 -/* 021318 80020718 00002825 */ move $a1, $zero -/* 02131C 8002071C 0C008950 */ jal func_80022540 -/* 021320 80020720 3C063F80 */ lui $a2, 0x3f80 -/* 021324 80020724 27A4012C */ addiu $a0, $sp, 0x12c -/* 021328 80020728 00002825 */ move $a1, $zero -/* 02132C 8002072C 3C063F80 */ lui $a2, 0x3f80 -/* 021330 80020730 0C008950 */ jal func_80022540 -/* 021334 80020734 E7A00120 */ swc1 $f0, 0x120($sp) -/* 021338 80020738 E7A0011C */ swc1 $f0, 0x11c($sp) -/* 02133C 8002073C C6CA000C */ lwc1 $f10, 0xc($s6) -/* 021340 80020740 C7A60124 */ lwc1 $f6, 0x124($sp) -/* 021344 80020744 C7A40120 */ lwc1 $f4, 0x120($sp) -/* 021348 80020748 460A3201 */ sub.s $f8, $f6, $f10 -/* 02134C 8002074C E7A80124 */ swc1 $f8, 0x124($sp) -/* 021350 80020750 C6C60010 */ lwc1 $f6, 0x10($s6) -/* 021354 80020754 00000000 */ nop -/* 021358 80020758 46062281 */ sub.s $f10, $f4, $f6 -/* 02135C 8002075C E7AA0120 */ swc1 $f10, 0x120($sp) -/* 021360 80020760 C6C80014 */ lwc1 $f8, 0x14($s6) -/* 021364 80020764 00000000 */ nop -/* 021368 80020768 46080101 */ sub.s $f4, $f0, $f8 -/* 02136C 8002076C E7A4011C */ swc1 $f4, 0x11c($sp) -.L80020770: -/* 021370 80020770 C7A60124 */ lwc1 $f6, 0x124($sp) -/* 021374 80020774 C7AA0114 */ lwc1 $f10, 0x114($sp) -/* 021378 80020778 02C02025 */ move $a0, $s6 -/* 02137C 8002077C 460A3203 */ div.s $f8, $f6, $f10 -/* 021380 80020780 E6C8001C */ swc1 $f8, 0x1c($s6) -/* 021384 80020784 C7A40120 */ lwc1 $f4, 0x120($sp) -/* 021388 80020788 C7A60114 */ lwc1 $f6, 0x114($sp) -/* 02138C 8002078C 00000000 */ nop -/* 021390 80020790 46062283 */ div.s $f10, $f4, $f6 -/* 021394 80020794 E6CA0020 */ swc1 $f10, 0x20($s6) -/* 021398 80020798 C7A8011C */ lwc1 $f8, 0x11c($sp) -/* 02139C 8002079C C7A40114 */ lwc1 $f4, 0x114($sp) -/* 0213A0 800207A0 00000000 */ nop -/* 0213A4 800207A4 46044183 */ div.s $f6, $f8, $f4 -/* 0213A8 800207A8 E6C60024 */ swc1 $f6, 0x24($s6) -/* 0213AC 800207AC 8FA7011C */ lw $a3, 0x11c($sp) -/* 0213B0 800207B0 8FA60120 */ lw $a2, 0x120($sp) -/* 0213B4 800207B4 8FA50124 */ lw $a1, 0x124($sp) -/* 0213B8 800207B8 0C00455C */ jal func_80011570 -/* 0213BC 800207BC 00000000 */ nop -/* 0213C0 800207C0 9263002E */ lbu $v1, 0x2e($s3) -/* 0213C4 800207C4 24010001 */ li $at, 1 -/* 0213C8 800207C8 1061015B */ beq $v1, $at, .L80020D38 -/* 0213CC 800207CC 24010002 */ li $at, 2 -/* 0213D0 800207D0 10610005 */ beq $v1, $at, .L800207E8 -/* 0213D4 800207D4 24010003 */ li $at, 3 -/* 0213D8 800207D8 10610157 */ beq $v1, $at, .L80020D38 -/* 0213DC 800207DC 24080001 */ li $t0, 1 -/* 0213E0 800207E0 1000004F */ b .L80020920 -/* 0213E4 800207E4 27AD00E4 */ addiu $t5, $sp, 0xe4 -.L800207E8: -/* 0213E8 800207E8 8279003F */ lb $t9, 0x3f($s3) -/* 0213EC 800207EC 02202025 */ move $a0, $s1 -/* 0213F0 800207F0 17200012 */ bnez $t9, .L8002083C -/* 0213F4 800207F4 02402825 */ move $a1, $s2 -/* 0213F8 800207F8 4406A000 */ mfc1 $a2, $f20 -/* 0213FC 800207FC 02202025 */ move $a0, $s1 -/* 021400 80020800 02402825 */ move $a1, $s2 -/* 021404 80020804 0C00898F */ jal func_8002263C -/* 021408 80020808 27A70124 */ addiu $a3, $sp, 0x124 -/* 02140C 8002080C 4406A000 */ mfc1 $a2, $f20 -/* 021410 80020810 27A40140 */ addiu $a0, $sp, 0x140 -/* 021414 80020814 02402825 */ move $a1, $s2 -/* 021418 80020818 0C00898F */ jal func_8002263C -/* 02141C 8002081C 27A70120 */ addiu $a3, $sp, 0x120 -/* 021420 80020820 4406A000 */ mfc1 $a2, $f20 -/* 021424 80020824 27A4012C */ addiu $a0, $sp, 0x12c -/* 021428 80020828 02402825 */ move $a1, $s2 -/* 02142C 8002082C 0C00898F */ jal func_8002263C -/* 021430 80020830 27A7011C */ addiu $a3, $sp, 0x11c -/* 021434 80020834 1000000F */ b .L80020874 -/* 021438 80020838 C7AA0124 */ lwc1 $f10, 0x124($sp) -.L8002083C: -/* 02143C 8002083C 4406A000 */ mfc1 $a2, $f20 -/* 021440 80020840 0C008A2C */ jal func_800228B0 -/* 021444 80020844 27A70124 */ addiu $a3, $sp, 0x124 -/* 021448 80020848 4406A000 */ mfc1 $a2, $f20 -/* 02144C 8002084C 27A40140 */ addiu $a0, $sp, 0x140 -/* 021450 80020850 02402825 */ move $a1, $s2 -/* 021454 80020854 0C008A2C */ jal func_800228B0 -/* 021458 80020858 27A70120 */ addiu $a3, $sp, 0x120 -/* 02145C 8002085C 4406A000 */ mfc1 $a2, $f20 -/* 021460 80020860 27A4012C */ addiu $a0, $sp, 0x12c -/* 021464 80020864 02402825 */ move $a1, $s2 -/* 021468 80020868 0C008A2C */ jal func_800228B0 -/* 02146C 8002086C 27A7011C */ addiu $a3, $sp, 0x11c -/* 021470 80020870 C7AA0124 */ lwc1 $f10, 0x124($sp) -.L80020874: -/* 021474 80020874 C7A20120 */ lwc1 $f2, 0x120($sp) -/* 021478 80020878 460A5202 */ mul.s $f8, $f10, $f10 -/* 02147C 8002087C C7AE011C */ lwc1 $f14, 0x11c($sp) -/* 021480 80020880 46021102 */ mul.s $f4, $f2, $f2 -/* 021484 80020884 00000000 */ nop -/* 021488 80020888 460E7282 */ mul.s $f10, $f14, $f14 -/* 02148C 8002088C 46044180 */ add.s $f6, $f8, $f4 -/* 021490 80020890 0C0326B4 */ jal sqrtf -/* 021494 80020894 460A3300 */ add.s $f12, $f6, $f10 -/* 021498 80020898 46160032 */ c.eq.s $f0, $f22 -/* 02149C 8002089C 3C014059 */ li $at, 0x40590000 # 3.390625 -/* 0214A0 800208A0 45010011 */ bc1t .L800208E8 -/* 0214A4 800208A4 00000000 */ nop -/* 0214A8 800208A8 44814800 */ mtc1 $at, $f9 -/* 0214AC 800208AC 44804000 */ mtc1 $zero, $f8 -/* 0214B0 800208B0 46000121 */ cvt.d.s $f4, $f0 -/* 0214B4 800208B4 00000000 */ nop -/* 0214B8 800208B8 46244183 */ div.d $f6, $f8, $f4 -/* 0214BC 800208BC C7AA0124 */ lwc1 $f10, 0x124($sp) -/* 0214C0 800208C0 C7A20120 */ lwc1 $f2, 0x120($sp) -/* 0214C4 800208C4 C7AE011C */ lwc1 $f14, 0x11c($sp) -/* 0214C8 800208C8 46203320 */ cvt.s.d $f12, $f6 -/* 0214CC 800208CC 460C5202 */ mul.s $f8, $f10, $f12 -/* 0214D0 800208D0 00000000 */ nop -/* 0214D4 800208D4 460C1082 */ mul.s $f2, $f2, $f12 -/* 0214D8 800208D8 E7A80124 */ swc1 $f8, 0x124($sp) -/* 0214DC 800208DC 460C7382 */ mul.s $f14, $f14, $f12 -/* 0214E0 800208E0 E7A20120 */ swc1 $f2, 0x120($sp) -/* 0214E4 800208E4 E7AE011C */ swc1 $f14, 0x11c($sp) -.L800208E8: -/* 0214E8 800208E8 C7AE011C */ lwc1 $f14, 0x11c($sp) -/* 0214EC 800208EC C7AC0124 */ lwc1 $f12, 0x124($sp) -/* 0214F0 800208F0 0C01C1D4 */ jal func_80070750 -/* 0214F4 800208F4 00000000 */ nop -/* 0214F8 800208F8 24018000 */ li $at, -32768 -/* 0214FC 800208FC 00417021 */ addu $t6, $v0, $at -/* 021500 80020900 A6CE0000 */ sh $t6, ($s6) -/* 021504 80020904 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 021508 80020908 44817000 */ mtc1 $at, $f14 -/* 02150C 8002090C C7AC0120 */ lwc1 $f12, 0x120($sp) -/* 021510 80020910 0C01C1D4 */ jal func_80070750 -/* 021514 80020914 00000000 */ nop -/* 021518 80020918 10000107 */ b .L80020D38 -/* 02151C 8002091C A6C20002 */ sh $v0, 2($s6) -.L80020920: -/* 021520 80020920 3C01C0E0 */ li $at, 0xC0E00000 # -7.000000 -/* 021524 80020924 44819800 */ mtc1 $at, $f19 -/* 021528 80020928 3C0140E0 */ li $at, 0x40E00000 # 7.000000 -/* 02152C 8002092C 44818800 */ mtc1 $at, $f17 -/* 021530 80020930 3C0140F0 */ li $at, 0x40F00000 # 7.500000 -/* 021534 80020934 44817800 */ mtc1 $at, $f15 -/* 021538 80020938 44809000 */ mtc1 $zero, $f18 -/* 02153C 8002093C 44808000 */ mtc1 $zero, $f16 -/* 021540 80020940 44807000 */ mtc1 $zero, $f14 -/* 021544 80020944 27AC00D0 */ addiu $t4, $sp, 0xd0 -/* 021548 80020948 27BF00BC */ addiu $ra, $sp, 0xbc -/* 02154C 8002094C 27A700CC */ addiu $a3, $sp, 0xcc -/* 021550 80020950 27A600E0 */ addiu $a2, $sp, 0xe0 -/* 021554 80020954 27A500F4 */ addiu $a1, $sp, 0xf4 -.L80020958: -/* 021558 80020958 C5A40000 */ lwc1 $f4, ($t5) -/* 02155C 8002095C C5A6FFFC */ lwc1 $f6, -4($t5) -/* 021560 80020960 25AD0004 */ addiu $t5, $t5, 4 -/* 021564 80020964 46062301 */ sub.s $f12, $f4, $f6 -/* 021568 80020968 29010005 */ slti $at, $t0, 5 -/* 02156C 8002096C 460060A1 */ cvt.d.s $f2, $f12 -/* 021570 80020970 4622803C */ c.lt.d $f16, $f2 -/* 021574 80020974 4600B006 */ mov.s $f0, $f22 -/* 021578 80020978 45000005 */ bc1f .L80020990 -/* 02157C 8002097C 24180005 */ li $t8, 5 -/* 021580 80020980 4600B2A1 */ cvt.d.s $f10, $f22 -/* 021584 80020984 462E5201 */ sub.d $f8, $f10, $f14 -/* 021588 80020988 10000008 */ b .L800209AC -/* 02158C 8002098C 46204020 */ cvt.s.d $f0, $f8 -.L80020990: -/* 021590 80020990 4632103C */ c.lt.d $f2, $f18 -/* 021594 80020994 00000000 */ nop -/* 021598 80020998 45000004 */ bc1f .L800209AC -/* 02159C 8002099C 00000000 */ nop -/* 0215A0 800209A0 4600B121 */ cvt.d.s $f4, $f22 -/* 0215A4 800209A4 462E2180 */ add.d $f6, $f4, $f14 -/* 0215A8 800209A8 46203020 */ cvt.s.d $f0, $f6 -.L800209AC: -/* 0215AC 800209AC 10200022 */ beqz $at, .L80020A38 -/* 0215B0 800209B0 01008025 */ move $s0, $t0 -/* 0215B4 800209B4 03082023 */ subu $a0, $t8, $t0 -/* 0215B8 800209B8 308F0003 */ andi $t7, $a0, 3 -/* 0215BC 800209BC 11E0000C */ beqz $t7, .L800209F0 -/* 0215C0 800209C0 01E81821 */ addu $v1, $t7, $t0 -/* 0215C4 800209C4 0010C880 */ sll $t9, $s0, 2 -/* 0215C8 800209C8 27AE00E0 */ addiu $t6, $sp, 0xe0 -/* 0215CC 800209CC 032E1021 */ addu $v0, $t9, $t6 -.L800209D0: -/* 0215D0 800209D0 C44A0000 */ lwc1 $f10, ($v0) -/* 0215D4 800209D4 26100001 */ addiu $s0, $s0, 1 -/* 0215D8 800209D8 46005200 */ add.s $f8, $f10, $f0 -/* 0215DC 800209DC 24420004 */ addiu $v0, $v0, 4 -/* 0215E0 800209E0 1470FFFB */ bne $v1, $s0, .L800209D0 -/* 0215E4 800209E4 E448FFFC */ swc1 $f8, -4($v0) -/* 0215E8 800209E8 24010005 */ li $at, 5 -/* 0215EC 800209EC 12010011 */ beq $s0, $at, .L80020A34 -.L800209F0: -/* 0215F0 800209F0 0010C080 */ sll $t8, $s0, 2 -/* 0215F4 800209F4 27AF00E0 */ addiu $t7, $sp, 0xe0 -/* 0215F8 800209F8 030F1021 */ addu $v0, $t8, $t7 -.L800209FC: -/* 0215FC 800209FC C4440000 */ lwc1 $f4, ($v0) -/* 021600 80020A00 C44A0004 */ lwc1 $f10, 4($v0) -/* 021604 80020A04 46002180 */ add.s $f6, $f4, $f0 -/* 021608 80020A08 C4440008 */ lwc1 $f4, 8($v0) -/* 02160C 80020A0C 46005200 */ add.s $f8, $f10, $f0 -/* 021610 80020A10 C44A000C */ lwc1 $f10, 0xc($v0) -/* 021614 80020A14 E4480004 */ swc1 $f8, 4($v0) -/* 021618 80020A18 E4460000 */ swc1 $f6, ($v0) -/* 02161C 80020A1C 46002180 */ add.s $f6, $f4, $f0 -/* 021620 80020A20 24420010 */ addiu $v0, $v0, 0x10 -/* 021624 80020A24 46005200 */ add.s $f8, $f10, $f0 -/* 021628 80020A28 E446FFF8 */ swc1 $f6, -8($v0) -/* 02162C 80020A2C 1445FFF3 */ bne $v0, $a1, .L800209FC -/* 021630 80020A30 E448FFFC */ swc1 $f8, -4($v0) -.L80020A34: -/* 021634 80020A34 01008025 */ move $s0, $t0 -.L80020A38: -/* 021638 80020A38 C5840000 */ lwc1 $f4, ($t4) -/* 02163C 80020A3C C586FFFC */ lwc1 $f6, -4($t4) -/* 021640 80020A40 258C0004 */ addiu $t4, $t4, 4 -/* 021644 80020A44 46062301 */ sub.s $f12, $f4, $f6 -/* 021648 80020A48 29010005 */ slti $at, $t0, 5 -/* 02164C 80020A4C 460060A1 */ cvt.d.s $f2, $f12 -/* 021650 80020A50 4622803C */ c.lt.d $f16, $f2 -/* 021654 80020A54 4600B006 */ mov.s $f0, $f22 -/* 021658 80020A58 45000005 */ bc1f .L80020A70 -/* 02165C 80020A5C 24190005 */ li $t9, 5 -/* 021660 80020A60 4600B2A1 */ cvt.d.s $f10, $f22 -/* 021664 80020A64 462E5201 */ sub.d $f8, $f10, $f14 -/* 021668 80020A68 10000008 */ b .L80020A8C -/* 02166C 80020A6C 46204020 */ cvt.s.d $f0, $f8 -.L80020A70: -/* 021670 80020A70 4632103C */ c.lt.d $f2, $f18 -/* 021674 80020A74 00000000 */ nop -/* 021678 80020A78 45000004 */ bc1f .L80020A8C -/* 02167C 80020A7C 00000000 */ nop -/* 021680 80020A80 4600B121 */ cvt.d.s $f4, $f22 -/* 021684 80020A84 462E2180 */ add.d $f6, $f4, $f14 -/* 021688 80020A88 46203020 */ cvt.s.d $f0, $f6 -.L80020A8C: -/* 02168C 80020A8C 10200021 */ beqz $at, .L80020B14 -/* 021690 80020A90 03282023 */ subu $a0, $t9, $t0 -/* 021694 80020A94 308E0003 */ andi $t6, $a0, 3 -/* 021698 80020A98 11C0000C */ beqz $t6, .L80020ACC -/* 02169C 80020A9C 01C81821 */ addu $v1, $t6, $t0 -/* 0216A0 80020AA0 0010C080 */ sll $t8, $s0, 2 -/* 0216A4 80020AA4 27AF00CC */ addiu $t7, $sp, 0xcc -/* 0216A8 80020AA8 030F1021 */ addu $v0, $t8, $t7 -.L80020AAC: -/* 0216AC 80020AAC C44A0000 */ lwc1 $f10, ($v0) -/* 0216B0 80020AB0 26100001 */ addiu $s0, $s0, 1 -/* 0216B4 80020AB4 46005200 */ add.s $f8, $f10, $f0 -/* 0216B8 80020AB8 24420004 */ addiu $v0, $v0, 4 -/* 0216BC 80020ABC 1470FFFB */ bne $v1, $s0, .L80020AAC -/* 0216C0 80020AC0 E448FFFC */ swc1 $f8, -4($v0) -/* 0216C4 80020AC4 24010005 */ li $at, 5 -/* 0216C8 80020AC8 12010011 */ beq $s0, $at, .L80020B10 -.L80020ACC: -/* 0216CC 80020ACC 0010C880 */ sll $t9, $s0, 2 -/* 0216D0 80020AD0 27AE00CC */ addiu $t6, $sp, 0xcc -/* 0216D4 80020AD4 032E1021 */ addu $v0, $t9, $t6 -.L80020AD8: -/* 0216D8 80020AD8 C4440000 */ lwc1 $f4, ($v0) -/* 0216DC 80020ADC C44A0004 */ lwc1 $f10, 4($v0) -/* 0216E0 80020AE0 46002180 */ add.s $f6, $f4, $f0 -/* 0216E4 80020AE4 C4440008 */ lwc1 $f4, 8($v0) -/* 0216E8 80020AE8 46005200 */ add.s $f8, $f10, $f0 -/* 0216EC 80020AEC C44A000C */ lwc1 $f10, 0xc($v0) -/* 0216F0 80020AF0 E4480004 */ swc1 $f8, 4($v0) -/* 0216F4 80020AF4 E4460000 */ swc1 $f6, ($v0) -/* 0216F8 80020AF8 46002180 */ add.s $f6, $f4, $f0 -/* 0216FC 80020AFC 24420010 */ addiu $v0, $v0, 0x10 -/* 021700 80020B00 46005200 */ add.s $f8, $f10, $f0 -/* 021704 80020B04 E446FFF8 */ swc1 $f6, -8($v0) -/* 021708 80020B08 1446FFF3 */ bne $v0, $a2, .L80020AD8 -/* 02170C 80020B0C E448FFFC */ swc1 $f8, -4($v0) -.L80020B10: -/* 021710 80020B10 01008025 */ move $s0, $t0 -.L80020B14: -/* 021714 80020B14 C7E40000 */ lwc1 $f4, ($ra) -/* 021718 80020B18 C7E6FFFC */ lwc1 $f6, -4($ra) -/* 02171C 80020B1C 24180005 */ li $t8, 5 -/* 021720 80020B20 46062301 */ sub.s $f12, $f4, $f6 -/* 021724 80020B24 03082023 */ subu $a0, $t8, $t0 -/* 021728 80020B28 460060A1 */ cvt.d.s $f2, $f12 -/* 02172C 80020B2C 4622803C */ c.lt.d $f16, $f2 -/* 021730 80020B30 4600B006 */ mov.s $f0, $f22 -/* 021734 80020B34 45000005 */ bc1f .L80020B4C -/* 021738 80020B38 29010005 */ slti $at, $t0, 5 -/* 02173C 80020B3C 4600B2A1 */ cvt.d.s $f10, $f22 -/* 021740 80020B40 462E5201 */ sub.d $f8, $f10, $f14 -/* 021744 80020B44 10000008 */ b .L80020B68 -/* 021748 80020B48 46204020 */ cvt.s.d $f0, $f8 -.L80020B4C: -/* 02174C 80020B4C 4632103C */ c.lt.d $f2, $f18 -/* 021750 80020B50 00000000 */ nop -/* 021754 80020B54 45000004 */ bc1f .L80020B68 -/* 021758 80020B58 00000000 */ nop -/* 02175C 80020B5C 4600B121 */ cvt.d.s $f4, $f22 -/* 021760 80020B60 462E2180 */ add.d $f6, $f4, $f14 -/* 021764 80020B64 46203020 */ cvt.s.d $f0, $f6 -.L80020B68: -/* 021768 80020B68 1020001F */ beqz $at, .L80020BE8 -/* 02176C 80020B6C 308F0003 */ andi $t7, $a0, 3 -/* 021770 80020B70 11E0000C */ beqz $t7, .L80020BA4 -/* 021774 80020B74 01E81821 */ addu $v1, $t7, $t0 -/* 021778 80020B78 0010C880 */ sll $t9, $s0, 2 -/* 02177C 80020B7C 27AE00B8 */ addiu $t6, $sp, 0xb8 -/* 021780 80020B80 032E1021 */ addu $v0, $t9, $t6 -.L80020B84: -/* 021784 80020B84 C44A0000 */ lwc1 $f10, ($v0) -/* 021788 80020B88 26100001 */ addiu $s0, $s0, 1 -/* 02178C 80020B8C 46005200 */ add.s $f8, $f10, $f0 -/* 021790 80020B90 24420004 */ addiu $v0, $v0, 4 -/* 021794 80020B94 1470FFFB */ bne $v1, $s0, .L80020B84 -/* 021798 80020B98 E448FFFC */ swc1 $f8, -4($v0) -/* 02179C 80020B9C 24010005 */ li $at, 5 -/* 0217A0 80020BA0 12010011 */ beq $s0, $at, .L80020BE8 -.L80020BA4: -/* 0217A4 80020BA4 0010C080 */ sll $t8, $s0, 2 -/* 0217A8 80020BA8 27AF00B8 */ addiu $t7, $sp, 0xb8 -/* 0217AC 80020BAC 030F1021 */ addu $v0, $t8, $t7 -.L80020BB0: -/* 0217B0 80020BB0 C4440000 */ lwc1 $f4, ($v0) -/* 0217B4 80020BB4 C44A0004 */ lwc1 $f10, 4($v0) -/* 0217B8 80020BB8 46002180 */ add.s $f6, $f4, $f0 -/* 0217BC 80020BBC C4440008 */ lwc1 $f4, 8($v0) -/* 0217C0 80020BC0 46005200 */ add.s $f8, $f10, $f0 -/* 0217C4 80020BC4 C44A000C */ lwc1 $f10, 0xc($v0) -/* 0217C8 80020BC8 E4480004 */ swc1 $f8, 4($v0) -/* 0217CC 80020BCC E4460000 */ swc1 $f6, ($v0) -/* 0217D0 80020BD0 46002180 */ add.s $f6, $f4, $f0 -/* 0217D4 80020BD4 24420010 */ addiu $v0, $v0, 0x10 -/* 0217D8 80020BD8 46005200 */ add.s $f8, $f10, $f0 -/* 0217DC 80020BDC E446FFF8 */ swc1 $f6, -8($v0) -/* 0217E0 80020BE0 1447FFF3 */ bne $v0, $a3, .L80020BB0 -/* 0217E4 80020BE4 E448FFFC */ swc1 $f8, -4($v0) -.L80020BE8: -/* 0217E8 80020BE8 25080001 */ addiu $t0, $t0, 1 -/* 0217EC 80020BEC 24010005 */ li $at, 5 -/* 0217F0 80020BF0 1501FF59 */ bne $t0, $at, .L80020958 -/* 0217F4 80020BF4 27FF0004 */ addiu $ra, $ra, 4 -/* 0217F8 80020BF8 8279003F */ lb $t9, 0x3f($s3) -/* 0217FC 80020BFC 02402825 */ move $a1, $s2 -/* 021800 80020C00 17200027 */ bnez $t9, .L80020CA0 -/* 021804 80020C04 27A400E0 */ addiu $a0, $sp, 0xe0 -/* 021808 80020C08 4406A000 */ mfc1 $a2, $f20 -/* 02180C 80020C0C 0C008950 */ jal func_80022540 -/* 021810 80020C10 27A400E0 */ addiu $a0, $sp, 0xe0 -/* 021814 80020C14 444EF800 */ cfc1 $t6, $31 -/* 021818 80020C18 4406A000 */ mfc1 $a2, $f20 -/* 02181C 80020C1C 35C10003 */ ori $at, $t6, 3 -/* 021820 80020C20 38210002 */ xori $at, $at, 2 -/* 021824 80020C24 44C1F800 */ ctc1 $at, $31 -/* 021828 80020C28 27A400CC */ addiu $a0, $sp, 0xcc -/* 02182C 80020C2C 46000124 */ cvt.w.s $f4, $f0 -/* 021830 80020C30 02402825 */ move $a1, $s2 -/* 021834 80020C34 44182000 */ mfc1 $t8, $f4 -/* 021838 80020C38 44CEF800 */ ctc1 $t6, $31 -/* 02183C 80020C3C 0C008950 */ jal func_80022540 -/* 021840 80020C40 A6D80000 */ sh $t8, ($s6) -/* 021844 80020C44 444FF800 */ cfc1 $t7, $31 -/* 021848 80020C48 4406A000 */ mfc1 $a2, $f20 -/* 02184C 80020C4C 35E10003 */ ori $at, $t7, 3 -/* 021850 80020C50 38210002 */ xori $at, $at, 2 -/* 021854 80020C54 44C1F800 */ ctc1 $at, $31 -/* 021858 80020C58 27A400B8 */ addiu $a0, $sp, 0xb8 -/* 02185C 80020C5C 460001A4 */ cvt.w.s $f6, $f0 -/* 021860 80020C60 02402825 */ move $a1, $s2 -/* 021864 80020C64 44193000 */ mfc1 $t9, $f6 -/* 021868 80020C68 44CFF800 */ ctc1 $t7, $31 -/* 02186C 80020C6C 0C008950 */ jal func_80022540 -/* 021870 80020C70 A6D90002 */ sh $t9, 2($s6) -/* 021874 80020C74 444EF800 */ cfc1 $t6, $31 -/* 021878 80020C78 00000000 */ nop -/* 02187C 80020C7C 35C10003 */ ori $at, $t6, 3 -/* 021880 80020C80 38210002 */ xori $at, $at, 2 -/* 021884 80020C84 44C1F800 */ ctc1 $at, $31 -/* 021888 80020C88 00000000 */ nop -/* 02188C 80020C8C 460002A4 */ cvt.w.s $f10, $f0 -/* 021890 80020C90 44185000 */ mfc1 $t8, $f10 -/* 021894 80020C94 44CEF800 */ ctc1 $t6, $31 -/* 021898 80020C98 10000027 */ b .L80020D38 -/* 02189C 80020C9C A6D80004 */ sh $t8, 4($s6) -.L80020CA0: -/* 0218A0 80020CA0 4406A000 */ mfc1 $a2, $f20 -/* 0218A4 80020CA4 0C008A22 */ jal func_80022888 -/* 0218A8 80020CA8 02402825 */ move $a1, $s2 -/* 0218AC 80020CAC 444FF800 */ cfc1 $t7, $31 -/* 0218B0 80020CB0 4406A000 */ mfc1 $a2, $f20 -/* 0218B4 80020CB4 35E10003 */ ori $at, $t7, 3 -/* 0218B8 80020CB8 38210002 */ xori $at, $at, 2 -/* 0218BC 80020CBC 44C1F800 */ ctc1 $at, $31 -/* 0218C0 80020CC0 27A400CC */ addiu $a0, $sp, 0xcc -/* 0218C4 80020CC4 46000224 */ cvt.w.s $f8, $f0 -/* 0218C8 80020CC8 02402825 */ move $a1, $s2 -/* 0218CC 80020CCC 44194000 */ mfc1 $t9, $f8 -/* 0218D0 80020CD0 44CFF800 */ ctc1 $t7, $31 -/* 0218D4 80020CD4 0C008A22 */ jal func_80022888 -/* 0218D8 80020CD8 A6D90000 */ sh $t9, ($s6) -/* 0218DC 80020CDC 444EF800 */ cfc1 $t6, $31 -/* 0218E0 80020CE0 4406A000 */ mfc1 $a2, $f20 -/* 0218E4 80020CE4 35C10003 */ ori $at, $t6, 3 -/* 0218E8 80020CE8 38210002 */ xori $at, $at, 2 -/* 0218EC 80020CEC 44C1F800 */ ctc1 $at, $31 -/* 0218F0 80020CF0 27A400B8 */ addiu $a0, $sp, 0xb8 -/* 0218F4 80020CF4 46000124 */ cvt.w.s $f4, $f0 -/* 0218F8 80020CF8 02402825 */ move $a1, $s2 -/* 0218FC 80020CFC 44182000 */ mfc1 $t8, $f4 -/* 021900 80020D00 44CEF800 */ ctc1 $t6, $31 -/* 021904 80020D04 0C008A22 */ jal func_80022888 -/* 021908 80020D08 A6D80002 */ sh $t8, 2($s6) -/* 02190C 80020D0C 444FF800 */ cfc1 $t7, $31 -/* 021910 80020D10 00000000 */ nop -/* 021914 80020D14 35E10003 */ ori $at, $t7, 3 -/* 021918 80020D18 38210002 */ xori $at, $at, 2 -/* 02191C 80020D1C 44C1F800 */ ctc1 $at, $31 -/* 021920 80020D20 00000000 */ nop -/* 021924 80020D24 460001A4 */ cvt.w.s $f6, $f0 -/* 021928 80020D28 44193000 */ mfc1 $t9, $f6 -/* 02192C 80020D2C 44CFF800 */ ctc1 $t7, $31 -/* 021930 80020D30 A6D90004 */ sh $t9, 4($s6) -/* 021934 80020D34 00000000 */ nop -.L80020D38: -/* 021938 80020D38 8FA30168 */ lw $v1, 0x168($sp) -/* 02193C 80020D3C 86680026 */ lh $t0, 0x26($s3) -/* 021940 80020D40 2401FFFF */ li $at, -1 -/* 021944 80020D44 10610005 */ beq $v1, $at, .L80020D5C -/* 021948 80020D48 E6740000 */ swc1 $f20, ($s3) -/* 02194C 80020D4C 0115082A */ slt $at, $t0, $s5 -/* 021950 80020D50 14200002 */ bnez $at, .L80020D5C -/* 021954 80020D54 01157023 */ subu $t6, $t0, $s5 -/* 021958 80020D58 01C34021 */ addu $t0, $t6, $v1 -.L80020D5C: -/* 02195C 80020D5C 3C098012 */ lui $t1, %hi(D_8011AE74) # $t1, 0x8012 -/* 021960 80020D60 2529AE74 */ addiu $t1, %lo(D_8011AE74) # addiu $t1, $t1, -0x518c -/* 021964 80020D64 8D380000 */ lw $t8, ($t1) -/* 021968 80020D68 00147880 */ sll $t7, $s4, 2 -/* 02196C 80020D6C 00087080 */ sll $t6, $t0, 2 -/* 021970 80020D70 030FC821 */ addu $t9, $t8, $t7 -/* 021974 80020D74 032EC021 */ addu $t8, $t9, $t6 -/* 021978 80020D78 8F0F0000 */ lw $t7, ($t8) -/* 02197C 80020D7C 3C01800E */ lui $at, %hi(D_800E5684) # $at, 0x800e -/* 021980 80020D80 8DF1003C */ lw $s1, 0x3c($t7) -/* 021984 80020D84 C4215680 */ lwc1 $f1, %lo(D_800E5680)($at) -/* 021988 80020D88 82390014 */ lb $t9, 0x14($s1) -/* 02198C 80020D8C C4205684 */ lwc1 $f0, %lo(D_800E5684)($at) -/* 021990 80020D90 44995000 */ mtc1 $t9, $f10 -/* 021994 80020D94 00000000 */ nop -/* 021998 80020D98 46805220 */ cvt.s.w $f8, $f10 -/* 02199C 80020D9C 46004121 */ cvt.d.s $f4, $f8 -/* 0219A0 80020DA0 46202182 */ mul.d $f6, $f4, $f0 -/* 0219A4 80020DA4 462032A0 */ cvt.s.d $f10, $f6 -/* 0219A8 80020DA8 4616503C */ c.lt.s $f10, $f22 -/* 0219AC 80020DAC E7AA0124 */ swc1 $f10, 0x124($sp) -/* 0219B0 80020DB0 45000004 */ bc1f .L80020DC4 -/* 0219B4 80020DB4 00000000 */ nop -/* 0219B8 80020DB8 C668000C */ lwc1 $f8, 0xc($s3) -/* 0219BC 80020DBC 10000004 */ b .L80020DD0 -/* 0219C0 80020DC0 E7A80124 */ swc1 $f8, 0x124($sp) -.L80020DC4: -/* 0219C4 80020DC4 C7A40124 */ lwc1 $f4, 0x124($sp) -/* 0219C8 80020DC8 00000000 */ nop -/* 0219CC 80020DCC E664000C */ swc1 $f4, 0xc($s3) -.L80020DD0: -/* 0219D0 80020DD0 C7A60124 */ lwc1 $f6, 0x124($sp) -/* 0219D4 80020DD4 00000000 */ nop -/* 0219D8 80020DD8 4606B03E */ c.le.s $f22, $f6 -/* 0219DC 80020DDC 00000000 */ nop -/* 0219E0 80020DE0 45000029 */ bc1f .L80020E88 -/* 0219E4 80020DE4 00000000 */ nop -/* 0219E8 80020DE8 16400027 */ bnez $s2, .L80020E88 -/* 0219EC 80020DEC 25020001 */ addiu $v0, $t0, 1 -/* 0219F0 80020DF0 2401FFFF */ li $at, -1 -/* 0219F4 80020DF4 10610005 */ beq $v1, $at, .L80020E0C -/* 0219F8 80020DF8 00408025 */ move $s0, $v0 -/* 0219FC 80020DFC 0055082A */ slt $at, $v0, $s5 -/* 021A00 80020E00 14200002 */ bnez $at, .L80020E0C -/* 021A04 80020E04 00557023 */ subu $t6, $v0, $s5 -/* 021A08 80020E08 01C38021 */ addu $s0, $t6, $v1 -.L80020E0C: -/* 021A0C 80020E0C 0215082A */ slt $at, $s0, $s5 -/* 021A10 80020E10 10200016 */ beqz $at, .L80020E6C -/* 021A14 80020E14 00147880 */ sll $t7, $s4, 2 -/* 021A18 80020E18 8D380000 */ lw $t8, ($t1) -/* 021A1C 80020E1C 00107080 */ sll $t6, $s0, 2 -/* 021A20 80020E20 030FC821 */ addu $t9, $t8, $t7 -/* 021A24 80020E24 032EC021 */ addu $t8, $t9, $t6 -/* 021A28 80020E28 8F0F0000 */ lw $t7, ($t8) -/* 021A2C 80020E2C C7AE0124 */ lwc1 $f14, 0x124($sp) -/* 021A30 80020E30 8DF1003C */ lw $s1, 0x3c($t7) -/* 021A34 80020E34 00000000 */ nop -/* 021A38 80020E38 82220014 */ lb $v0, 0x14($s1) -/* 021A3C 80020E3C 00000000 */ nop -/* 021A40 80020E40 04400009 */ bltz $v0, .L80020E68 -/* 021A44 80020E44 00000000 */ nop -/* 021A48 80020E48 44825000 */ mtc1 $v0, $f10 -/* 021A4C 80020E4C 00000000 */ nop -/* 021A50 80020E50 46805220 */ cvt.s.w $f8, $f10 -/* 021A54 80020E54 46004121 */ cvt.d.s $f4, $f8 -/* 021A58 80020E58 46202182 */ mul.d $f6, $f4, $f0 -/* 021A5C 80020E5C 462032A0 */ cvt.s.d $f10, $f6 -/* 021A60 80020E60 10000002 */ b .L80020E6C -/* 021A64 80020E64 E7AA011C */ swc1 $f10, 0x11c($sp) -.L80020E68: -/* 021A68 80020E68 E7AE011C */ swc1 $f14, 0x11c($sp) -.L80020E6C: -/* 021A6C 80020E6C C7A8011C */ lwc1 $f8, 0x11c($sp) -/* 021A70 80020E70 C7A40124 */ lwc1 $f4, 0x124($sp) -/* 021A74 80020E74 00000000 */ nop -/* 021A78 80020E78 46044181 */ sub.s $f6, $f8, $f4 -/* 021A7C 80020E7C 46143282 */ mul.s $f10, $f6, $f20 -/* 021A80 80020E80 46045200 */ add.s $f8, $f10, $f4 -/* 021A84 80020E84 E6680008 */ swc1 $f8, 8($s3) -.L80020E88: -/* 021A88 80020E88 1240002F */ beqz $s2, .L80020F48 -/* 021A8C 80020E8C 00000000 */ nop -/* 021A90 80020E90 86790026 */ lh $t9, 0x26($s3) -/* 021A94 80020E94 2401FFFF */ li $at, -1 -/* 021A98 80020E98 272E0001 */ addiu $t6, $t9, 1 -/* 021A9C 80020E9C 14610014 */ bne $v1, $at, .L80020EF0 -/* 021AA0 80020EA0 A66E0026 */ sh $t6, 0x26($s3) -/* 021AA4 80020EA4 86620026 */ lh $v0, 0x26($s3) -/* 021AA8 80020EA8 0014C080 */ sll $t8, $s4, 2 -/* 021AAC 80020EAC 0055082A */ slt $at, $v0, $s5 -/* 021AB0 80020EB0 14200004 */ bnez $at, .L80020EC4 -/* 021AB4 80020EB4 0002C880 */ sll $t9, $v0, 2 -/* 021AB8 80020EB8 26B8FFFF */ addiu $t8, $s5, -1 -/* 021ABC 80020EBC 10000022 */ b .L80020F48 -/* 021AC0 80020EC0 A6780026 */ sh $t8, 0x26($s3) -.L80020EC4: -/* 021AC4 80020EC4 8D2F0000 */ lw $t7, ($t1) -/* 021AC8 80020EC8 02C02025 */ move $a0, $s6 -/* 021ACC 80020ECC 01F97021 */ addu $t6, $t7, $t9 -/* 021AD0 80020ED0 01D87821 */ addu $t7, $t6, $t8 -/* 021AD4 80020ED4 8DF90000 */ lw $t9, ($t7) -/* 021AD8 80020ED8 02603025 */ move $a2, $s3 -/* 021ADC 80020EDC 8F25003C */ lw $a1, 0x3c($t9) -/* 021AE0 80020EE0 0C008497 */ jal func_8002125C -/* 021AE4 80020EE4 02803825 */ move $a3, $s4 -/* 021AE8 80020EE8 10000018 */ b .L80020F4C -/* 021AEC 80020EEC 926F002E */ lbu $t7, 0x2e($s3) -.L80020EF0: -/* 021AF0 80020EF0 86620026 */ lh $v0, 0x26($s3) -/* 021AF4 80020EF4 246E0001 */ addiu $t6, $v1, 1 -/* 021AF8 80020EF8 02A2082A */ slt $at, $s5, $v0 -/* 021AFC 80020EFC 10200004 */ beqz $at, .L80020F10 -/* 021B00 80020F00 02C02025 */ move $a0, $s6 -/* 021B04 80020F04 A66E0026 */ sh $t6, 0x26($s3) -/* 021B08 80020F08 86620026 */ lh $v0, 0x26($s3) -/* 021B0C 80020F0C 00000000 */ nop -.L80020F10: -/* 021B10 80020F10 0055082A */ slt $at, $v0, $s5 -/* 021B14 80020F14 14200003 */ bnez $at, .L80020F24 -/* 021B18 80020F18 00409025 */ move $s2, $v0 -/* 021B1C 80020F1C 0055C023 */ subu $t8, $v0, $s5 -/* 021B20 80020F20 03039021 */ addu $s2, $t8, $v1 -.L80020F24: -/* 021B24 80020F24 8D2F0000 */ lw $t7, ($t1) -/* 021B28 80020F28 02549021 */ addu $s2, $s2, $s4 -/* 021B2C 80020F2C 0012C880 */ sll $t9, $s2, 2 -/* 021B30 80020F30 01F97021 */ addu $t6, $t7, $t9 -/* 021B34 80020F34 8DD80000 */ lw $t8, ($t6) -/* 021B38 80020F38 02603025 */ move $a2, $s3 -/* 021B3C 80020F3C 8F05003C */ lw $a1, 0x3c($t8) -/* 021B40 80020F40 0C008497 */ jal func_8002125C -/* 021B44 80020F44 02803825 */ move $a3, $s4 -.L80020F48: -/* 021B48 80020F48 926F002E */ lbu $t7, 0x2e($s3) -.L80020F4C: -/* 021B4C 80020F4C 24010003 */ li $at, 3 -/* 021B50 80020F50 15E10049 */ bne $t7, $at, .L80021078 -/* 021B54 80020F54 3C038012 */ lui $v1, %hi(D_8011AE78) # $v1, 0x8012 -/* 021B58 80020F58 8463AE78 */ lh $v1, %lo(D_8011AE78)($v1) -/* 021B5C 80020F5C 00004025 */ move $t0, $zero -/* 021B60 80020F60 18600015 */ blez $v1, .L80020FB8 -/* 021B64 80020F64 3C098012 */ lui $t1, %hi(D_8011AE74) # $t1, 0x8012 -/* 021B68 80020F68 3C068012 */ lui $a2, %hi(D_8011AE74) # $a2, 0x8012 -/* 021B6C 80020F6C 8CC6AE74 */ lw $a2, %lo(D_8011AE74)($a2) -/* 021B70 80020F70 8262003E */ lb $v0, 0x3e($s3) -/* 021B74 80020F74 8CD90000 */ lw $t9, ($a2) -/* 021B78 80020F78 00000000 */ nop -/* 021B7C 80020F7C 8F2E007C */ lw $t6, 0x7c($t9) -/* 021B80 80020F80 00000000 */ nop -/* 021B84 80020F84 104E000C */ beq $v0, $t6, .L80020FB8 -/* 021B88 80020F88 00000000 */ nop -.L80020F8C: -/* 021B8C 80020F8C 25080001 */ addiu $t0, $t0, 1 -/* 021B90 80020F90 0103082A */ slt $at, $t0, $v1 -/* 021B94 80020F94 10200008 */ beqz $at, .L80020FB8 -/* 021B98 80020F98 0008C080 */ sll $t8, $t0, 2 -/* 021B9C 80020F9C 00D87821 */ addu $t7, $a2, $t8 -/* 021BA0 80020FA0 8DF90000 */ lw $t9, ($t7) -/* 021BA4 80020FA4 00000000 */ nop -/* 021BA8 80020FA8 8F2E007C */ lw $t6, 0x7c($t9) -/* 021BAC 80020FAC 00000000 */ nop -/* 021BB0 80020FB0 144EFFF6 */ bne $v0, $t6, .L80020F8C -/* 021BB4 80020FB4 00000000 */ nop -.L80020FB8: -/* 021BB8 80020FB8 1103002F */ beq $t0, $v1, .L80021078 -/* 021BBC 80020FBC 2529AE74 */ addiu $t1, %lo(D_8011AE74) # addiu $t1, $t1, -0x518c -/* 021BC0 80020FC0 8D380000 */ lw $t8, ($t1) -/* 021BC4 80020FC4 00087880 */ sll $t7, $t0, 2 -/* 021BC8 80020FC8 030FC821 */ addu $t9, $t8, $t7 -/* 021BCC 80020FCC 8F2E0000 */ lw $t6, ($t9) -/* 021BD0 80020FD0 00000000 */ nop -/* 021BD4 80020FD4 8DC30064 */ lw $v1, 0x64($t6) -/* 021BD8 80020FD8 00000000 */ nop -/* 021BDC 80020FDC 10600026 */ beqz $v1, .L80021078 -/* 021BE0 80020FE0 00000000 */ nop -/* 021BE4 80020FE4 C466000C */ lwc1 $f6, 0xc($v1) -/* 021BE8 80020FE8 C6CA000C */ lwc1 $f10, 0xc($s6) -/* 021BEC 80020FEC 00000000 */ nop -/* 021BF0 80020FF0 460A3101 */ sub.s $f4, $f6, $f10 -/* 021BF4 80020FF4 E7A40124 */ swc1 $f4, 0x124($sp) -/* 021BF8 80020FF8 C6C60010 */ lwc1 $f6, 0x10($s6) -/* 021BFC 80020FFC C4680010 */ lwc1 $f8, 0x10($v1) -/* 021C00 80021000 00000000 */ nop -/* 021C04 80021004 46064281 */ sub.s $f10, $f8, $f6 -/* 021C08 80021008 E7AA0120 */ swc1 $f10, 0x120($sp) -/* 021C0C 8002100C C6C80014 */ lwc1 $f8, 0x14($s6) -/* 021C10 80021010 C4640014 */ lwc1 $f4, 0x14($v1) -/* 021C14 80021014 C7AA0124 */ lwc1 $f10, 0x124($sp) -/* 021C18 80021018 46082181 */ sub.s $f6, $f4, $f8 -/* 021C1C 8002101C C7A80120 */ lwc1 $f8, 0x120($sp) -/* 021C20 80021020 460A5102 */ mul.s $f4, $f10, $f10 -/* 021C24 80021024 E7A6011C */ swc1 $f6, 0x11c($sp) -/* 021C28 80021028 46084182 */ mul.s $f6, $f8, $f8 -/* 021C2C 8002102C C7A8011C */ lwc1 $f8, 0x11c($sp) -/* 021C30 80021030 46062280 */ add.s $f10, $f4, $f6 -/* 021C34 80021034 46084102 */ mul.s $f4, $f8, $f8 -/* 021C38 80021038 0C0326B4 */ jal sqrtf -/* 021C3C 8002103C 46045300 */ add.s $f12, $f10, $f4 -/* 021C40 80021040 4600B03C */ c.lt.s $f22, $f0 -/* 021C44 80021044 C7AE011C */ lwc1 $f14, 0x11c($sp) -/* 021C48 80021048 4500000B */ bc1f .L80021078 -/* 021C4C 8002104C 46000506 */ mov.s $f20, $f0 -/* 021C50 80021050 C7AC0124 */ lwc1 $f12, 0x124($sp) -/* 021C54 80021054 0C01C1D4 */ jal func_80070750 -/* 021C58 80021058 00000000 */ nop -/* 021C5C 8002105C 24018000 */ li $at, -32768 -/* 021C60 80021060 0041C021 */ addu $t8, $v0, $at -/* 021C64 80021064 A6D80000 */ sh $t8, ($s6) -/* 021C68 80021068 C7AC0120 */ lwc1 $f12, 0x120($sp) -/* 021C6C 8002106C 0C01C1D4 */ jal func_80070750 -/* 021C70 80021070 4600A386 */ mov.s $f14, $f20 -/* 021C74 80021074 A6C20002 */ sh $v0, 2($s6) -.L80021078: -/* 021C78 80021078 826F002F */ lb $t7, 0x2f($s3) -/* 021C7C 8002107C 02C02025 */ move $a0, $s6 -/* 021C80 80021080 AECF0074 */ sw $t7, 0x74($s6) -/* 021C84 80021084 8FA5019C */ lw $a1, 0x19c($sp) -/* 021C88 80021088 0C02BF0F */ jal func_800AFC3C -/* 021C8C 8002108C 00000000 */ nop -/* 021C90 80021090 00001025 */ move $v0, $zero -.L80021094: -/* 021C94 80021094 8FBF0054 */ lw $ra, 0x54($sp) -.L80021098: -/* 021C98 80021098 C7B50028 */ lwc1 $f21, 0x28($sp) -/* 021C9C 8002109C C7B4002C */ lwc1 $f20, 0x2c($sp) -/* 021CA0 800210A0 C7B70030 */ lwc1 $f23, 0x30($sp) -/* 021CA4 800210A4 C7B60034 */ lwc1 $f22, 0x34($sp) -/* 021CA8 800210A8 8FB00038 */ lw $s0, 0x38($sp) -/* 021CAC 800210AC 8FB1003C */ lw $s1, 0x3c($sp) -/* 021CB0 800210B0 8FB20040 */ lw $s2, 0x40($sp) -/* 021CB4 800210B4 8FB30044 */ lw $s3, 0x44($sp) -/* 021CB8 800210B8 8FB40048 */ lw $s4, 0x48($sp) -/* 021CBC 800210BC 8FB5004C */ lw $s5, 0x4c($sp) -/* 021CC0 800210C0 8FB60050 */ lw $s6, 0x50($sp) -/* 021CC4 800210C4 03E00008 */ jr $ra -/* 021CC8 800210C8 27BD0198 */ addiu $sp, $sp, 0x198 - -glabel func_800210CC -/* 021CCC 800210CC 3C038012 */ lui $v1, %hi(D_8011AD3D) # $v1, 0x8012 -/* 021CD0 800210D0 2463AD3D */ addiu $v1, %lo(D_8011AD3D) # addiu $v1, $v1, -0x52c3 -/* 021CD4 800210D4 80780000 */ lb $t8, ($v1) -/* 021CD8 800210D8 00047600 */ sll $t6, $a0, 0x18 -/* 021CDC 800210DC 000E7E03 */ sra $t7, $t6, 0x18 -/* 021CE0 800210E0 01F8082A */ slt $at, $t7, $t8 -/* 021CE4 800210E4 14200004 */ bnez $at, .L800210F8 -/* 021CE8 800210E8 AFA40000 */ sw $a0, ($sp) -/* 021CEC 800210EC A06F0000 */ sb $t7, ($v1) -/* 021CF0 800210F0 03E00008 */ jr $ra -/* 021CF4 800210F4 24020001 */ li $v0, 1 - -.L800210F8: -/* 021CF8 800210F8 00001025 */ move $v0, $zero -/* 021CFC 800210FC 03E00008 */ jr $ra -/* 021D00 80021100 00000000 */ nop - -glabel func_80021104 -/* 021D04 80021104 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 021D08 80021108 AFBF0014 */ sw $ra, 0x14($sp) -/* 021D0C 8002110C AFA60028 */ sw $a2, 0x28($sp) -/* 021D10 80021110 848E0048 */ lh $t6, 0x48($a0) -/* 021D14 80021114 8CA3001C */ lw $v1, 0x1c($a1) -/* 021D18 80021118 24010033 */ li $at, 51 -/* 021D1C 8002111C 15C10009 */ bne $t6, $at, .L80021144 -/* 021D20 80021120 3C028012 */ lui $v0, %hi(D_8011AD3E) # $v0, 0x8012 -/* 021D24 80021124 2442AD3E */ addiu $v0, %lo(D_8011AD3E) # addiu $v0, $v0, -0x52c2 -/* 021D28 80021128 804F0000 */ lb $t7, ($v0) -/* 021D2C 8002112C 00000000 */ nop -/* 021D30 80021130 A0AF0044 */ sb $t7, 0x44($a1) -/* 021D34 80021134 80580000 */ lb $t8, ($v0) -/* 021D38 80021138 00000000 */ nop -/* 021D3C 8002113C 27190001 */ addiu $t9, $t8, 1 -/* 021D40 80021140 A0590000 */ sb $t9, ($v0) -.L80021144: -/* 021D44 80021144 8FA80028 */ lw $t0, 0x28($sp) -/* 021D48 80021148 24010012 */ li $at, 18 -/* 021D4C 8002114C 81040022 */ lb $a0, 0x22($t0) -/* 021D50 80021150 00000000 */ nop -/* 021D54 80021154 14810020 */ bne $a0, $at, .L800211D8 -/* 021D58 80021158 2881000A */ slti $at, $a0, 0xa -/* 021D5C 8002115C 80A40030 */ lb $a0, 0x30($a1) -/* 021D60 80021160 0C01997A */ jal func_800665E8 -/* 021D64 80021164 AFA30018 */ sw $v1, 0x18($sp) -/* 021D68 80021168 0C01A73F */ jal func_80069CFC -/* 021D6C 8002116C 00000000 */ nop -/* 021D70 80021170 8FA30018 */ lw $v1, 0x18($sp) -/* 021D74 80021174 C444000C */ lwc1 $f4, 0xc($v0) -/* 021D78 80021178 340A8000 */ li $t2, 32768 -/* 021D7C 8002117C E464000C */ swc1 $f4, 0xc($v1) -/* 021D80 80021180 C4460010 */ lwc1 $f6, 0x10($v0) -/* 021D84 80021184 00000000 */ nop -/* 021D88 80021188 E4660010 */ swc1 $f6, 0x10($v1) -/* 021D8C 8002118C C4480014 */ lwc1 $f8, 0x14($v0) -/* 021D90 80021190 00000000 */ nop -/* 021D94 80021194 E4680014 */ swc1 $f8, 0x14($v1) -/* 021D98 80021198 84490000 */ lh $t1, ($v0) -/* 021D9C 8002119C 00000000 */ nop -/* 021DA0 800211A0 01495823 */ subu $t3, $t2, $t1 -/* 021DA4 800211A4 A46B0000 */ sh $t3, ($v1) -/* 021DA8 800211A8 844C0002 */ lh $t4, 2($v0) -/* 021DAC 800211AC 00000000 */ nop -/* 021DB0 800211B0 000C6823 */ negu $t5, $t4 -/* 021DB4 800211B4 A46D0002 */ sh $t5, 2($v1) -/* 021DB8 800211B8 844E0004 */ lh $t6, 4($v0) -/* 021DBC 800211BC 00000000 */ nop -/* 021DC0 800211C0 A46E0004 */ sh $t6, 4($v1) -/* 021DC4 800211C4 8FAF0028 */ lw $t7, 0x28($sp) -/* 021DC8 800211C8 00000000 */ nop -/* 021DCC 800211CC 81E40022 */ lb $a0, 0x22($t7) -/* 021DD0 800211D0 00000000 */ nop -/* 021DD4 800211D4 2881000A */ slti $at, $a0, 0xa -.L800211D8: -/* 021DD8 800211D8 1420001C */ bnez $at, .L8002124C -/* 021DDC 800211DC 28810012 */ slti $at, $a0, 0x12 -/* 021DE0 800211E0 1020001A */ beqz $at, .L8002124C -/* 021DE4 800211E4 3C188012 */ lui $t8, %hi(D_8011AEE4) # $t8, 0x8012 -/* 021DE8 800211E8 8F18AEE4 */ lw $t8, %lo(D_8011AEE4)($t8) -/* 021DEC 800211EC 0004C880 */ sll $t9, $a0, 2 -/* 021DF0 800211F0 03194021 */ addu $t0, $t8, $t9 -/* 021DF4 800211F4 8D02FFD8 */ lw $v0, -0x28($t0) -/* 021DF8 800211F8 00000000 */ nop -/* 021DFC 800211FC 10400014 */ beqz $v0, .L80021250 -/* 021E00 80021200 8FBF0014 */ lw $ra, 0x14($sp) -/* 021E04 80021204 C44A000C */ lwc1 $f10, 0xc($v0) -/* 021E08 80021208 00000000 */ nop -/* 021E0C 8002120C E46A000C */ swc1 $f10, 0xc($v1) -/* 021E10 80021210 C4500010 */ lwc1 $f16, 0x10($v0) -/* 021E14 80021214 00000000 */ nop -/* 021E18 80021218 E4700010 */ swc1 $f16, 0x10($v1) -/* 021E1C 8002121C C4520014 */ lwc1 $f18, 0x14($v0) -/* 021E20 80021220 00000000 */ nop -/* 021E24 80021224 E4720014 */ swc1 $f18, 0x14($v1) -/* 021E28 80021228 844A0000 */ lh $t2, ($v0) -/* 021E2C 8002122C 00000000 */ nop -/* 021E30 80021230 A46A0000 */ sh $t2, ($v1) -/* 021E34 80021234 84490002 */ lh $t1, 2($v0) -/* 021E38 80021238 00000000 */ nop -/* 021E3C 8002123C A4690002 */ sh $t1, 2($v1) -/* 021E40 80021240 844B0004 */ lh $t3, 4($v0) -/* 021E44 80021244 00000000 */ nop -/* 021E48 80021248 A46B0004 */ sh $t3, 4($v1) -.L8002124C: -/* 021E4C 8002124C 8FBF0014 */ lw $ra, 0x14($sp) -.L80021250: -/* 021E50 80021250 27BD0020 */ addiu $sp, $sp, 0x20 -/* 021E54 80021254 03E00008 */ jr $ra -/* 021E58 80021258 00000000 */ nop - -glabel func_8002125C -/* 021E5C 8002125C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 021E60 80021260 AFBF0014 */ sw $ra, 0x14($sp) -/* 021E64 80021264 AFA70024 */ sw $a3, 0x24($sp) -/* 021E68 80021268 80A20012 */ lb $v0, 0x12($a1) -/* 021E6C 8002126C 00000000 */ nop -/* 021E70 80021270 04400014 */ bltz $v0, .L800212C4 -/* 021E74 80021274 00000000 */ nop -/* 021E78 80021278 808E003B */ lb $t6, 0x3b($a0) -/* 021E7C 8002127C 00000000 */ nop -/* 021E80 80021280 104E0006 */ beq $v0, $t6, .L8002129C -/* 021E84 80021284 00000000 */ nop -/* 021E88 80021288 90AF0016 */ lbu $t7, 0x16($a1) -/* 021E8C 8002128C 00000000 */ nop -/* 021E90 80021290 A48F0018 */ sh $t7, 0x18($a0) -/* 021E94 80021294 80A20012 */ lb $v0, 0x12($a1) -/* 021E98 80021298 00000000 */ nop -.L8002129C: -/* 021E9C 8002129C A082003B */ sb $v0, 0x3b($a0) -/* 021EA0 800212A0 80B80017 */ lb $t8, 0x17($a1) -/* 021EA4 800212A4 00000000 */ nop -/* 021EA8 800212A8 44982000 */ mtc1 $t8, $f4 -/* 021EAC 800212AC 00000000 */ nop -/* 021EB0 800212B0 468021A0 */ cvt.s.w $f6, $f4 -/* 021EB4 800212B4 E4C60014 */ swc1 $f6, 0x14($a2) -/* 021EB8 800212B8 90B90018 */ lbu $t9, 0x18($a1) -/* 021EBC 800212BC 00000000 */ nop -/* 021EC0 800212C0 A0D9002C */ sb $t9, 0x2c($a2) -.L800212C4: -/* 021EC4 800212C4 80A20013 */ lb $v0, 0x13($a1) -/* 021EC8 800212C8 00000000 */ nop -/* 021ECC 800212CC 04400002 */ bltz $v0, .L800212D8 -/* 021ED0 800212D0 00000000 */ nop -/* 021ED4 800212D4 A0C2002F */ sb $v0, 0x2f($a2) -.L800212D8: -/* 021ED8 800212D8 84A40024 */ lh $a0, 0x24($a1) -/* 021EDC 800212DC AFA60020 */ sw $a2, 0x20($sp) -/* 021EE0 800212E0 0C00322D */ jal func_8000C8B4 -/* 021EE4 800212E4 AFA5001C */ sw $a1, 0x1c($sp) -/* 021EE8 800212E8 8FA5001C */ lw $a1, 0x1c($sp) -/* 021EEC 800212EC 8FA60020 */ lw $a2, 0x20($sp) -/* 021EF0 800212F0 240100FF */ li $at, 255 -/* 021EF4 800212F4 A4C20036 */ sh $v0, 0x36($a2) -/* 021EF8 800212F8 80A8002D */ lb $t0, 0x2d($a1) -/* 021EFC 800212FC 00000000 */ nop -/* 021F00 80021300 A0C8003F */ sb $t0, 0x3f($a2) -/* 021F04 80021304 80A90026 */ lb $t1, 0x26($a1) -/* 021F08 80021308 00000000 */ nop -/* 021F0C 8002130C A0C9003A */ sb $t1, 0x3a($a2) -/* 021F10 80021310 80AA001F */ lb $t2, 0x1f($a1) -/* 021F14 80021314 00000000 */ nop -/* 021F18 80021318 A0CA0039 */ sb $t2, 0x39($a2) -/* 021F1C 8002131C 80AB0030 */ lb $t3, 0x30($a1) -/* 021F20 80021320 00000000 */ nop -/* 021F24 80021324 A0CB0043 */ sb $t3, 0x43($a2) -/* 021F28 80021328 90AC001E */ lbu $t4, 0x1e($a1) -/* 021F2C 8002132C 00000000 */ nop -/* 021F30 80021330 A0CC0038 */ sb $t4, 0x38($a2) -/* 021F34 80021334 80AD0029 */ lb $t5, 0x29($a1) -/* 021F38 80021338 00000000 */ nop -/* 021F3C 8002133C A0CD003B */ sb $t5, 0x3b($a2) -/* 021F40 80021340 80AE002E */ lb $t6, 0x2e($a1) -/* 021F44 80021344 00000000 */ nop -/* 021F48 80021348 A0CE0040 */ sb $t6, 0x40($a2) -/* 021F4C 8002134C 80AF002F */ lb $t7, 0x2f($a1) -/* 021F50 80021350 00000000 */ nop -/* 021F54 80021354 A0CF0041 */ sb $t7, 0x41($a2) -/* 021F58 80021358 80B8002B */ lb $t8, 0x2b($a1) -/* 021F5C 8002135C 00000000 */ nop -/* 021F60 80021360 A0D8003C */ sb $t8, 0x3c($a2) -/* 021F64 80021364 90A40027 */ lbu $a0, 0x27($a1) -/* 021F68 80021368 00000000 */ nop -/* 021F6C 8002136C 10810005 */ beq $a0, $at, .L80021384 -/* 021F70 80021370 00000000 */ nop -/* 021F74 80021374 0C030C7B */ jal func_800C31EC -/* 021F78 80021378 AFA5001C */ sw $a1, 0x1c($sp) -/* 021F7C 8002137C 8FA5001C */ lw $a1, 0x1c($sp) -/* 021F80 80021380 00000000 */ nop -.L80021384: -/* 021F84 80021384 80A4002A */ lb $a0, 0x2a($a1) -/* 021F88 80021388 00000000 */ nop -/* 021F8C 8002138C 04800005 */ bltz $a0, .L800213A4 -/* 021F90 80021390 00000000 */ nop -/* 021F94 80021394 0C007917 */ jal func_8001E45C -/* 021F98 80021398 00000000 */ nop -/* 021F9C 8002139C 10000015 */ b .L800213F4 -/* 021FA0 800213A0 8FBF0014 */ lw $ra, 0x14($sp) -.L800213A4: -/* 021FA4 800213A4 80A40015 */ lb $a0, 0x15($a1) -/* 021FA8 800213A8 00000000 */ nop -/* 021FAC 800213AC 04800005 */ bltz $a0, .L800213C4 -/* 021FB0 800213B0 00000000 */ nop -/* 021FB4 800213B4 0C008500 */ jal func_80021400 -/* 021FB8 800213B8 AFA5001C */ sw $a1, 0x1c($sp) -/* 021FBC 800213BC 8FA5001C */ lw $a1, 0x1c($sp) -/* 021FC0 800213C0 00000000 */ nop -.L800213C4: -/* 021FC4 800213C4 80B90028 */ lb $t9, 0x28($a1) -/* 021FC8 800213C8 3C088012 */ lui $t0, %hi(D_8011AD21) # $t0, 0x8012 -/* 021FCC 800213CC 07200008 */ bltz $t9, .L800213F0 -/* 021FD0 800213D0 3C098012 */ lui $t1, %hi(D_8011AD22) # $t1, 0x8012 -/* 021FD4 800213D4 8108AD21 */ lb $t0, %lo(D_8011AD21)($t0) -/* 021FD8 800213D8 2529AD22 */ addiu $t1, %lo(D_8011AD22) # addiu $t1, $t1, -0x52de -/* 021FDC 800213DC 01091021 */ addu $v0, $t0, $t1 -/* 021FE0 800213E0 804A0000 */ lb $t2, ($v0) -/* 021FE4 800213E4 00000000 */ nop -/* 021FE8 800213E8 254B0001 */ addiu $t3, $t2, 1 -/* 021FEC 800213EC A04B0000 */ sb $t3, ($v0) -.L800213F0: -/* 021FF0 800213F0 8FBF0014 */ lw $ra, 0x14($sp) -.L800213F4: -/* 021FF4 800213F4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 021FF8 800213F8 03E00008 */ jr $ra -/* 021FFC 800213FC 00000000 */ nop - -glabel func_80021400 -/* 022000 80021400 3C038012 */ lui $v1, %hi(D_8011AE78) # $v1, 0x8012 -/* 022004 80021404 8463AE78 */ lh $v1, %lo(D_8011AE78)($v1) -/* 022008 80021408 308E00FF */ andi $t6, $a0, 0xff -/* 02200C 8002140C 01C02025 */ move $a0, $t6 -/* 022010 80021410 18600017 */ blez $v1, .L80021470 -/* 022014 80021414 00001025 */ move $v0, $zero -/* 022018 80021418 3C058012 */ lui $a1, %hi(D_8011AE74) # $a1, 0x8012 -/* 02201C 8002141C 8CA5AE74 */ lw $a1, %lo(D_8011AE74)($a1) -/* 022020 80021420 00000000 */ nop -/* 022024 80021424 8CAF0000 */ lw $t7, ($a1) -/* 022028 80021428 00000000 */ nop -/* 02202C 8002142C 8DF8007C */ lw $t8, 0x7c($t7) -/* 022030 80021430 00000000 */ nop -/* 022034 80021434 331900FF */ andi $t9, $t8, 0xff -/* 022038 80021438 11D9000E */ beq $t6, $t9, .L80021474 -/* 02203C 8002143C 0043082A */ slt $at, $v0, $v1 -.L80021440: -/* 022040 80021440 24420001 */ addiu $v0, $v0, 1 -/* 022044 80021444 0043082A */ slt $at, $v0, $v1 -/* 022048 80021448 10200009 */ beqz $at, .L80021470 -/* 02204C 8002144C 00024080 */ sll $t0, $v0, 2 -/* 022050 80021450 00A84821 */ addu $t1, $a1, $t0 -/* 022054 80021454 8D2A0000 */ lw $t2, ($t1) -/* 022058 80021458 00000000 */ nop -/* 02205C 8002145C 8D4B007C */ lw $t3, 0x7c($t2) -/* 022060 80021460 00000000 */ nop -/* 022064 80021464 316C00FF */ andi $t4, $t3, 0xff -/* 022068 80021468 148CFFF5 */ bne $a0, $t4, .L80021440 -/* 02206C 8002146C 00000000 */ nop -.L80021470: -/* 022070 80021470 0043082A */ slt $at, $v0, $v1 -.L80021474: -/* 022074 80021474 10200011 */ beqz $at, .L800214BC -/* 022078 80021478 3C0D8012 */ lui $t5, %hi(D_8011AE74) # $t5, 0x8012 -/* 02207C 8002147C 8DADAE74 */ lw $t5, %lo(D_8011AE74)($t5) -/* 022080 80021480 00027080 */ sll $t6, $v0, 2 -/* 022084 80021484 01AE7821 */ addu $t7, $t5, $t6 -/* 022088 80021488 8DF80000 */ lw $t8, ($t7) -/* 02208C 8002148C 00000000 */ nop -/* 022090 80021490 8F030064 */ lw $v1, 0x64($t8) -/* 022094 80021494 00000000 */ nop -/* 022098 80021498 10600008 */ beqz $v1, .L800214BC -/* 02209C 8002149C 00000000 */ nop -/* 0220A0 800214A0 8C620064 */ lw $v0, 0x64($v1) -/* 0220A4 800214A4 24080001 */ li $t0, 1 -/* 0220A8 800214A8 8459002A */ lh $t9, 0x2a($v0) -/* 0220AC 800214AC 00000000 */ nop -/* 0220B0 800214B0 07210002 */ bgez $t9, .L800214BC -/* 0220B4 800214B4 00000000 */ nop -/* 0220B8 800214B8 A448002A */ sh $t0, 0x2a($v0) -.L800214BC: -/* 0220BC 800214BC 03E00008 */ jr $ra -/* 0220C0 800214C0 00000000 */ nop - -glabel func_800214C4 -/* 0220C4 800214C4 3C0E8012 */ lui $t6, %hi(D_8011AD21) # $t6, 0x8012 -/* 0220C8 800214C8 81CEAD21 */ lb $t6, %lo(D_8011AD21)($t6) -/* 0220CC 800214CC 3C028012 */ lui $v0, 0x8012 -/* 0220D0 800214D0 000E7823 */ negu $t7, $t6 -/* 0220D4 800214D4 004F1021 */ addu $v0, $v0, $t7 -/* 0220D8 800214D8 8042AD23 */ lb $v0, -0x52dd($v0) -/* 0220DC 800214DC 03E00008 */ jr $ra -/* 0220E0 800214E0 00000000 */ nop - -glabel func_800214E4 -/* 0220E4 800214E4 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0220E8 800214E8 AFBF0014 */ sw $ra, 0x14($sp) -/* 0220EC 800214EC 8C860064 */ lw $a2, 0x64($a0) -/* 0220F0 800214F0 00803825 */ move $a3, $a0 -/* 0220F4 800214F4 80CE003A */ lb $t6, 0x3a($a2) -/* 0220F8 800214F8 00000000 */ nop -/* 0220FC 800214FC 11C00005 */ beqz $t6, .L80021514 -/* 022100 80021500 00000000 */ nop -/* 022104 80021504 848F0006 */ lh $t7, 6($a0) -/* 022108 80021508 00000000 */ nop -/* 02210C 8002150C 35F84000 */ ori $t8, $t7, 0x4000 -/* 022110 80021510 A4980006 */ sh $t8, 6($a0) -.L80021514: -/* 022114 80021514 84C20036 */ lh $v0, 0x36($a2) -/* 022118 80021518 2403FFFF */ li $v1, -1 -/* 02211C 8002151C 14620004 */ bne $v1, $v0, .L80021530 -/* 022120 80021520 00000000 */ nop -/* 022124 80021524 80C2003A */ lb $v0, 0x3a($a2) -/* 022128 80021528 10000032 */ b .L800215F4 -/* 02212C 8002152C 8FBF0014 */ lw $ra, 0x14($sp) -.L80021530: -/* 022130 80021530 04400004 */ bltz $v0, .L80021544 -/* 022134 80021534 0045C823 */ subu $t9, $v0, $a1 -/* 022138 80021538 A4D90036 */ sh $t9, 0x36($a2) -/* 02213C 8002153C 84C20036 */ lh $v0, 0x36($a2) -/* 022140 80021540 00000000 */ nop -.L80021544: -/* 022144 80021544 14620004 */ bne $v1, $v0, .L80021558 -/* 022148 80021548 2408FFFE */ li $t0, -2 -/* 02214C 8002154C A4C80036 */ sh $t0, 0x36($a2) -/* 022150 80021550 84C20036 */ lh $v0, 0x36($a2) -/* 022154 80021554 00000000 */ nop -.L80021558: -/* 022158 80021558 1C400024 */ bgtz $v0, .L800215EC -/* 02215C 8002155C 3C198012 */ lui $t9, %hi(D_8011AE74) # $t9, 0x8012 -/* 022160 80021560 84E90006 */ lh $t1, 6($a3) -/* 022164 80021564 3C058012 */ lui $a1, %hi(D_8011AE78) # $a1, 0x8012 -/* 022168 80021568 352A4000 */ ori $t2, $t1, 0x4000 -/* 02216C 8002156C A4EA0006 */ sh $t2, 6($a3) -/* 022170 80021570 84A5AE78 */ lh $a1, %lo(D_8011AE78)($a1) -/* 022174 80021574 00001025 */ move $v0, $zero -/* 022178 80021578 18A00014 */ blez $a1, .L800215CC -/* 02217C 8002157C 3C048012 */ lui $a0, %hi(D_8011AE74) # $a0, 0x8012 -/* 022180 80021580 8C84AE74 */ lw $a0, %lo(D_8011AE74)($a0) -/* 022184 80021584 84C30028 */ lh $v1, 0x28($a2) -/* 022188 80021588 8C8B0000 */ lw $t3, ($a0) -/* 02218C 8002158C 00000000 */ nop -/* 022190 80021590 8D6C007C */ lw $t4, 0x7c($t3) -/* 022194 80021594 00000000 */ nop -/* 022198 80021598 106C000C */ beq $v1, $t4, .L800215CC -/* 02219C 8002159C 00000000 */ nop -.L800215A0: -/* 0221A0 800215A0 24420001 */ addiu $v0, $v0, 1 -/* 0221A4 800215A4 0045082A */ slt $at, $v0, $a1 -/* 0221A8 800215A8 10200008 */ beqz $at, .L800215CC -/* 0221AC 800215AC 00026880 */ sll $t5, $v0, 2 -/* 0221B0 800215B0 008D7021 */ addu $t6, $a0, $t5 -/* 0221B4 800215B4 8DCF0000 */ lw $t7, ($t6) -/* 0221B8 800215B8 00000000 */ nop -/* 0221BC 800215BC 8DF8007C */ lw $t8, 0x7c($t7) -/* 0221C0 800215C0 00000000 */ nop -/* 0221C4 800215C4 1478FFF6 */ bne $v1, $t8, .L800215A0 -/* 0221C8 800215C8 00000000 */ nop -.L800215CC: -/* 0221CC 800215CC 8F39AE74 */ lw $t9, %lo(D_8011AE74)($t9) -/* 0221D0 800215D0 00024080 */ sll $t0, $v0, 2 -/* 0221D4 800215D4 03284821 */ addu $t1, $t9, $t0 -/* 0221D8 800215D8 8D240000 */ lw $a0, ($t1) -/* 0221DC 800215DC 0C007BE9 */ jal func_8001EFA4 -/* 0221E0 800215E0 00E02825 */ move $a1, $a3 -/* 0221E4 800215E4 10000002 */ b .L800215F0 -/* 0221E8 800215E8 24020001 */ li $v0, 1 -.L800215EC: -/* 0221EC 800215EC 00001025 */ move $v0, $zero -.L800215F0: -/* 0221F0 800215F0 8FBF0014 */ lw $ra, 0x14($sp) -.L800215F4: -/* 0221F4 800215F4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0221F8 800215F8 03E00008 */ jr $ra -/* 0221FC 800215FC 00000000 */ nop - -glabel func_80021600 -/* 022200 80021600 27BDFEA0 */ addiu $sp, $sp, -0x160 -/* 022204 80021604 3C0E8012 */ lui $t6, %hi(D_8011AE7A) # $t6, 0x8012 -/* 022208 80021608 85CEAE7A */ lh $t6, %lo(D_8011AE7A)($t6) -/* 02220C 8002160C AFBF0044 */ sw $ra, 0x44($sp) -/* 022210 80021610 AFBE0040 */ sw $fp, 0x40($sp) -/* 022214 80021614 AFB7003C */ sw $s7, 0x3c($sp) -/* 022218 80021618 AFB60038 */ sw $s6, 0x38($sp) -/* 02221C 8002161C AFB50034 */ sw $s5, 0x34($sp) -/* 022220 80021620 AFB40030 */ sw $s4, 0x30($sp) -/* 022224 80021624 AFB3002C */ sw $s3, 0x2c($sp) -/* 022228 80021628 AFB20028 */ sw $s2, 0x28($sp) -/* 02222C 8002162C AFB10024 */ sw $s1, 0x24($sp) -/* 022230 80021630 AFB00020 */ sw $s0, 0x20($sp) -/* 022234 80021634 E7B50018 */ swc1 $f21, 0x18($sp) -/* 022238 80021638 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 02223C 8002163C 05C10003 */ bgez $t6, .L8002164C -/* 022240 80021640 00802825 */ move $a1, $a0 -/* 022244 80021644 100003B0 */ b .L80022508 -/* 022248 80021648 24020001 */ li $v0, 1 -.L8002164C: -/* 02224C 8002164C 3C038012 */ lui $v1, %hi(D_8011AE78) # $v1, 0x8012 -/* 022250 80021650 8463AE78 */ lh $v1, %lo(D_8011AE78)($v1) -/* 022254 80021654 0000B825 */ move $s7, $zero -/* 022258 80021658 18600015 */ blez $v1, .L800216B0 -/* 02225C 8002165C 3C068012 */ lui $a2, %hi(D_8011AE74) # $a2, 0x8012 -/* 022260 80021660 24C6AE74 */ addiu $a2, %lo(D_8011AE74) # addiu $a2, $a2, -0x518c -/* 022264 80021664 8CC70000 */ lw $a3, ($a2) -/* 022268 80021668 00000000 */ nop -/* 02226C 8002166C 8CEF0000 */ lw $t7, ($a3) -/* 022270 80021670 00000000 */ nop -/* 022274 80021674 8DF8007C */ lw $t8, 0x7c($t7) -/* 022278 80021678 00000000 */ nop -/* 02227C 8002167C 10B8000C */ beq $a1, $t8, .L800216B0 -/* 022280 80021680 00000000 */ nop -.L80021684: -/* 022284 80021684 26F70001 */ addiu $s7, $s7, 1 -/* 022288 80021688 02E3082A */ slt $at, $s7, $v1 -/* 02228C 8002168C 10200008 */ beqz $at, .L800216B0 -/* 022290 80021690 0017C880 */ sll $t9, $s7, 2 -/* 022294 80021694 00F95821 */ addu $t3, $a3, $t9 -/* 022298 80021698 8D6C0000 */ lw $t4, ($t3) -/* 02229C 8002169C 00000000 */ nop -/* 0222A0 800216A0 8D8D007C */ lw $t5, 0x7c($t4) -/* 0222A4 800216A4 00000000 */ nop -/* 0222A8 800216A8 14ADFFF6 */ bne $a1, $t5, .L80021684 -/* 0222AC 800216AC 00000000 */ nop -.L800216B0: -/* 0222B0 800216B0 3C068012 */ lui $a2, %hi(D_8011AE74) # $a2, 0x8012 -/* 0222B4 800216B4 02E3082A */ slt $at, $s7, $v1 -/* 0222B8 800216B8 14200003 */ bnez $at, .L800216C8 -/* 0222BC 800216BC 24C6AE74 */ addiu $a2, %lo(D_8011AE74) # addiu $a2, $a2, -0x518c -/* 0222C0 800216C0 10000391 */ b .L80022508 -/* 0222C4 800216C4 24020001 */ li $v0, 1 -.L800216C8: -/* 0222C8 800216C8 26EE0001 */ addiu $t6, $s7, 1 -/* 0222CC 800216CC 01C3082A */ slt $at, $t6, $v1 -/* 0222D0 800216D0 10200015 */ beqz $at, .L80021728 -/* 0222D4 800216D4 24150001 */ li $s5, 1 -/* 0222D8 800216D8 8CCF0000 */ lw $t7, ($a2) -/* 0222DC 800216DC 0017C080 */ sll $t8, $s7, 2 -/* 0222E0 800216E0 01F82021 */ addu $a0, $t7, $t8 -/* 0222E4 800216E4 8C990004 */ lw $t9, 4($a0) -/* 0222E8 800216E8 02F51021 */ addu $v0, $s7, $s5 -/* 0222EC 800216EC 8F2B007C */ lw $t3, 0x7c($t9) -/* 0222F0 800216F0 00000000 */ nop -/* 0222F4 800216F4 14AB000C */ bne $a1, $t3, .L80021728 -/* 0222F8 800216F8 24420001 */ addiu $v0, $v0, 1 -.L800216FC: -/* 0222FC 800216FC 0043082A */ slt $at, $v0, $v1 -/* 022300 80021700 10200009 */ beqz $at, .L80021728 -/* 022304 80021704 26B50001 */ addiu $s5, $s5, 1 -/* 022308 80021708 00156080 */ sll $t4, $s5, 2 -/* 02230C 8002170C 008C6821 */ addu $t5, $a0, $t4 -/* 022310 80021710 8DAE0000 */ lw $t6, ($t5) -/* 022314 80021714 00000000 */ nop -/* 022318 80021718 8DCF007C */ lw $t7, 0x7c($t6) -/* 02231C 8002171C 00000000 */ nop -/* 022320 80021720 10AFFFF6 */ beq $a1, $t7, .L800216FC -/* 022324 80021724 24420001 */ addiu $v0, $v0, 1 -.L80021728: -/* 022328 80021728 2AA10002 */ slti $at, $s5, 2 -/* 02232C 8002172C 10200003 */ beqz $at, .L8002173C -/* 022330 80021730 0017C080 */ sll $t8, $s7, 2 -/* 022334 80021734 10000374 */ b .L80022508 -/* 022338 80021738 24020001 */ li $v0, 1 -.L8002173C: -/* 02233C 8002173C 8CC70000 */ lw $a3, ($a2) -/* 022340 80021740 AFB8007C */ sw $t8, 0x7c($sp) -/* 022344 80021744 00F85821 */ addu $t3, $a3, $t8 -/* 022348 80021748 8D620000 */ lw $v0, ($t3) -/* 02234C 8002174C 27B20124 */ addiu $s2, $sp, 0x124 -/* 022350 80021750 8C4C0064 */ lw $t4, 0x64($v0) -/* 022354 80021754 27B30110 */ addiu $s3, $sp, 0x110 -/* 022358 80021758 15800003 */ bnez $t4, .L80021768 -/* 02235C 8002175C AFAC0154 */ sw $t4, 0x154($sp) -/* 022360 80021760 10000369 */ b .L80022508 -/* 022364 80021764 24020001 */ li $v0, 1 -.L80021768: -/* 022368 80021768 8FAE0154 */ lw $t6, 0x154($sp) -/* 02236C 8002176C 3C013FF0 */ li $at, 0x3FF00000 # 1.875000 -/* 022370 80021770 8DCF0064 */ lw $t7, 0x64($t6) -/* 022374 80021774 44812800 */ mtc1 $at, $f5 -/* 022378 80021778 AFAF015C */ sw $t7, 0x15c($sp) -/* 02237C 8002177C 8C580040 */ lw $t8, 0x40($v0) -/* 022380 80021780 44802000 */ mtc1 $zero, $f4 -/* 022384 80021784 C706000C */ lwc1 $f6, 0xc($t8) -/* 022388 80021788 0017C880 */ sll $t9, $s7, 2 -/* 02238C 8002178C 46003221 */ cvt.d.s $f8, $f6 -/* 022390 80021790 00000000 */ nop -/* 022394 80021794 46282283 */ div.d $f10, $f4, $f8 -/* 022398 80021798 00F95821 */ addu $t3, $a3, $t9 -/* 02239C 8002179C 00156080 */ sll $t4, $s5, 2 -/* 0223A0 800217A0 016C6821 */ addu $t5, $t3, $t4 -/* 0223A4 800217A4 2AA10003 */ slti $at, $s5, 3 -/* 0223A8 800217A8 8FB8015C */ lw $t8, 0x15c($sp) -/* 0223AC 800217AC 2403FFFF */ li $v1, -1 -/* 0223B0 800217B0 27B400FC */ addiu $s4, $sp, 0xfc -/* 0223B4 800217B4 27BE00BC */ addiu $fp, $sp, 0xbc -/* 0223B8 800217B8 27B600A8 */ addiu $s6, $sp, 0xa8 -/* 0223BC 800217BC 27A90094 */ addiu $t1, $sp, 0x94 -/* 0223C0 800217C0 27B100D0 */ addiu $s1, $sp, 0xd0 -/* 0223C4 800217C4 462051A0 */ cvt.s.d $f6, $f10 -/* 0223C8 800217C8 E7A60090 */ swc1 $f6, 0x90($sp) -/* 0223CC 800217CC 8DAEFFFC */ lw $t6, -4($t5) -/* 0223D0 800217D0 00000000 */ nop -/* 0223D4 800217D4 8DC5003C */ lw $a1, 0x3c($t6) -/* 0223D8 800217D8 14200008 */ bnez $at, .L800217FC -/* 0223DC 800217DC 00000000 */ nop -/* 0223E0 800217E0 80A2001D */ lb $v0, 0x1d($a1) -/* 0223E4 800217E4 26AFFFFF */ addiu $t7, $s5, -1 -/* 0223E8 800217E8 04400004 */ bltz $v0, .L800217FC -/* 0223EC 800217EC 004F082A */ slt $at, $v0, $t7 -/* 0223F0 800217F0 10200002 */ beqz $at, .L800217FC -/* 0223F4 800217F4 00000000 */ nop -/* 0223F8 800217F8 00401825 */ move $v1, $v0 -.L800217FC: -/* 0223FC 800217FC 87100026 */ lh $s0, 0x26($t8) -/* 022400 80021800 AFA30138 */ sw $v1, 0x138($sp) -/* 022404 80021804 2610FFFF */ addiu $s0, $s0, -1 -.L80021808: -/* 022408 80021808 2401FFFF */ li $at, -1 -/* 02240C 8002180C 1601006B */ bne $s0, $at, .L800219BC -/* 022410 80021810 0215082A */ slt $at, $s0, $s5 -/* 022414 80021814 8FB90138 */ lw $t9, 0x138($sp) -/* 022418 80021818 02F55821 */ addu $t3, $s7, $s5 -/* 02241C 8002181C 13200039 */ beqz $t9, .L80021904 -/* 022420 80021820 000B6080 */ sll $t4, $t3, 2 -/* 022424 80021824 8FAB007C */ lw $t3, 0x7c($sp) -/* 022428 80021828 00000000 */ nop -/* 02242C 8002182C 00EB1021 */ addu $v0, $a3, $t3 -/* 022430 80021830 8C4C0000 */ lw $t4, ($v0) -/* 022434 80021834 8C4D0004 */ lw $t5, 4($v0) -/* 022438 80021838 C580000C */ lwc1 $f0, 0xc($t4) -/* 02243C 8002183C C5A4000C */ lwc1 $f4, 0xc($t5) -/* 022440 80021840 00000000 */ nop -/* 022444 80021844 46040201 */ sub.s $f8, $f0, $f4 -/* 022448 80021848 46004280 */ add.s $f10, $f8, $f0 -/* 02244C 8002184C E64A0000 */ swc1 $f10, ($s2) -/* 022450 80021850 8C4E0000 */ lw $t6, ($v0) -/* 022454 80021854 8C4F0004 */ lw $t7, 4($v0) -/* 022458 80021858 C5C20010 */ lwc1 $f2, 0x10($t6) -/* 02245C 8002185C C5E60010 */ lwc1 $f6, 0x10($t7) -/* 022460 80021860 00000000 */ nop -/* 022464 80021864 46061101 */ sub.s $f4, $f2, $f6 -/* 022468 80021868 46022200 */ add.s $f8, $f4, $f2 -/* 02246C 8002186C E6680000 */ swc1 $f8, ($s3) -/* 022470 80021870 8C580000 */ lw $t8, ($v0) -/* 022474 80021874 8C590004 */ lw $t9, 4($v0) -/* 022478 80021878 C70C0014 */ lwc1 $f12, 0x14($t8) -/* 02247C 8002187C C72A0014 */ lwc1 $f10, 0x14($t9) -/* 022480 80021880 00000000 */ nop -/* 022484 80021884 460A6181 */ sub.s $f6, $f12, $f10 -/* 022488 80021888 460C3100 */ add.s $f4, $f6, $f12 -/* 02248C 8002188C E6840000 */ swc1 $f4, ($s4) -/* 022490 80021890 8C4B0000 */ lw $t3, ($v0) -/* 022494 80021894 00000000 */ nop -/* 022498 80021898 856C0000 */ lh $t4, ($t3) -/* 02249C 8002189C 00000000 */ nop -/* 0224A0 800218A0 448C4000 */ mtc1 $t4, $f8 -/* 0224A4 800218A4 00000000 */ nop -/* 0224A8 800218A8 468042A0 */ cvt.s.w $f10, $f8 -/* 0224AC 800218AC E7CA0000 */ swc1 $f10, ($fp) -/* 0224B0 800218B0 8C4D0000 */ lw $t5, ($v0) -/* 0224B4 800218B4 00000000 */ nop -/* 0224B8 800218B8 85AE0002 */ lh $t6, 2($t5) -/* 0224BC 800218BC 00000000 */ nop -/* 0224C0 800218C0 448E3000 */ mtc1 $t6, $f6 -/* 0224C4 800218C4 00000000 */ nop -/* 0224C8 800218C8 46803120 */ cvt.s.w $f4, $f6 -/* 0224CC 800218CC E6C40000 */ swc1 $f4, ($s6) -/* 0224D0 800218D0 8C4F0000 */ lw $t7, ($v0) -/* 0224D4 800218D4 00000000 */ nop -/* 0224D8 800218D8 85F80004 */ lh $t8, 4($t7) -/* 0224DC 800218DC 00000000 */ nop -/* 0224E0 800218E0 44984000 */ mtc1 $t8, $f8 -/* 0224E4 800218E4 00000000 */ nop -/* 0224E8 800218E8 468042A0 */ cvt.s.w $f10, $f8 -/* 0224EC 800218EC E52A0000 */ swc1 $f10, ($t1) -/* 0224F0 800218F0 8C590000 */ lw $t9, ($v0) -/* 0224F4 800218F4 00000000 */ nop -/* 0224F8 800218F8 C7260008 */ lwc1 $f6, 8($t9) -/* 0224FC 800218FC 100000F5 */ b .L80021CD4 -/* 022500 80021900 E6260000 */ swc1 $f6, ($s1) -.L80021904: -/* 022504 80021904 00EC1021 */ addu $v0, $a3, $t4 -/* 022508 80021908 8C4DFFFC */ lw $t5, -4($v0) -/* 02250C 8002190C 00000000 */ nop -/* 022510 80021910 C5A4000C */ lwc1 $f4, 0xc($t5) -/* 022514 80021914 00000000 */ nop -/* 022518 80021918 E6440000 */ swc1 $f4, ($s2) -/* 02251C 8002191C 8C4EFFFC */ lw $t6, -4($v0) -/* 022520 80021920 00000000 */ nop -/* 022524 80021924 C5C80010 */ lwc1 $f8, 0x10($t6) -/* 022528 80021928 00000000 */ nop -/* 02252C 8002192C E6680000 */ swc1 $f8, ($s3) -/* 022530 80021930 8C4FFFFC */ lw $t7, -4($v0) -/* 022534 80021934 00000000 */ nop -/* 022538 80021938 C5EA0014 */ lwc1 $f10, 0x14($t7) -/* 02253C 8002193C 00000000 */ nop -/* 022540 80021940 E68A0000 */ swc1 $f10, ($s4) -/* 022544 80021944 8C58FFFC */ lw $t8, -4($v0) -/* 022548 80021948 00000000 */ nop -/* 02254C 8002194C 87190000 */ lh $t9, ($t8) -/* 022550 80021950 00000000 */ nop -/* 022554 80021954 44993000 */ mtc1 $t9, $f6 -/* 022558 80021958 00000000 */ nop -/* 02255C 8002195C 46803120 */ cvt.s.w $f4, $f6 -/* 022560 80021960 E7C40000 */ swc1 $f4, ($fp) -/* 022564 80021964 8C4BFFFC */ lw $t3, -4($v0) -/* 022568 80021968 00000000 */ nop -/* 02256C 8002196C 856C0002 */ lh $t4, 2($t3) -/* 022570 80021970 00000000 */ nop -/* 022574 80021974 448C4000 */ mtc1 $t4, $f8 -/* 022578 80021978 00000000 */ nop -/* 02257C 8002197C 468042A0 */ cvt.s.w $f10, $f8 -/* 022580 80021980 E6CA0000 */ swc1 $f10, ($s6) -/* 022584 80021984 8C4DFFFC */ lw $t5, -4($v0) -/* 022588 80021988 00000000 */ nop -/* 02258C 8002198C 85AE0004 */ lh $t6, 4($t5) -/* 022590 80021990 00000000 */ nop -/* 022594 80021994 448E3000 */ mtc1 $t6, $f6 -/* 022598 80021998 00000000 */ nop -/* 02259C 8002199C 46803120 */ cvt.s.w $f4, $f6 -/* 0225A0 800219A0 E5240000 */ swc1 $f4, ($t1) -/* 0225A4 800219A4 8C4FFFFC */ lw $t7, -4($v0) -/* 0225A8 800219A8 00000000 */ nop -/* 0225AC 800219AC C5E80008 */ lwc1 $f8, 8($t7) -/* 0225B0 800219B0 100000C8 */ b .L80021CD4 -/* 0225B4 800219B4 E6280000 */ swc1 $f8, ($s1) -/* 0225B8 800219B8 0215082A */ slt $at, $s0, $s5 -.L800219BC: -/* 0225BC 800219BC 14200082 */ bnez $at, .L80021BC8 -/* 0225C0 800219C0 02173021 */ addu $a2, $s0, $s7 -/* 0225C4 800219C4 8FB80138 */ lw $t8, 0x138($sp) -/* 0225C8 800219C8 2401FFFF */ li $at, -1 -/* 0225CC 800219CC 1701004B */ bne $t8, $at, .L80021AFC -/* 0225D0 800219D0 02B71021 */ addu $v0, $s5, $s7 -/* 0225D4 800219D4 0002C880 */ sll $t9, $v0, 2 -/* 0225D8 800219D8 00F95821 */ addu $t3, $a3, $t9 -/* 0225DC 800219DC 8D6CFFFC */ lw $t4, -4($t3) -/* 0225E0 800219E0 00023080 */ sll $a2, $v0, 2 -/* 0225E4 800219E4 8D85003C */ lw $a1, 0x3c($t4) -/* 0225E8 800219E8 24010001 */ li $at, 1 -/* 0225EC 800219EC 80AD0022 */ lb $t5, 0x22($a1) -/* 0225F0 800219F0 26B0FFFF */ addiu $s0, $s5, -1 -/* 0225F4 800219F4 15A10010 */ bne $t5, $at, .L80021A38 -/* 0225F8 800219F8 24C6FFFC */ addiu $a2, $a2, -4 -/* 0225FC 800219FC 8FAE015C */ lw $t6, 0x15c($sp) -/* 022600 80021A00 00000000 */ nop -/* 022604 80021A04 81C40030 */ lb $a0, 0x30($t6) -/* 022608 80021A08 AFA9005C */ sw $t1, 0x5c($sp) -/* 02260C 80021A0C 0C01997A */ jal func_800665E8 -/* 022610 80021A10 AFA6004C */ sw $a2, 0x4c($sp) -/* 022614 80021A14 0C01A73F */ jal func_80069CFC -/* 022618 80021A18 00000000 */ nop -/* 02261C 80021A1C 3C078012 */ lui $a3, %hi(D_8011AE74) # $a3, 0x8012 -/* 022620 80021A20 8CE7AE74 */ lw $a3, %lo(D_8011AE74)($a3) -/* 022624 80021A24 8FA6004C */ lw $a2, 0x4c($sp) -/* 022628 80021A28 8FA9005C */ lw $t1, 0x5c($sp) -/* 02262C 80021A2C 00401825 */ move $v1, $v0 -/* 022630 80021A30 10000004 */ b .L80021A44 -/* 022634 80021A34 00E62021 */ addu $a0, $a3, $a2 -.L80021A38: -/* 022638 80021A38 00E62021 */ addu $a0, $a3, $a2 -/* 02263C 80021A3C 8C830000 */ lw $v1, ($a0) -/* 022640 80021A40 00000000 */ nop -.L80021A44: -/* 022644 80021A44 8C8FFFFC */ lw $t7, -4($a0) -/* 022648 80021A48 C460000C */ lwc1 $f0, 0xc($v1) -/* 02264C 80021A4C C5EA000C */ lwc1 $f10, 0xc($t7) -/* 022650 80021A50 00000000 */ nop -/* 022654 80021A54 460A0181 */ sub.s $f6, $f0, $f10 -/* 022658 80021A58 46003100 */ add.s $f4, $f6, $f0 -/* 02265C 80021A5C E6440000 */ swc1 $f4, ($s2) -/* 022660 80021A60 8C98FFFC */ lw $t8, -4($a0) -/* 022664 80021A64 C4620010 */ lwc1 $f2, 0x10($v1) -/* 022668 80021A68 C7080010 */ lwc1 $f8, 0x10($t8) -/* 02266C 80021A6C 00000000 */ nop -/* 022670 80021A70 46081281 */ sub.s $f10, $f2, $f8 -/* 022674 80021A74 46025180 */ add.s $f6, $f10, $f2 -/* 022678 80021A78 E6660000 */ swc1 $f6, ($s3) -/* 02267C 80021A7C 8C99FFFC */ lw $t9, -4($a0) -/* 022680 80021A80 C46C0014 */ lwc1 $f12, 0x14($v1) -/* 022684 80021A84 C7240014 */ lwc1 $f4, 0x14($t9) -/* 022688 80021A88 00000000 */ nop -/* 02268C 80021A8C 46046201 */ sub.s $f8, $f12, $f4 -/* 022690 80021A90 460C4280 */ add.s $f10, $f8, $f12 -/* 022694 80021A94 E68A0000 */ swc1 $f10, ($s4) -/* 022698 80021A98 846B0002 */ lh $t3, 2($v1) -/* 02269C 80021A9C 00000000 */ nop -/* 0226A0 80021AA0 448B3000 */ mtc1 $t3, $f6 -/* 0226A4 80021AA4 00000000 */ nop -/* 0226A8 80021AA8 46803120 */ cvt.s.w $f4, $f6 -/* 0226AC 80021AAC E6C40000 */ swc1 $f4, ($s6) -/* 0226B0 80021AB0 846C0004 */ lh $t4, 4($v1) -/* 0226B4 80021AB4 00000000 */ nop -/* 0226B8 80021AB8 448C4000 */ mtc1 $t4, $f8 -/* 0226BC 80021ABC 00000000 */ nop -/* 0226C0 80021AC0 468042A0 */ cvt.s.w $f10, $f8 -/* 0226C4 80021AC4 E52A0000 */ swc1 $f10, ($t1) -/* 0226C8 80021AC8 8C830000 */ lw $v1, ($a0) -/* 0226CC 80021ACC 00000000 */ nop -/* 0226D0 80021AD0 846D0000 */ lh $t5, ($v1) -/* 0226D4 80021AD4 00000000 */ nop -/* 0226D8 80021AD8 448D3000 */ mtc1 $t5, $f6 -/* 0226DC 80021ADC 00000000 */ nop -/* 0226E0 80021AE0 46803120 */ cvt.s.w $f4, $f6 -/* 0226E4 80021AE4 E7C40000 */ swc1 $f4, ($fp) -/* 0226E8 80021AE8 8C8E0000 */ lw $t6, ($a0) -/* 0226EC 80021AEC 00000000 */ nop -/* 0226F0 80021AF0 C5C80008 */ lwc1 $f8, 8($t6) -/* 0226F4 80021AF4 10000077 */ b .L80021CD4 -/* 0226F8 80021AF8 E6280000 */ swc1 $f8, ($s1) -.L80021AFC: -/* 0226FC 80021AFC 8FAF0138 */ lw $t7, 0x138($sp) -/* 022700 80021B00 00000000 */ nop -/* 022704 80021B04 02EFC021 */ addu $t8, $s7, $t7 -/* 022708 80021B08 0310C821 */ addu $t9, $t8, $s0 -/* 02270C 80021B0C 03355823 */ subu $t3, $t9, $s5 -/* 022710 80021B10 000B6080 */ sll $t4, $t3, 2 -/* 022714 80021B14 00EC1021 */ addu $v0, $a3, $t4 -/* 022718 80021B18 8C4D0000 */ lw $t5, ($v0) -/* 02271C 80021B1C 00000000 */ nop -/* 022720 80021B20 C5AA000C */ lwc1 $f10, 0xc($t5) -/* 022724 80021B24 00000000 */ nop -/* 022728 80021B28 E64A0000 */ swc1 $f10, ($s2) -/* 02272C 80021B2C 8C4E0000 */ lw $t6, ($v0) -/* 022730 80021B30 00000000 */ nop -/* 022734 80021B34 C5C60010 */ lwc1 $f6, 0x10($t6) -/* 022738 80021B38 00000000 */ nop -/* 02273C 80021B3C E6660000 */ swc1 $f6, ($s3) -/* 022740 80021B40 8C4F0000 */ lw $t7, ($v0) -/* 022744 80021B44 00000000 */ nop -/* 022748 80021B48 C5E40014 */ lwc1 $f4, 0x14($t7) -/* 02274C 80021B4C 00000000 */ nop -/* 022750 80021B50 E6840000 */ swc1 $f4, ($s4) -/* 022754 80021B54 8C580000 */ lw $t8, ($v0) -/* 022758 80021B58 00000000 */ nop -/* 02275C 80021B5C 87190000 */ lh $t9, ($t8) -/* 022760 80021B60 00000000 */ nop -/* 022764 80021B64 44994000 */ mtc1 $t9, $f8 -/* 022768 80021B68 00000000 */ nop -/* 02276C 80021B6C 468042A0 */ cvt.s.w $f10, $f8 -/* 022770 80021B70 E7CA0000 */ swc1 $f10, ($fp) -/* 022774 80021B74 8C4B0000 */ lw $t3, ($v0) -/* 022778 80021B78 00000000 */ nop -/* 02277C 80021B7C 856C0002 */ lh $t4, 2($t3) -/* 022780 80021B80 00000000 */ nop -/* 022784 80021B84 448C3000 */ mtc1 $t4, $f6 -/* 022788 80021B88 00000000 */ nop -/* 02278C 80021B8C 46803120 */ cvt.s.w $f4, $f6 -/* 022790 80021B90 E6C40000 */ swc1 $f4, ($s6) -/* 022794 80021B94 8C4D0000 */ lw $t5, ($v0) -/* 022798 80021B98 00000000 */ nop -/* 02279C 80021B9C 85AE0004 */ lh $t6, 4($t5) -/* 0227A0 80021BA0 00000000 */ nop -/* 0227A4 80021BA4 448E4000 */ mtc1 $t6, $f8 -/* 0227A8 80021BA8 00000000 */ nop -/* 0227AC 80021BAC 468042A0 */ cvt.s.w $f10, $f8 -/* 0227B0 80021BB0 E52A0000 */ swc1 $f10, ($t1) -/* 0227B4 80021BB4 8C4F0000 */ lw $t7, ($v0) -/* 0227B8 80021BB8 00000000 */ nop -/* 0227BC 80021BBC C5E60008 */ lwc1 $f6, 8($t7) -/* 0227C0 80021BC0 10000044 */ b .L80021CD4 -/* 0227C4 80021BC4 E6260000 */ swc1 $f6, ($s1) -.L80021BC8: -/* 0227C8 80021BC8 0006C080 */ sll $t8, $a2, 2 -/* 0227CC 80021BCC 00F82021 */ addu $a0, $a3, $t8 -/* 0227D0 80021BD0 8C820000 */ lw $v0, ($a0) -/* 0227D4 80021BD4 24010001 */ li $at, 1 -/* 0227D8 80021BD8 8C45003C */ lw $a1, 0x3c($v0) -/* 0227DC 80021BDC 8FAB015C */ lw $t3, 0x15c($sp) -/* 0227E0 80021BE0 80B90022 */ lb $t9, 0x22($a1) -/* 0227E4 80021BE4 00401825 */ move $v1, $v0 -/* 0227E8 80021BE8 17210010 */ bne $t9, $at, .L80021C2C -/* 0227EC 80021BEC 00000000 */ nop -/* 0227F0 80021BF0 81640030 */ lb $a0, 0x30($t3) -/* 0227F4 80021BF4 AFA9005C */ sw $t1, 0x5c($sp) -/* 0227F8 80021BF8 AFB80074 */ sw $t8, 0x74($sp) -/* 0227FC 80021BFC 0C01997A */ jal func_800665E8 -/* 022800 80021C00 AFA50150 */ sw $a1, 0x150($sp) -/* 022804 80021C04 0C01A73F */ jal func_80069CFC -/* 022808 80021C08 00000000 */ nop -/* 02280C 80021C0C 3C078012 */ lui $a3, %hi(D_8011AE74) # $a3, 0x8012 -/* 022810 80021C10 8CE7AE74 */ lw $a3, %lo(D_8011AE74)($a3) -/* 022814 80021C14 8FA60074 */ lw $a2, 0x74($sp) -/* 022818 80021C18 8FA50150 */ lw $a1, 0x150($sp) -/* 02281C 80021C1C 8FA9005C */ lw $t1, 0x5c($sp) -/* 022820 80021C20 00401825 */ move $v1, $v0 -/* 022824 80021C24 10000001 */ b .L80021C2C -/* 022828 80021C28 00E62021 */ addu $a0, $a3, $a2 -.L80021C2C: -/* 02282C 80021C2C C464000C */ lwc1 $f4, 0xc($v1) -/* 022830 80021C30 24010001 */ li $at, 1 -/* 022834 80021C34 E6440000 */ swc1 $f4, ($s2) -/* 022838 80021C38 C4680010 */ lwc1 $f8, 0x10($v1) -/* 02283C 80021C3C 00000000 */ nop -/* 022840 80021C40 E6680000 */ swc1 $f8, ($s3) -/* 022844 80021C44 C46A0014 */ lwc1 $f10, 0x14($v1) -/* 022848 80021C48 00000000 */ nop -/* 02284C 80021C4C E68A0000 */ swc1 $f10, ($s4) -/* 022850 80021C50 846C0002 */ lh $t4, 2($v1) -/* 022854 80021C54 00000000 */ nop -/* 022858 80021C58 448C3000 */ mtc1 $t4, $f6 -/* 02285C 80021C5C 00000000 */ nop -/* 022860 80021C60 46803120 */ cvt.s.w $f4, $f6 -/* 022864 80021C64 E6C40000 */ swc1 $f4, ($s6) -/* 022868 80021C68 846D0004 */ lh $t5, 4($v1) -/* 02286C 80021C6C 00000000 */ nop -/* 022870 80021C70 448D4000 */ mtc1 $t5, $f8 -/* 022874 80021C74 00000000 */ nop -/* 022878 80021C78 468042A0 */ cvt.s.w $f10, $f8 -/* 02287C 80021C7C E52A0000 */ swc1 $f10, ($t1) -/* 022880 80021C80 8C830000 */ lw $v1, ($a0) -/* 022884 80021C84 00000000 */ nop -/* 022888 80021C88 846E0000 */ lh $t6, ($v1) -/* 02288C 80021C8C 00000000 */ nop -/* 022890 80021C90 448E3000 */ mtc1 $t6, $f6 -/* 022894 80021C94 00000000 */ nop -/* 022898 80021C98 46803120 */ cvt.s.w $f4, $f6 -/* 02289C 80021C9C E7C40000 */ swc1 $f4, ($fp) -/* 0228A0 80021CA0 80AF0022 */ lb $t7, 0x22($a1) -/* 0228A4 80021CA4 00000000 */ nop -/* 0228A8 80021CA8 15E10005 */ bne $t7, $at, .L80021CC0 -/* 0228AC 80021CAC 00000000 */ nop -/* 0228B0 80021CB0 C6C80000 */ lwc1 $f8, ($s6) -/* 0228B4 80021CB4 00000000 */ nop -/* 0228B8 80021CB8 46004287 */ neg.s $f10, $f8 -/* 0228BC 80021CBC E6CA0000 */ swc1 $f10, ($s6) -.L80021CC0: -/* 0228C0 80021CC0 8C980000 */ lw $t8, ($a0) -/* 0228C4 80021CC4 00000000 */ nop -/* 0228C8 80021CC8 C7060008 */ lwc1 $f6, 8($t8) -/* 0228CC 80021CCC 00000000 */ nop -/* 0228D0 80021CD0 E6260000 */ swc1 $f6, ($s1) -.L80021CD4: -/* 0228D4 80021CD4 26310004 */ addiu $s1, $s1, 4 -/* 0228D8 80021CD8 27B900E4 */ addiu $t9, $sp, 0xe4 -/* 0228DC 80021CDC 0239082B */ sltu $at, $s1, $t9 -/* 0228E0 80021CE0 26520004 */ addiu $s2, $s2, 4 -/* 0228E4 80021CE4 26730004 */ addiu $s3, $s3, 4 -/* 0228E8 80021CE8 26940004 */ addiu $s4, $s4, 4 -/* 0228EC 80021CEC 27DE0004 */ addiu $fp, $fp, 4 -/* 0228F0 80021CF0 26D60004 */ addiu $s6, $s6, 4 -/* 0228F4 80021CF4 25290004 */ addiu $t1, $t1, 4 -/* 0228F8 80021CF8 1420FEC3 */ bnez $at, .L80021808 -/* 0228FC 80021CFC 26100001 */ addiu $s0, $s0, 1 -/* 022900 80021D00 8FAB015C */ lw $t3, 0x15c($sp) -/* 022904 80021D04 27B00124 */ addiu $s0, $sp, 0x124 -/* 022908 80021D08 816C003F */ lb $t4, 0x3f($t3) -/* 02290C 80021D0C C5600000 */ lwc1 $f0, ($t3) -/* 022910 80021D10 15800015 */ bnez $t4, .L80021D68 -/* 022914 80021D14 02002025 */ move $a0, $s0 -/* 022918 80021D18 27B00124 */ addiu $s0, $sp, 0x124 -/* 02291C 80021D1C 44060000 */ mfc1 $a2, $f0 -/* 022920 80021D20 02002025 */ move $a0, $s0 -/* 022924 80021D24 00002825 */ move $a1, $zero -/* 022928 80021D28 0C008950 */ jal func_80022540 -/* 02292C 80021D2C E7A000EC */ swc1 $f0, 0xec($sp) -/* 022930 80021D30 27B10110 */ addiu $s1, $sp, 0x110 -/* 022934 80021D34 8FA600EC */ lw $a2, 0xec($sp) -/* 022938 80021D38 02202025 */ move $a0, $s1 -/* 02293C 80021D3C 00002825 */ move $a1, $zero -/* 022940 80021D40 0C008950 */ jal func_80022540 -/* 022944 80021D44 E7A000F8 */ swc1 $f0, 0xf8($sp) -/* 022948 80021D48 27B200FC */ addiu $s2, $sp, 0xfc -/* 02294C 80021D4C 8FA600EC */ lw $a2, 0xec($sp) -/* 022950 80021D50 02402025 */ move $a0, $s2 -/* 022954 80021D54 00002825 */ move $a1, $zero -/* 022958 80021D58 0C008950 */ jal func_80022540 -/* 02295C 80021D5C E7A000F4 */ swc1 $f0, 0xf4($sp) -/* 022960 80021D60 10000012 */ b .L80021DAC -/* 022964 80021D64 E7A000F0 */ swc1 $f0, 0xf0($sp) -.L80021D68: -/* 022968 80021D68 44060000 */ mfc1 $a2, $f0 -/* 02296C 80021D6C 00002825 */ move $a1, $zero -/* 022970 80021D70 0C008A22 */ jal func_80022888 -/* 022974 80021D74 E7A000EC */ swc1 $f0, 0xec($sp) -/* 022978 80021D78 27B10110 */ addiu $s1, $sp, 0x110 -/* 02297C 80021D7C 8FA600EC */ lw $a2, 0xec($sp) -/* 022980 80021D80 02202025 */ move $a0, $s1 -/* 022984 80021D84 00002825 */ move $a1, $zero -/* 022988 80021D88 0C008A22 */ jal func_80022888 -/* 02298C 80021D8C E7A000F8 */ swc1 $f0, 0xf8($sp) -/* 022990 80021D90 27B200FC */ addiu $s2, $sp, 0xfc -/* 022994 80021D94 8FA600EC */ lw $a2, 0xec($sp) -/* 022998 80021D98 02402025 */ move $a0, $s2 -/* 02299C 80021D9C 00002825 */ move $a1, $zero -/* 0229A0 80021DA0 0C008A22 */ jal func_80022888 -/* 0229A4 80021DA4 E7A000F4 */ swc1 $f0, 0xf4($sp) -/* 0229A8 80021DA8 E7A000F0 */ swc1 $f0, 0xf0($sp) -.L80021DAC: -/* 0229AC 80021DAC 8FA40154 */ lw $a0, 0x154($sp) -/* 0229B0 80021DB0 C7A400F8 */ lwc1 $f4, 0xf8($sp) -/* 0229B4 80021DB4 C488000C */ lwc1 $f8, 0xc($a0) -/* 0229B8 80021DB8 C7A600F4 */ lwc1 $f6, 0xf4($sp) -/* 0229BC 80021DBC 46082281 */ sub.s $f10, $f4, $f8 -/* 0229C0 80021DC0 E7AA00F8 */ swc1 $f10, 0xf8($sp) -/* 0229C4 80021DC4 C4840010 */ lwc1 $f4, 0x10($a0) -/* 0229C8 80021DC8 44055000 */ mfc1 $a1, $f10 -/* 0229CC 80021DCC 46043201 */ sub.s $f8, $f6, $f4 -/* 0229D0 80021DD0 C7A600F0 */ lwc1 $f6, 0xf0($sp) -/* 0229D4 80021DD4 E7A800F4 */ swc1 $f8, 0xf4($sp) -/* 0229D8 80021DD8 C4840014 */ lwc1 $f4, 0x14($a0) -/* 0229DC 80021DDC 44064000 */ mfc1 $a2, $f8 -/* 0229E0 80021DE0 46043181 */ sub.s $f6, $f6, $f4 -/* 0229E4 80021DE4 44073000 */ mfc1 $a3, $f6 -/* 0229E8 80021DE8 0C00455C */ jal func_80011570 -/* 0229EC 80021DEC E7A600F0 */ swc1 $f6, 0xf0($sp) -/* 0229F0 80021DF0 8FA600EC */ lw $a2, 0xec($sp) -/* 0229F4 80021DF4 27A400D0 */ addiu $a0, $sp, 0xd0 -/* 0229F8 80021DF8 0C008950 */ jal func_80022540 -/* 0229FC 80021DFC 00002825 */ move $a1, $zero -/* 022A00 80021E00 C7A40090 */ lwc1 $f4, 0x90($sp) -/* 022A04 80021E04 8FAE0154 */ lw $t6, 0x154($sp) -/* 022A08 80021E08 46040282 */ mul.s $f10, $f0, $f4 -/* 022A0C 80021E0C 8DCF0040 */ lw $t7, 0x40($t6) -/* 022A10 80021E10 24010001 */ li $at, 1 -/* 022A14 80021E14 C5E8000C */ lwc1 $f8, 0xc($t7) -/* 022A18 80021E18 00000000 */ nop -/* 022A1C 80021E1C 46085182 */ mul.s $f6, $f10, $f8 -/* 022A20 80021E20 E5C60008 */ swc1 $f6, 8($t6) -/* 022A24 80021E24 8FB8015C */ lw $t8, 0x15c($sp) -/* 022A28 80021E28 00000000 */ nop -/* 022A2C 80021E2C 9302002E */ lbu $v0, 0x2e($t8) -/* 022A30 80021E30 00000000 */ nop -/* 022A34 80021E34 104101B3 */ beq $v0, $at, .L80022504 -/* 022A38 80021E38 24010002 */ li $at, 2 -/* 022A3C 80021E3C 10410005 */ beq $v0, $at, .L80021E54 -/* 022A40 80021E40 24010003 */ li $at, 3 -/* 022A44 80021E44 10410056 */ beq $v0, $at, .L80021FA0 -/* 022A48 80021E48 3C038012 */ lui $v1, %hi(D_8011AE78) # $v1, 0x8012 -/* 022A4C 80021E4C 100000A0 */ b .L800220D0 -/* 022A50 80021E50 24050001 */ li $a1, 1 -.L80021E54: -/* 022A54 80021E54 8FB9015C */ lw $t9, 0x15c($sp) -/* 022A58 80021E58 8FA600EC */ lw $a2, 0xec($sp) -/* 022A5C 80021E5C 832B003F */ lb $t3, 0x3f($t9) -/* 022A60 80021E60 02002025 */ move $a0, $s0 -/* 022A64 80021E64 15600012 */ bnez $t3, .L80021EB0 -/* 022A68 80021E68 00002825 */ move $a1, $zero -/* 022A6C 80021E6C 8FA600EC */ lw $a2, 0xec($sp) -/* 022A70 80021E70 02002025 */ move $a0, $s0 -/* 022A74 80021E74 00002825 */ move $a1, $zero -/* 022A78 80021E78 0C00898F */ jal func_8002263C -/* 022A7C 80021E7C 27A700F8 */ addiu $a3, $sp, 0xf8 -/* 022A80 80021E80 8FA600EC */ lw $a2, 0xec($sp) -/* 022A84 80021E84 02202025 */ move $a0, $s1 -/* 022A88 80021E88 00002825 */ move $a1, $zero -/* 022A8C 80021E8C 0C00898F */ jal func_8002263C -/* 022A90 80021E90 27A700F4 */ addiu $a3, $sp, 0xf4 -/* 022A94 80021E94 8FA600EC */ lw $a2, 0xec($sp) -/* 022A98 80021E98 02402025 */ move $a0, $s2 -/* 022A9C 80021E9C 00002825 */ move $a1, $zero -/* 022AA0 80021EA0 0C00898F */ jal func_8002263C -/* 022AA4 80021EA4 27A700F0 */ addiu $a3, $sp, 0xf0 -/* 022AA8 80021EA8 1000000E */ b .L80021EE4 -/* 022AAC 80021EAC C7B400F8 */ lwc1 $f20, 0xf8($sp) -.L80021EB0: -/* 022AB0 80021EB0 0C008A2C */ jal func_800228B0 -/* 022AB4 80021EB4 27A700F8 */ addiu $a3, $sp, 0xf8 -/* 022AB8 80021EB8 8FA600EC */ lw $a2, 0xec($sp) -/* 022ABC 80021EBC 02202025 */ move $a0, $s1 -/* 022AC0 80021EC0 00002825 */ move $a1, $zero -/* 022AC4 80021EC4 0C008A2C */ jal func_800228B0 -/* 022AC8 80021EC8 27A700F4 */ addiu $a3, $sp, 0xf4 -/* 022ACC 80021ECC 8FA600EC */ lw $a2, 0xec($sp) -/* 022AD0 80021ED0 02402025 */ move $a0, $s2 -/* 022AD4 80021ED4 00002825 */ move $a1, $zero -/* 022AD8 80021ED8 0C008A2C */ jal func_800228B0 -/* 022ADC 80021EDC 27A700F0 */ addiu $a3, $sp, 0xf0 -/* 022AE0 80021EE0 C7B400F8 */ lwc1 $f20, 0xf8($sp) -.L80021EE4: -/* 022AE4 80021EE4 C7A200F4 */ lwc1 $f2, 0xf4($sp) -/* 022AE8 80021EE8 4614A102 */ mul.s $f4, $f20, $f20 -/* 022AEC 80021EEC C7AE00F0 */ lwc1 $f14, 0xf0($sp) -/* 022AF0 80021EF0 46021282 */ mul.s $f10, $f2, $f2 -/* 022AF4 80021EF4 00000000 */ nop -/* 022AF8 80021EF8 460E7182 */ mul.s $f6, $f14, $f14 -/* 022AFC 80021EFC 460A2200 */ add.s $f8, $f4, $f10 -/* 022B00 80021F00 0C0326B4 */ jal sqrtf -/* 022B04 80021F04 46064300 */ add.s $f12, $f8, $f6 -/* 022B08 80021F08 44808000 */ mtc1 $zero, $f16 -/* 022B0C 80021F0C 3C014059 */ li $at, 0x40590000 # 3.390625 -/* 022B10 80021F10 46100032 */ c.eq.s $f0, $f16 -/* 022B14 80021F14 00000000 */ nop -/* 022B18 80021F18 45010011 */ bc1t .L80021F60 -/* 022B1C 80021F1C 00000000 */ nop -/* 022B20 80021F20 44812800 */ mtc1 $at, $f5 -/* 022B24 80021F24 44802000 */ mtc1 $zero, $f4 -/* 022B28 80021F28 460002A1 */ cvt.d.s $f10, $f0 -/* 022B2C 80021F2C 00000000 */ nop -/* 022B30 80021F30 462A2203 */ div.d $f8, $f4, $f10 -/* 022B34 80021F34 C7B400F8 */ lwc1 $f20, 0xf8($sp) -/* 022B38 80021F38 C7A200F4 */ lwc1 $f2, 0xf4($sp) -/* 022B3C 80021F3C C7AE00F0 */ lwc1 $f14, 0xf0($sp) -/* 022B40 80021F40 46204320 */ cvt.s.d $f12, $f8 -/* 022B44 80021F44 460CA502 */ mul.s $f20, $f20, $f12 -/* 022B48 80021F48 00000000 */ nop -/* 022B4C 80021F4C 460C1082 */ mul.s $f2, $f2, $f12 -/* 022B50 80021F50 E7B400F8 */ swc1 $f20, 0xf8($sp) -/* 022B54 80021F54 460C7382 */ mul.s $f14, $f14, $f12 -/* 022B58 80021F58 E7A200F4 */ swc1 $f2, 0xf4($sp) -/* 022B5C 80021F5C E7AE00F0 */ swc1 $f14, 0xf0($sp) -.L80021F60: -/* 022B60 80021F60 C7AE00F0 */ lwc1 $f14, 0xf0($sp) -/* 022B64 80021F64 C7AC00F8 */ lwc1 $f12, 0xf8($sp) -/* 022B68 80021F68 0C01C1D4 */ jal func_80070750 -/* 022B6C 80021F6C 00000000 */ nop -/* 022B70 80021F70 24018000 */ li $at, -32768 -/* 022B74 80021F74 8FAD0154 */ lw $t5, 0x154($sp) -/* 022B78 80021F78 00416021 */ addu $t4, $v0, $at -/* 022B7C 80021F7C 3C0142C8 */ li $at, 0x42C80000 # 100.000000 -/* 022B80 80021F80 A5AC0000 */ sh $t4, ($t5) -/* 022B84 80021F84 C7AC00F4 */ lwc1 $f12, 0xf4($sp) -/* 022B88 80021F88 44817000 */ mtc1 $at, $f14 -/* 022B8C 80021F8C 0C01C1D4 */ jal func_80070750 -/* 022B90 80021F90 00000000 */ nop -/* 022B94 80021F94 8FAF0154 */ lw $t7, 0x154($sp) -/* 022B98 80021F98 1000015A */ b .L80022504 -/* 022B9C 80021F9C A5E20002 */ sh $v0, 2($t7) -.L80021FA0: -/* 022BA0 80021FA0 8463AE78 */ lh $v1, %lo(D_8011AE78)($v1) -/* 022BA4 80021FA4 00002825 */ move $a1, $zero -/* 022BA8 80021FA8 18600014 */ blez $v1, .L80021FFC -/* 022BAC 80021FAC 3C078012 */ lui $a3, %hi(D_8011AE74) # $a3, 0x8012 -/* 022BB0 80021FB0 8CE7AE74 */ lw $a3, %lo(D_8011AE74)($a3) -/* 022BB4 80021FB4 8FAE015C */ lw $t6, 0x15c($sp) -/* 022BB8 80021FB8 8CF80000 */ lw $t8, ($a3) -/* 022BBC 80021FBC 81C2003E */ lb $v0, 0x3e($t6) -/* 022BC0 80021FC0 8F19007C */ lw $t9, 0x7c($t8) -/* 022BC4 80021FC4 00000000 */ nop -/* 022BC8 80021FC8 1059000C */ beq $v0, $t9, .L80021FFC -/* 022BCC 80021FCC 00000000 */ nop -.L80021FD0: -/* 022BD0 80021FD0 24A50001 */ addiu $a1, $a1, 1 -/* 022BD4 80021FD4 00A3082A */ slt $at, $a1, $v1 -/* 022BD8 80021FD8 10200008 */ beqz $at, .L80021FFC -/* 022BDC 80021FDC 00055880 */ sll $t3, $a1, 2 -/* 022BE0 80021FE0 00EB6021 */ addu $t4, $a3, $t3 -/* 022BE4 80021FE4 8D8D0000 */ lw $t5, ($t4) -/* 022BE8 80021FE8 00000000 */ nop -/* 022BEC 80021FEC 8DAF007C */ lw $t7, 0x7c($t5) -/* 022BF0 80021FF0 00000000 */ nop -/* 022BF4 80021FF4 144FFFF6 */ bne $v0, $t7, .L80021FD0 -/* 022BF8 80021FF8 00000000 */ nop -.L80021FFC: -/* 022BFC 80021FFC 10A30141 */ beq $a1, $v1, .L80022504 -/* 022C00 80022000 3C0E8012 */ lui $t6, %hi(D_8011AE74) # $t6, 0x8012 -/* 022C04 80022004 8DCEAE74 */ lw $t6, %lo(D_8011AE74)($t6) -/* 022C08 80022008 0005C080 */ sll $t8, $a1, 2 -/* 022C0C 8002200C 01D8C821 */ addu $t9, $t6, $t8 -/* 022C10 80022010 8F2B0000 */ lw $t3, ($t9) -/* 022C14 80022014 8FAC0154 */ lw $t4, 0x154($sp) -/* 022C18 80022018 8D630064 */ lw $v1, 0x64($t3) -/* 022C1C 8002201C 00000000 */ nop -/* 022C20 80022020 10600139 */ beqz $v1, .L80022508 -/* 022C24 80022024 00001025 */ move $v0, $zero -/* 022C28 80022028 C466000C */ lwc1 $f6, 0xc($v1) -/* 022C2C 8002202C C584000C */ lwc1 $f4, 0xc($t4) -/* 022C30 80022030 00000000 */ nop -/* 022C34 80022034 46043281 */ sub.s $f10, $f6, $f4 -/* 022C38 80022038 E7AA00F8 */ swc1 $f10, 0xf8($sp) -/* 022C3C 8002203C C5860010 */ lwc1 $f6, 0x10($t4) -/* 022C40 80022040 C4680010 */ lwc1 $f8, 0x10($v1) -/* 022C44 80022044 00000000 */ nop -/* 022C48 80022048 46064101 */ sub.s $f4, $f8, $f6 -/* 022C4C 8002204C E7A400F4 */ swc1 $f4, 0xf4($sp) -/* 022C50 80022050 C5880014 */ lwc1 $f8, 0x14($t4) -/* 022C54 80022054 C46A0014 */ lwc1 $f10, 0x14($v1) -/* 022C58 80022058 C7A400F8 */ lwc1 $f4, 0xf8($sp) -/* 022C5C 8002205C 46085181 */ sub.s $f6, $f10, $f8 -/* 022C60 80022060 C7A800F4 */ lwc1 $f8, 0xf4($sp) -/* 022C64 80022064 46042282 */ mul.s $f10, $f4, $f4 -/* 022C68 80022068 E7A600F0 */ swc1 $f6, 0xf0($sp) -/* 022C6C 8002206C 46084182 */ mul.s $f6, $f8, $f8 -/* 022C70 80022070 C7A800F0 */ lwc1 $f8, 0xf0($sp) -/* 022C74 80022074 46065100 */ add.s $f4, $f10, $f6 -/* 022C78 80022078 46084282 */ mul.s $f10, $f8, $f8 -/* 022C7C 8002207C 0C0326B4 */ jal sqrtf -/* 022C80 80022080 460A2300 */ add.s $f12, $f4, $f10 -/* 022C84 80022084 44808000 */ mtc1 $zero, $f16 -/* 022C88 80022088 C7AE00F0 */ lwc1 $f14, 0xf0($sp) -/* 022C8C 8002208C 4600803C */ c.lt.s $f16, $f0 -/* 022C90 80022090 C7AC00F8 */ lwc1 $f12, 0xf8($sp) -/* 022C94 80022094 4500011B */ bc1f .L80022504 -/* 022C98 80022098 E7A000EC */ swc1 $f0, 0xec($sp) -/* 022C9C 8002209C 0C01C1D4 */ jal func_80070750 -/* 022CA0 800220A0 00000000 */ nop -/* 022CA4 800220A4 8FAF0154 */ lw $t7, 0x154($sp) -/* 022CA8 800220A8 24018000 */ li $at, -32768 -/* 022CAC 800220AC 00416821 */ addu $t5, $v0, $at -/* 022CB0 800220B0 A5ED0000 */ sh $t5, ($t7) -/* 022CB4 800220B4 C7AE00EC */ lwc1 $f14, 0xec($sp) -/* 022CB8 800220B8 C7AC00F4 */ lwc1 $f12, 0xf4($sp) -/* 022CBC 800220BC 0C01C1D4 */ jal func_80070750 -/* 022CC0 800220C0 00000000 */ nop -/* 022CC4 800220C4 8FAE0154 */ lw $t6, 0x154($sp) -/* 022CC8 800220C8 1000010E */ b .L80022504 -/* 022CCC 800220CC A5C20002 */ sh $v0, 2($t6) -.L800220D0: -/* 022CD0 800220D0 3C01C0E0 */ li $at, 0xC0E00000 # -7.000000 -/* 022CD4 800220D4 4481A800 */ mtc1 $at, $f21 -/* 022CD8 800220D8 3C0140E0 */ li $at, 0x40E00000 # 7.000000 -/* 022CDC 800220DC 44819800 */ mtc1 $at, $f19 -/* 022CE0 800220E0 3C0140F0 */ li $at, 0x40F00000 # 7.500000 -/* 022CE4 800220E4 44817800 */ mtc1 $at, $f15 -/* 022CE8 800220E8 4480A000 */ mtc1 $zero, $f20 -/* 022CEC 800220EC 44809000 */ mtc1 $zero, $f18 -/* 022CF0 800220F0 44808000 */ mtc1 $zero, $f16 -/* 022CF4 800220F4 44807000 */ mtc1 $zero, $f14 -/* 022CF8 800220F8 27BE00C0 */ addiu $fp, $sp, 0xc0 -/* 022CFC 800220FC 27B600AC */ addiu $s6, $sp, 0xac -/* 022D00 80022100 27A90098 */ addiu $t1, $sp, 0x98 -/* 022D04 80022104 240A0005 */ li $t2, 5 -/* 022D08 80022108 27A800A8 */ addiu $t0, $sp, 0xa8 -/* 022D0C 8002210C 27A700BC */ addiu $a3, $sp, 0xbc -/* 022D10 80022110 27A600D0 */ addiu $a2, $sp, 0xd0 -.L80022114: -/* 022D14 80022114 C7C60000 */ lwc1 $f6, ($fp) -/* 022D18 80022118 C7C8FFFC */ lwc1 $f8, -4($fp) -/* 022D1C 8002211C 27DE0004 */ addiu $fp, $fp, 4 -/* 022D20 80022120 46083301 */ sub.s $f12, $f6, $f8 -/* 022D24 80022124 28A10005 */ slti $at, $a1, 5 -/* 022D28 80022128 460060A1 */ cvt.d.s $f2, $f12 -/* 022D2C 8002212C 4622903C */ c.lt.d $f18, $f2 -/* 022D30 80022130 46008006 */ mov.s $f0, $f16 -/* 022D34 80022134 45000005 */ bc1f .L8002214C -/* 022D38 80022138 01452023 */ subu $a0, $t2, $a1 -/* 022D3C 8002213C 46008121 */ cvt.d.s $f4, $f16 -/* 022D40 80022140 462E2281 */ sub.d $f10, $f4, $f14 -/* 022D44 80022144 10000008 */ b .L80022168 -/* 022D48 80022148 46205020 */ cvt.s.d $f0, $f10 -.L8002214C: -/* 022D4C 8002214C 4634103C */ c.lt.d $f2, $f20 -/* 022D50 80022150 00000000 */ nop -/* 022D54 80022154 45000004 */ bc1f .L80022168 -/* 022D58 80022158 00000000 */ nop -/* 022D5C 8002215C 460081A1 */ cvt.d.s $f6, $f16 -/* 022D60 80022160 462E3200 */ add.d $f8, $f6, $f14 -/* 022D64 80022164 46204020 */ cvt.s.d $f0, $f8 -.L80022168: -/* 022D68 80022168 10200020 */ beqz $at, .L800221EC -/* 022D6C 8002216C 00A08025 */ move $s0, $a1 -/* 022D70 80022170 30980003 */ andi $t8, $a0, 3 -/* 022D74 80022174 1300000B */ beqz $t8, .L800221A4 -/* 022D78 80022178 03051821 */ addu $v1, $t8, $a1 -/* 022D7C 8002217C 0010C880 */ sll $t9, $s0, 2 -/* 022D80 80022180 27AB00BC */ addiu $t3, $sp, 0xbc -/* 022D84 80022184 032B1021 */ addu $v0, $t9, $t3 -.L80022188: -/* 022D88 80022188 C4440000 */ lwc1 $f4, ($v0) -/* 022D8C 8002218C 26100001 */ addiu $s0, $s0, 1 -/* 022D90 80022190 46002280 */ add.s $f10, $f4, $f0 -/* 022D94 80022194 24420004 */ addiu $v0, $v0, 4 -/* 022D98 80022198 1470FFFB */ bne $v1, $s0, .L80022188 -/* 022D9C 8002219C E44AFFFC */ swc1 $f10, -4($v0) -/* 022DA0 800221A0 120A0011 */ beq $s0, $t2, .L800221E8 -.L800221A4: -/* 022DA4 800221A4 00106080 */ sll $t4, $s0, 2 -/* 022DA8 800221A8 27AD00BC */ addiu $t5, $sp, 0xbc -/* 022DAC 800221AC 018D1021 */ addu $v0, $t4, $t5 -.L800221B0: -/* 022DB0 800221B0 C4460000 */ lwc1 $f6, ($v0) -/* 022DB4 800221B4 C4440004 */ lwc1 $f4, 4($v0) -/* 022DB8 800221B8 46003200 */ add.s $f8, $f6, $f0 -/* 022DBC 800221BC C4460008 */ lwc1 $f6, 8($v0) -/* 022DC0 800221C0 46002280 */ add.s $f10, $f4, $f0 -/* 022DC4 800221C4 C444000C */ lwc1 $f4, 0xc($v0) -/* 022DC8 800221C8 E44A0004 */ swc1 $f10, 4($v0) -/* 022DCC 800221CC E4480000 */ swc1 $f8, ($v0) -/* 022DD0 800221D0 46003200 */ add.s $f8, $f6, $f0 -/* 022DD4 800221D4 24420010 */ addiu $v0, $v0, 0x10 -/* 022DD8 800221D8 46002280 */ add.s $f10, $f4, $f0 -/* 022DDC 800221DC E448FFF8 */ swc1 $f8, -8($v0) -/* 022DE0 800221E0 1446FFF3 */ bne $v0, $a2, .L800221B0 -/* 022DE4 800221E4 E44AFFFC */ swc1 $f10, -4($v0) -.L800221E8: -/* 022DE8 800221E8 00A08025 */ move $s0, $a1 -.L800221EC: -/* 022DEC 800221EC C6C60000 */ lwc1 $f6, ($s6) -/* 022DF0 800221F0 C6C8FFFC */ lwc1 $f8, -4($s6) -/* 022DF4 800221F4 26D60004 */ addiu $s6, $s6, 4 -/* 022DF8 800221F8 46083301 */ sub.s $f12, $f6, $f8 -/* 022DFC 800221FC 28A10005 */ slti $at, $a1, 5 -/* 022E00 80022200 460060A1 */ cvt.d.s $f2, $f12 -/* 022E04 80022204 4622903C */ c.lt.d $f18, $f2 -/* 022E08 80022208 46008006 */ mov.s $f0, $f16 -/* 022E0C 8002220C 45000005 */ bc1f .L80022224 -/* 022E10 80022210 240F0005 */ li $t7, 5 -/* 022E14 80022214 46008121 */ cvt.d.s $f4, $f16 -/* 022E18 80022218 462E2281 */ sub.d $f10, $f4, $f14 -/* 022E1C 8002221C 10000008 */ b .L80022240 -/* 022E20 80022220 46205020 */ cvt.s.d $f0, $f10 -.L80022224: -/* 022E24 80022224 4634103C */ c.lt.d $f2, $f20 -/* 022E28 80022228 00000000 */ nop -/* 022E2C 8002222C 45000004 */ bc1f .L80022240 -/* 022E30 80022230 00000000 */ nop -/* 022E34 80022234 460081A1 */ cvt.d.s $f6, $f16 -/* 022E38 80022238 462E3200 */ add.d $f8, $f6, $f14 -/* 022E3C 8002223C 46204020 */ cvt.s.d $f0, $f8 -.L80022240: -/* 022E40 80022240 10200020 */ beqz $at, .L800222C4 -/* 022E44 80022244 01E52023 */ subu $a0, $t7, $a1 -/* 022E48 80022248 308E0003 */ andi $t6, $a0, 3 -/* 022E4C 8002224C 11C0000B */ beqz $t6, .L8002227C -/* 022E50 80022250 01C51821 */ addu $v1, $t6, $a1 -/* 022E54 80022254 0010C080 */ sll $t8, $s0, 2 -/* 022E58 80022258 27B900A8 */ addiu $t9, $sp, 0xa8 -/* 022E5C 8002225C 03191021 */ addu $v0, $t8, $t9 -.L80022260: -/* 022E60 80022260 C4440000 */ lwc1 $f4, ($v0) -/* 022E64 80022264 26100001 */ addiu $s0, $s0, 1 -/* 022E68 80022268 46002280 */ add.s $f10, $f4, $f0 -/* 022E6C 8002226C 24420004 */ addiu $v0, $v0, 4 -/* 022E70 80022270 1470FFFB */ bne $v1, $s0, .L80022260 -/* 022E74 80022274 E44AFFFC */ swc1 $f10, -4($v0) -/* 022E78 80022278 120A0011 */ beq $s0, $t2, .L800222C0 -.L8002227C: -/* 022E7C 8002227C 00105880 */ sll $t3, $s0, 2 -/* 022E80 80022280 27AC00A8 */ addiu $t4, $sp, 0xa8 -/* 022E84 80022284 016C1021 */ addu $v0, $t3, $t4 -.L80022288: -/* 022E88 80022288 C4460000 */ lwc1 $f6, ($v0) -/* 022E8C 8002228C C4440004 */ lwc1 $f4, 4($v0) -/* 022E90 80022290 46003200 */ add.s $f8, $f6, $f0 -/* 022E94 80022294 C4460008 */ lwc1 $f6, 8($v0) -/* 022E98 80022298 46002280 */ add.s $f10, $f4, $f0 -/* 022E9C 8002229C C444000C */ lwc1 $f4, 0xc($v0) -/* 022EA0 800222A0 E44A0004 */ swc1 $f10, 4($v0) -/* 022EA4 800222A4 E4480000 */ swc1 $f8, ($v0) -/* 022EA8 800222A8 46003200 */ add.s $f8, $f6, $f0 -/* 022EAC 800222AC 24420010 */ addiu $v0, $v0, 0x10 -/* 022EB0 800222B0 46002280 */ add.s $f10, $f4, $f0 -/* 022EB4 800222B4 E448FFF8 */ swc1 $f8, -8($v0) -/* 022EB8 800222B8 1447FFF3 */ bne $v0, $a3, .L80022288 -/* 022EBC 800222BC E44AFFFC */ swc1 $f10, -4($v0) -.L800222C0: -/* 022EC0 800222C0 00A08025 */ move $s0, $a1 -.L800222C4: -/* 022EC4 800222C4 C5260000 */ lwc1 $f6, ($t1) -/* 022EC8 800222C8 C528FFFC */ lwc1 $f8, -4($t1) -/* 022ECC 800222CC 240D0005 */ li $t5, 5 -/* 022ED0 800222D0 46083301 */ sub.s $f12, $f6, $f8 -/* 022ED4 800222D4 01A52023 */ subu $a0, $t5, $a1 -/* 022ED8 800222D8 460060A1 */ cvt.d.s $f2, $f12 -/* 022EDC 800222DC 4622903C */ c.lt.d $f18, $f2 -/* 022EE0 800222E0 46008006 */ mov.s $f0, $f16 -/* 022EE4 800222E4 45000005 */ bc1f .L800222FC -/* 022EE8 800222E8 28A10005 */ slti $at, $a1, 5 -/* 022EEC 800222EC 46008121 */ cvt.d.s $f4, $f16 -/* 022EF0 800222F0 462E2281 */ sub.d $f10, $f4, $f14 -/* 022EF4 800222F4 10000008 */ b .L80022318 -/* 022EF8 800222F8 46205020 */ cvt.s.d $f0, $f10 -.L800222FC: -/* 022EFC 800222FC 4634103C */ c.lt.d $f2, $f20 -/* 022F00 80022300 00000000 */ nop -/* 022F04 80022304 45000004 */ bc1f .L80022318 -/* 022F08 80022308 00000000 */ nop -/* 022F0C 8002230C 460081A1 */ cvt.d.s $f6, $f16 -/* 022F10 80022310 462E3200 */ add.d $f8, $f6, $f14 -/* 022F14 80022314 46204020 */ cvt.s.d $f0, $f8 -.L80022318: -/* 022F18 80022318 1020001E */ beqz $at, .L80022394 -/* 022F1C 8002231C 308F0003 */ andi $t7, $a0, 3 -/* 022F20 80022320 11E0000B */ beqz $t7, .L80022350 -/* 022F24 80022324 01E51821 */ addu $v1, $t7, $a1 -/* 022F28 80022328 00107080 */ sll $t6, $s0, 2 -/* 022F2C 8002232C 27B80094 */ addiu $t8, $sp, 0x94 -/* 022F30 80022330 01D81021 */ addu $v0, $t6, $t8 -.L80022334: -/* 022F34 80022334 C4440000 */ lwc1 $f4, ($v0) -/* 022F38 80022338 26100001 */ addiu $s0, $s0, 1 -/* 022F3C 8002233C 46002280 */ add.s $f10, $f4, $f0 -/* 022F40 80022340 24420004 */ addiu $v0, $v0, 4 -/* 022F44 80022344 1470FFFB */ bne $v1, $s0, .L80022334 -/* 022F48 80022348 E44AFFFC */ swc1 $f10, -4($v0) -/* 022F4C 8002234C 120A0011 */ beq $s0, $t2, .L80022394 -.L80022350: -/* 022F50 80022350 0010C880 */ sll $t9, $s0, 2 -/* 022F54 80022354 27AB0094 */ addiu $t3, $sp, 0x94 -/* 022F58 80022358 032B1021 */ addu $v0, $t9, $t3 -.L8002235C: -/* 022F5C 8002235C C4460000 */ lwc1 $f6, ($v0) -/* 022F60 80022360 C4440004 */ lwc1 $f4, 4($v0) -/* 022F64 80022364 46003200 */ add.s $f8, $f6, $f0 -/* 022F68 80022368 C4460008 */ lwc1 $f6, 8($v0) -/* 022F6C 8002236C 46002280 */ add.s $f10, $f4, $f0 -/* 022F70 80022370 C444000C */ lwc1 $f4, 0xc($v0) -/* 022F74 80022374 E44A0004 */ swc1 $f10, 4($v0) -/* 022F78 80022378 E4480000 */ swc1 $f8, ($v0) -/* 022F7C 8002237C 46003200 */ add.s $f8, $f6, $f0 -/* 022F80 80022380 24420010 */ addiu $v0, $v0, 0x10 -/* 022F84 80022384 46002280 */ add.s $f10, $f4, $f0 -/* 022F88 80022388 E448FFF8 */ swc1 $f8, -8($v0) -/* 022F8C 8002238C 1448FFF3 */ bne $v0, $t0, .L8002235C -/* 022F90 80022390 E44AFFFC */ swc1 $f10, -4($v0) -.L80022394: -/* 022F94 80022394 24A50001 */ addiu $a1, $a1, 1 -/* 022F98 80022398 14AAFF5E */ bne $a1, $t2, .L80022114 -/* 022F9C 8002239C 25290004 */ addiu $t1, $t1, 4 -/* 022FA0 800223A0 8FAC015C */ lw $t4, 0x15c($sp) -/* 022FA4 800223A4 8FA600EC */ lw $a2, 0xec($sp) -/* 022FA8 800223A8 818D003F */ lb $t5, 0x3f($t4) -/* 022FAC 800223AC 00002825 */ move $a1, $zero -/* 022FB0 800223B0 15A0002B */ bnez $t5, .L80022460 -/* 022FB4 800223B4 27A400BC */ addiu $a0, $sp, 0xbc -/* 022FB8 800223B8 8FA600EC */ lw $a2, 0xec($sp) -/* 022FBC 800223BC 0C008950 */ jal func_80022540 -/* 022FC0 800223C0 27A400BC */ addiu $a0, $sp, 0xbc -/* 022FC4 800223C4 444FF800 */ cfc1 $t7, $31 -/* 022FC8 800223C8 8FB80154 */ lw $t8, 0x154($sp) -/* 022FCC 800223CC 35E10003 */ ori $at, $t7, 3 -/* 022FD0 800223D0 38210002 */ xori $at, $at, 2 -/* 022FD4 800223D4 44C1F800 */ ctc1 $at, $31 -/* 022FD8 800223D8 27A400A8 */ addiu $a0, $sp, 0xa8 -/* 022FDC 800223DC 460001A4 */ cvt.w.s $f6, $f0 -/* 022FE0 800223E0 00002825 */ move $a1, $zero -/* 022FE4 800223E4 440E3000 */ mfc1 $t6, $f6 -/* 022FE8 800223E8 44CFF800 */ ctc1 $t7, $31 -/* 022FEC 800223EC A70E0000 */ sh $t6, ($t8) -/* 022FF0 800223F0 8FA600EC */ lw $a2, 0xec($sp) -/* 022FF4 800223F4 0C008950 */ jal func_80022540 -/* 022FF8 800223F8 00000000 */ nop -/* 022FFC 800223FC 4459F800 */ cfc1 $t9, $31 -/* 023000 80022400 8FAC0154 */ lw $t4, 0x154($sp) -/* 023004 80022404 37210003 */ ori $at, $t9, 3 -/* 023008 80022408 38210002 */ xori $at, $at, 2 -/* 02300C 8002240C 44C1F800 */ ctc1 $at, $31 -/* 023010 80022410 27A40094 */ addiu $a0, $sp, 0x94 -/* 023014 80022414 46000224 */ cvt.w.s $f8, $f0 -/* 023018 80022418 00002825 */ move $a1, $zero -/* 02301C 8002241C 440B4000 */ mfc1 $t3, $f8 -/* 023020 80022420 44D9F800 */ ctc1 $t9, $31 -/* 023024 80022424 A58B0002 */ sh $t3, 2($t4) -/* 023028 80022428 8FA600EC */ lw $a2, 0xec($sp) -/* 02302C 8002242C 0C008950 */ jal func_80022540 -/* 023030 80022430 00000000 */ nop -/* 023034 80022434 444DF800 */ cfc1 $t5, $31 -/* 023038 80022438 8FAE0154 */ lw $t6, 0x154($sp) -/* 02303C 8002243C 35A10003 */ ori $at, $t5, 3 -/* 023040 80022440 38210002 */ xori $at, $at, 2 -/* 023044 80022444 44C1F800 */ ctc1 $at, $31 -/* 023048 80022448 00000000 */ nop -/* 02304C 8002244C 46000124 */ cvt.w.s $f4, $f0 -/* 023050 80022450 440F2000 */ mfc1 $t7, $f4 -/* 023054 80022454 44CDF800 */ ctc1 $t5, $31 -/* 023058 80022458 1000002A */ b .L80022504 -/* 02305C 8002245C A5CF0004 */ sh $t7, 4($t6) -.L80022460: -/* 023060 80022460 0C008A22 */ jal func_80022888 -/* 023064 80022464 00002825 */ move $a1, $zero -/* 023068 80022468 4458F800 */ cfc1 $t8, $31 -/* 02306C 8002246C 8FAB0154 */ lw $t3, 0x154($sp) -/* 023070 80022470 37010003 */ ori $at, $t8, 3 -/* 023074 80022474 38210002 */ xori $at, $at, 2 -/* 023078 80022478 44C1F800 */ ctc1 $at, $31 -/* 02307C 8002247C 27A400A8 */ addiu $a0, $sp, 0xa8 -/* 023080 80022480 460002A4 */ cvt.w.s $f10, $f0 -/* 023084 80022484 00002825 */ move $a1, $zero -/* 023088 80022488 44195000 */ mfc1 $t9, $f10 -/* 02308C 8002248C 44D8F800 */ ctc1 $t8, $31 -/* 023090 80022490 A5790000 */ sh $t9, ($t3) -/* 023094 80022494 8FA600EC */ lw $a2, 0xec($sp) -/* 023098 80022498 0C008A22 */ jal func_80022888 -/* 02309C 8002249C 00000000 */ nop -/* 0230A0 800224A0 444CF800 */ cfc1 $t4, $31 -/* 0230A4 800224A4 8FAF0154 */ lw $t7, 0x154($sp) -/* 0230A8 800224A8 35810003 */ ori $at, $t4, 3 -/* 0230AC 800224AC 38210002 */ xori $at, $at, 2 -/* 0230B0 800224B0 44C1F800 */ ctc1 $at, $31 -/* 0230B4 800224B4 27A40094 */ addiu $a0, $sp, 0x94 -/* 0230B8 800224B8 460001A4 */ cvt.w.s $f6, $f0 -/* 0230BC 800224BC 00002825 */ move $a1, $zero -/* 0230C0 800224C0 440D3000 */ mfc1 $t5, $f6 -/* 0230C4 800224C4 44CCF800 */ ctc1 $t4, $31 -/* 0230C8 800224C8 A5ED0002 */ sh $t5, 2($t7) -/* 0230CC 800224CC 8FA600EC */ lw $a2, 0xec($sp) -/* 0230D0 800224D0 0C008A22 */ jal func_80022888 -/* 0230D4 800224D4 00000000 */ nop -/* 0230D8 800224D8 444EF800 */ cfc1 $t6, $31 -/* 0230DC 800224DC 8FB90154 */ lw $t9, 0x154($sp) -/* 0230E0 800224E0 35C10003 */ ori $at, $t6, 3 -/* 0230E4 800224E4 38210002 */ xori $at, $at, 2 -/* 0230E8 800224E8 44C1F800 */ ctc1 $at, $31 -/* 0230EC 800224EC 00000000 */ nop -/* 0230F0 800224F0 46000224 */ cvt.w.s $f8, $f0 -/* 0230F4 800224F4 44184000 */ mfc1 $t8, $f8 -/* 0230F8 800224F8 44CEF800 */ ctc1 $t6, $31 -/* 0230FC 800224FC A7380004 */ sh $t8, 4($t9) -/* 023100 80022500 00000000 */ nop -.L80022504: -/* 023104 80022504 00001025 */ move $v0, $zero -.L80022508: -/* 023108 80022508 8FBF0044 */ lw $ra, 0x44($sp) -/* 02310C 8002250C C7B50018 */ lwc1 $f21, 0x18($sp) -/* 023110 80022510 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 023114 80022514 8FB00020 */ lw $s0, 0x20($sp) -/* 023118 80022518 8FB10024 */ lw $s1, 0x24($sp) -/* 02311C 8002251C 8FB20028 */ lw $s2, 0x28($sp) -/* 023120 80022520 8FB3002C */ lw $s3, 0x2c($sp) -/* 023124 80022524 8FB40030 */ lw $s4, 0x30($sp) -/* 023128 80022528 8FB50034 */ lw $s5, 0x34($sp) -/* 02312C 8002252C 8FB60038 */ lw $s6, 0x38($sp) -/* 023130 80022530 8FB7003C */ lw $s7, 0x3c($sp) -/* 023134 80022534 8FBE0040 */ lw $fp, 0x40($sp) -/* 023138 80022538 03E00008 */ jr $ra -/* 02313C 8002253C 27BD0160 */ addiu $sp, $sp, 0x160 - -glabel func_80022540 -/* 023140 80022540 27BDFFF0 */ addiu $sp, $sp, -0x10 -/* 023144 80022544 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 023148 80022548 00057080 */ sll $t6, $a1, 2 -/* 02314C 8002254C 44819800 */ mtc1 $at, $f19 -/* 023150 80022550 AFA60018 */ sw $a2, 0x18($sp) -/* 023154 80022554 008E1021 */ addu $v0, $a0, $t6 -/* 023158 80022558 C4460000 */ lwc1 $f6, ($v0) -/* 02315C 8002255C 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 023160 80022560 44814800 */ mtc1 $at, $f9 -/* 023164 80022564 C444000C */ lwc1 $f4, 0xc($v0) -/* 023168 80022568 44804000 */ mtc1 $zero, $f8 -/* 02316C 8002256C 46003321 */ cvt.d.s $f12, $f6 -/* 023170 80022570 462C4382 */ mul.d $f14, $f8, $f12 -/* 023174 80022574 C44A0004 */ lwc1 $f10, 4($v0) -/* 023178 80022578 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 -/* 02317C 8002257C 460020A1 */ cvt.d.s $f2, $f4 -/* 023180 80022580 C4440008 */ lwc1 $f4, 8($v0) -/* 023184 80022584 44813800 */ mtc1 $at, $f7 -/* 023188 80022588 44803000 */ mtc1 $zero, $f6 -/* 02318C 8002258C 46005421 */ cvt.d.s $f16, $f10 -/* 023190 80022590 46303202 */ mul.d $f8, $f6, $f16 -/* 023194 80022594 3C01BFF8 */ li $at, 0xBFF80000 # -1.937500 -/* 023198 80022598 46002021 */ cvt.d.s $f0, $f4 -/* 02319C 8002259C 44802000 */ mtc1 $zero, $f4 -/* 0231A0 800225A0 44812800 */ mtc1 $at, $f5 -/* 0231A4 800225A4 44809000 */ mtc1 $zero, $f18 -/* 0231A8 800225A8 46202182 */ mul.d $f6, $f4, $f0 -/* 0231AC 800225AC 46287280 */ add.d $f10, $f14, $f8 -/* 0231B0 800225B0 3C01C004 */ li $at, 0xC0040000 # -2.062500 -/* 0231B4 800225B4 46321102 */ mul.d $f4, $f2, $f18 -/* 0231B8 800225B8 46265200 */ add.d $f8, $f10, $f6 -/* 0231BC 800225BC 46282280 */ add.d $f10, $f4, $f8 -/* 0231C0 800225C0 44802000 */ mtc1 $zero, $f4 -/* 0231C4 800225C4 44812800 */ mtc1 $at, $f5 -/* 0231C8 800225C8 462051A0 */ cvt.s.d $f6, $f10 -/* 0231CC 800225CC 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 0231D0 800225D0 46302202 */ mul.d $f8, $f4, $f16 -/* 0231D4 800225D4 46200100 */ add.d $f4, $f0, $f0 -/* 0231D8 800225D8 E7A60000 */ swc1 $f6, ($sp) -/* 0231DC 800225DC 46286280 */ add.d $f10, $f12, $f8 -/* 0231E0 800225E0 46245200 */ add.d $f8, $f10, $f4 -/* 0231E4 800225E4 44805000 */ mtc1 $zero, $f10 -/* 0231E8 800225E8 44815800 */ mtc1 $at, $f11 -/* 0231EC 800225EC 00000000 */ nop -/* 0231F0 800225F0 462A1102 */ mul.d $f4, $f2, $f10 -/* 0231F4 800225F4 462080A0 */ cvt.s.d $f2, $f16 -/* 0231F8 800225F8 46282280 */ add.d $f10, $f4, $f8 -/* 0231FC 800225FC 46320202 */ mul.d $f8, $f0, $f18 -/* 023200 80022600 46205120 */ cvt.s.d $f4, $f10 -/* 023204 80022604 E7A40004 */ swc1 $f4, 4($sp) -/* 023208 80022608 462E4280 */ add.d $f10, $f8, $f14 -/* 02320C 8002260C 46205220 */ cvt.s.d $f8, $f10 -/* 023210 80022610 C7AA0018 */ lwc1 $f10, 0x18($sp) -/* 023214 80022614 E7A80008 */ swc1 $f8, 8($sp) -/* 023218 80022618 460A3182 */ mul.s $f6, $f6, $f10 -/* 02321C 8002261C 27BD0010 */ addiu $sp, $sp, 0x10 -/* 023220 80022620 46043180 */ add.s $f6, $f6, $f4 -/* 023224 80022624 460A3102 */ mul.s $f4, $f6, $f10 -/* 023228 80022628 46082180 */ add.s $f6, $f4, $f8 -/* 02322C 8002262C 460A3102 */ mul.s $f4, $f6, $f10 -/* 023230 80022630 46022080 */ add.s $f2, $f4, $f2 -/* 023234 80022634 03E00008 */ jr $ra -/* 023238 80022638 46001006 */ mov.s $f0, $f2 - -glabel func_8002263C -/* 02323C 8002263C 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* 023240 80022640 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 023244 80022644 00057080 */ sll $t6, $a1, 2 -/* 023248 80022648 44819800 */ mtc1 $at, $f19 -/* 02324C 8002264C E7B50008 */ swc1 $f21, 8($sp) -/* 023250 80022650 E7B4000C */ swc1 $f20, 0xc($sp) -/* 023254 80022654 008E1021 */ addu $v0, $a0, $t6 -/* 023258 80022658 C4460000 */ lwc1 $f6, ($v0) -/* 02325C 8002265C 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 023260 80022660 44814800 */ mtc1 $at, $f9 -/* 023264 80022664 C444000C */ lwc1 $f4, 0xc($v0) -/* 023268 80022668 44804000 */ mtc1 $zero, $f8 -/* 02326C 8002266C 46003321 */ cvt.d.s $f12, $f6 -/* 023270 80022670 462C4382 */ mul.d $f14, $f8, $f12 -/* 023274 80022674 C44A0004 */ lwc1 $f10, 4($v0) -/* 023278 80022678 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 -/* 02327C 8002267C 460020A1 */ cvt.d.s $f2, $f4 -/* 023280 80022680 C4440008 */ lwc1 $f4, 8($v0) -/* 023284 80022684 44813800 */ mtc1 $at, $f7 -/* 023288 80022688 44803000 */ mtc1 $zero, $f6 -/* 02328C 8002268C 46005421 */ cvt.d.s $f16, $f10 -/* 023290 80022690 46303202 */ mul.d $f8, $f6, $f16 -/* 023294 80022694 3C01BFF8 */ li $at, 0xBFF80000 # -1.937500 -/* 023298 80022698 46002021 */ cvt.d.s $f0, $f4 -/* 02329C 8002269C 44802000 */ mtc1 $zero, $f4 -/* 0232A0 800226A0 44812800 */ mtc1 $at, $f5 -/* 0232A4 800226A4 44809000 */ mtc1 $zero, $f18 -/* 0232A8 800226A8 46202182 */ mul.d $f6, $f4, $f0 -/* 0232AC 800226AC 46287280 */ add.d $f10, $f14, $f8 -/* 0232B0 800226B0 3C01C004 */ li $at, 0xC0040000 # -2.062500 -/* 0232B4 800226B4 4486A000 */ mtc1 $a2, $f20 -/* 0232B8 800226B8 46321102 */ mul.d $f4, $f2, $f18 -/* 0232BC 800226BC 46265200 */ add.d $f8, $f10, $f6 -/* 0232C0 800226C0 46282280 */ add.d $f10, $f4, $f8 -/* 0232C4 800226C4 44802000 */ mtc1 $zero, $f4 -/* 0232C8 800226C8 44812800 */ mtc1 $at, $f5 -/* 0232CC 800226CC 462051A0 */ cvt.s.d $f6, $f10 -/* 0232D0 800226D0 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 0232D4 800226D4 46302202 */ mul.d $f8, $f4, $f16 -/* 0232D8 800226D8 46200100 */ add.d $f4, $f0, $f0 -/* 0232DC 800226DC E7A60010 */ swc1 $f6, 0x10($sp) -/* 0232E0 800226E0 46286280 */ add.d $f10, $f12, $f8 -/* 0232E4 800226E4 46245200 */ add.d $f8, $f10, $f4 -/* 0232E8 800226E8 44805000 */ mtc1 $zero, $f10 -/* 0232EC 800226EC 44815800 */ mtc1 $at, $f11 -/* 0232F0 800226F0 3C014040 */ li $at, 0x40400000 # 3.000000 -/* 0232F4 800226F4 462A1102 */ mul.d $f4, $f2, $f10 -/* 0232F8 800226F8 46003306 */ mov.s $f12, $f6 -/* 0232FC 800226FC 462080A0 */ cvt.s.d $f2, $f16 -/* 023300 80022700 46282280 */ add.d $f10, $f4, $f8 -/* 023304 80022704 46320202 */ mul.d $f8, $f0, $f18 -/* 023308 80022708 46205120 */ cvt.s.d $f4, $f10 -/* 02330C 8002270C E7A40014 */ swc1 $f4, 0x14($sp) -/* 023310 80022710 462E4280 */ add.d $f10, $f8, $f14 -/* 023314 80022714 462054A0 */ cvt.s.d $f18, $f10 -/* 023318 80022718 44815000 */ mtc1 $at, $f10 -/* 02331C 8002271C 46002386 */ mov.s $f14, $f4 -/* 023320 80022720 460A3182 */ mul.s $f6, $f6, $f10 -/* 023324 80022724 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 023328 80022728 44814000 */ mtc1 $at, $f8 -/* 02332C 8002272C E7B20018 */ swc1 $f18, 0x18($sp) -/* 023330 80022730 46143102 */ mul.s $f4, $f6, $f20 -/* 023334 80022734 00000000 */ nop -/* 023338 80022738 460E4282 */ mul.s $f10, $f8, $f14 -/* 02333C 8002273C 460A2180 */ add.s $f6, $f4, $f10 -/* 023340 80022740 46143202 */ mul.s $f8, $f6, $f20 -/* 023344 80022744 00000000 */ nop -/* 023348 80022748 46146282 */ mul.s $f10, $f12, $f20 -/* 02334C 8002274C 46124100 */ add.s $f4, $f8, $f18 -/* 023350 80022750 E4E40000 */ swc1 $f4, ($a3) -/* 023354 80022754 460E5180 */ add.s $f6, $f10, $f14 -/* 023358 80022758 C7B50008 */ lwc1 $f21, 8($sp) -/* 02335C 8002275C 46143202 */ mul.s $f8, $f6, $f20 -/* 023360 80022760 46124100 */ add.s $f4, $f8, $f18 -/* 023364 80022764 46142282 */ mul.s $f10, $f4, $f20 -/* 023368 80022768 C7B4000C */ lwc1 $f20, 0xc($sp) -/* 02336C 8002276C 27BD0020 */ addiu $sp, $sp, 0x20 -/* 023370 80022770 46025080 */ add.s $f2, $f10, $f2 -/* 023374 80022774 03E00008 */ jr $ra -/* 023378 80022778 46001006 */ mov.s $f0, $f2 - -glabel func_8002277C -/* 02337C 8002277C 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 023380 80022780 3C013FE0 */ li $at, 0x3FE00000 # 1.750000 -/* 023384 80022784 00057880 */ sll $t7, $a1, 2 -/* 023388 80022788 44819800 */ mtc1 $at, $f19 -/* 02338C 8002278C AFA60020 */ sw $a2, 0x20($sp) -/* 023390 80022790 008F1021 */ addu $v0, $a0, $t7 -/* 023394 80022794 C44A0000 */ lwc1 $f10, ($v0) -/* 023398 80022798 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 02339C 8002279C 44813800 */ mtc1 $at, $f7 -/* 0233A0 800227A0 C444000C */ lwc1 $f4, 0xc($v0) -/* 0233A4 800227A4 44803000 */ mtc1 $zero, $f6 -/* 0233A8 800227A8 46005321 */ cvt.d.s $f12, $f10 -/* 0233AC 800227AC 462C3382 */ mul.d $f14, $f6, $f12 -/* 0233B0 800227B0 C4480004 */ lwc1 $f8, 4($v0) -/* 0233B4 800227B4 3C013FF8 */ li $at, 0x3FF80000 # 1.937500 -/* 0233B8 800227B8 460020A1 */ cvt.d.s $f2, $f4 -/* 0233BC 800227BC C4440008 */ lwc1 $f4, 8($v0) -/* 0233C0 800227C0 44815800 */ mtc1 $at, $f11 -/* 0233C4 800227C4 44805000 */ mtc1 $zero, $f10 -/* 0233C8 800227C8 46004421 */ cvt.d.s $f16, $f8 -/* 0233CC 800227CC 46305182 */ mul.d $f6, $f10, $f16 -/* 0233D0 800227D0 3C01BFF8 */ li $at, 0xBFF80000 # -1.937500 -/* 0233D4 800227D4 46002021 */ cvt.d.s $f0, $f4 -/* 0233D8 800227D8 44802000 */ mtc1 $zero, $f4 -/* 0233DC 800227DC 44812800 */ mtc1 $at, $f5 -/* 0233E0 800227E0 44809000 */ mtc1 $zero, $f18 -/* 0233E4 800227E4 46202282 */ mul.d $f10, $f4, $f0 -/* 0233E8 800227E8 46267200 */ add.d $f8, $f14, $f6 -/* 0233EC 800227EC 3C01C004 */ li $at, 0xC0040000 # -2.062500 -/* 0233F0 800227F0 46321102 */ mul.d $f4, $f2, $f18 -/* 0233F4 800227F4 462A4180 */ add.d $f6, $f8, $f10 -/* 0233F8 800227F8 46262200 */ add.d $f8, $f4, $f6 -/* 0233FC 800227FC 44802000 */ mtc1 $zero, $f4 -/* 023400 80022800 44812800 */ mtc1 $at, $f5 -/* 023404 80022804 462042A0 */ cvt.s.d $f10, $f8 -/* 023408 80022808 3C01BFE0 */ li $at, 0xBFE00000 # -1.750000 -/* 02340C 8002280C 46302182 */ mul.d $f6, $f4, $f16 -/* 023410 80022810 46200100 */ add.d $f4, $f0, $f0 -/* 023414 80022814 E7AA0008 */ swc1 $f10, 8($sp) -/* 023418 80022818 46266200 */ add.d $f8, $f12, $f6 -/* 02341C 8002281C 46244180 */ add.d $f6, $f8, $f4 -/* 023420 80022820 44804000 */ mtc1 $zero, $f8 -/* 023424 80022824 44814800 */ mtc1 $at, $f9 -/* 023428 80022828 3C014040 */ li $at, 0x40400000 # 3.000000 -/* 02342C 8002282C 46281102 */ mul.d $f4, $f2, $f8 -/* 023430 80022830 46262200 */ add.d $f8, $f4, $f6 -/* 023434 80022834 46320182 */ mul.d $f6, $f0, $f18 -/* 023438 80022838 46204120 */ cvt.s.d $f4, $f8 -/* 02343C 8002283C E7A4000C */ swc1 $f4, 0xc($sp) -/* 023440 80022840 462E3200 */ add.d $f8, $f6, $f14 -/* 023444 80022844 462041A0 */ cvt.s.d $f6, $f8 -/* 023448 80022848 44814000 */ mtc1 $at, $f8 -/* 02344C 8002284C E7A60010 */ swc1 $f6, 0x10($sp) -/* 023450 80022850 46085282 */ mul.s $f10, $f10, $f8 -/* 023454 80022854 C7A80020 */ lwc1 $f8, 0x20($sp) -/* 023458 80022858 3C014000 */ li $at, 0x40000000 # 2.000000 -/* 02345C 8002285C E7A60000 */ swc1 $f6, ($sp) -/* 023460 80022860 46085282 */ mul.s $f10, $f10, $f8 -/* 023464 80022864 44813000 */ mtc1 $at, $f6 -/* 023468 80022868 00000000 */ nop -/* 02346C 8002286C 46043182 */ mul.s $f6, $f6, $f4 -/* 023470 80022870 46065100 */ add.s $f4, $f10, $f6 -/* 023474 80022874 C7A60000 */ lwc1 $f6, ($sp) -/* 023478 80022878 46082282 */ mul.s $f10, $f4, $f8 -/* 02347C 8002287C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 023480 80022880 03E00008 */ jr $ra -/* 023484 80022884 46065000 */ add.s $f0, $f10, $f6 - -glabel func_80022888 -/* 023488 80022888 00057080 */ sll $t6, $a1, 2 -/* 02348C 8002288C 008E1021 */ addu $v0, $a0, $t6 -/* 023490 80022890 C44C0004 */ lwc1 $f12, 4($v0) -/* 023494 80022894 C4440008 */ lwc1 $f4, 8($v0) -/* 023498 80022898 44867000 */ mtc1 $a2, $f14 -/* 02349C 8002289C 460C2181 */ sub.s $f6, $f4, $f12 -/* 0234A0 800228A0 460E3202 */ mul.s $f8, $f6, $f14 -/* 0234A4 800228A4 460C4080 */ add.s $f2, $f8, $f12 -/* 0234A8 800228A8 03E00008 */ jr $ra -/* 0234AC 800228AC 46001006 */ mov.s $f0, $f2 - -glabel func_800228B0 -/* 0234B0 800228B0 00057080 */ sll $t6, $a1, 2 -/* 0234B4 800228B4 AFA60008 */ sw $a2, 8($sp) -/* 0234B8 800228B8 008E1021 */ addu $v0, $a0, $t6 -/* 0234BC 800228BC C44C0004 */ lwc1 $f12, 4($v0) -/* 0234C0 800228C0 C4440008 */ lwc1 $f4, 8($v0) -/* 0234C4 800228C4 C7A60008 */ lwc1 $f6, 8($sp) -/* 0234C8 800228C8 460C2081 */ sub.s $f2, $f4, $f12 -/* 0234CC 800228CC 46061202 */ mul.s $f8, $f2, $f6 -/* 0234D0 800228D0 E4E20000 */ swc1 $f2, ($a3) -/* 0234D4 800228D4 03E00008 */ jr $ra -/* 0234D8 800228D8 46086000 */ add.s $f0, $f12, $f8 - -/* 0234DC 800228DC AFA40000 */ sw $a0, ($sp) -/* 0234E0 800228E0 AFA50004 */ sw $a1, 4($sp) -/* 0234E4 800228E4 03E00008 */ jr $ra -/* 0234E8 800228E8 AFA60008 */ sw $a2, 8($sp) - -glabel func_800228EC -/* 0234EC 800228EC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0234F0 800228F0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0234F4 800228F4 AFA40018 */ sw $a0, 0x18($sp) -/* 0234F8 800228F8 240E0003 */ li $t6, 3 -/* 0234FC 800228FC 3C018012 */ lui $at, %hi(D_8011AEF7) # $at, 0x8012 -/* 023500 80022900 A02EAEF7 */ sb $t6, %lo(D_8011AEF7)($at) -/* 023504 80022904 0C006EB2 */ jal func_8001BAC8 -/* 023508 80022908 00002025 */ move $a0, $zero -/* 02350C 8002290C 8C430064 */ lw $v1, 0x64($v0) -/* 023510 80022910 00000000 */ nop -/* 023514 80022914 A4600190 */ sh $zero, 0x190($v1) -/* 023518 80022918 A0600192 */ sb $zero, 0x192($v1) -/* 02351C 8002291C A0600193 */ sb $zero, 0x193($v1) -/* 023520 80022920 A46001BA */ sh $zero, 0x1ba($v1) -/* 023524 80022924 8FA40018 */ lw $a0, 0x18($sp) -/* 023528 80022928 0C005F9D */ jal func_80017E74 -/* 02352C 8002292C 00000000 */ nop -/* 023530 80022930 0C01BCE2 */ jal func_8006F388 -/* 023534 80022934 2404000A */ li $a0, 10 -/* 023538 80022938 8FBF0014 */ lw $ra, 0x14($sp) -/* 02353C 8002293C 27BD0018 */ addiu $sp, $sp, 0x18 -/* 023540 80022940 03E00008 */ jr $ra -/* 023544 80022944 00000000 */ nop - -glabel func_80022948 -/* 023548 80022948 3C028012 */ lui $v0, %hi(D_8011AEF7) # $v0, 0x8012 -/* 02354C 8002294C 2442AEF7 */ addiu $v0, %lo(D_8011AEF7) # addiu $v0, $v0, -0x5109 -/* 023550 80022950 804E0000 */ lb $t6, ($v0) -/* 023554 80022954 27BDFF80 */ addiu $sp, $sp, -0x80 -/* 023558 80022958 25CFFFFF */ addiu $t7, $t6, -1 -/* 02355C 8002295C A04F0000 */ sb $t7, ($v0) -/* 023560 80022960 80580000 */ lb $t8, ($v0) -/* 023564 80022964 AFBF001C */ sw $ra, 0x1c($sp) -/* 023568 80022968 170000E0 */ bnez $t8, .L80022CEC -/* 02356C 8002296C AFB00018 */ sw $s0, 0x18($sp) -/* 023570 80022970 0C01AF6C */ jal func_8006BDB0 -/* 023574 80022974 00000000 */ nop -/* 023578 80022978 AFA20068 */ sw $v0, 0x68($sp) -/* 02357C 8002297C 90590052 */ lbu $t9, 0x52($v0) -/* 023580 80022980 3C018012 */ lui $at, %hi(D_8011AEF8) # $at, 0x8012 -/* 023584 80022984 A039AEF8 */ sb $t9, %lo(D_8011AEF8)($at) -/* 023588 80022988 94490054 */ lhu $t1, 0x54($v0) -/* 02358C 8002298C 3C018012 */ lui $at, %hi(D_8011AEFC) # $at, 0x8012 -/* 023590 80022990 240A001D */ li $t2, 29 -/* 023594 80022994 340BFFFF */ li $t3, 65535 -/* 023598 80022998 AC29AEFC */ sw $t1, %lo(D_8011AEFC)($at) -/* 02359C 8002299C A04A0052 */ sb $t2, 0x52($v0) -/* 0235A0 800229A0 A44B0054 */ sh $t3, 0x54($v0) -/* 0235A4 800229A4 0C006EB2 */ jal func_8001BAC8 -/* 0235A8 800229A8 00002025 */ move $a0, $zero -/* 0235AC 800229AC 8C500064 */ lw $s0, 0x64($v0) -/* 0235B0 800229B0 3C018012 */ lui $at, %hi(D_8011AEF6) # $at, 0x8012 -/* 0235B4 800229B4 820C01D6 */ lb $t4, 0x1d6($s0) -/* 0235B8 800229B8 00402025 */ move $a0, $v0 -/* 0235BC 800229BC 258D0001 */ addiu $t5, $t4, 1 -/* 0235C0 800229C0 A02DAEF6 */ sb $t5, %lo(D_8011AEF6)($at) -/* 0235C4 800229C4 0C008C34 */ jal func_800230D0 -/* 0235C8 800229C8 02002825 */ move $a1, $s0 -/* 0235CC 800229CC 860E01A0 */ lh $t6, 0x1a0($s0) -/* 0235D0 800229D0 340F8000 */ li $t7, 32768 -/* 0235D4 800229D4 01EEC023 */ subu $t8, $t7, $t6 -/* 0235D8 800229D8 A6180196 */ sh $t8, 0x196($s0) -/* 0235DC 800229DC A20001FC */ sb $zero, 0x1fc($s0) -/* 0235E0 800229E0 A20001F4 */ sb $zero, 0x1f4($s0) -/* 0235E4 800229E4 A6000190 */ sh $zero, 0x190($s0) -/* 0235E8 800229E8 A2000192 */ sb $zero, 0x192($s0) -/* 0235EC 800229EC A2000193 */ sb $zero, 0x193($s0) -/* 0235F0 800229F0 A2000194 */ sb $zero, 0x194($s0) -/* 0235F4 800229F4 AE000128 */ sw $zero, 0x128($s0) -/* 0235F8 800229F8 AE00012C */ sw $zero, 0x12c($s0) -/* 0235FC 800229FC AE000130 */ sw $zero, 0x130($s0) -/* 023600 80022A00 A60001BA */ sh $zero, 0x1ba($s0) -/* 023604 80022A04 0C01BAA4 */ jal func_8006EA90 -/* 023608 80022A08 AFA2007C */ sw $v0, 0x7c($sp) -/* 02360C 80022A0C 24190050 */ li $t9, 80 -/* 023610 80022A10 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012 -/* 023614 80022A14 AC39ADB0 */ sw $t9, %lo(D_8011ADB0)($at) -/* 023618 80022A18 3C018012 */ lui $at, %hi(D_8011ADB4) # $at, 0x8012 -/* 02361C 80022A1C 8FA30068 */ lw $v1, 0x68($sp) -/* 023620 80022A20 AC20ADB4 */ sw $zero, %lo(D_8011ADB4)($at) -/* 023624 80022A24 3C018012 */ lui $at, %hi(D_8011ADC0) # $at, 0x8012 -/* 023628 80022A28 24090001 */ li $t1, 1 -/* 02362C 80022A2C AFA20054 */ sw $v0, 0x54($sp) -/* 023630 80022A30 AC29ADC0 */ sw $t1, %lo(D_8011ADC0)($at) -/* 023634 80022A34 240A0003 */ li $t2, 3 -/* 023638 80022A38 A06A004B */ sb $t2, 0x4b($v1) -/* 02363C 80022A3C 0C027C0D */ jal func_8009F034 -/* 023640 80022A40 A060004C */ sb $zero, 0x4c($v1) -/* 023644 80022A44 8FA8007C */ lw $t0, 0x7c($sp) -/* 023648 80022A48 00001025 */ move $v0, $zero -/* 02364C 80022A4C 02001825 */ move $v1, $s0 -.L80022A50: -/* 023650 80022A50 24420001 */ addiu $v0, $v0, 1 -/* 023654 80022A54 28410005 */ slti $at, $v0, 5 -/* 023658 80022A58 AC600128 */ sw $zero, 0x128($v1) -/* 02365C 80022A5C 1420FFFC */ bnez $at, .L80022A50 -/* 023660 80022A60 24630004 */ addiu $v1, $v1, 4 -/* 023664 80022A64 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 023668 80022A68 44810000 */ mtc1 $at, $f0 -/* 02366C 80022A6C C5060008 */ lwc1 $f6, 8($t0) -/* 023670 80022A70 C5040010 */ lwc1 $f4, 0x10($t0) -/* 023674 80022A74 46003202 */ mul.s $f8, $f6, $f0 -/* 023678 80022A78 46082280 */ add.s $f10, $f4, $f8 -/* 02367C 80022A7C 444BF800 */ cfc1 $t3, $31 -/* 023680 80022A80 00000000 */ nop -/* 023684 80022A84 35610003 */ ori $at, $t3, 3 -/* 023688 80022A88 38210002 */ xori $at, $at, 2 -/* 02368C 80022A8C 44C1F800 */ ctc1 $at, $31 -/* 023690 80022A90 00000000 */ nop -/* 023694 80022A94 46005424 */ cvt.w.s $f16, $f10 -/* 023698 80022A98 440C8000 */ mfc1 $t4, $f16 -/* 02369C 80022A9C 44CBF800 */ ctc1 $t3, $31 -/* 0236A0 80022AA0 A7AC005A */ sh $t4, 0x5a($sp) -/* 0236A4 80022AA4 C5060000 */ lwc1 $f6, ($t0) -/* 0236A8 80022AA8 C5120018 */ lwc1 $f18, 0x18($t0) -/* 0236AC 80022AAC 46003102 */ mul.s $f4, $f6, $f0 -/* 0236B0 80022AB0 000C7400 */ sll $t6, $t4, 0x10 -/* 0236B4 80022AB4 000EC403 */ sra $t8, $t6, 0x10 -/* 0236B8 80022AB8 44988000 */ mtc1 $t8, $f16 -/* 0236BC 80022ABC 46049201 */ sub.s $f8, $f18, $f4 -/* 0236C0 80022AC0 444DF800 */ cfc1 $t5, $31 -/* 0236C4 80022AC4 00000000 */ nop -/* 0236C8 80022AC8 35A10003 */ ori $at, $t5, 3 -/* 0236CC 80022ACC 38210002 */ xori $at, $at, 2 -/* 0236D0 80022AD0 44C1F800 */ ctc1 $at, $31 -/* 0236D4 80022AD4 00000000 */ nop -/* 0236D8 80022AD8 460042A4 */ cvt.w.s $f10, $f8 -/* 0236DC 80022ADC 440F5000 */ mfc1 $t7, $f10 -/* 0236E0 80022AE0 44CDF800 */ ctc1 $t5, $31 -/* 0236E4 80022AE4 000FCC00 */ sll $t9, $t7, 0x10 -/* 0236E8 80022AE8 00194C03 */ sra $t1, $t9, 0x10 -/* 0236EC 80022AEC 44893000 */ mtc1 $t1, $f6 -/* 0236F0 80022AF0 A7AF005E */ sh $t7, 0x5e($sp) -/* 0236F4 80022AF4 468031A0 */ cvt.s.w $f6, $f6 -/* 0236F8 80022AF8 C50E0014 */ lwc1 $f14, 0x14($t0) -/* 0236FC 80022AFC AFA8007C */ sw $t0, 0x7c($sp) -/* 023700 80022B00 44063000 */ mfc1 $a2, $f6 -/* 023704 80022B04 0C00A7C6 */ jal func_80029F18 -/* 023708 80022B08 46808320 */ cvt.s.w $f12, $f16 -/* 02370C 80022B0C 87AA005A */ lh $t2, 0x5a($sp) -/* 023710 80022B10 87AB005E */ lh $t3, 0x5e($sp) -/* 023714 80022B14 448A9000 */ mtc1 $t2, $f18 -/* 023718 80022B18 448B2000 */ mtc1 $t3, $f4 -/* 02371C 80022B1C 468094A0 */ cvt.s.w $f18, $f18 -/* 023720 80022B20 00402025 */ move $a0, $v0 -/* 023724 80022B24 27A7002C */ addiu $a3, $sp, 0x2c -/* 023728 80022B28 46802120 */ cvt.s.w $f4, $f4 -/* 02372C 80022B2C 44059000 */ mfc1 $a1, $f18 -/* 023730 80022B30 44062000 */ mfc1 $a2, $f4 -/* 023734 80022B34 0C00AEAC */ jal func_8002BAB0 -/* 023738 80022B38 00000000 */ nop -/* 02373C 80022B3C 8FA8007C */ lw $t0, 0x7c($sp) -/* 023740 80022B40 1040000C */ beqz $v0, .L80022B74 -/* 023744 80022B44 240F0010 */ li $t7, 16 -/* 023748 80022B48 444DF800 */ cfc1 $t5, $31 -/* 02374C 80022B4C C7A8002C */ lwc1 $f8, 0x2c($sp) -/* 023750 80022B50 35A10003 */ ori $at, $t5, 3 -/* 023754 80022B54 38210002 */ xori $at, $at, 2 -/* 023758 80022B58 44C1F800 */ ctc1 $at, $31 -/* 02375C 80022B5C 00000000 */ nop -/* 023760 80022B60 460042A4 */ cvt.w.s $f10, $f8 -/* 023764 80022B64 440C5000 */ mfc1 $t4, $f10 -/* 023768 80022B68 44CDF800 */ ctc1 $t5, $31 -/* 02376C 80022B6C 1000000C */ b .L80022BA0 -/* 023770 80022B70 A7AC005C */ sh $t4, 0x5c($sp) -.L80022B74: -/* 023774 80022B74 444EF800 */ cfc1 $t6, $31 -/* 023778 80022B78 C5100014 */ lwc1 $f16, 0x14($t0) -/* 02377C 80022B7C 35C10003 */ ori $at, $t6, 3 -/* 023780 80022B80 38210002 */ xori $at, $at, 2 -/* 023784 80022B84 44C1F800 */ ctc1 $at, $31 -/* 023788 80022B88 00000000 */ nop -/* 02378C 80022B8C 460081A4 */ cvt.w.s $f6, $f16 -/* 023790 80022B90 44183000 */ mfc1 $t8, $f6 -/* 023794 80022B94 44CEF800 */ ctc1 $t6, $31 -/* 023798 80022B98 A7B8005C */ sh $t8, 0x5c($sp) -/* 02379C 80022B9C 00000000 */ nop -.L80022BA0: -/* 0237A0 80022BA0 A3AF0059 */ sb $t7, 0x59($sp) -/* 0237A4 80022BA4 861901A0 */ lh $t9, 0x1a0($s0) -/* 0237A8 80022BA8 24090004 */ li $t1, 4 -/* 0237AC 80022BAC 240A00DA */ li $t2, 218 -/* 0237B0 80022BB0 A7A00062 */ sh $zero, 0x62($sp) -/* 0237B4 80022BB4 A7A00060 */ sh $zero, 0x60($sp) -/* 0237B8 80022BB8 A7A90066 */ sh $t1, 0x66($sp) -/* 0237BC 80022BBC A3AA0058 */ sb $t2, 0x58($sp) -/* 0237C0 80022BC0 00002025 */ move $a0, $zero -/* 0237C4 80022BC4 0C01867D */ jal func_800619F4 -/* 0237C8 80022BC8 A7B90064 */ sh $t9, 0x64($sp) -/* 0237CC 80022BCC 27A40058 */ addiu $a0, $sp, 0x58 -/* 0237D0 80022BD0 0C003A95 */ jal func_8000EA54 -/* 0237D4 80022BD4 24050001 */ li $a1, 1 -/* 0237D8 80022BD8 3C0B8012 */ lui $t3, %hi(D_8011AEE4) # $t3, 0x8012 -/* 0237DC 80022BDC 8D6BAEE4 */ lw $t3, %lo(D_8011AEE4)($t3) -/* 0237E0 80022BE0 3C0D8012 */ lui $t5, %hi(D_8011AEE8) # $t5, 0x8012 -/* 0237E4 80022BE4 AD620004 */ sw $v0, 4($t3) -/* 0237E8 80022BE8 8DADAEE8 */ lw $t5, %lo(D_8011AEE8)($t5) -/* 0237EC 80022BEC 3C0C8012 */ lui $t4, %hi(D_8011AEEC) # $t4, 0x8012 -/* 0237F0 80022BF0 ADA20004 */ sw $v0, 4($t5) -/* 0237F4 80022BF4 8D8CAEEC */ lw $t4, %lo(D_8011AEEC)($t4) -/* 0237F8 80022BF8 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 0237FC 80022BFC 44810000 */ mtc1 $at, $f0 -/* 023800 80022C00 AD820004 */ sw $v0, 4($t4) -/* 023804 80022C04 AC40003C */ sw $zero, 0x3c($v0) -/* 023808 80022C08 3C018012 */ lui $at, %hi(D_8011AEF0) # $at, 0x8012 -/* 02380C 80022C0C 240E0002 */ li $t6, 2 -/* 023810 80022C10 AC2EAEF0 */ sw $t6, %lo(D_8011AEF0)($at) -/* 023814 80022C14 8C500064 */ lw $s0, 0x64($v0) -/* 023818 80022C18 2418000A */ li $t8, 10 -/* 02381C 80022C1C A21801D6 */ sb $t8, 0x1d6($s0) -/* 023820 80022C20 820F01D6 */ lb $t7, 0x1d6($s0) -/* 023824 80022C24 24190001 */ li $t9, 1 -/* 023828 80022C28 A2190002 */ sb $t9, 2($s0) -/* 02382C 80022C2C A20F01D7 */ sb $t7, 0x1d7($s0) -/* 023830 80022C30 8FA90054 */ lw $t1, 0x54($sp) -/* 023834 80022C34 240B00FF */ li $t3, 255 -/* 023838 80022C38 812A0059 */ lb $t2, 0x59($t1) -/* 02383C 80022C3C E6000090 */ swc1 $f0, 0x90($s0) -/* 023840 80022C40 E600008C */ swc1 $f0, 0x8c($s0) -/* 023844 80022C44 A20B01F7 */ sb $t3, 0x1f7($s0) -/* 023848 80022C48 AE000118 */ sw $zero, 0x118($s0) -/* 02384C 80022C4C A20A0003 */ sb $t2, 3($s0) -/* 023850 80022C50 8C4C004C */ lw $t4, 0x4c($v0) -/* 023854 80022C54 240D0002 */ li $t5, 2 -/* 023858 80022C58 A18D0012 */ sb $t5, 0x12($t4) -/* 02385C 80022C5C 3C048012 */ lui $a0, %hi(D_8011AE60) # $a0, 0x8012 -/* 023860 80022C60 3C058012 */ lui $a1, %hi(D_8011AE5C) # $a1, 0x8012 -/* 023864 80022C64 8CA5AE5C */ lw $a1, %lo(D_8011AE5C)($a1) -/* 023868 80022C68 8C84AE60 */ lw $a0, %lo(D_8011AE60)($a0) -/* 02386C 80022C6C 2407003E */ li $a3, 62 -/* 023870 80022C70 0085082A */ slt $at, $a0, $a1 -/* 023874 80022C74 10200018 */ beqz $at, .L80022CD8 -/* 023878 80022C78 00041880 */ sll $v1, $a0, 2 -/* 02387C 80022C7C 3C068012 */ lui $a2, %hi(D_8011AE58) # $a2, 0x8012 -/* 023880 80022C80 24C6AE58 */ addiu $a2, %lo(D_8011AE58) # addiu $a2, $a2, -0x51a8 -.L80022C84: -/* 023884 80022C84 8CCE0000 */ lw $t6, ($a2) -/* 023888 80022C88 24840001 */ addiu $a0, $a0, 1 -/* 02388C 80022C8C 01C3C021 */ addu $t8, $t6, $v1 -/* 023890 80022C90 8F020000 */ lw $v0, ($t8) -/* 023894 80022C94 00000000 */ nop -/* 023898 80022C98 844F0006 */ lh $t7, 6($v0) -/* 02389C 80022C9C 00000000 */ nop -/* 0238A0 80022CA0 31F98000 */ andi $t9, $t7, 0x8000 -/* 0238A4 80022CA4 1720000A */ bnez $t9, .L80022CD0 -/* 0238A8 80022CA8 0085082A */ slt $at, $a0, $a1 -/* 0238AC 80022CAC 84490048 */ lh $t1, 0x48($v0) -/* 0238B0 80022CB0 00000000 */ nop -/* 0238B4 80022CB4 14E90006 */ bne $a3, $t1, .L80022CD0 -/* 0238B8 80022CB8 0085082A */ slt $at, $a0, $a1 -/* 0238BC 80022CBC AE020154 */ sw $v0, 0x154($s0) -/* 0238C0 80022CC0 3C058012 */ lui $a1, %hi(D_8011AE5C) # $a1, 0x8012 -/* 0238C4 80022CC4 8CA5AE5C */ lw $a1, %lo(D_8011AE5C)($a1) -/* 0238C8 80022CC8 00000000 */ nop -/* 0238CC 80022CCC 0085082A */ slt $at, $a0, $a1 -.L80022CD0: -/* 0238D0 80022CD0 1420FFEC */ bnez $at, .L80022C84 -/* 0238D4 80022CD4 24630004 */ addiu $v1, $v1, 4 -.L80022CD8: -/* 0238D8 80022CD8 0C01BCE2 */ jal func_8006F388 -/* 0238DC 80022CDC 24040014 */ li $a0, 20 -/* 0238E0 80022CE0 3C04800E */ lui $a0, %hi(D_800DC6F0) # $a0, 0x800e -/* 0238E4 80022CE4 0C030076 */ jal func_800C01D8 -/* 0238E8 80022CE8 2484C6F0 */ addiu $a0, %lo(D_800DC6F0) # addiu $a0, $a0, -0x3910 -.L80022CEC: -/* 0238EC 80022CEC 8FBF001C */ lw $ra, 0x1c($sp) -/* 0238F0 80022CF0 8FB00018 */ lw $s0, 0x18($sp) -/* 0238F4 80022CF4 03E00008 */ jr $ra -/* 0238F8 80022CF8 27BD0080 */ addiu $sp, $sp, 0x80 - -glabel func_80022CFC -/* 0238FC 80022CFC 27BDFFD8 */ addiu $sp, $sp, -0x28 -/* 023900 80022D00 44856000 */ mtc1 $a1, $f12 -/* 023904 80022D04 44867000 */ mtc1 $a2, $f14 -/* 023908 80022D08 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 02390C 80022D0C 4487A000 */ mtc1 $a3, $f20 -/* 023910 80022D10 AFBF0024 */ sw $ra, 0x24($sp) -/* 023914 80022D14 AFB00020 */ sw $s0, 0x20($sp) -/* 023918 80022D18 00808025 */ move $s0, $a0 -/* 02391C 80022D1C E7B50018 */ swc1 $f21, 0x18($sp) -/* 023920 80022D20 E7AC002C */ swc1 $f12, 0x2c($sp) -/* 023924 80022D24 0C01BAA4 */ jal func_8006EA90 -/* 023928 80022D28 E7AE0030 */ swc1 $f14, 0x30($sp) -/* 02392C 80022D2C 3C088012 */ lui $t0, %hi(D_8011AE5C) # $t0, 0x8012 -/* 023930 80022D30 8D08AE5C */ lw $t0, %lo(D_8011AE5C)($t0) -/* 023934 80022D34 C7AC002C */ lwc1 $f12, 0x2c($sp) -/* 023938 80022D38 C7AE0030 */ lwc1 $f14, 0x30($sp) -/* 02393C 80022D3C 19000030 */ blez $t0, .L80022E00 -/* 023940 80022D40 00003025 */ move $a2, $zero -/* 023944 80022D44 3C014024 */ li $at, 0x40240000 # 2.562500 -/* 023948 80022D48 3C098012 */ lui $t1, %hi(D_8011AE58) # $t1, 0x8012 -/* 02394C 80022D4C 44810800 */ mtc1 $at, $f1 -/* 023950 80022D50 44800000 */ mtc1 $zero, $f0 -/* 023954 80022D54 2529AE58 */ addiu $t1, %lo(D_8011AE58) # addiu $t1, $t1, -0x51a8 -/* 023958 80022D58 00003825 */ move $a3, $zero -/* 02395C 80022D5C 240A004D */ li $t2, 77 -.L80022D60: -/* 023960 80022D60 8D2E0000 */ lw $t6, ($t1) -/* 023964 80022D64 24C60001 */ addiu $a2, $a2, 1 -/* 023968 80022D68 01C77821 */ addu $t7, $t6, $a3 -/* 02396C 80022D6C 8DE30000 */ lw $v1, ($t7) -/* 023970 80022D70 00000000 */ nop -/* 023974 80022D74 84780048 */ lh $t8, 0x48($v1) -/* 023978 80022D78 00000000 */ nop -/* 02397C 80022D7C 1558001E */ bne $t2, $t8, .L80022DF8 -/* 023980 80022D80 00C8082A */ slt $at, $a2, $t0 -/* 023984 80022D84 8C64003C */ lw $a0, 0x3c($v1) -/* 023988 80022D88 00000000 */ nop -/* 02398C 80022D8C 1080001A */ beqz $a0, .L80022DF8 -/* 023990 80022D90 00C8082A */ slt $at, $a2, $t0 -/* 023994 80022D94 8085000A */ lb $a1, 0xa($a0) -/* 023998 80022D98 00000000 */ nop -/* 02399C 80022D9C 18A00016 */ blez $a1, .L80022DF8 -/* 0239A0 80022DA0 00C8082A */ slt $at, $a2, $t0 -/* 0239A4 80022DA4 94440014 */ lhu $a0, 0x14($v0) -/* 0239A8 80022DA8 24B90002 */ addiu $t9, $a1, 2 -/* 0239AC 80022DAC 10800011 */ beqz $a0, .L80022DF4 -/* 0239B0 80022DB0 240B0001 */ li $t3, 1 -/* 0239B4 80022DB4 032B6004 */ sllv $t4, $t3, $t9 -/* 0239B8 80022DB8 008C6824 */ and $t5, $a0, $t4 -/* 0239BC 80022DBC 11A0000E */ beqz $t5, .L80022DF8 -/* 0239C0 80022DC0 00C8082A */ slt $at, $a2, $t0 -/* 0239C4 80022DC4 46007121 */ cvt.d.s $f4, $f14 -/* 0239C8 80022DC8 46202180 */ add.d $f6, $f4, $f0 -/* 0239CC 80022DCC E46C000C */ swc1 $f12, 0xc($v1) -/* 0239D0 80022DD0 46203220 */ cvt.s.d $f8, $f6 -/* 0239D4 80022DD4 E4740014 */ swc1 $f20, 0x14($v1) -/* 0239D8 80022DD8 E4680010 */ swc1 $f8, 0x10($v1) -/* 0239DC 80022DDC A470002E */ sh $s0, 0x2e($v1) -/* 0239E0 80022DE0 AC600078 */ sw $zero, 0x78($v1) -/* 0239E4 80022DE4 A0600039 */ sb $zero, 0x39($v1) -/* 0239E8 80022DE8 3C088012 */ lui $t0, %hi(D_8011AE5C) # $t0, 0x8012 -/* 0239EC 80022DEC 8D08AE5C */ lw $t0, %lo(D_8011AE5C)($t0) -/* 0239F0 80022DF0 00000000 */ nop -.L80022DF4: -/* 0239F4 80022DF4 00C8082A */ slt $at, $a2, $t0 -.L80022DF8: -/* 0239F8 80022DF8 1420FFD9 */ bnez $at, .L80022D60 -/* 0239FC 80022DFC 24E70004 */ addiu $a3, $a3, 4 -.L80022E00: -/* 023A00 80022E00 8FBF0024 */ lw $ra, 0x24($sp) -/* 023A04 80022E04 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 023A08 80022E08 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 023A0C 80022E0C 8FB00020 */ lw $s0, 0x20($sp) -/* 023A10 80022E10 03E00008 */ jr $ra -/* 023A14 80022E14 27BD0028 */ addiu $sp, $sp, 0x28 - -glabel func_80022E18 -/* 023A18 80022E18 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* 023A1C 80022E1C AFBF0014 */ sw $ra, 0x14($sp) -/* 023A20 80022E20 0C01AF6C */ jal func_8006BDB0 -/* 023A24 80022E24 AFA40030 */ sw $a0, 0x30($sp) -/* 023A28 80022E28 240E0005 */ li $t6, 5 -/* 023A2C 80022E2C A04E004C */ sb $t6, 0x4c($v0) -/* 023A30 80022E30 3C0F8012 */ lui $t7, %hi(D_8011AEF8) # $t7, 0x8012 -/* 023A34 80022E34 81EFAEF8 */ lb $t7, %lo(D_8011AEF8)($t7) -/* 023A38 80022E38 3C188012 */ lui $t8, %hi(D_8011AEFC) # $t8, 0x8012 -/* 023A3C 80022E3C A04F0052 */ sb $t7, 0x52($v0) -/* 023A40 80022E40 8F18AEFC */ lw $t8, %lo(D_8011AEFC)($t8) -/* 023A44 80022E44 24040001 */ li $a0, 1 -/* 023A48 80022E48 0C02AC6B */ jal func_800AB1AC -/* 023A4C 80022E4C A4580054 */ sh $t8, 0x54($v0) -/* 023A50 80022E50 3C078012 */ lui $a3, %hi(D_8011AEE4) # $a3, 0x8012 -/* 023A54 80022E54 3C068012 */ lui $a2, %hi(D_8011AEF0) # $a2, 0x8012 -/* 023A58 80022E58 00002825 */ move $a1, $zero -/* 023A5C 80022E5C 24C6AEF0 */ addiu $a2, %lo(D_8011AEF0) # addiu $a2, $a2, -0x5110 -/* 023A60 80022E60 24E7AEE4 */ addiu $a3, %lo(D_8011AEE4) # addiu $a3, $a3, -0x511c -/* 023A64 80022E64 00001025 */ move $v0, $zero -.L80022E68: -/* 023A68 80022E68 8CF90000 */ lw $t9, ($a3) -/* 023A6C 80022E6C 24A50001 */ addiu $a1, $a1, 1 -/* 023A70 80022E70 03224021 */ addu $t0, $t9, $v0 -/* 023A74 80022E74 8D090000 */ lw $t1, ($t0) -/* 023A78 80022E78 24420004 */ addiu $v0, $v0, 4 -/* 023A7C 80022E7C 8D230064 */ lw $v1, 0x64($t1) -/* 023A80 80022E80 00000000 */ nop -/* 023A84 80022E84 A06001D8 */ sb $zero, 0x1d8($v1) -/* 023A88 80022E88 A0600193 */ sb $zero, 0x193($v1) -/* 023A8C 80022E8C A0600192 */ sb $zero, 0x192($v1) -/* 023A90 80022E90 A4600190 */ sh $zero, 0x190($v1) -/* 023A94 80022E94 8CCA0000 */ lw $t2, ($a2) -/* 023A98 80022E98 00000000 */ nop -/* 023A9C 80022E9C 00AA082A */ slt $at, $a1, $t2 -/* 023AA0 80022EA0 1420FFF1 */ bnez $at, .L80022E68 -/* 023AA4 80022EA4 00000000 */ nop -/* 023AA8 80022EA8 8CEB0000 */ lw $t3, ($a3) -/* 023AAC 80022EAC 00000000 */ nop -/* 023AB0 80022EB0 8D640004 */ lw $a0, 4($t3) -/* 023AB4 80022EB4 0C003FEE */ jal func_8000FFB8 -/* 023AB8 80022EB8 00000000 */ nop -/* 023ABC 80022EBC 3C078012 */ lui $a3, %hi(D_8011AEE4) # $a3, 0x8012 -/* 023AC0 80022EC0 24E7AEE4 */ addiu $a3, %lo(D_8011AEE4) # addiu $a3, $a3, -0x511c -/* 023AC4 80022EC4 8CEC0000 */ lw $t4, ($a3) -/* 023AC8 80022EC8 3C0E8012 */ lui $t6, %hi(D_8011AEE8) # $t6, 0x8012 -/* 023ACC 80022ECC 8DCEAEE8 */ lw $t6, %lo(D_8011AEE8)($t6) -/* 023AD0 80022ED0 8D8D0000 */ lw $t5, ($t4) -/* 023AD4 80022ED4 3C068012 */ lui $a2, %hi(D_8011AEF0) # $a2, 0x8012 -/* 023AD8 80022ED8 24C6AEF0 */ addiu $a2, %lo(D_8011AEF0) # addiu $a2, $a2, -0x5110 -/* 023ADC 80022EDC 240F0001 */ li $t7, 1 -/* 023AE0 80022EE0 ADCD0000 */ sw $t5, ($t6) -/* 023AE4 80022EE4 ACCF0000 */ sw $t7, ($a2) -/* 023AE8 80022EE8 3C058012 */ lui $a1, %hi(D_8011AE60) # $a1, 0x8012 -/* 023AEC 80022EEC 3C038012 */ lui $v1, %hi(D_8011AE5C) # $v1, 0x8012 -/* 023AF0 80022EF0 8C63AE5C */ lw $v1, %lo(D_8011AE5C)($v1) -/* 023AF4 80022EF4 8CA5AE60 */ lw $a1, %lo(D_8011AE60)($a1) -/* 023AF8 80022EF8 3C188012 */ lui $t8, %hi(D_8011AE58) # $t8, 0x8012 -/* 023AFC 80022EFC 00A3082A */ slt $at, $a1, $v1 -/* 023B00 80022F00 10200013 */ beqz $at, .L80022F50 -/* 023B04 80022F04 00051080 */ sll $v0, $a1, 2 -/* 023B08 80022F08 8F18AE58 */ lw $t8, %lo(D_8011AE58)($t8) -/* 023B0C 80022F0C 00033080 */ sll $a2, $v1, 2 -/* 023B10 80022F10 2405003E */ li $a1, 62 -/* 023B14 80022F14 03022021 */ addu $a0, $t8, $v0 -.L80022F18: -/* 023B18 80022F18 8C830000 */ lw $v1, ($a0) -/* 023B1C 80022F1C 24420004 */ addiu $v0, $v0, 4 -/* 023B20 80022F20 84790006 */ lh $t9, 6($v1) -/* 023B24 80022F24 0046082A */ slt $at, $v0, $a2 -/* 023B28 80022F28 33288000 */ andi $t0, $t9, 0x8000 -/* 023B2C 80022F2C 15000006 */ bnez $t0, .L80022F48 -/* 023B30 80022F30 00000000 */ nop -/* 023B34 80022F34 84690048 */ lh $t1, 0x48($v1) -/* 023B38 80022F38 00000000 */ nop -/* 023B3C 80022F3C 14A90002 */ bne $a1, $t1, .L80022F48 -/* 023B40 80022F40 00000000 */ nop -/* 023B44 80022F44 AFA3001C */ sw $v1, 0x1c($sp) -.L80022F48: -/* 023B48 80022F48 1420FFF3 */ bnez $at, .L80022F18 -/* 023B4C 80022F4C 24840004 */ addiu $a0, $a0, 4 -.L80022F50: -/* 023B50 80022F50 8CEA0000 */ lw $t2, ($a3) -/* 023B54 80022F54 00000000 */ nop -/* 023B58 80022F58 8D4B0000 */ lw $t3, ($t2) -/* 023B5C 80022F5C 00000000 */ nop -/* 023B60 80022F60 8D630064 */ lw $v1, 0x64($t3) -/* 023B64 80022F64 00000000 */ nop -/* 023B68 80022F68 8C64015C */ lw $a0, 0x15c($v1) -/* 023B6C 80022F6C 00000000 */ nop -/* 023B70 80022F70 10800007 */ beqz $a0, .L80022F90 -/* 023B74 80022F74 8FAC0030 */ lw $t4, 0x30($sp) -/* 023B78 80022F78 0C003FEE */ jal func_8000FFB8 -/* 023B7C 80022F7C AFA30024 */ sw $v1, 0x24($sp) -/* 023B80 80022F80 8FA30024 */ lw $v1, 0x24($sp) -/* 023B84 80022F84 00000000 */ nop -/* 023B88 80022F88 AC60015C */ sw $zero, 0x15c($v1) -/* 023B8C 80022F8C 8FAC0030 */ lw $t4, 0x30($sp) -.L80022F90: -/* 023B90 80022F90 00000000 */ nop -/* 023B94 80022F94 1580002C */ bnez $t4, .L80023048 -/* 023B98 80022F98 00000000 */ nop -/* 023B9C 80022F9C 846D01AC */ lh $t5, 0x1ac($v1) -/* 023BA0 80022FA0 24010001 */ li $at, 1 -/* 023BA4 80022FA4 15A1001F */ bne $t5, $at, .L80023024 -/* 023BA8 80022FA8 00000000 */ nop -/* 023BAC 80022FAC 0C01BAA4 */ jal func_8006EA90 -/* 023BB0 80022FB0 AFA30024 */ sw $v1, 0x24($sp) -/* 023BB4 80022FB4 8FA30024 */ lw $v1, 0x24($sp) -/* 023BB8 80022FB8 94580014 */ lhu $t8, 0x14($v0) -/* 023BBC 80022FBC 806701D6 */ lb $a3, 0x1d6($v1) -/* 023BC0 80022FC0 240F0001 */ li $t7, 1 -/* 023BC4 80022FC4 24EE0003 */ addiu $t6, $a3, 3 -/* 023BC8 80022FC8 01CF2804 */ sllv $a1, $t7, $t6 -/* 023BCC 80022FCC 0305C824 */ and $t9, $t8, $a1 -/* 023BD0 80022FD0 13200005 */ beqz $t9, .L80022FE8 -/* 023BD4 80022FD4 00403025 */ move $a2, $v0 -/* 023BD8 80022FD8 0C0274CC */ jal func_8009D330 -/* 023BDC 80022FDC 24040005 */ li $a0, 5 -/* 023BE0 80022FE0 10000013 */ b .L80023030 -/* 023BE4 80022FE4 8FAB001C */ lw $t3, 0x1c($sp) -.L80022FE8: -/* 023BE8 80022FE8 24E40006 */ addiu $a0, $a3, 6 -/* 023BEC 80022FEC AFA5002C */ sw $a1, 0x2c($sp) -/* 023BF0 80022FF0 0C0274CC */ jal func_8009D330 -/* 023BF4 80022FF4 AFA60020 */ sw $a2, 0x20($sp) -/* 023BF8 80022FF8 8FA60020 */ lw $a2, 0x20($sp) -/* 023BFC 80022FFC 8FA5002C */ lw $a1, 0x2c($sp) -/* 023C00 80023000 94C80014 */ lhu $t0, 0x14($a2) -/* 023C04 80023004 00000000 */ nop -/* 023C08 80023008 01054825 */ or $t1, $t0, $a1 -/* 023C0C 8002300C 0C027068 */ jal func_8009C1A0 -/* 023C10 80023010 A4C90014 */ sh $t1, 0x14($a2) -/* 023C14 80023014 0C01BB12 */ jal func_8006EC48 -/* 023C18 80023018 00402025 */ move $a0, $v0 -/* 023C1C 8002301C 10000004 */ b .L80023030 -/* 023C20 80023020 8FAB001C */ lw $t3, 0x1c($sp) -.L80023024: -/* 023C24 80023024 0C0274CC */ jal func_8009D330 -/* 023C28 80023028 24040004 */ li $a0, 4 -/* 023C2C 8002302C 8FAB001C */ lw $t3, 0x1c($sp) -.L80023030: -/* 023C30 80023030 240A001F */ li $t2, 31 -/* 023C34 80023034 24040002 */ li $a0, 2 -/* 023C38 80023038 0C01486E */ jal func_800521B8 -/* 023C3C 8002303C AD6A0078 */ sw $t2, 0x78($t3) -/* 023C40 80023040 10000016 */ b .L8002309C -/* 023C44 80023044 00000000 */ nop -.L80023048: -/* 023C48 80023048 0C0002CA */ jal func_80000B28 -/* 023C4C 8002304C 00000000 */ nop -/* 023C50 80023050 0C000611 */ jal func_80001844 -/* 023C54 80023054 00000000 */ nop -/* 023C58 80023058 0C0274CC */ jal func_8009D330 -/* 023C5C 8002305C 00002025 */ move $a0, $zero -/* 023C60 80023060 0C00205A */ jal func_80008168 -/* 023C64 80023064 00000000 */ nop -/* 023C68 80023068 8FAC0030 */ lw $t4, 0x30($sp) -/* 023C6C 8002306C 24010002 */ li $at, 2 -/* 023C70 80023070 15810003 */ bne $t4, $at, .L80023080 -/* 023C74 80023074 00000000 */ nop -/* 023C78 80023078 0C030C7B */ jal func_800C31EC -/* 023C7C 8002307C 00002025 */ move $a0, $zero -.L80023080: -/* 023C80 80023080 3C018012 */ lui $at, %hi(D_8011ADB0) # $at, 0x8012 -/* 023C84 80023084 AC20ADB0 */ sw $zero, %lo(D_8011ADB0)($at) -/* 023C88 80023088 8FAF001C */ lw $t7, 0x1c($sp) -/* 023C8C 8002308C 3C018012 */ lui $at, %hi(D_8011ADB8) # $at, 0x8012 -/* 023C90 80023090 AC20ADB8 */ sw $zero, %lo(D_8011ADB8)($at) -/* 023C94 80023094 240D0014 */ li $t5, 20 -/* 023C98 80023098 ADED0078 */ sw $t5, 0x78($t7) -.L8002309C: -/* 023C9C 8002309C 0C0002CA */ jal func_80000B28 -/* 023CA0 800230A0 00000000 */ nop -/* 023CA4 800230A4 0C0282DD */ jal func_800A0B74 -/* 023CA8 800230A8 00000000 */ nop -/* 023CAC 800230AC 3C013F80 */ li $at, 0x3F800000 # 1.000000 -/* 023CB0 800230B0 44816000 */ mtc1 $at, $f12 -/* 023CB4 800230B4 0C01AF44 */ jal func_8006BD10 -/* 023CB8 800230B8 00000000 */ nop -/* 023CBC 800230BC 8FBF0014 */ lw $ra, 0x14($sp) -/* 023CC0 800230C0 3C018012 */ lui $at, %hi(D_8011AEF6) # $at, 0x8012 -/* 023CC4 800230C4 A020AEF6 */ sb $zero, %lo(D_8011AEF6)($at) -/* 023CC8 800230C8 03E00008 */ jr $ra -/* 023CCC 800230CC 27BD0030 */ addiu $sp, $sp, 0x30 - -glabel func_800230D0 -/* 023CD0 800230D0 27BDFFA0 */ addiu $sp, $sp, -0x60 -/* 023CD4 800230D4 3C028012 */ lui $v0, %hi(D_8011AED0) # $v0, 0x8012 -/* 023CD8 800230D8 8C42AED0 */ lw $v0, %lo(D_8011AED0)($v0) -/* 023CDC 800230DC AFB10018 */ sw $s1, 0x18($sp) -/* 023CE0 800230E0 AFB00014 */ sw $s0, 0x14($sp) -/* 023CE4 800230E4 00808025 */ move $s0, $a0 -/* 023CE8 800230E8 00A08825 */ move $s1, $a1 -/* 023CEC 800230EC 14400032 */ bnez $v0, .L800231B8 -/* 023CF0 800230F0 AFBF001C */ sw $ra, 0x1c($sp) -/* 023CF4 800230F4 3C078012 */ lui $a3, %hi(D_8011AE5C) # $a3, 0x8012 -/* 023CF8 800230F8 24E7AE5C */ addiu $a3, %lo(D_8011AE5C) # addiu $a3, $a3, -0x51a4 -/* 023CFC 800230FC 8CE40000 */ lw $a0, ($a3) -/* 023D00 80023100 00004025 */ move $t0, $zero -/* 023D04 80023104 1880002A */ blez $a0, .L800231B0 -/* 023D08 80023108 00001025 */ move $v0, $zero -/* 023D0C 8002310C 3C058012 */ lui $a1, %hi(D_8011AE58) # $a1, 0x8012 -/* 023D10 80023110 24A5AE58 */ addiu $a1, %lo(D_8011AE58) # addiu $a1, $a1, -0x51a8 -/* 023D14 80023114 2406000B */ li $a2, 11 -.L80023118: -/* 023D18 80023118 8CAE0000 */ lw $t6, ($a1) -/* 023D1C 8002311C 00027880 */ sll $t7, $v0, 2 -/* 023D20 80023120 01CFC021 */ addu $t8, $t6, $t7 -/* 023D24 80023124 8F030000 */ lw $v1, ($t8) -/* 023D28 80023128 00000000 */ nop -/* 023D2C 8002312C 84790006 */ lh $t9, 6($v1) -/* 023D30 80023130 00000000 */ nop -/* 023D34 80023134 33298000 */ andi $t1, $t9, 0x8000 -/* 023D38 80023138 15200018 */ bnez $t1, .L8002319C -/* 023D3C 8002313C 00000000 */ nop -/* 023D40 80023140 846A0048 */ lh $t2, 0x48($v1) -/* 023D44 80023144 00000000 */ nop -/* 023D48 80023148 14CA0014 */ bne $a2, $t2, .L8002319C -/* 023D4C 8002314C 00000000 */ nop -/* 023D50 80023150 8C6B0078 */ lw $t3, 0x78($v1) -/* 023D54 80023154 00000000 */ nop -/* 023D58 80023158 15600011 */ bnez $t3, .L800231A0 -/* 023D5C 8002315C 24420001 */ addiu $v0, $v0, 1 -/* 023D60 80023160 C464000C */ lwc1 $f4, 0xc($v1) -/* 023D64 80023164 00000000 */ nop -/* 023D68 80023168 E604000C */ swc1 $f4, 0xc($s0) -/* 023D6C 8002316C C4660010 */ lwc1 $f6, 0x10($v1) -/* 023D70 80023170 00000000 */ nop -/* 023D74 80023174 E6060010 */ swc1 $f6, 0x10($s0) -/* 023D78 80023178 C4680014 */ lwc1 $f8, 0x14($v1) -/* 023D7C 8002317C 00000000 */ nop -/* 023D80 80023180 E6080014 */ swc1 $f8, 0x14($s0) -/* 023D84 80023184 846C002E */ lh $t4, 0x2e($v1) -/* 023D88 80023188 00000000 */ nop -/* 023D8C 8002318C A60C002E */ sh $t4, 0x2e($s0) -/* 023D90 80023190 8CE40000 */ lw $a0, ($a3) -/* 023D94 80023194 00000000 */ nop -/* 023D98 80023198 00801025 */ move $v0, $a0 -.L8002319C: -/* 023D9C 8002319C 24420001 */ addiu $v0, $v0, 1 -.L800231A0: -/* 023DA0 800231A0 0044082A */ slt $at, $v0, $a0 -/* 023DA4 800231A4 1420FFDC */ bnez $at, .L80023118 -/* 023DA8 800231A8 00000000 */ nop -/* 023DAC 800231AC AFA3002C */ sw $v1, 0x2c($sp) -.L800231B0: -/* 023DB0 800231B0 1000001E */ b .L8002322C -/* 023DB4 800231B4 8604002E */ lh $a0, 0x2e($s0) -.L800231B8: -/* 023DB8 800231B8 00026900 */ sll $t5, $v0, 4 -/* 023DBC 800231BC 3C0E8012 */ lui $t6, %hi(D_8011AECC) # $t6, 0x8012 -/* 023DC0 800231C0 8DCEAECC */ lw $t6, %lo(D_8011AECC)($t6) -/* 023DC4 800231C4 01A26823 */ subu $t5, $t5, $v0 -/* 023DC8 800231C8 000D6880 */ sll $t5, $t5, 2 -/* 023DCC 800231CC 3C01420C */ li $at, 0x420C0000 # 35.000000 -/* 023DD0 800231D0 01AE4021 */ addu $t0, $t5, $t6 -/* 023DD4 800231D4 44810000 */ mtc1 $at, $f0 -/* 023DD8 800231D8 C510FFCC */ lwc1 $f16, -0x34($t0) -/* 023DDC 800231DC C50AFFD4 */ lwc1 $f10, -0x2c($t0) -/* 023DE0 800231E0 46008482 */ mul.s $f18, $f16, $f0 -/* 023DE4 800231E4 2508FFC4 */ addiu $t0, $t0, -0x3c -/* 023DE8 800231E8 46125101 */ sub.s $f4, $f10, $f18 -/* 023DEC 800231EC E604000C */ swc1 $f4, 0xc($s0) -/* 023DF0 800231F0 C5060014 */ lwc1 $f6, 0x14($t0) -/* 023DF4 800231F4 C60C000C */ lwc1 $f12, 0xc($s0) -/* 023DF8 800231F8 E6060010 */ swc1 $f6, 0x10($s0) -/* 023DFC 800231FC C5100000 */ lwc1 $f16, ($t0) -/* 023E00 80023200 C5080018 */ lwc1 $f8, 0x18($t0) -/* 023E04 80023204 46008282 */ mul.s $f10, $f16, $f0 -/* 023E08 80023208 C60E0010 */ lwc1 $f14, 0x10($s0) -/* 023E0C 8002320C 460A4480 */ add.s $f18, $f8, $f10 -/* 023E10 80023210 E6120014 */ swc1 $f18, 0x14($s0) -/* 023E14 80023214 8E060014 */ lw $a2, 0x14($s0) -/* 023E18 80023218 0C00A7C6 */ jal func_80029F18 -/* 023E1C 8002321C AFA8005C */ sw $t0, 0x5c($sp) -/* 023E20 80023220 8FA8005C */ lw $t0, 0x5c($sp) -/* 023E24 80023224 A602002E */ sh $v0, 0x2e($s0) -/* 023E28 80023228 8604002E */ lh $a0, 0x2e($s0) -.L8002322C: -/* 023E2C 8002322C 8E05000C */ lw $a1, 0xc($s0) -/* 023E30 80023230 8E060014 */ lw $a2, 0x14($s0) -/* 023E34 80023234 AFA8005C */ sw $t0, 0x5c($sp) -/* 023E38 80023238 0C00AEAC */ jal func_8002BAB0 -/* 023E3C 8002323C 27A70030 */ addiu $a3, $sp, 0x30 -/* 023E40 80023240 8FA3002C */ lw $v1, 0x2c($sp) -/* 023E44 80023244 8FA8005C */ lw $t0, 0x5c($sp) -/* 023E48 80023248 10400005 */ beqz $v0, .L80023260 -/* 023E4C 8002324C 00027880 */ sll $t7, $v0, 2 -/* 023E50 80023250 03AFC021 */ addu $t8, $sp, $t7 -/* 023E54 80023254 C704002C */ lwc1 $f4, 0x2c($t8) -/* 023E58 80023258 00000000 */ nop -/* 023E5C 8002325C E6040010 */ swc1 $f4, 0x10($s0) -.L80023260: -/* 023E60 80023260 C606000C */ lwc1 $f6, 0xc($s0) -/* 023E64 80023264 00000000 */ nop -/* 023E68 80023268 E626005C */ swc1 $f6, 0x5c($s1) -/* 023E6C 8002326C C6100010 */ lwc1 $f16, 0x10($s0) -/* 023E70 80023270 00000000 */ nop -/* 023E74 80023274 E6300060 */ swc1 $f16, 0x60($s1) -/* 023E78 80023278 C6080014 */ lwc1 $f8, 0x14($s0) -/* 023E7C 8002327C 11000008 */ beqz $t0, .L800232A0 -/* 023E80 80023280 E6280064 */ swc1 $f8, 0x64($s1) -/* 023E84 80023284 C50C0000 */ lwc1 $f12, ($t0) -/* 023E88 80023288 C50E0008 */ lwc1 $f14, 8($t0) -/* 023E8C 8002328C 0C01C1D4 */ jal func_80070750 -/* 023E90 80023290 AFA8005C */ sw $t0, 0x5c($sp) -/* 023E94 80023294 8FA8005C */ lw $t0, 0x5c($sp) -/* 023E98 80023298 10000004 */ b .L800232AC -/* 023E9C 8002329C A62201A0 */ sh $v0, 0x1a0($s1) -.L800232A0: -/* 023EA0 800232A0 84790000 */ lh $t9, ($v1) -/* 023EA4 800232A4 00000000 */ nop -/* 023EA8 800232A8 A63901A0 */ sh $t9, 0x1a0($s1) -.L800232AC: -/* 023EAC 800232AC A2200192 */ sb $zero, 0x192($s1) -/* 023EB0 800232B0 3C0A8012 */ lui $t2, %hi(D_8011AED0) # $t2, 0x8012 -/* 023EB4 800232B4 8D4AAED0 */ lw $t2, %lo(D_8011AED0)($t2) -/* 023EB8 800232B8 82290193 */ lb $t1, 0x193($s1) -/* 023EBC 800232BC 862C01A0 */ lh $t4, 0x1a0($s1) -/* 023EC0 800232C0 012A0019 */ multu $t1, $t2 -/* 023EC4 800232C4 3C014170 */ li $at, 0x41700000 # 15.000000 -/* 023EC8 800232C8 44810000 */ mtc1 $at, $f0 -/* 023ECC 800232CC 2401FFFF */ li $at, -1 -/* 023ED0 800232D0 00005812 */ mflo $t3 -/* 023ED4 800232D4 A62B0190 */ sh $t3, 0x190($s1) -/* 023ED8 800232D8 C60A000C */ lwc1 $f10, 0xc($s0) -/* 023EDC 800232DC A60C0000 */ sh $t4, ($s0) -/* 023EE0 800232E0 E62A00D8 */ swc1 $f10, 0xd8($s1) -/* 023EE4 800232E4 C6120010 */ lwc1 $f18, 0x10($s0) -/* 023EE8 800232E8 00000000 */ nop -/* 023EEC 800232EC 46009100 */ add.s $f4, $f18, $f0 -/* 023EF0 800232F0 E62400DC */ swc1 $f4, 0xdc($s1) -/* 023EF4 800232F4 C6060014 */ lwc1 $f6, 0x14($s0) -/* 023EF8 800232F8 00000000 */ nop -/* 023EFC 800232FC E62600E0 */ swc1 $f6, 0xe0($s1) -/* 023F00 80023300 C610000C */ lwc1 $f16, 0xc($s0) -/* 023F04 80023304 00000000 */ nop -/* 023F08 80023308 E63000E4 */ swc1 $f16, 0xe4($s1) -/* 023F0C 8002330C C6080010 */ lwc1 $f8, 0x10($s0) -/* 023F10 80023310 00000000 */ nop -/* 023F14 80023314 46004280 */ add.s $f10, $f8, $f0 -/* 023F18 80023318 E62A00E8 */ swc1 $f10, 0xe8($s1) -/* 023F1C 8002331C C6120014 */ lwc1 $f18, 0x14($s0) -/* 023F20 80023320 00000000 */ nop -/* 023F24 80023324 E63200EC */ swc1 $f18, 0xec($s1) -/* 023F28 80023328 C604000C */ lwc1 $f4, 0xc($s0) -/* 023F2C 8002332C 00000000 */ nop -/* 023F30 80023330 E62400F0 */ swc1 $f4, 0xf0($s1) -/* 023F34 80023334 C6060010 */ lwc1 $f6, 0x10($s0) -/* 023F38 80023338 00000000 */ nop -/* 023F3C 8002333C 46003400 */ add.s $f16, $f6, $f0 -/* 023F40 80023340 E63000F4 */ swc1 $f16, 0xf4($s1) -/* 023F44 80023344 C6080014 */ lwc1 $f8, 0x14($s0) -/* 023F48 80023348 00000000 */ nop -/* 023F4C 8002334C E62800F8 */ swc1 $f8, 0xf8($s1) -/* 023F50 80023350 C60A000C */ lwc1 $f10, 0xc($s0) -/* 023F54 80023354 00000000 */ nop -/* 023F58 80023358 E62A00FC */ swc1 $f10, 0xfc($s1) -/* 023F5C 8002335C C6120010 */ lwc1 $f18, 0x10($s0) -/* 023F60 80023360 00000000 */ nop -/* 023F64 80023364 46009100 */ add.s $f4, $f18, $f0 -/* 023F68 80023368 44800000 */ mtc1 $zero, $f0 -/* 023F6C 8002336C E6240100 */ swc1 $f4, 0x100($s1) -/* 023F70 80023370 C6060014 */ lwc1 $f6, 0x14($s0) -/* 023F74 80023374 00000000 */ nop -/* 023F78 80023378 E6260104 */ swc1 $f6, 0x104($s1) -/* 023F7C 8002337C 8E0D004C */ lw $t5, 0x4c($s0) -/* 023F80 80023380 C610000C */ lwc1 $f16, 0xc($s0) -/* 023F84 80023384 00000000 */ nop -/* 023F88 80023388 E5B00004 */ swc1 $f16, 4($t5) -/* 023F8C 8002338C 8E0E004C */ lw $t6, 0x4c($s0) -/* 023F90 80023390 C6080010 */ lwc1 $f8, 0x10($s0) -/* 023F94 80023394 00000000 */ nop -/* 023F98 80023398 E5C80008 */ swc1 $f8, 8($t6) -/* 023F9C 8002339C 8E0F004C */ lw $t7, 0x4c($s0) -/* 023FA0 800233A0 C60A0014 */ lwc1 $f10, 0x14($s0) -/* 023FA4 800233A4 00000000 */ nop -/* 023FA8 800233A8 E5EA000C */ swc1 $f10, 0xc($t7) -/* 023FAC 800233AC E620002C */ swc1 $f0, 0x2c($s1) -/* 023FB0 800233B0 E6200030 */ swc1 $f0, 0x30($s1) -/* 023FB4 800233B4 E600001C */ swc1 $f0, 0x1c($s0) -/* 023FB8 800233B8 E6000024 */ swc1 $f0, 0x24($s0) -/* 023FBC 800233BC 823801D7 */ lb $t8, 0x1d7($s1) -/* 023FC0 800233C0 86240000 */ lh $a0, ($s1) -/* 023FC4 800233C4 A23801D6 */ sb $t8, 0x1d6($s1) -/* 023FC8 800233C8 1081000F */ beq $a0, $at, .L80023408 -/* 023FCC 800233CC 8FBF001C */ lw $ra, 0x1c($sp) -/* 023FD0 800233D0 0C01997A */ jal func_800665E8 -/* 023FD4 800233D4 AFA8005C */ sw $t0, 0x5c($sp) -/* 023FD8 800233D8 0C01A73F */ jal func_80069CFC -/* 023FDC 800233DC 00000000 */ nop -/* 023FE0 800233E0 C612000C */ lwc1 $f18, 0xc($s0) -/* 023FE4 800233E4 8FA8005C */ lw $t0, 0x5c($sp) -/* 023FE8 800233E8 E452000C */ swc1 $f18, 0xc($v0) -/* 023FEC 800233EC C6040010 */ lwc1 $f4, 0x10($s0) -/* 023FF0 800233F0 00000000 */ nop -/* 023FF4 800233F4 E4440010 */ swc1 $f4, 0x10($v0) -/* 023FF8 800233F8 C6060014 */ lwc1 $f6, 0x14($s0) -/* 023FFC 800233FC 00000000 */ nop -/* 024000 80023400 E4460014 */ swc1 $f6, 0x14($v0) -/* 024004 80023404 8FBF001C */ lw $ra, 0x1c($sp) -.L80023408: -/* 024008 80023408 8FB00014 */ lw $s0, 0x14($sp) -/* 02400C 8002340C 8FB10018 */ lw $s1, 0x18($sp) -/* 024010 80023410 27BD0060 */ addiu $sp, $sp, 0x60 -/* 024014 80023414 03E00008 */ jr $ra -/* 024018 80023418 01001025 */ move $v0, $t0 - -glabel func_8002341C -/* 02401C 8002341C 3C028012 */ lui $v0, %hi(D_8011AEF6) # $v0, 0x8012 -/* 024020 80023420 8042AEF6 */ lb $v0, %lo(D_8011AEF6)($v0) -/* 024024 80023424 03E00008 */ jr $ra -/* 024028 80023428 00000000 */ nop - -glabel func_8002342C -/* 02402C 8002342C 27BDFFB0 */ addiu $sp, $sp, -0x50 -/* 024030 80023430 AFB3003C */ sw $s3, 0x3c($sp) -/* 024034 80023434 3C138012 */ lui $s3, %hi(D_8011AE5C) # $s3, 0x8012 -/* 024038 80023438 2673AE5C */ addiu $s3, %lo(D_8011AE5C) # addiu $s3, $s3, -0x51a4 -/* 02403C 8002343C 8E6E0000 */ lw $t6, ($s3) -/* 024040 80023440 E7B4001C */ swc1 $f20, 0x1c($sp) -/* 024044 80023444 AFB60048 */ sw $s6, 0x48($sp) -/* 024048 80023448 AFB10034 */ sw $s1, 0x34($sp) -/* 02404C 8002344C E7B90028 */ swc1 $f25, 0x28($sp) -/* 024050 80023450 E7B8002C */ swc1 $f24, 0x2c($sp) -/* 024054 80023454 E7B70020 */ swc1 $f23, 0x20($sp) -/* 024058 80023458 E7B60024 */ swc1 $f22, 0x24($sp) -/* 02405C 8002345C 4480A000 */ mtc1 $zero, $f20 -/* 024060 80023460 46006586 */ mov.s $f22, $f12 -/* 024064 80023464 46007606 */ mov.s $f24, $f14 -/* 024068 80023468 AFBF004C */ sw $ra, 0x4c($sp) -/* 02406C 8002346C AFB50044 */ sw $s5, 0x44($sp) -/* 024070 80023470 AFB40040 */ sw $s4, 0x40($sp) -/* 024074 80023474 AFB20038 */ sw $s2, 0x38($sp) -/* 024078 80023478 AFB00030 */ sw $s0, 0x30($sp) -/* 02407C 8002347C E7B50018 */ swc1 $f21, 0x18($sp) -/* 024080 80023480 00008825 */ move $s1, $zero -/* 024084 80023484 19C00027 */ blez $t6, .L80023524 -/* 024088 80023488 0000B025 */ move $s6, $zero -/* 02408C 8002348C 3C148012 */ lui $s4, %hi(D_8011AE58) # $s4, 0x8012 -/* 024090 80023490 2694AE58 */ addiu $s4, %lo(D_8011AE58) # addiu $s4, $s4, -0x51a8 -/* 024094 80023494 00009025 */ move $s2, $zero -/* 024098 80023498 24150057 */ li $s5, 87 -.L8002349C: -/* 02409C 8002349C 8E8F0000 */ lw $t7, ($s4) -/* 0240A0 800234A0 00000000 */ nop -/* 0240A4 800234A4 01F2C021 */ addu $t8, $t7, $s2 -/* 0240A8 800234A8 8F020000 */ lw $v0, ($t8) -/* 0240AC 800234AC 00000000 */ nop -/* 0240B0 800234B0 84590006 */ lh $t9, 6($v0) -/* 0240B4 800234B4 00000000 */ nop -/* 0240B8 800234B8 33288000 */ andi $t0, $t9, 0x8000 -/* 0240BC 800234BC 15000014 */ bnez $t0, .L80023510 -/* 0240C0 800234C0 00000000 */ nop -/* 0240C4 800234C4 84490048 */ lh $t1, 0x48($v0) -/* 0240C8 800234C8 00000000 */ nop -/* 0240CC 800234CC 16A90010 */ bne $s5, $t1, .L80023510 -/* 0240D0 800234D0 00000000 */ nop -/* 0240D4 800234D4 C444000C */ lwc1 $f4, 0xc($v0) -/* 0240D8 800234D8 C4460014 */ lwc1 $f6, 0x14($v0) -/* 0240DC 800234DC 46162001 */ sub.s $f0, $f4, $f22 -/* 0240E0 800234E0 00408025 */ move $s0, $v0 -/* 0240E4 800234E4 46000202 */ mul.s $f8, $f0, $f0 -/* 0240E8 800234E8 46183081 */ sub.s $f2, $f6, $f24 -/* 0240EC 800234EC 46021282 */ mul.s $f10, $f2, $f2 -/* 0240F0 800234F0 0C0326B4 */ jal sqrtf -/* 0240F4 800234F4 460A4300 */ add.s $f12, $f8, $f10 -/* 0240F8 800234F8 4600A03C */ c.lt.s $f20, $f0 -/* 0240FC 800234FC 00000000 */ nop -/* 024100 80023500 45000003 */ bc1f .L80023510 -/* 024104 80023504 00000000 */ nop -/* 024108 80023508 46000506 */ mov.s $f20, $f0 -/* 02410C 8002350C 0200B025 */ move $s6, $s0 -.L80023510: -/* 024110 80023510 8E6A0000 */ lw $t2, ($s3) -/* 024114 80023514 26310001 */ addiu $s1, $s1, 1 -/* 024118 80023518 022A082A */ slt $at, $s1, $t2 -/* 02411C 8002351C 1420FFDF */ bnez $at, .L8002349C -/* 024120 80023520 26520004 */ addiu $s2, $s2, 4 -.L80023524: -/* 024124 80023524 8FBF004C */ lw $ra, 0x4c($sp) -/* 024128 80023528 02C01025 */ move $v0, $s6 -/* 02412C 8002352C 8FB60048 */ lw $s6, 0x48($sp) -/* 024130 80023530 C7B50018 */ lwc1 $f21, 0x18($sp) -/* 024134 80023534 C7B4001C */ lwc1 $f20, 0x1c($sp) -/* 024138 80023538 C7B70020 */ lwc1 $f23, 0x20($sp) -/* 02413C 8002353C C7B60024 */ lwc1 $f22, 0x24($sp) -/* 024140 80023540 C7B90028 */ lwc1 $f25, 0x28($sp) -/* 024144 80023544 C7B8002C */ lwc1 $f24, 0x2c($sp) -/* 024148 80023548 8FB00030 */ lw $s0, 0x30($sp) -/* 02414C 8002354C 8FB10034 */ lw $s1, 0x34($sp) -/* 024150 80023550 8FB20038 */ lw $s2, 0x38($sp) -/* 024154 80023554 8FB3003C */ lw $s3, 0x3c($sp) -/* 024158 80023558 8FB40040 */ lw $s4, 0x40($sp) -/* 02415C 8002355C 8FB50044 */ lw $s5, 0x44($sp) -/* 024160 80023560 03E00008 */ jr $ra -/* 024164 80023564 27BD0050 */ addiu $sp, $sp, 0x50 - -glabel func_80023568 -/* 024168 80023568 3C0E8012 */ lui $t6, %hi(D_8011AD3C) # $t6, 0x8012 -/* 02416C 8002356C 81CEAD3C */ lb $t6, %lo(D_8011AD3C)($t6) -/* 024170 80023570 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 024174 80023574 11C00005 */ beqz $t6, .L8002358C -/* 024178 80023578 AFBF0014 */ sw $ra, 0x14($sp) -/* 02417C 8002357C 3C028012 */ lui $v0, %hi(D_80120001) # $v0, 0x8012 -/* 024180 80023580 8042AD25 */ lb $v0, %lo(D_8011AD25)($v0) -/* 024184 80023584 1000000A */ b .L800235B0 -/* 024188 80023588 24420001 */ addiu $v0, %lo(D_80120001) # addiu $v0, $v0, 1 -.L8002358C: -/* 02418C 8002358C 0C01AF66 */ jal func_8006BD98 -/* 024190 80023590 00000000 */ nop -/* 024194 80023594 24010008 */ li $at, 8 -/* 024198 80023598 14410004 */ bne $v0, $at, .L800235AC -/* 02419C 8002359C 3C028012 */ lui $v0, %hi(D_80120001) # $v0, 0x8012 -/* 0241A0 800235A0 8042AD25 */ lb $v0, %lo(D_8011AD25)($v0) -/* 0241A4 800235A4 10000002 */ b .L800235B0 -/* 0241A8 800235A8 24420001 */ addiu $v0, %lo(D_80120001) # addiu $v0, $v0, 1 -.L800235AC: -/* 0241AC 800235AC 00001025 */ move $v0, $zero -.L800235B0: -/* 0241B0 800235B0 8FBF0014 */ lw $ra, 0x14($sp) -/* 0241B4 800235B4 27BD0018 */ addiu $sp, $sp, 0x18 -/* 0241B8 800235B8 03E00008 */ jr $ra -/* 0241BC 800235BC 00000000 */ nop - -glabel func_800235C0 -/* 0241C0 800235C0 3C028012 */ lui $v0, %hi(D_8011ADD5) # $v0, 0x8012 -/* 0241C4 800235C4 8042ADD5 */ lb $v0, %lo(D_8011ADD5)($v0) -/* 0241C8 800235C8 03E00008 */ jr $ra -/* 0241CC 800235CC 00000000 */ nop - -glabel func_800235D0 -/* 0241D0 800235D0 3C018012 */ lui $at, 0x8012 -/* 0241D4 800235D4 03E00008 */ jr $ra -/* 0241D8 800235D8 A024ADD5 */ sb $a0, -0x522b($at) - -glabel func_800235DC -/* 0241DC 800235DC 8C8E0040 */ lw $t6, 0x40($a0) -/* 0241E0 800235E0 AC850064 */ sw $a1, 0x64($a0) -/* 0241E4 800235E4 81CF0054 */ lb $t7, 0x54($t6) -/* 0241E8 800235E8 00001825 */ move $v1, $zero -/* 0241EC 800235EC 25F8FFFF */ addiu $t8, $t7, -1 -/* 0241F0 800235F0 2F010077 */ sltiu $at, $t8, 0x77 -/* 0241F4 800235F4 102000AC */ beqz $at, .L800238A8 -/* 0241F8 800235F8 0018C080 */ sll $t8, $t8, 2 -/* 0241FC 800235FC 3C01800E */ lui $at, 0x800e -/* 024200 80023600 00380821 */ addu $at, $at, $t8 -/* 024204 80023604 8C385688 */ lw $t8, 0x5688($at) -/* 024208 80023608 00000000 */ nop -/* 02420C 8002360C 03000008 */ jr $t8 -/* 024210 80023610 00000000 */ nop -/* 024214 80023614 24030224 */ li $v1, 548 -/* 024218 80023618 2401FFFC */ li $at, -4 -/* 02421C 8002361C 00611024 */ and $v0, $v1, $at -/* 024220 80023620 03E00008 */ jr $ra -/* 024224 80023624 24420004 */ addiu $v0, $v0, 4 - -/* 024228 80023628 24030018 */ li $v1, 24 -/* 02422C 8002362C 2401FFFC */ li $at, -4 -/* 024230 80023630 00611024 */ and $v0, $v1, $at -/* 024234 80023634 03E00008 */ jr $ra -/* 024238 80023638 24420004 */ addiu $v0, $v0, 4 - -/* 02423C 8002363C 24030018 */ li $v1, 24 -/* 024240 80023640 2401FFFC */ li $at, -4 -/* 024244 80023644 00611024 */ and $v0, $v1, $at -/* 024248 80023648 03E00008 */ jr $ra -/* 02424C 8002364C 24420004 */ addiu $v0, $v0, 4 - -/* 024250 80023650 2403000C */ li $v1, 12 -/* 024254 80023654 2401FFFC */ li $at, -4 -/* 024258 80023658 00611024 */ and $v0, $v1, $at -/* 02425C 8002365C 03E00008 */ jr $ra -/* 024260 80023660 24420004 */ addiu $v0, $v0, 4 - -/* 024264 80023664 24030010 */ li $v1, 16 -/* 024268 80023668 2401FFFC */ li $at, -4 -/* 02426C 8002366C 00611024 */ and $v0, $v1, $at -/* 024270 80023670 03E00008 */ jr $ra -/* 024274 80023674 24420004 */ addiu $v0, $v0, 4 - -/* 024278 80023678 24030014 */ li $v1, 20 -/* 02427C 8002367C 2401FFFC */ li $at, -4 -/* 024280 80023680 00611024 */ and $v0, $v1, $at -/* 024284 80023684 03E00008 */ jr $ra -/* 024288 80023688 24420004 */ addiu $v0, $v0, 4 - -/* 02428C 8002368C 2403001C */ li $v1, 28 -/* 024290 80023690 2401FFFC */ li $at, -4 -/* 024294 80023694 00611024 */ and $v0, $v1, $at -/* 024298 80023698 03E00008 */ jr $ra -/* 02429C 8002369C 24420004 */ addiu $v0, $v0, 4 - -/* 0242A0 800236A0 24030018 */ li $v1, 24 -/* 0242A4 800236A4 2401FFFC */ li $at, -4 -/* 0242A8 800236A8 00611024 */ and $v0, $v1, $at -/* 0242AC 800236AC 03E00008 */ jr $ra -/* 0242B0 800236B0 24420004 */ addiu $v0, $v0, 4 - -/* 0242B4 800236B4 24030006 */ li $v1, 6 -/* 0242B8 800236B8 2401FFFC */ li $at, -4 -/* 0242BC 800236BC 00611024 */ and $v0, $v1, $at -/* 0242C0 800236C0 03E00008 */ jr $ra -/* 0242C4 800236C4 24420004 */ addiu $v0, $v0, 4 - -/* 0242C8 800236C8 2403000C */ li $v1, 12 -/* 0242CC 800236CC 2401FFFC */ li $at, -4 -/* 0242D0 800236D0 00611024 */ and $v0, $v1, $at -/* 0242D4 800236D4 03E00008 */ jr $ra -/* 0242D8 800236D8 24420004 */ addiu $v0, $v0, 4 - -/* 0242DC 800236DC 24030020 */ li $v1, 32 -/* 0242E0 800236E0 2401FFFC */ li $at, -4 -/* 0242E4 800236E4 00611024 */ and $v0, $v1, $at -/* 0242E8 800236E8 03E00008 */ jr $ra -/* 0242EC 800236EC 24420004 */ addiu $v0, $v0, 4 - -/* 0242F0 800236F0 24030008 */ li $v1, 8 -/* 0242F4 800236F4 2401FFFC */ li $at, -4 -/* 0242F8 800236F8 00611024 */ and $v0, $v1, $at -/* 0242FC 800236FC 03E00008 */ jr $ra -/* 024300 80023700 24420004 */ addiu $v0, $v0, 4 - -/* 024304 80023704 2403000C */ li $v1, 12 -/* 024308 80023708 2401FFFC */ li $at, -4 -/* 02430C 8002370C 00611024 */ and $v0, $v1, $at -/* 024310 80023710 03E00008 */ jr $ra -/* 024314 80023714 24420004 */ addiu $v0, $v0, 4 - -/* 024318 80023718 24030008 */ li $v1, 8 -/* 02431C 8002371C 2401FFFC */ li $at, -4 -/* 024320 80023720 00611024 */ and $v0, $v1, $at -/* 024324 80023724 03E00008 */ jr $ra -/* 024328 80023728 24420004 */ addiu $v0, $v0, 4 - -/* 02432C 8002372C 24030018 */ li $v1, 24 -/* 024330 80023730 2401FFFC */ li $at, -4 -/* 024334 80023734 00611024 */ and $v0, $v1, $at -/* 024338 80023738 03E00008 */ jr $ra -/* 02433C 8002373C 24420004 */ addiu $v0, $v0, 4 - -/* 024340 80023740 2403000C */ li $v1, 12 -/* 024344 80023744 2401FFFC */ li $at, -4 -/* 024348 80023748 00611024 */ and $v0, $v1, $at -/* 02434C 8002374C 03E00008 */ jr $ra -/* 024350 80023750 24420004 */ addiu $v0, $v0, 4 - -/* 024354 80023754 24030038 */ li $v1, 56 -/* 024358 80023758 2401FFFC */ li $at, -4 -/* 02435C 8002375C 00611024 */ and $v0, $v1, $at -/* 024360 80023760 03E00008 */ jr $ra -/* 024364 80023764 24420004 */ addiu $v0, $v0, 4 - -/* 024368 80023768 24030014 */ li $v1, 20 -/* 02436C 8002376C 2401FFFC */ li $at, -4 -/* 024370 80023770 00611024 */ and $v0, $v1, $at -/* 024374 80023774 03E00008 */ jr $ra -/* 024378 80023778 24420004 */ addiu $v0, $v0, 4 - -/* 02437C 8002377C 24030010 */ li $v1, 16 -/* 024380 80023780 2401FFFC */ li $at, -4 -/* 024384 80023784 00611024 */ and $v0, $v1, $at -/* 024388 80023788 03E00008 */ jr $ra -/* 02438C 8002378C 24420004 */ addiu $v0, $v0, 4 - -/* 024390 80023790 24030048 */ li $v1, 72 -/* 024394 80023794 2401FFFC */ li $at, -4 -/* 024398 80023798 00611024 */ and $v0, $v1, $at -/* 02439C 8002379C 03E00008 */ jr $ra -/* 0243A0 800237A0 24420004 */ addiu $v0, $v0, 4 - -/* 0243A4 800237A4 24030044 */ li $v1, 68 -/* 0243A8 800237A8 2401FFFC */ li $at, -4 -/* 0243AC 800237AC 00611024 */ and $v0, $v1, $at -/* 0243B0 800237B0 03E00008 */ jr $ra -/* 0243B4 800237B4 24420004 */ addiu $v0, $v0, 4 - -/* 0243B8 800237B8 24030020 */ li $v1, 32 -/* 0243BC 800237BC 2401FFFC */ li $at, -4 -/* 0243C0 800237C0 00611024 */ and $v0, $v1, $at -/* 0243C4 800237C4 03E00008 */ jr $ra -/* 0243C8 800237C8 24420004 */ addiu $v0, $v0, 4 - -/* 0243CC 800237CC 24030004 */ li $v1, 4 -/* 0243D0 800237D0 2401FFFC */ li $at, -4 -/* 0243D4 800237D4 00611024 */ and $v0, $v1, $at -/* 0243D8 800237D8 03E00008 */ jr $ra -/* 0243DC 800237DC 24420004 */ addiu $v0, $v0, 4 - -/* 0243E0 800237E0 30B9000F */ andi $t9, $a1, 0xf -/* 0243E4 800237E4 24080010 */ li $t0, 16 -/* 0243E8 800237E8 01191023 */ subu $v0, $t0, $t9 -/* 0243EC 800237EC 00A24821 */ addu $t1, $a1, $v0 -/* 0243F0 800237F0 24430110 */ addiu $v1, $v0, 0x110 -/* 0243F4 800237F4 2401FFFC */ li $at, -4 -/* 0243F8 800237F8 00611024 */ and $v0, $v1, $at -/* 0243FC 800237FC AC890064 */ sw $t1, 0x64($a0) -/* 024400 80023800 03E00008 */ jr $ra -/* 024404 80023804 24420004 */ addiu $v0, $v0, 4 - -/* 024408 80023808 30AA000F */ andi $t2, $a1, 0xf -/* 02440C 8002380C 240B0010 */ li $t3, 16 -/* 024410 80023810 016A1023 */ subu $v0, $t3, $t2 -/* 024414 80023814 00A26021 */ addu $t4, $a1, $v0 -/* 024418 80023818 24430120 */ addiu $v1, $v0, 0x120 -/* 02441C 8002381C 2401FFFC */ li $at, -4 -/* 024420 80023820 00611024 */ and $v0, $v1, $at -/* 024424 80023824 AC8C0064 */ sw $t4, 0x64($a0) -/* 024428 80023828 03E00008 */ jr $ra -/* 02442C 8002382C 24420004 */ addiu $v0, $v0, 4 - -/* 024430 80023830 30AD000F */ andi $t5, $a1, 0xf -/* 024434 80023834 240E0010 */ li $t6, 16 -/* 024438 80023838 01CD1023 */ subu $v0, $t6, $t5 -/* 02443C 8002383C 00A27821 */ addu $t7, $a1, $v0 -/* 024440 80023840 24430028 */ addiu $v1, $v0, 0x28 -/* 024444 80023844 2401FFFC */ li $at, -4 -/* 024448 80023848 00611024 */ and $v0, $v1, $at -/* 02444C 8002384C AC8F0064 */ sw $t7, 0x64($a0) -/* 024450 80023850 03E00008 */ jr $ra -/* 024454 80023854 24420004 */ addiu $v0, $v0, 4 - -/* 024458 80023858 24030060 */ li $v1, 96 -/* 02445C 8002385C 2401FFFC */ li $at, -4 -/* 024460 80023860 00611024 */ and $v0, $v1, $at -/* 024464 80023864 03E00008 */ jr $ra -/* 024468 80023868 24420004 */ addiu $v0, $v0, 4 - -/* 02446C 8002386C 24030008 */ li $v1, 8 -/* 024470 80023870 2401FFFC */ li $at, -4 -/* 024474 80023874 00611024 */ and $v0, $v1, $at -/* 024478 80023878 03E00008 */ jr $ra -/* 02447C 8002387C 24420004 */ addiu $v0, $v0, 4 - -/* 024480 80023880 24030034 */ li $v1, 52 -/* 024484 80023884 2401FFFC */ li $at, -4 -/* 024488 80023888 00611024 */ and $v0, $v1, $at -/* 02448C 8002388C 03E00008 */ jr $ra -/* 024490 80023890 24420004 */ addiu $v0, $v0, 4 - -/* 024494 80023894 24030020 */ li $v1, 32 -/* 024498 80023898 2401FFFC */ li $at, -4 -/* 02449C 8002389C 00611024 */ and $v0, $v1, $at -/* 0244A0 800238A0 03E00008 */ jr $ra -/* 0244A4 800238A4 24420004 */ addiu $v0, $v0, 4 - -.L800238A8: -/* 0244A8 800238A8 AC800064 */ sw $zero, 0x64($a0) -/* 0244AC 800238AC 2401FFFC */ li $at, -4 -/* 0244B0 800238B0 00611024 */ and $v0, $v1, $at -/* 0244B4 800238B4 03E00008 */ jr $ra -/* 0244B8 800238B8 24420004 */ addiu $v0, $v0, 4 - -glabel func_800238BC -/* 0244BC 800238BC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 0244C0 800238C0 AFBF0014 */ sw $ra, 0x14($sp) -/* 0244C4 800238C4 8C8E0040 */ lw $t6, 0x40($a0) -/* 0244C8 800238C8 00000000 */ nop -/* 0244CC 800238CC 81CF0054 */ lb $t7, 0x54($t6) -/* 0244D0 800238D0 00000000 */ nop -/* 0244D4 800238D4 A48F0048 */ sh $t7, 0x48($a0) -/* 0244D8 800238D8 84980048 */ lh $t8, 0x48($a0) -/* 0244DC 800238DC 00000000 */ nop -/* 0244E0 800238E0 2719FFFF */ addiu $t9, $t8, -1 -/* 0244E4 800238E4 2F210076 */ sltiu $at, $t9, 0x76 -/* 0244E8 800238E8 1020014D */ beqz $at, .L80023E20 -/* 0244EC 800238EC 0019C880 */ sll $t9, $t9, 2 -/* 0244F0 800238F0 3C01800E */ lui $at, 0x800e -/* 0244F4 800238F4 00390821 */ addu $at, $at, $t9 -/* 0244F8 800238F8 8C395864 */ lw $t9, 0x5864($at) -/* 0244FC 800238FC 00000000 */ nop -/* 024500 80023900 03200008 */ jr $t9 -/* 024504 80023904 00000000 */ nop -/* 024508 80023908 0C0136AC */ jal func_8004DAB0 -/* 02450C 8002390C 00000000 */ nop -/* 024510 80023910 10000144 */ b .L80023E24 -/* 024514 80023914 8FBF0014 */ lw $ra, 0x14($sp) -/* 024518 80023918 0C00CF30 */ jal func_80033CC0 -/* 02451C 8002391C 00000000 */ nop -/* 024520 80023920 10000140 */ b .L80023E24 -/* 024524 80023924 8FBF0014 */ lw $ra, 0x14($sp) -/* 024528 80023928 0C00DB0C */ jal func_80036C30 -/* 02452C 8002392C 00000000 */ nop -/* 024530 80023930 1000013C */ b .L80023E24 -/* 024534 80023934 8FBF0014 */ lw $ra, 0x14($sp) -/* 024538 80023938 0C00DDB8 */ jal func_800376E0 -/* 02453C 8002393C 00000000 */ nop -/* 024540 80023940 10000138 */ b .L80023E24 -/* 024544 80023944 8FBF0014 */ lw $ra, 0x14($sp) -/* 024548 80023948 0C00E26B */ jal func_800389AC -/* 02454C 8002394C 00000000 */ nop -/* 024550 80023950 10000134 */ b .L80023E24 -/* 024554 80023954 8FBF0014 */ lw $ra, 0x14($sp) -/* 024558 80023958 0C00E29B */ jal func_80038A6C -/* 02455C 8002395C 00000000 */ nop -/* 024560 80023960 10000130 */ b .L80023E24 -/* 024564 80023964 8FBF0014 */ lw $ra, 0x14($sp) -/* 024568 80023968 0C00E2DD */ jal func_80038B74 -/* 02456C 8002396C 00000000 */ nop -/* 024570 80023970 1000012C */ b .L80023E24 -/* 024574 80023974 8FBF0014 */ lw $ra, 0x14($sp) -/* 024578 80023978 0C00E38F */ jal func_80038E3C -/* 02457C 8002397C 00000000 */ nop -/* 024580 80023980 10000128 */ b .L80023E24 -/* 024584 80023984 8FBF0014 */ lw $ra, 0x14($sp) -/* 024588 80023988 0C00FF5A */ jal func_8003FD68 -/* 02458C 8002398C 00000000 */ nop -/* 024590 80023990 10000124 */ b .L80023E24 -/* 024594 80023994 8FBF0014 */ lw $ra, 0x14($sp) -/* 024598 80023998 0C00FFBD */ jal func_8003FEF4 -/* 02459C 8002399C 00000000 */ nop -/* 0245A0 800239A0 10000120 */ b .L80023E24 -/* 0245A4 800239A4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0245A8 800239A8 0C010007 */ jal func_8004001C -/* 0245AC 800239AC 00000000 */ nop -/* 0245B0 800239B0 1000011C */ b .L80023E24 -/* 0245B4 800239B4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0245B8 800239B8 0C00E458 */ jal func_80039160 -/* 0245BC 800239BC 00000000 */ nop -/* 0245C0 800239C0 10000118 */ b .L80023E24 -/* 0245C4 800239C4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0245C8 800239C8 0C00E464 */ jal func_80039190 -/* 0245CC 800239CC 00000000 */ nop -/* 0245D0 800239D0 10000114 */ b .L80023E24 -/* 0245D4 800239D4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0245D8 800239D8 0C00E472 */ jal func_800391C8 -/* 0245DC 800239DC 00000000 */ nop -/* 0245E0 800239E0 10000110 */ b .L80023E24 -/* 0245E4 800239E4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0245E8 800239E8 0C00EB2F */ jal func_8003ACBC -/* 0245EC 800239EC 00000000 */ nop -/* 0245F0 800239F0 1000010C */ b .L80023E24 -/* 0245F4 800239F4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0245F8 800239F8 0C00EB4D */ jal func_8003AD34 -/* 0245FC 800239FC 00000000 */ nop -/* 024600 80023A00 10000108 */ b .L80023E24 -/* 024604 80023A04 8FBF0014 */ lw $ra, 0x14($sp) -/* 024608 80023A08 0C00EC16 */ jal func_8003B058 -/* 02460C 80023A0C 00000000 */ nop -/* 024610 80023A10 10000104 */ b .L80023E24 -/* 024614 80023A14 8FBF0014 */ lw $ra, 0x14($sp) -/* 024618 80023A18 0C00EDF3 */ jal func_8003B7CC -/* 02461C 80023A1C 00000000 */ nop -/* 024620 80023A20 10000100 */ b .L80023E24 -/* 024624 80023A24 8FBF0014 */ lw $ra, 0x14($sp) -/* 024628 80023A28 0C00F078 */ jal func_8003C1E0 -/* 02462C 80023A2C 00000000 */ nop -/* 024630 80023A30 100000FC */ b .L80023E24 -/* 024634 80023A34 8FBF0014 */ lw $ra, 0x14($sp) -/* 024638 80023A38 0C00F3C6 */ jal func_8003CF18 -/* 02463C 80023A3C 00000000 */ nop -/* 024640 80023A40 100000F8 */ b .L80023E24 -/* 024644 80023A44 8FBF0014 */ lw $ra, 0x14($sp) -/* 024648 80023A48 0C00F3F8 */ jal func_8003CFE0 -/* 02464C 80023A4C 00000000 */ nop -/* 024650 80023A50 100000F4 */ b .L80023E24 -/* 024654 80023A54 8FBF0014 */ lw $ra, 0x14($sp) -/* 024658 80023A58 0C00F7F3 */ jal func_8003DFCC -/* 02465C 80023A5C 00000000 */ nop -/* 024660 80023A60 100000F0 */ b .L80023E24 -/* 024664 80023A64 8FBF0014 */ lw $ra, 0x14($sp) -/* 024668 80023A68 0C00F96C */ jal func_8003E5B0 -/* 02466C 80023A6C 00000000 */ nop -/* 024670 80023A70 100000EC */ b .L80023E24 -/* 024674 80023A74 8FBF0014 */ lw $ra, 0x14($sp) -/* 024678 80023A78 0C00F972 */ jal func_8003E5C8 -/* 02467C 80023A7C 00000000 */ nop -/* 024680 80023A80 100000E8 */ b .L80023E24 -/* 024684 80023A84 8FBF0014 */ lw $ra, 0x14($sp) -/* 024688 80023A88 0C00F3D6 */ jal func_8003CF58 -/* 02468C 80023A8C 00000000 */ nop -/* 024690 80023A90 100000E4 */ b .L80023E24 -/* 024694 80023A94 8FBF0014 */ lw $ra, 0x14($sp) -/* 024698 80023A98 0C00D2BC */ jal func_80034AF0 -/* 02469C 80023A9C 00000000 */ nop -/* 0246A0 80023AA0 100000E0 */ b .L80023E24 -/* 0246A4 80023AA4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0246A8 80023AA8 0C010029 */ jal func_800400A4 -/* 0246AC 80023AAC 00000000 */ nop -/* 0246B0 80023AB0 100000DC */ b .L80023E24 -/* 0246B4 80023AB4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0246B8 80023AB8 0C00D865 */ jal func_80036194 -/* 0246BC 80023ABC 00000000 */ nop -/* 0246C0 80023AC0 100000D8 */ b .L80023E24 -/* 0246C4 80023AC4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0246C8 80023AC8 0C00F54D */ jal func_8003D534 -/* 0246CC 80023ACC 00000000 */ nop -/* 0246D0 80023AD0 100000D4 */ b .L80023E24 -/* 0246D4 80023AD4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0246D8 80023AD8 0C0100EA */ jal func_800403A8 -/* 0246DC 80023ADC 00000000 */ nop -/* 0246E0 80023AE0 100000D0 */ b .L80023E24 -/* 0246E4 80023AE4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0246E8 80023AE8 0C0100F6 */ jal func_800403D8 -/* 0246EC 80023AEC 00000000 */ nop -/* 0246F0 80023AF0 100000CC */ b .L80023E24 -/* 0246F4 80023AF4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0246F8 80023AF8 0C010127 */ jal func_8004049C -/* 0246FC 80023AFC 00000000 */ nop -/* 024700 80023B00 100000C8 */ b .L80023E24 -/* 024704 80023B04 8FBF0014 */ lw $ra, 0x14($sp) -/* 024708 80023B08 0C010200 */ jal func_80040800 -/* 02470C 80023B0C 00000000 */ nop -/* 024710 80023B10 100000C4 */ b .L80023E24 -/* 024714 80023B14 8FBF0014 */ lw $ra, 0x14($sp) -/* 024718 80023B18 0C00F27B */ jal func_8003C9EC -/* 02471C 80023B1C 00000000 */ nop -/* 024720 80023B20 100000C0 */ b .L80023E24 -/* 024724 80023B24 8FBF0014 */ lw $ra, 0x14($sp) -/* 024728 80023B28 0C00F399 */ jal func_8003CE64 -/* 02472C 80023B2C 00000000 */ nop -/* 024730 80023B30 100000BC */ b .L80023E24 -/* 024734 80023B34 8FBF0014 */ lw $ra, 0x14($sp) -/* 024738 80023B38 0C00F3C0 */ jal func_8003CF00 -/* 02473C 80023B3C 00000000 */ nop -/* 024740 80023B40 100000B8 */ b .L80023E24 -/* 024744 80023B44 8FBF0014 */ lw $ra, 0x14($sp) -/* 024748 80023B48 0C01024B */ jal func_8004092C -/* 02474C 80023B4C 00000000 */ nop -/* 024750 80023B50 100000B4 */ b .L80023E24 -/* 024754 80023B54 8FBF0014 */ lw $ra, 0x14($sp) -/* 024758 80023B58 0C010253 */ jal func_8004094C -/* 02475C 80023B5C 00000000 */ nop -/* 024760 80023B60 100000B0 */ b .L80023E24 -/* 024764 80023B64 8FBF0014 */ lw $ra, 0x14($sp) -/* 024768 80023B68 0C00D48B */ jal func_8003522C -/* 02476C 80023B6C 00000000 */ nop -/* 024770 80023B70 100000AC */ b .L80023E24 -/* 024774 80023B74 8FBF0014 */ lw $ra, 0x14($sp) -/* 024778 80023B78 0C00D590 */ jal func_80035640 -/* 02477C 80023B7C 00000000 */ nop -/* 024780 80023B80 100000A8 */ b .L80023E24 -/* 024784 80023B84 8FBF0014 */ lw $ra, 0x14($sp) -/* 024788 80023B88 0C00D7BE */ jal func_80035EF8 -/* 02478C 80023B8C 00000000 */ nop -/* 024790 80023B90 100000A4 */ b .L80023E24 -/* 024794 80023B94 8FBF0014 */ lw $ra, 0x14($sp) -/* 024798 80023B98 0C00DE86 */ jal func_80037A18 -/* 02479C 80023B9C 00000000 */ nop -/* 0247A0 80023BA0 100000A0 */ b .L80023E24 -/* 0247A4 80023BA4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0247A8 80023BA8 0C00E215 */ jal func_80038854 -/* 0247AC 80023BAC 00000000 */ nop -/* 0247B0 80023BB0 1000009C */ b .L80023E24 -/* 0247B4 80023BB4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0247B8 80023BB8 0C00F191 */ jal func_8003C644 -/* 0247BC 80023BBC 00000000 */ nop -/* 0247C0 80023BC0 10000098 */ b .L80023E24 -/* 0247C4 80023BC4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0247C8 80023BC8 0C00D623 */ jal func_8003588C -/* 0247CC 80023BCC 00000000 */ nop -/* 0247D0 80023BD0 10000094 */ b .L80023E24 -/* 0247D4 80023BD4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0247D8 80023BD8 0C00D788 */ jal func_80035E20 -/* 0247DC 80023BDC 00000000 */ nop -/* 0247E0 80023BE0 10000090 */ b .L80023E24 -/* 0247E4 80023BE4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0247E8 80023BE8 0C010269 */ jal func_800409A4 -/* 0247EC 80023BEC 00000000 */ nop -/* 0247F0 80023BF0 1000008C */ b .L80023E24 -/* 0247F4 80023BF4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0247F8 80023BF8 0C010272 */ jal func_800409C8 -/* 0247FC 80023BFC 00000000 */ nop -/* 024800 80023C00 10000088 */ b .L80023E24 -/* 024804 80023C04 8FBF0014 */ lw $ra, 0x14($sp) -/* 024808 80023C08 0C00E4AE */ jal func_800392B8 -/* 02480C 80023C0C 00000000 */ nop -/* 024810 80023C10 10000084 */ b .L80023E24 -/* 024814 80023C14 8FBF0014 */ lw $ra, 0x14($sp) -/* 024818 80023C18 0C00F79D */ jal func_8003DE74 -/* 02481C 80023C1C 00000000 */ nop -/* 024820 80023C20 10000080 */ b .L80023E24 -/* 024824 80023C24 8FBF0014 */ lw $ra, 0x14($sp) -/* 024828 80023C28 0C00F4FB */ jal func_8003D3EC -/* 02482C 80023C2C 00000000 */ nop -/* 024830 80023C30 1000007C */ b .L80023E24 -/* 024834 80023C34 8FBF0014 */ lw $ra, 0x14($sp) -/* 024838 80023C38 0C00F40E */ jal func_8003D038 -/* 02483C 80023C3C 00000000 */ nop -/* 024840 80023C40 10000078 */ b .L80023E24 -/* 024844 80023C44 8FBF0014 */ lw $ra, 0x14($sp) -/* 024848 80023C48 0C00DD5E */ jal func_80037578 -/* 02484C 80023C4C 00000000 */ nop -/* 024850 80023C50 10000074 */ b .L80023E24 -/* 024854 80023C54 8FBF0014 */ lw $ra, 0x14($sp) -/* 024858 80023C58 0C00DD89 */ jal func_80037624 -/* 02485C 80023C5C 00000000 */ nop -/* 024860 80023C60 10000070 */ b .L80023E24 -/* 024864 80023C64 8FBF0014 */ lw $ra, 0x14($sp) -/* 024868 80023C68 0C00E063 */ jal func_8003818C -/* 02486C 80023C6C 00000000 */ nop -/* 024870 80023C70 1000006C */ b .L80023E24 -/* 024874 80023C74 8FBF0014 */ lw $ra, 0x14($sp) -/* 024878 80023C78 0C00E078 */ jal func_800381E0 -/* 02487C 80023C7C 00000000 */ nop -/* 024880 80023C80 10000068 */ b .L80023E24 -/* 024884 80023C84 8FBF0014 */ lw $ra, 0x14($sp) -/* 024888 80023C88 0C00E085 */ jal func_80038214 -/* 02488C 80023C8C 00000000 */ nop -/* 024890 80023C90 10000064 */ b .L80023E24 -/* 024894 80023C94 8FBF0014 */ lw $ra, 0x14($sp) -/* 024898 80023C98 0C00E092 */ jal func_80038248 -/* 02489C 80023C9C 00000000 */ nop -/* 0248A0 80023CA0 10000060 */ b .L80023E24 -/* 0248A4 80023CA4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0248A8 80023CA8 0C0106A4 */ jal func_80041A90 -/* 0248AC 80023CAC 00000000 */ nop -/* 0248B0 80023CB0 1000005C */ b .L80023E24 -/* 0248B4 80023CB4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0248B8 80023CB8 0C0107A0 */ jal func_80041E80 -/* 0248BC 80023CBC 00000000 */ nop -/* 0248C0 80023CC0 10000058 */ b .L80023E24 -/* 0248C4 80023CC4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0248C8 80023CC8 0C010805 */ jal func_80042014 -/* 0248CC 80023CCC 00000000 */ nop -/* 0248D0 80023CD0 10000054 */ b .L80023E24 -/* 0248D4 80023CD4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0248D8 80023CD8 0C00D2DA */ jal func_80034B68 -/* 0248DC 80023CDC 00000000 */ nop -/* 0248E0 80023CE0 10000050 */ b .L80023E24 -/* 0248E4 80023CE4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0248E8 80023CE8 0C00D39C */ jal func_80034E70 -/* 0248EC 80023CEC 00000000 */ nop -/* 0248F0 80023CF0 1000004C */ b .L80023E24 -/* 0248F4 80023CF4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0248F8 80023CF8 0C01080F */ jal func_8004203C -/* 0248FC 80023CFC 00000000 */ nop -/* 024900 80023D00 10000048 */ b .L80023E24 -/* 024904 80023D04 8FBF0014 */ lw $ra, 0x14($sp) -/* 024908 80023D08 0C00F4AB */ jal func_8003D2AC -/* 02490C 80023D0C 00000000 */ nop -/* 024910 80023D10 10000044 */ b .L80023E24 -/* 024914 80023D14 8FBF0014 */ lw $ra, 0x14($sp) -/* 024918 80023D18 0C00ECDA */ jal func_8003B368 -/* 02491C 80023D1C 00000000 */ nop -/* 024920 80023D20 10000040 */ b .L80023E24 -/* 024924 80023D24 8FBF0014 */ lw $ra, 0x14($sp) -/* 024928 80023D28 0C00D211 */ jal func_80034844 -/* 02492C 80023D2C 00000000 */ nop -/* 024930 80023D30 1000003C */ b .L80023E24 -/* 024934 80023D34 8FBF0014 */ lw $ra, 0x14($sp) -/* 024938 80023D38 0C00D14C */ jal func_80034530 -/* 02493C 80023D3C 00000000 */ nop -/* 024940 80023D40 10000038 */ b .L80023E24 -/* 024944 80023D44 8FBF0014 */ lw $ra, 0x14($sp) -/* 024948 80023D48 0C00D6BA */ jal func_80035AE8 -/* 02494C 80023D4C 00000000 */ nop -/* 024950 80023D50 10000034 */ b .L80023E24 -/* 024954 80023D54 8FBF0014 */ lw $ra, 0x14($sp) -/* 024958 80023D58 0C00DF55 */ jal func_80037D54 -/* 02495C 80023D5C 00000000 */ nop -/* 024960 80023D60 10000030 */ b .L80023E24 -/* 024964 80023D64 8FBF0014 */ lw $ra, 0x14($sp) -/* 024968 80023D68 0C00DF5B */ jal func_80037D6C -/* 02496C 80023D6C 00000000 */ nop -/* 024970 80023D70 1000002C */ b .L80023E24 -/* 024974 80023D74 8FBF0014 */ lw $ra, 0x14($sp) -/* 024978 80023D78 0C010843 */ jal func_8004210C -/* 02497C 80023D7C 00000000 */ nop -/* 024980 80023D80 10000028 */ b .L80023E24 -/* 024984 80023D84 8FBF0014 */ lw $ra, 0x14($sp) -/* 024988 80023D88 0C00F717 */ jal func_8003DC5C -/* 02498C 80023D8C 00000000 */ nop -/* 024990 80023D90 10000024 */ b .L80023E24 -/* 024994 80023D94 8FBF0014 */ lw $ra, 0x14($sp) -/* 024998 80023D98 0C00E2B2 */ jal func_80038AC8 -/* 02499C 80023D9C 00000000 */ nop -/* 0249A0 80023DA0 10000020 */ b .L80023E24 -/* 0249A4 80023DA4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0249A8 80023DA8 0C010854 */ jal func_80042150 -/* 0249AC 80023DAC 00000000 */ nop -/* 0249B0 80023DB0 1000001C */ b .L80023E24 -/* 0249B4 80023DB4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0249B8 80023DB8 0C00E356 */ jal func_80038D58 -/* 0249BC 80023DBC 00000000 */ nop -/* 0249C0 80023DC0 10000018 */ b .L80023E24 -/* 0249C4 80023DC4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0249C8 80023DC8 0C00D5CB */ jal func_8003572C -/* 0249CC 80023DCC 00000000 */ nop -/* 0249D0 80023DD0 10000014 */ b .L80023E24 -/* 0249D4 80023DD4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0249D8 80023DD8 0C01085B */ jal func_8004216C -/* 0249DC 80023DDC 00000000 */ nop -/* 0249E0 80023DE0 10000010 */ b .L80023E24 -/* 0249E4 80023DE4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0249E8 80023DE8 0C00CFD1 */ jal func_80033F44 -/* 0249EC 80023DEC 00000000 */ nop -/* 0249F0 80023DF0 1000000C */ b .L80023E24 -/* 0249F4 80023DF4 8FBF0014 */ lw $ra, 0x14($sp) -/* 0249F8 80023DF8 0C010884 */ jal func_80042210 -/* 0249FC 80023DFC 00000000 */ nop -/* 024A00 80023E00 10000008 */ b .L80023E24 -/* 024A04 80023E04 8FBF0014 */ lw $ra, 0x14($sp) -/* 024A08 80023E08 0C00F6E8 */ jal func_8003DBA0 -/* 024A0C 80023E0C 00000000 */ nop -/* 024A10 80023E10 10000004 */ b .L80023E24 -/* 024A14 80023E14 8FBF0014 */ lw $ra, 0x14($sp) -/* 024A18 80023E18 0C010A87 */ jal func_80042A1C -/* 024A1C 80023E1C 00000000 */ nop -.L80023E20: -/* 024A20 80023E20 8FBF0014 */ lw $ra, 0x14($sp) -.L80023E24: -/* 024A24 80023E24 27BD0018 */ addiu $sp, $sp, 0x18 -/* 024A28 80023E28 03E00008 */ jr $ra -/* 024A2C 80023E2C 00000000 */ nop - -glabel func_80023E30 -/* 024A30 80023E30 248EFFFF */ addiu $t6, $a0, -1 -/* 024A34 80023E34 2DC10074 */ sltiu $at, $t6, 0x74 -/* 024A38 80023E38 10200041 */ beqz $at, .L80023F40 -/* 024A3C 80023E3C 00001825 */ move $v1, $zero -/* 024A40 80023E40 000E7080 */ sll $t6, $t6, 2 -/* 024A44 80023E44 3C01800E */ lui $at, 0x800e -/* 024A48 80023E48 002E0821 */ addu $at, $at, $t6 -/* 024A4C 80023E4C 8C2E5A3C */ lw $t6, 0x5a3c($at) -/* 024A50 80023E50 00000000 */ nop -/* 024A54 80023E54 01C00008 */ jr $t6 -/* 024A58 80023E58 00000000 */ nop -/* 024A5C 80023E5C 03E00008 */ jr $ra -/* 024A60 80023E60 2402001F */ li $v0, 31 - -/* 024A64 80023E64 03E00008 */ jr $ra -/* 024A68 80023E68 24020013 */ li $v0, 19 - -/* 024A6C 80023E6C 03E00008 */ jr $ra -/* 024A70 80023E70 24020016 */ li $v0, 22 - -/* 024A74 80023E74 03E00008 */ jr $ra -/* 024A78 80023E78 2402001B */ li $v0, 27 - -/* 024A7C 80023E7C 03E00008 */ jr $ra -/* 024A80 80023E80 24020030 */ li $v0, 48 - -/* 024A84 80023E84 03E00008 */ jr $ra -/* 024A88 80023E88 24020012 */ li $v0, 18 - -/* 024A8C 80023E8C 03E00008 */ jr $ra -/* 024A90 80023E90 2402003B */ li $v0, 59 - -/* 024A94 80023E94 03E00008 */ jr $ra -/* 024A98 80023E98 2402003A */ li $v0, 58 - -/* 024A9C 80023E9C 03E00008 */ jr $ra -/* 024AA0 80023EA0 24020004 */ li $v0, 4 - -/* 024AA4 80023EA4 03E00008 */ jr $ra -/* 024AA8 80023EA8 2402001B */ li $v0, 27 - -/* 024AAC 80023EAC 03E00008 */ jr $ra -/* 024AB0 80023EB0 24020012 */ li $v0, 18 - -/* 024AB4 80023EB4 03E00008 */ jr $ra -/* 024AB8 80023EB8 24020030 */ li $v0, 48 - -/* 024ABC 80023EBC 03E00008 */ jr $ra -/* 024AC0 80023EC0 24020039 */ li $v0, 57 - -/* 024AC4 80023EC4 03E00008 */ jr $ra -/* 024AC8 80023EC8 24020012 */ li $v0, 18 - -/* 024ACC 80023ECC 03E00008 */ jr $ra -/* 024AD0 80023ED0 24020009 */ li $v0, 9 - -/* 024AD4 80023ED4 03E00008 */ jr $ra -/* 024AD8 80023ED8 24020012 */ li $v0, 18 - -/* 024ADC 80023EDC 03E00008 */ jr $ra -/* 024AE0 80023EE0 24020009 */ li $v0, 9 - -/* 024AE4 80023EE4 03E00008 */ jr $ra -/* 024AE8 80023EE8 24020009 */ li $v0, 9 - -/* 024AEC 80023EEC 03E00008 */ jr $ra -/* 024AF0 80023EF0 2402000B */ li $v0, 11 - -/* 024AF4 80023EF4 03E00008 */ jr $ra -/* 024AF8 80023EF8 2402000B */ li $v0, 11 - -/* 024AFC 80023EFC 03E00008 */ jr $ra -/* 024B00 80023F00 24020031 */ li $v0, 49 - -/* 024B04 80023F04 03E00008 */ jr $ra -/* 024B08 80023F08 24020001 */ li $v0, 1 - -/* 024B0C 80023F0C 03E00008 */ jr $ra -/* 024B10 80023F10 2402000A */ li $v0, 10 - -/* 024B14 80023F14 03E00008 */ jr $ra -/* 024B18 80023F18 24020010 */ li $v0, 16 - -/* 024B1C 80023F1C 03E00008 */ jr $ra -/* 024B20 80023F20 24020012 */ li $v0, 18 - -/* 024B24 80023F24 03E00008 */ jr $ra -/* 024B28 80023F28 24020002 */ li $v0, 2 - -/* 024B2C 80023F2C 03E00008 */ jr $ra -/* 024B30 80023F30 2402001B */ li $v0, 27 - -/* 024B34 80023F34 03E00008 */ jr $ra -/* 024B38 80023F38 2402000B */ li $v0, 11 - -/* 024B3C 80023F3C 24030001 */ li $v1, 1 -.L80023F40: -/* 024B40 80023F40 03E00008 */ jr $ra -/* 024B44 80023F44 00601025 */ move $v0, $v1 - -glabel func_80023F48 -/* 024B48 80023F48 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* 024B4C 80023F4C AFBF0014 */ sw $ra, 0x14($sp) -/* 024B50 80023F50 00803025 */ move $a2, $a0 -/* 024B54 80023F54 00A03825 */ move $a3, $a1 -/* 024B58 80023F58 84C5004A */ lh $a1, 0x4a($a2) -/* 024B5C 80023F5C AFA7001C */ sw $a3, 0x1c($sp) -/* 024B60 80023F60 AFA60018 */ sw $a2, 0x18($sp) -/* 024B64 80023F64 0C02DDAE */ jal func_800B76B8 -/* 024B68 80023F68 24040001 */ li $a0, 1 -/* 024B6C 80023F6C 8FA60018 */ lw $a2, 0x18($sp) -/* 024B70 80023F70 8FA7001C */ lw $a3, 0x1c($sp) -/* 024B74 80023F74 84CE0048 */ lh $t6, 0x48($a2) -/* 024B78 80023F78 00000000 */ nop -/* 024B7C 80023F7C 25CFFFFE */ addiu $t7, $t6, -2 -/* 024B80 80023F80 2DE10076 */ sltiu $at, $t7, 0x76 -/* 024B84 80023F84 1020017A */ beqz $at, .L80024570 -/* 024B88 80023F88 000F7880 */ sll $t7, $t7, 2 -/* 024B8C 80023F8C 3C01800E */ lui $at, 0x800e -/* 024B90 80023F90 002F0821 */ addu $at, $at, $t7 -/* 024B94 80023F94 8C2F5C0C */ lw $t7, 0x5c0c($at) -/* 024B98 80023F98 00000000 */ nop -/* 024B9C 80023F9C 01E00008 */ jr $t7 -/* 024BA0 80023FA0 00000000 */ nop -/* 024BA4 80023FA4 00C02025 */ move $a0, $a2 -/* 024BA8 80023FA8 0C00CF74 */ jal func_80033DD0 -/* 024BAC 80023FAC 00E02825 */ move $a1, $a3 -/* 024BB0 80023FB0 10000170 */ b .L80024574 -/* 024BB4 80023FB4 24040001 */ li $a0, 1 -/* 024BB8 80023FB8 00C02025 */ move $a0, $a2 -/* 024BBC 80023FBC 0C00DC35 */ jal func_800370D4 -/* 024BC0 80023FC0 00E02825 */ move $a1, $a3 -/* 024BC4 80023FC4 1000016B */ b .L80024574 -/* 024BC8 80023FC8 24040001 */ li $a0, 1 -/* 024BCC 80023FCC 00C02025 */ move $a0, $a2 -/* 024BD0 80023FD0 0C00DDF9 */ jal func_800377E4 -/* 024BD4 80023FD4 00E02825 */ move $a1, $a3 -/* 024BD8 80023FD8 10000166 */ b .L80024574 -/* 024BDC 80023FDC 24040001 */ li $a0, 1 -/* 024BE0 80023FE0 00C02025 */ move $a0, $a2 -/* 024BE4 80023FE4 0C00E26E */ jal func_800389B8 -/* 024BE8 80023FE8 00E02825 */ move $a1, $a3 -/* 024BEC 80023FEC 10000161 */ b .L80024574 -/* 024BF0 80023FF0 24040001 */ li $a0, 1 -/* 024BF4 80023FF4 00C02025 */ move $a0, $a2 -/* 024BF8 80023FF8 0C00E29E */ jal func_80038A78 -/* 024BFC 80023FFC 00E02825 */ move $a1, $a3 -/* 024C00 80024000 1000015C */ b .L80024574 -/* 024C04 80024004 24040001 */ li $a0, 1 -/* 024C08 80024008 00C02025 */ move $a0, $a2 -/* 024C0C 8002400C 0C00E2FD */ jal func_80038BF4 -/* 024C10 80024010 00E02825 */ move $a1, $a3 -/* 024C14 80024014 10000157 */ b .L80024574 -/* 024C18 80024018 24040001 */ li $a0, 1 -/* 024C1C 8002401C 00C02025 */ move $a0, $a2 -/* 024C20 80024020 0C00E3D6 */ jal func_80038F58 -/* 024C24 80024024 00E02825 */ move $a1, $a3 -/* 024C28 80024028 10000152 */ b .L80024574 -/* 024C2C 8002402C 24040001 */ li $a0, 1 -/* 024C30 80024030 00C02025 */ move $a0, $a2 -/* 024C34 80024034 0C00E461 */ jal func_80039184 -/* 024C38 80024038 00E02825 */ move $a1, $a3 -/* 024C3C 8002403C 1000014D */ b .L80024574 -/* 024C40 80024040 24040001 */ li $a0, 1 -/* 024C44 80024044 00C02025 */ move $a0, $a2 -/* 024C48 80024048 0C00E46F */ jal func_800391BC -/* 024C4C 8002404C 00E02825 */ move $a1, $a3 -/* 024C50 80024050 10000148 */ b .L80024574 -/* 024C54 80024054 24040001 */ li $a0, 1 -/* 024C58 80024058 00C02025 */ move $a0, $a2 -/* 024C5C 8002405C 0C00E47F */ jal func_800391FC -/* 024C60 80024060 00E02825 */ move $a1, $a3 -/* 024C64 80024064 10000143 */ b .L80024574 -/* 024C68 80024068 24040001 */ li $a0, 1 -/* 024C6C 8002406C 00C02025 */ move $a0, $a2 -/* 024C70 80024070 0C00EB4A */ jal func_8003AD28 -/* 024C74 80024074 00E02825 */ move $a1, $a3 -/* 024C78 80024078 1000013E */ b .L80024574 -/* 024C7C 8002407C 24040001 */ li $a0, 1 -/* 024C80 80024080 00C02025 */ move $a0, $a2 -/* 024C84 80024084 0C00EB94 */ jal func_8003AE50 -/* 024C88 80024088 00E02825 */ move $a1, $a3 -/* 024C8C 8002408C 10000139 */ b .L80024574 -/* 024C90 80024090 24040001 */ li $a0, 1 -/* 024C94 80024094 00C02025 */ move $a0, $a2 -/* 024C98 80024098 0C00EC5D */ jal func_8003B174 -/* 024C9C 8002409C 00E02825 */ move $a1, $a3 -/* 024CA0 800240A0 10000134 */ b .L80024574 -/* 024CA4 800240A4 24040001 */ li $a0, 1 -/* 024CA8 800240A8 00C02025 */ move $a0, $a2 -/* 024CAC 800240AC 0C00EE62 */ jal func_8003B988 -/* 024CB0 800240B0 00E02825 */ move $a1, $a3 -/* 024CB4 800240B4 1000012F */ b .L80024574 -/* 024CB8 800240B8 24040001 */ li $a0, 1 -/* 024CBC 800240BC 0C00C29D */ jal func_80030A74 -/* 024CC0 800240C0 00C02025 */ move $a0, $a2 -/* 024CC4 800240C4 1000012B */ b .L80024574 -/* 024CC8 800240C8 24040001 */ li $a0, 1 -/* 024CCC 800240CC 00C02025 */ move $a0, $a2 -/* 024CD0 800240D0 0C00F40B */ jal func_8003D02C -/* 024CD4 800240D4 00E02825 */ move $a1, $a3 -/* 024CD8 800240D8 10000126 */ b .L80024574 -/* 024CDC 800240DC 24040001 */ li $a0, 1 -/* 024CE0 800240E0 00C02025 */ move $a0, $a2 -/* 024CE4 800240E4 0C00F850 */ jal func_8003E140 -/* 024CE8 800240E8 00E02825 */ move $a1, $a3 -/* 024CEC 800240EC 10000121 */ b .L80024574 -/* 024CF0 800240F0 24040001 */ li $a0, 1 -/* 024CF4 800240F4 00C02025 */ move $a0, $a2 -/* 024CF8 800240F8 0C00F96F */ jal func_8003E5BC -/* 024CFC 800240FC 00E02825 */ move $a1, $a3 -/* 024D00 80024100 1000011C */ b .L80024574 -/* 024D04 80024104 24040001 */ li $a0, 1 -/* 024D08 80024108 00C02025 */ move $a0, $a2 -/* 024D0C 8002410C 0C00F98C */ jal func_8003E630 -/* 024D10 80024110 00E02825 */ move $a1, $a3 -/* 024D14 80024114 10000117 */ b .L80024574 -/* 024D18 80024118 24040001 */ li $a0, 1 -/* 024D1C 8002411C 00C02025 */ move $a0, $a2 -/* 024D20 80024120 0C00F3E6 */ jal func_8003CF98 -/* 024D24 80024124 00E02825 */ move $a1, $a3 -/* 024D28 80024128 10000112 */ b .L80024574 -/* 024D2C 8002412C 24040001 */ li $a0, 1 -/* 024D30 80024130 00C02025 */ move $a0, $a2 -/* 024D34 80024134 0C00D2D3 */ jal func_80034B4C -/* 024D38 80024138 00E02825 */ move $a1, $a3 -/* 024D3C 8002413C 1000010D */ b .L80024574 -/* 024D40 80024140 24040001 */ li $a0, 1 -/* 024D44 80024144 00C02025 */ move $a0, $a2 -/* 024D48 80024148 0C010052 */ jal func_80040148 -/* 024D4C 8002414C 00E02825 */ move $a1, $a3 -/* 024D50 80024150 10000108 */ b .L80024574 -/* 024D54 80024154 24040001 */ li $a0, 1 -/* 024D58 80024158 00C02025 */ move $a0, $a2 -/* 024D5C 8002415C 0C00D878 */ jal func_800361E0 -/* 024D60 80024160 00E02825 */ move $a1, $a3 -/* 024D64 80024164 10000103 */ b .L80024574 -/* 024D68 80024168 24040001 */ li $a0, 1 -/* 024D6C 8002416C 00C02025 */ move $a0, $a2 -/* 024D70 80024170 0C00F568 */ jal func_8003D5A0 -/* 024D74 80024174 00E02825 */ move $a1, $a3 -/* 024D78 80024178 100000FE */ b .L80024574 -/* 024D7C 8002417C 24040001 */ li $a0, 1 -/* 024D80 80024180 00C02025 */ move $a0, $a2 -/* 024D84 80024184 0C010112 */ jal func_80040448 -/* 024D88 80024188 00E02825 */ move $a1, $a3 -/* 024D8C 8002418C 100000F9 */ b .L80024574 -/* 024D90 80024190 24040001 */ li $a0, 1 -/* 024D94 80024194 00C02025 */ move $a0, $a2 -/* 024D98 80024198 0C01015C */ jal func_80040570 -/* 024D9C 8002419C 00E02825 */ move $a1, $a3 -/* 024DA0 800241A0 100000F4 */ b .L80024574 -/* 024DA4 800241A4 24040001 */ li $a0, 1 -/* 024DA8 800241A8 00C02025 */ move $a0, $a2 -/* 024DAC 800241AC 0C010208 */ jal func_80040820 -/* 024DB0 800241B0 00E02825 */ move $a1, $a3 -/* 024DB4 800241B4 100000EF */ b .L80024574 -/* 024DB8 800241B8 24040001 */ li $a0, 1 -/* 024DBC 800241BC 00C02025 */ move $a0, $a2 -/* 024DC0 800241C0 0C00F29A */ jal func_8003CA68 -/* 024DC4 800241C4 00E02825 */ move $a1, $a3 -/* 024DC8 800241C8 100000EA */ b .L80024574 -/* 024DCC 800241CC 24040001 */ li $a0, 1 -/* 024DD0 800241D0 00C02025 */ move $a0, $a2 -/* 024DD4 800241D4 0C00F3A8 */ jal func_8003CEA0 -/* 024DD8 800241D8 00E02825 */ move $a1, $a3 -/* 024DDC 800241DC 100000E5 */ b .L80024574 -/* 024DE0 800241E0 24040001 */ li $a0, 1 -/* 024DE4 800241E4 00C02025 */ move $a0, $a2 -/* 024DE8 800241E8 0C00F3C3 */ jal func_8003CF0C -/* 024DEC 800241EC 00E02825 */ move $a1, $a3 -/* 024DF0 800241F0 100000E0 */ b .L80024574 -/* 024DF4 800241F4 24040001 */ li $a0, 1 -/* 024DF8 800241F8 00C02025 */ move $a0, $a2 -/* 024DFC 800241FC 0C00D498 */ jal func_80035260 -/* 024E00 80024200 00E02825 */ move $a1, $a3 -/* 024E04 80024204 100000DB */ b .L80024574 -/* 024E08 80024208 24040001 */ li $a0, 1 -/* 024E0C 8002420C 00C02025 */ move $a0, $a2 -/* 024E10 80024210 0C00D593 */ jal func_8003564C -/* 024E14 80024214 00E02825 */ move $a1, $a3 -/* 024E18 80024218 100000D6 */ b .L80024574 -/* 024E1C 8002421C 24040001 */ li $a0, 1 -/* 024E20 80024220 00C02025 */ move $a0, $a2 -/* 024E24 80024224 0C00D7DB */ jal func_80035F6C -/* 024E28 80024228 00E02825 */ move $a1, $a3 -/* 024E2C 8002422C 100000D1 */ b .L80024574 -/* 024E30 80024230 24040001 */ li $a0, 1 -/* 024E34 80024234 00C02025 */ move $a0, $a2 -/* 024E38 80024238 0C00DF3A */ jal func_80037CE8 -/* 024E3C 8002423C 00E02825 */ move $a1, $a3 -/* 024E40 80024240 100000CC */ b .L80024574 -/* 024E44 80024244 24040001 */ li $a0, 1 -/* 024E48 80024248 00C02025 */ move $a0, $a2 -/* 024E4C 8002424C 0C010B34 */ jal func_80042CD0 -/* 024E50 80024250 00E02825 */ move $a1, $a3 -/* 024E54 80024254 100000C7 */ b .L80024574 -/* 024E58 80024258 24040001 */ li $a0, 1 -/* 024E5C 8002425C 00C02025 */ move $a0, $a2 -/* 024E60 80024260 0C00E1C4 */ jal func_80038710 -/* 024E64 80024264 00E02825 */ move $a1, $a3 -/* 024E68 80024268 100000C2 */ b .L80024574 -/* 024E6C 8002426C 24040001 */ li $a0, 1 -/* 024E70 80024270 00C02025 */ move $a0, $a2 -/* 024E74 80024274 0C00E235 */ jal func_800388D4 -/* 024E78 80024278 00E02825 */ move $a1, $a3 -/* 024E7C 8002427C 100000BD */ b .L80024574 -/* 024E80 80024280 24040001 */ li $a0, 1 -/* 024E84 80024284 00C02025 */ move $a0, $a2 -/* 024E88 80024288 0C00E1F3 */ jal func_800387CC -/* 024E8C 8002428C 00E02825 */ move $a1, $a3 -/* 024E90 80024290 100000B8 */ b .L80024574 -/* 024E94 80024294 24040001 */ li $a0, 1 -/* 024E98 80024298 00C02025 */ move $a0, $a2 -/* 024E9C 8002429C 0C00E0CF */ jal func_8003833C -/* 024EA0 800242A0 00E02825 */ move $a1, $a3 -/* 024EA4 800242A4 100000B3 */ b .L80024574 -/* 024EA8 800242A8 24040001 */ li $a0, 1 -/* 024EAC 800242AC 00C02025 */ move $a0, $a2 -/* 024EB0 800242B0 0C00F1E9 */ jal func_8003C7A4 -/* 024EB4 800242B4 00E02825 */ move $a1, $a3 -/* 024EB8 800242B8 100000AE */ b .L80024574 -/* 024EBC 800242BC 24040001 */ li $a0, 1 -/* 024EC0 800242C0 00C02025 */ move $a0, $a2 -/* 024EC4 800242C4 0C00E03E */ jal func_800380F8 -/* 024EC8 800242C8 00E02825 */ move $a1, $a3 -/* 024ECC 800242CC 100000A9 */ b .L80024574 -/* 024ED0 800242D0 24040001 */ li $a0, 1 -/* 024ED4 800242D4 00C02025 */ move $a0, $a2 -/* 024ED8 800242D8 0C00D65B */ jal func_8003596C -/* 024EDC 800242DC 00E02825 */ move $a1, $a3 -/* 024EE0 800242E0 100000A4 */ b .L80024574 -/* 024EE4 800242E4 24040001 */ li $a0, 1 -/* 024EE8 800242E8 00C02025 */ move $a0, $a2 -/* 024EEC 800242EC 0C00D78D */ jal func_80035E34 -/* 024EF0 800242F0 00E02825 */ move $a1, $a3 -/* 024EF4 800242F4 1000009F */ b .L80024574 -/* 024EF8 800242F8 24040001 */ li $a0, 1 -/* 024EFC 800242FC 0C02FFF7 */ jal func_800BFFDC -/* 024F00 80024300 00C02025 */ move $a0, $a2 -/* 024F04 80024304 1000009B */ b .L80024574 -/* 024F08 80024308 24040001 */ li $a0, 1 -/* 024F0C 8002430C 00C02025 */ move $a0, $a2 -/* 024F10 80024310 0C010315 */ jal func_80040C54 -/* 024F14 80024314 00E02825 */ move $a1, $a3 -/* 024F18 80024318 10000096 */ b .L80024574 -/* 024F1C 8002431C 24040001 */ li $a0, 1 -/* 024F20 80024320 00C02025 */ move $a0, $a2 -/* 024F24 80024324 0C00E4CC */ jal func_80039330 -/* 024F28 80024328 00E02825 */ move $a1, $a3 -/* 024F2C 8002432C 10000091 */ b .L80024574 -/* 024F30 80024330 24040001 */ li $a0, 1 -/* 024F34 80024334 00C02025 */ move $a0, $a2 -/* 024F38 80024338 0C00F7C2 */ jal func_8003DF08 -/* 024F3C 8002433C 00E02825 */ move $a1, $a3 -/* 024F40 80024340 1000008C */ b .L80024574 -/* 024F44 80024344 24040001 */ li $a0, 1 -/* 024F48 80024348 00C02025 */ move $a0, $a2 -/* 024F4C 8002434C 0C00F4FF */ jal func_8003D3FC -/* 024F50 80024350 00E02825 */ move $a1, $a3 -/* 024F54 80024354 10000087 */ b .L80024574 -/* 024F58 80024358 24040001 */ li $a0, 1 -/* 024F5C 8002435C 00C02025 */ move $a0, $a2 -/* 024F60 80024360 0C00F416 */ jal func_8003D058 -/* 024F64 80024364 00E02825 */ move $a1, $a3 -/* 024F68 80024368 10000082 */ b .L80024574 -/* 024F6C 8002436C 24040001 */ li $a0, 1 -/* 024F70 80024370 00C02025 */ move $a0, $a2 -/* 024F74 80024374 0C00DD65 */ jal func_80037594 -/* 024F78 80024378 00E02825 */ move $a1, $a3 -/* 024F7C 8002437C 1000007D */ b .L80024574 -/* 024F80 80024380 24040001 */ li $a0, 1 -/* 024F84 80024384 00C02025 */ move $a0, $a2 -/* 024F88 80024388 0C00DD8F */ jal func_8003763C -/* 024F8C 8002438C 00E02825 */ move $a1, $a3 -/* 024F90 80024390 10000078 */ b .L80024574 -/* 024F94 80024394 24040001 */ li $a0, 1 -/* 024F98 80024398 00C02025 */ move $a0, $a2 -/* 024F9C 8002439C 0C00E070 */ jal func_800381C0 -/* 024FA0 800243A0 00E02825 */ move $a1, $a3 -/* 024FA4 800243A4 10000073 */ b .L80024574 -/* 024FA8 800243A8 24040001 */ li $a0, 1 -/* 024FAC 800243AC 00C02025 */ move $a0, $a2 -/* 024FB0 800243B0 0C00E09F */ jal func_8003827C -/* 024FB4 800243B4 00E02825 */ move $a1, $a3 -/* 024FB8 800243B8 1000006E */ b .L80024574 -/* 024FBC 800243BC 24040001 */ li $a0, 1 -/* 024FC0 800243C0 00C02025 */ move $a0, $a2 -/* 024FC4 800243C4 0C00D2DD */ jal func_80034B74 -/* 024FC8 800243C8 00E02825 */ move $a1, $a3 -/* 024FCC 800243CC 10000069 */ b .L80024574 -/* 024FD0 800243D0 24040001 */ li $a0, 1 -/* 024FD4 800243D4 00C02025 */ move $a0, $a2 -/* 024FD8 800243D8 0C00D3A7 */ jal func_80034E9C -/* 024FDC 800243DC 00E02825 */ move $a1, $a3 -/* 024FE0 800243E0 10000064 */ b .L80024574 -/* 024FE4 800243E4 24040001 */ li $a0, 1 -/* 024FE8 800243E8 00C02025 */ move $a0, $a2 -/* 024FEC 800243EC 0C010824 */ jal func_80042090 -/* 024FF0 800243F0 00E02825 */ move $a1, $a3 -/* 024FF4 800243F4 1000005F */ b .L80024574 -/* 024FF8 800243F8 24040001 */ li $a0, 1 -/* 024FFC 800243FC 00C02025 */ move $a0, $a2 -/* 025000 80024400 0C00F4AE */ jal func_8003D2B8 -/* 025004 80024404 00E02825 */ move $a1, $a3 -/* 025008 80024408 1000005A */ b .L80024574 -/* 02500C 8002440C 24040001 */ li $a0, 1 -/* 025010 80024410 00C02025 */ move $a0, $a2 -/* 025014 80024414 0C00ED2F */ jal func_8003B4BC -/* 025018 80024418 00E02825 */ move $a1, $a3 -/* 02501C 8002441C 10000055 */ b .L80024574 -/* 025020 80024420 24040001 */ li $a0, 1 -/* 025024 80024424 00C02025 */ move $a0, $a2 -/* 025028 80024428 0C00D218 */ jal func_80034860 -/* 02502C 8002442C 00E02825 */ move $a1, $a3 -/* 025030 80024430 10000050 */ b .L80024574 -/* 025034 80024434 24040001 */ li $a0, 1 -/* 025038 80024438 00C02025 */ move $a0, $a2 -/* 02503C 8002443C 0C00D168 */ jal func_800345A0 -/* 025040 80024440 00E02825 */ move $a1, $a3 -/* 025044 80024444 1000004B */ b .L80024574 -/* 025048 80024448 24040001 */ li $a0, 1 -/* 02504C 8002444C 00C02025 */ move $a0, $a2 -/* 025050 80024450 0C00EB28 */ jal func_8003ACA0 -/* 025054 80024454 00E02825 */ move $a1, $a3 -/* 025058 80024458 10000046 */ b .L80024574 -/* 02505C 8002445C 24040001 */ li $a0, 1 -/* 025060 80024460 00C02025 */ move $a0, $a2 -/* 025064 80024464 0C00D714 */ jal func_80035C50 -/* 025068 80024468 00E02825 */ move $a1, $a3 -/* 02506C 8002446C 10000041 */ b .L80024574 -/* 025070 80024470 24040001 */ li $a0, 1 -/* 025074 80024474 00C02025 */ move $a0, $a2 -/* 025078 80024478 0C00DF5E */ jal func_80037D78 -/* 02507C 8002447C 00E02825 */ move $a1, $a3 -/* 025080 80024480 1000003C */ b .L80024574 -/* 025084 80024484 24040001 */ li $a0, 1 -/* 025088 80024488 00C02025 */ move $a0, $a2 -/* 02508C 8002448C 0C00F745 */ jal func_8003DD14 -/* 025090 80024490 00E02825 */ move $a1, $a3 -/* 025094 80024494 10000037 */ b .L80024574 -/* 025098 80024498 24040001 */ li $a0, 1 -/* 02509C 8002449C 00C02025 */ move $a0, $a2 -/* 0250A0 800244A0 0C00E2B5 */ jal func_80038AD4 -/* 0250A4 800244A4 00E02825 */ move $a1, $a3 -/* 0250A8 800244A8 10000032 */ b .L80024574 -/* 0250AC 800244AC 24040001 */ li $a0, 1 -/* 0250B0 800244B0 00C02025 */ move $a0, $a2 -/* 0250B4 800244B4 0C010858 */ jal func_80042160 -/* 0250B8 800244B8 00E02825 */ move $a1, $a3 -/* 0250BC 800244BC 1000002D */ b .L80024574 -/* 0250C0 800244C0 24040001 */ li $a0, 1 -/* 0250C4 800244C4 00C02025 */ move $a0, $a2 -/* 0250C8 800244C8 0C00E371 */ jal func_80038DC4 -/* 0250CC 800244CC 00E02825 */ move $a1, $a3 -/* 0250D0 800244D0 10000028 */ b .L80024574 -/* 0250D4 800244D4 24040001 */ li $a0, 1 -/* 0250D8 800244D8 00C02025 */ move $a0, $a2 -/* 0250DC 800244DC 0C01085E */ jal func_80042178 -/* 0250E0 800244E0 00E02825 */ move $a1, $a3 -/* 0250E4 800244E4 10000023 */ b .L80024574 -/* 0250E8 800244E8 24040001 */ li $a0, 1 -/* 0250EC 800244EC 00C02025 */ move $a0, $a2 -/* 0250F0 800244F0 0C00D5F5 */ jal func_800357D4 -/* 0250F4 800244F4 00E02825 */ move $a1, $a3 -/* 0250F8 800244F8 1000001E */ b .L80024574 -/* 0250FC 800244FC 24040001 */ li $a0, 1 -/* 025100 80024500 00C02025 */ move $a0, $a2 -/* 025104 80024504 0C00CFD8 */ jal func_80033F60 -/* 025108 80024508 00E02825 */ move $a1, $a3 -/* 02510C 8002450C 10000019 */ b .L80024574 -/* 025110 80024510 24040001 */ li $a0, 1 -/* 025114 80024514 00C02025 */ move $a0, $a2 -/* 025118 80024518 0C0108BC */ jal func_800422F0 -/* 02511C 8002451C 00E02825 */ move $a1, $a3 -/* 025120 80024520 10000014 */ b .L80024574 -/* 025124 80024524 24040001 */ li $a0, 1 -/* 025128 80024528 00C02025 */ move $a0, $a2 -/* 02512C 8002452C 0C00F0B9 */ jal func_8003C2E4 -/* 025130 80024530 00E02825 */ move $a1, $a3 -/* 025134 80024534 1000000F */ b .L80024574 -/* 025138 80024538 24040001 */ li $a0, 1 -/* 02513C 8002453C 00C02025 */ move $a0, $a2 -/* 025140 80024540 0C00DF42 */ jal func_80037D08 -/* 025144 80024544 00E02825 */ move $a1, $a3 -/* 025148 80024548 1000000A */ b .L80024574 -/* 02514C 8002454C 24040001 */ li $a0, 1 -/* 025150 80024550 00C02025 */ move $a0, $a2 -/* 025154 80024554 0C010A66 */ jal func_80042998 -/* 025158 80024558 00E02825 */ move $a1, $a3 -/* 02515C 8002455C 10000005 */ b .L80024574 -/* 025160 80024560 24040001 */ li $a0, 1 -/* 025164 80024564 00C02025 */ move $a0, $a2 -/* 025168 80024568 0C010AA4 */ jal func_80042A90 -/* 02516C 8002456C 00E02825 */ move $a1, $a3 -.L80024570: -/* 025170 80024570 24040001 */ li $a0, 1 -.L80024574: -/* 025174 80024574 0C02DDAE */ jal func_800B76B8 -/* 025178 80024578 2405FFFF */ li $a1, -1 -/* 02517C 8002457C 8FBF0014 */ lw $ra, 0x14($sp) -/* 025180 80024580 27BD0018 */ addiu $sp, $sp, 0x18 -/* 025184 80024584 03E00008 */ jr $ra -/* 025188 80024588 00000000 */ nop - -/* 02518C 8002458C 03E00008 */ jr $ra -/* 025190 80024590 AFA40000 */ sw $a0, ($sp) - -glabel func_80024594 -/* 025194 80024594 3C0E800E */ lui $t6, %hi(D_800DC700) # $t6, 0x800e -/* 025198 80024598 8DCEC700 */ lw $t6, %lo(D_800DC700)($t6) -/* 02519C 8002459C 240F0080 */ li $t7, 128 -/* 0251A0 800245A0 3C028012 */ lui $v0, 0x8012 -/* 0251A4 800245A4 AC8E0000 */ sw $t6, ($a0) -/* 0251A8 800245A8 ACAF0000 */ sw $t7, ($a1) -/* 0251AC 800245AC 03E00008 */ jr $ra -/* 0251B0 800245B0 2442AC20 */ addiu $v0, $v0, -0x53e0 - -glabel func_800245B4 -/* 0251B4 800245B4 3C03800E */ lui $v1, %hi(D_800DC700) # $v1, 0x800e -/* 0251B8 800245B8 2463C700 */ addiu $v1, %lo(D_800DC700) # addiu $v1, $v1, -0x3900 -/* 0251BC 800245BC 8C620000 */ lw $v0, ($v1) -/* 0251C0 800245C0 3C018012 */ lui $at, 0x8012 -/* 0251C4 800245C4 0002C040 */ sll $t8, $v0, 1 -/* 0251C8 800245C8 00380821 */ addu $at, $at, $t8 -/* 0251CC 800245CC A424AC20 */ sh $a0, -0x53e0($at) -/* 0251D0 800245D0 24590001 */ addiu $t9, $v0, 1 -/* 0251D4 800245D4 2B210080 */ slti $at, $t9, 0x80 -/* 0251D8 800245D8 AFA40000 */ sw $a0, ($sp) -/* 0251DC 800245DC 14200002 */ bnez $at, .L800245E8 -/* 0251E0 800245E0 AC790000 */ sw $t9, ($v1) -/* 0251E4 800245E4 AC600000 */ sw $zero, ($v1) -.L800245E8: -/* 0251E8 800245E8 03E00008 */ jr $ra -/* 0251EC 800245EC 00000000 */ nop - -glabel func_800245F0 -/* 0251F0 800245F0 8CA70054 */ lw $a3, 0x54($a1) -/* 0251F4 800245F4 10E00051 */ beqz $a3, .L8002473C -/* 0251F8 800245F8 00000000 */ nop -/* 0251FC 800245FC 8CE20000 */ lw $v0, ($a3) -/* 025200 80024600 44863000 */ mtc1 $a2, $f6 -/* 025204 80024604 3C014320 */ li $at, 0x43200000 # 160.000000 -/* 025208 80024608 44822000 */ mtc1 $v0, $f4 -/* 02520C 8002460C 44814000 */ mtc1 $at, $f8 -/* 025210 80024610 84880028 */ lh $t0, 0x28($a0) -/* 025214 80024614 46062102 */ mul.s $f4, $f4, $f6 -/* 025218 80024618 8C8D0038 */ lw $t5, 0x38($a0) -/* 02521C 8002461C 84F8001C */ lh $t8, 0x1c($a3) -/* 025220 80024620 84EF001E */ lh $t7, 0x1e($a3) -/* 025224 80024624 84EE0020 */ lh $t6, 0x20($a3) -/* 025228 80024628 8C870040 */ lw $a3, 0x40($a0) -/* 02522C 8002462C 8CA50044 */ lw $a1, 0x44($a1) -/* 025230 80024630 46082102 */ mul.s $f4, $f4, $f8 -/* 025234 80024634 4442F800 */ cfc1 $v0, $31 -/* 025238 80024638 00000000 */ nop -/* 02523C 8002463C 34430003 */ ori $v1, $v0, 3 -/* 025240 80024640 38630002 */ xori $v1, $v1, 2 -/* 025244 80024644 44C3F800 */ ctc1 $v1, $31 -/* 025248 80024648 00081880 */ sll $v1, $t0, 2 -/* 02524C 8002464C 46002124 */ cvt.w.s $f4, $f4 -/* 025250 80024650 44C2F800 */ ctc1 $v0, $31 -/* 025254 80024654 000810C0 */ sll $v0, $t0, 3 -/* 025258 80024658 00432020 */ add $a0, $v0, $v1 -/* 02525C 8002465C 44062000 */ mfc1 $a2, $f4 -/* 025260 80024660 008D2020 */ add $a0, $a0, $t5 -/* 025264 80024664 91A80006 */ lbu $t0, 6($t5) -.L80024668: -/* 025268 80024668 85A20002 */ lh $v0, 2($t5) -/* 02526C 8002466C 85A3000E */ lh $v1, 0xe($t5) -/* 025270 80024670 240100FF */ li $at, 255 -/* 025274 80024674 1501000C */ bne $t0, $at, .L800246A8 -/* 025278 80024678 00626022 */ sub $t4, $v1, $v0 -/* 02527C 8002467C 8DA90008 */ lw $t1, 8($t5) -/* 025280 80024680 000C10C0 */ sll $v0, $t4, 3 -/* 025284 80024684 000C1840 */ sll $v1, $t4, 1 -/* 025288 80024688 00431020 */ add $v0, $v0, $v1 -/* 02528C 8002468C 31298000 */ andi $t1, $t1, 0x8000 -/* 025290 80024690 11200026 */ beqz $t1, .L8002472C -/* 025294 80024694 00A22820 */ add $a1, $a1, $v0 -/* 025298 80024698 000C1080 */ sll $v0, $t4, 2 -/* 02529C 8002469C 00431020 */ add $v0, $v0, $v1 -/* 0252A0 800246A0 10000022 */ b .L8002472C -/* 0252A4 800246A4 00E23820 */ add $a3, $a3, $v0 -.L800246A8: -/* 0252A8 800246A8 84E80000 */ lh $t0, ($a3) -/* 0252AC 800246AC 01180018 */ mult $t0, $t8 -/* 0252B0 800246B0 0000C812 */ mflo $t9 -/* 0252B4 800246B4 84E90002 */ lh $t1, 2($a3) -/* 0252B8 800246B8 258CFFFF */ addiu $t4, $t4, -1 -/* 0252BC 800246BC 012F0018 */ mult $t1, $t7 -/* 0252C0 800246C0 00001012 */ mflo $v0 -/* 0252C4 800246C4 84EA0004 */ lh $t2, 4($a3) -/* 0252C8 800246C8 0322C820 */ add $t9, $t9, $v0 -/* 0252CC 800246CC 014E0018 */ mult $t2, $t6 -/* 0252D0 800246D0 00001012 */ mflo $v0 -/* 0252D4 800246D4 24E70006 */ addiu $a3, $a3, 6 -/* 0252D8 800246D8 0322C820 */ add $t9, $t9, $v0 -/* 0252DC 800246DC 0019CAC3 */ sra $t9, $t9, 0xb -/* 0252E0 800246E0 1F200003 */ bgtz $t9, .L800246F0 -/* 0252E4 800246E4 00000000 */ nop -/* 0252E8 800246E8 10000009 */ b .L80024710 -/* 0252EC 800246EC 00C0C825 */ move $t9, $a2 -.L800246F0: -/* 0252F0 800246F0 03260018 */ mult $t9, $a2 -/* 0252F4 800246F4 0000C812 */ mflo $t9 -/* 0252F8 800246F8 0019CC02 */ srl $t9, $t9, 0x10 -/* 0252FC 800246FC 0326C820 */ add $t9, $t9, $a2 -/* 025300 80024700 2B210100 */ slti $at, $t9, 0x100 -/* 025304 80024704 54200003 */ bnezl $at, .L80024714 -/* 025308 80024708 00191200 */ sll $v0, $t9, 8 -/* 02530C 8002470C 241900FF */ li $t9, 255 -.L80024710: -/* 025310 80024710 00191200 */ sll $v0, $t9, 8 -.L80024714: -/* 025314 80024714 0322C825 */ or $t9, $t9, $v0 -/* 025318 80024718 A4B90006 */ sh $t9, 6($a1) -/* 02531C 8002471C 373900FF */ ori $t9, $t9, 0xff -/* 025320 80024720 A4B90008 */ sh $t9, 8($a1) -/* 025324 80024724 1580FFE0 */ bnez $t4, .L800246A8 -/* 025328 80024728 24A5000A */ addiu $a1, $a1, 0xa -.L8002472C: -/* 02532C 8002472C 25AD000C */ addiu $t5, $t5, 0xc -/* 025330 80024730 01A4082A */ slt $at, $t5, $a0 -/* 025334 80024734 5420FFCC */ bnezl $at, .L80024668 -/* 025338 80024738 91A80006 */ lbu $t0, 6($t5) -.L8002473C: -/* 02533C 8002473C 03E00008 */ jr $ra -/* 025340 80024740 00000000 */ nop - -glabel func_80024744 -/* 025344 80024744 27BDFF80 */ addiu $sp, $sp, -0x80 -/* 025348 80024748 AFB00080 */ sw $s0, 0x80($sp) -/* 02534C 8002474C AFBF0078 */ sw $ra, 0x78($sp) -/* 025350 80024750 AFB10084 */ sw $s1, 0x84($sp) -/* 025354 80024754 AFB20088 */ sw $s2, 0x88($sp) -/* 025358 80024758 AFB3008C */ sw $s3, 0x8c($sp) -/* 02535C 8002475C 00808025 */ move $s0, $a0 -/* 025360 80024760 8E190054 */ lw $t9, 0x54($s0) -/* 025364 80024764 00A08825 */ move $s1, $a1 -/* 025368 80024768 00C09025 */ move $s2, $a2 -/* 02536C 8002476C 13200093 */ beqz $t9, .L800249BC -/* 025370 80024770 00E09825 */ move $s3, $a3 -/* 025374 80024774 8728001C */ lh $t0, 0x1c($t9) -/* 025378 80024778 8729001E */ lh $t1, 0x1e($t9) -/* 02537C 8002477C 872A0020 */ lh $t2, 0x20($t9) -/* 025380 80024780 00084080 */ sll $t0, $t0, 2 -/* 025384 80024784 00094880 */ sll $t1, $t1, 2 -/* 025388 80024788 000A5080 */ sll $t2, $t2, 2 -/* 02538C 8002478C 44882000 */ mtc1 $t0, $f4 -/* 025390 80024790 44893000 */ mtc1 $t1, $f6 -/* 025394 80024794 448A4000 */ mtc1 $t2, $f8 -/* 025398 80024798 46802120 */ cvt.s.w $f4, $f4 -/* 02539C 8002479C 27B80010 */ addiu $t8, $sp, 0x10 -/* 0253A0 800247A0 468031A0 */ cvt.s.w $f6, $f6 -/* 0253A4 800247A4 E7040000 */ swc1 $f4, ($t8) -/* 0253A8 800247A8 46804220 */ cvt.s.w $f8, $f8 -/* 0253AC 800247AC E7060004 */ swc1 $f6, 4($t8) -/* 0253B0 800247B0 10C00007 */ beqz $a2, .L800247D0 -/* 0253B4 800247B4 E7080008 */ swc1 $f8, 8($t8) -/* 0253B8 800247B8 0C01A769 */ jal func_80069DA4 -/* 0253BC 800247BC 00000000 */ nop -/* 0253C0 800247C0 27A50010 */ addiu $a1, $sp, 0x10 -/* 0253C4 800247C4 00402025 */ move $a0, $v0 -/* 0253C8 800247C8 0C01BDBB */ jal func_8006F6EC -/* 0253CC 800247CC 00A03025 */ move $a2, $a1 -.L800247D0: -/* 0253D0 800247D0 86080000 */ lh $t0, ($s0) -/* 0253D4 800247D4 27B8001C */ addiu $t8, $sp, 0x1c -/* 0253D8 800247D8 24030000 */ li $v1, 0 -/* 0253DC 800247DC 00084022 */ neg $t0, $t0 -/* 0253E0 800247E0 A7080000 */ sh $t0, ($t8) -/* 0253E4 800247E4 86090002 */ lh $t1, 2($s0) -/* 0253E8 800247E8 3C023F80 */ lui $v0, 0x3f80 -/* 0253EC 800247EC 27A40034 */ addiu $a0, $sp, 0x34 -/* 0253F0 800247F0 00094822 */ neg $t1, $t1 -/* 0253F4 800247F4 A7090002 */ sh $t1, 2($t8) -/* 0253F8 800247F8 860A0004 */ lh $t2, 4($s0) -/* 0253FC 800247FC AF020008 */ sw $v0, 8($t8) -/* 025400 80024800 AF03000C */ sw $v1, 0xc($t8) -/* 025404 80024804 000A5022 */ neg $t2, $t2 -/* 025408 80024808 A70A0004 */ sh $t2, 4($t8) -/* 02540C 8002480C AF030010 */ sw $v1, 0x10($t8) -/* 025410 80024810 AF030014 */ sw $v1, 0x14($t8) -/* 025414 80024814 0C01BF9D */ jal func_8006FE74 -/* 025418 80024818 03002825 */ move $a1, $t8 -/* 02541C 8002481C 27A50010 */ addiu $a1, $sp, 0x10 -/* 025420 80024820 27A40034 */ addiu $a0, $sp, 0x34 -/* 025424 80024824 0C01BDBB */ jal func_8006F6EC -/* 025428 80024828 00A03025 */ move $a2, $a1 -/* 02542C 8002482C 8E190054 */ lw $t9, 0x54($s0) -/* 025430 80024830 44933000 */ mtc1 $s3, $f6 -/* 025434 80024834 3C01437F */ li $at, 0x437F0000 # 255.000000 -/* 025438 80024838 8F220000 */ lw $v0, ($t9) -/* 02543C 8002483C 44814000 */ mtc1 $at, $f8 -/* 025440 80024840 8F23002C */ lw $v1, 0x2c($t9) -/* 025444 80024844 44822000 */ mtc1 $v0, $f4 -/* 025448 80024848 8F220028 */ lw $v0, 0x28($t9) -/* 02544C 8002484C 27A80010 */ addiu $t0, $sp, 0x10 -/* 025450 80024850 46062102 */ mul.s $f4, $f4, $f6 -/* 025454 80024854 44823000 */ mtc1 $v0, $f6 -/* 025458 80024858 8D060000 */ lw $a2, ($t0) -/* 02545C 8002485C 8D070004 */ lw $a3, 4($t0) -/* 025460 80024860 8D0E0008 */ lw $t6, 8($t0) -/* 025464 80024864 86280028 */ lh $t0, 0x28($s1) -/* 025468 80024868 8E2D0038 */ lw $t5, 0x38($s1) -/* 02546C 8002486C 46082102 */ mul.s $f4, $f4, $f8 -/* 025470 80024870 44834000 */ mtc1 $v1, $f8 -/* 025474 80024874 8E130044 */ lw $s3, 0x44($s0) -/* 025478 80024878 8E240040 */ lw $a0, 0x40($s1) -/* 02547C 8002487C 46043182 */ mul.s $f6, $f6, $f4 -/* 025480 80024880 00000000 */ nop -/* 025484 80024884 46044202 */ mul.s $f8, $f8, $f4 -/* 025488 80024888 44862000 */ mtc1 $a2, $f4 -/* 02548C 8002488C 4442F800 */ cfc1 $v0, $31 -/* 025490 80024890 00000000 */ nop -/* 025494 80024894 34430003 */ ori $v1, $v0, 3 -/* 025498 80024898 38630002 */ xori $v1, $v1, 2 -/* 02549C 8002489C 44C3F800 */ ctc1 $v1, $31 -/* 0254A0 800248A0 00081880 */ sll $v1, $t0, 2 -/* 0254A4 800248A4 460031A4 */ cvt.w.s $f6, $f6 -/* 0254A8 800248A8 46004224 */ cvt.w.s $f8, $f8 -/* 0254AC 800248AC 44183000 */ mfc1 $t8, $f6 -/* 0254B0 800248B0 44873000 */ mtc1 $a3, $f6 -/* 0254B4 800248B4 46002124 */ cvt.w.s $f4, $f4 -/* 0254B8 800248B8 440F4000 */ mfc1 $t7, $f8 -/* 0254BC 800248BC 448E4000 */ mtc1 $t6, $f8 -/* 0254C0 800248C0 460031A4 */ cvt.w.s $f6, $f6 -/* 0254C4 800248C4 44062000 */ mfc1 $a2, $f4 -/* 0254C8 800248C8 46004224 */ cvt.w.s $f8, $f8 -/* 0254CC 800248CC 44073000 */ mfc1 $a3, $f6 -/* 0254D0 800248D0 44C2F800 */ ctc1 $v0, $31 -/* 0254D4 800248D4 000810C0 */ sll $v0, $t0, 3 -/* 0254D8 800248D8 00439020 */ add $s2, $v0, $v1 -/* 0254DC 800248DC 440E4000 */ mfc1 $t6, $f8 -/* 0254E0 800248E0 024D9020 */ add $s2, $s2, $t5 -/* 0254E4 800248E4 91A80006 */ lbu $t0, 6($t5) -.L800248E8: -/* 0254E8 800248E8 85A20002 */ lh $v0, 2($t5) -/* 0254EC 800248EC 85A3000E */ lh $v1, 0xe($t5) -/* 0254F0 800248F0 240100FF */ li $at, 255 -/* 0254F4 800248F4 1501000C */ bne $t0, $at, .L80024928 -/* 0254F8 800248F8 00626022 */ sub $t4, $v1, $v0 -/* 0254FC 800248FC 8DA90008 */ lw $t1, 8($t5) -/* 025500 80024900 000C10C0 */ sll $v0, $t4, 3 -/* 025504 80024904 000C1840 */ sll $v1, $t4, 1 -/* 025508 80024908 00431020 */ add $v0, $v0, $v1 -/* 02550C 8002490C 31298000 */ andi $t1, $t1, 0x8000 -/* 025510 80024910 11200026 */ beqz $t1, .L800249AC -/* 025514 80024914 02629820 */ add $s3, $s3, $v0 -/* 025518 80024918 000C1080 */ sll $v0, $t4, 2 -/* 02551C 8002491C 00431020 */ add $v0, $v0, $v1 -/* 025520 80024920 10000022 */ b .L800249AC -/* 025524 80024924 00822020 */ add $a0, $a0, $v0 -.L80024928: -/* 025528 80024928 84880000 */ lh $t0, ($a0) -/* 02552C 8002492C 01060018 */ mult $t0, $a2 -/* 025530 80024930 00002812 */ mflo $a1 -/* 025534 80024934 84890002 */ lh $t1, 2($a0) -/* 025538 80024938 258CFFFF */ addiu $t4, $t4, -1 -/* 02553C 8002493C 01270018 */ mult $t1, $a3 -/* 025540 80024940 00001012 */ mflo $v0 -/* 025544 80024944 848A0004 */ lh $t2, 4($a0) -/* 025548 80024948 00A22820 */ add $a1, $a1, $v0 -/* 02554C 8002494C 014E0018 */ mult $t2, $t6 -/* 025550 80024950 00001012 */ mflo $v0 -/* 025554 80024954 24840006 */ addiu $a0, $a0, 6 -/* 025558 80024958 00A22820 */ add $a1, $a1, $v0 -/* 02555C 8002495C 000529C3 */ sra $a1, $a1, 7 -/* 025560 80024960 1CA00003 */ bgtz $a1, .L80024970 -/* 025564 80024964 00000000 */ nop -/* 025568 80024968 10000009 */ b .L80024990 -/* 02556C 8002496C 03002825 */ move $a1, $t8 -.L80024970: -/* 025570 80024970 00AF0018 */ mult $a1, $t7 -/* 025574 80024974 00002812 */ mflo $a1 -/* 025578 80024978 00052D42 */ srl $a1, $a1, 0x15 -/* 02557C 8002497C 00B82820 */ add $a1, $a1, $t8 -/* 025580 80024980 28A10100 */ slti $at, $a1, 0x100 -/* 025584 80024984 54200003 */ bnezl $at, .L80024994 -/* 025588 80024988 00051200 */ sll $v0, $a1, 8 -/* 02558C 8002498C 240500FF */ li $a1, 255 -.L80024990: -/* 025590 80024990 00051200 */ sll $v0, $a1, 8 -.L80024994: -/* 025594 80024994 00A22825 */ or $a1, $a1, $v0 -/* 025598 80024998 A6650006 */ sh $a1, 6($s3) -/* 02559C 8002499C 34A500FF */ ori $a1, $a1, 0xff -/* 0255A0 800249A0 A6650008 */ sh $a1, 8($s3) -/* 0255A4 800249A4 1580FFE0 */ bnez $t4, .L80024928 -/* 0255A8 800249A8 2673000A */ addiu $s3, $s3, 0xa -.L800249AC: -/* 0255AC 800249AC 25AD000C */ addiu $t5, $t5, 0xc -/* 0255B0 800249B0 01B2082A */ slt $at, $t5, $s2 -/* 0255B4 800249B4 5420FFCC */ bnezl $at, .L800248E8 -/* 0255B8 800249B8 91A80006 */ lbu $t0, 6($t5) -.L800249BC: -/* 0255BC 800249BC 8FBF0078 */ lw $ra, 0x78($sp) -/* 0255C0 800249C0 8FB00080 */ lw $s0, 0x80($sp) -/* 0255C4 800249C4 8FB10084 */ lw $s1, 0x84($sp) -/* 0255C8 800249C8 8FB20088 */ lw $s2, 0x88($sp) -/* 0255CC 800249CC 8FB3008C */ lw $s3, 0x8c($sp) -/* 0255D0 800249D0 03E00008 */ jr $ra -/* 0255D4 800249D4 27BD0080 */ addiu $sp, $sp, 0x80 - -/* 0255D8 800249D8 00000000 */ nop -/* 0255DC 800249DC 00000000 */ nop diff --git a/src/unknown_005740.c b/src/unknown_005740.c new file mode 100644 index 00000000..dcd9036a --- /dev/null +++ b/src/unknown_005740.c @@ -0,0 +1,250 @@ +/* The comment below is needed for this file to be picked up by generate_ld */ +/* RAM_POS: 0x80004B40 */ + +#include "types.h" +#include "macros.h" + +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80004B40.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800050D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80005254.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80005D08.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800063EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80006AC8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80006BFC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80006FC8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80007FA4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80008040.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80008140.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80008168.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80008174.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80008438.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800090C0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800092A8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80009558.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800095E8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800096D8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800096F8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000974C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800098A4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80009968.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800099EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80009AB4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80009B7C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80009D6C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000A2E8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000A414.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000A71C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000A7C4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000A84C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000A8D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000A9F8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000AA88.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000AAAC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000AB00.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000AC34.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000ACE0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000AD98.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000ADF4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000AE90.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000AEFC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000B010.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000B020.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000B290.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000B38C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000B750.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000BADC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000BF44.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000BF8C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000C2D8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000C460.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000C604.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000C718.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000C844.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000C8B4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000C8F8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000CBC0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000CBF0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000CC20.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000CC7C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E0B0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E128.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E138.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E148.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E158.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E184.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E194.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E1B8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E1CC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E1DC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E1EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E2B4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E4BC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E4C8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E4D8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E948.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E988.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000E9D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000EA54.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000F648.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000F758.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000F7EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000F99C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000FAC4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000FBCC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000FC6C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000FD20.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000FD34.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000FD54.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8000FFB8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001004C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800101AC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80010994.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80011134.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80011264.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80011390.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001139C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800113AC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800113CC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80011560.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80011570.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80011960.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80011AD0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80011C94.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800120C8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80012C30.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80012C3C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80012C98.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80012CE8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80012D5C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80012E28.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80012F30.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80012F94.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001348C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80013548.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800135B8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800138A8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80013A0C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80013DCC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80014090.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800142B8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800143A8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80014814.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80014B50.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80015348.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800155B8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800159C8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80016500.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80016748.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80016BC4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80016C68.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80016DE8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001709C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80017248.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001790C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80017978.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800179D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80017A18.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80017E74.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80017E98.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800185E4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80018C6C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80018CE0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001955C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/D_80019808.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001A7D8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001A8D4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001A8F4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001AE44.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001AE54.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001AE64.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001B288.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001B2E0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001B2F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001B3AC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001B3C4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001B4FC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001B640.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001B650.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001B668.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001B738.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001B780.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001B790.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001B7A8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001B834.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001BA00.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001BA1C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001BA64.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001BA74.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001BA90.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001BAAC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001BAC8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001BB18.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001BC40.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001BC54.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001BD94.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001BDD4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001BF20.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001C418.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001C48C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001C524.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001C6C4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001CC48.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001CD28.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001D1AC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001D1BC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001D214.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001D258.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001D4B4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001D5E0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001D6E4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001D80C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001DD54.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001E29C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001E2EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001E344.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001E36C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001E440.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001E450.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001E45C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001E4C4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001E6EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001E89C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001E93C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001EE74.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001EFA4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001F23C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001F3B8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001F3C8.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001F3EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001F450.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8001F460.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800210CC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80021104.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8002125C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80021400.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800214C4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800214E4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80021600.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80022540.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8002263C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8002277C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80022888.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800228B0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800228EC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80022948.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80022CFC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80022E18.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800230D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8002341C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_8002342C.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80023568.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800235C0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800235D0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800235DC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800238BC.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80023E30.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80023F48.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80024594.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800245B4.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_800245F0.s") +GLOBAL_ASM("asm/non_matchings/unknown_005740/func_80024744.s")